fix(completion): Fix os.path.commonprefix deprecation warning in python3.15#6102
Merged
Conversation
Member
|
LGTM, please add a test |
anki-code
approved these changes
Feb 19, 2026
Member
|
Thanks @lambda-abstraction ! |
anki-code
pushed a commit
that referenced
this pull request
Mar 5, 2026
🤖 I have created a release *beep* *boop* --- ## [0.22.5](0.22.4...0.22.5) (2026-03-05) ### Features * Added useful command decorators: `[@lines](https://github.com/lines)`, `[@JSON](https://github.com/json)`, `[@jsonl](https://github.com/jsonl)`, `[@yaml](https://github.com/yaml)` ([#6114](#6114)) ([0f7124e](0f7124e)) ### Bug Fixes * **completion:** Fix os.path.commonprefix deprecation warning in python3.15 ([#6102](#6102)) ([2b5b2bb](2b5b2bb)) * Increase `@$()` stability and now it is also working in case of `$THREAD_SUBPROCS=False` ([#6112](#6112)) ([a3ac036](a3ac036)) * **predictor:** Fix predict_threadable to properly handle symlinks, especially on NixOS ([#6115](#6115)) ([bc01b04](bc01b04)) * **prompt:** Keep original key_bindings in prompt-toolkit shell to easy add new key bindings during session ([#6093](#6093)) ([e9b0aea](e9b0aea)) * replace 12 bare except clauses with except Exception ([#6110](#6110)) ([54b311c](54b311c)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). Co-authored-by: xonsh-credentials-bot[bot] <97968350+xonsh-credentials-bot[bot]@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
python/cpython#144436 deprecates
os.path.commonprefixin 3.15, causing aDeprecationWarningeach time when using completioni copied the implementation of
commonprefix(https://github.com/python/cpython/blob/957f9fe162398fceeaa9ddba8b40046b8a03176d/Lib/genericpath.py#L115-L129) and removed the unusedfspath, as xonsh only usescommonprefixwithstr | RichCompletion, notPathLikei first thought about putting the function into the
xonsh.toolsmodule, but one of the places wherecommonprefixis used inxonsh/completers/bash_completion.py, which is intended to be usable as a standalone script, and adding animport xonsh.toolsincreased the startup time by a significant amount, so i decided to create a new helper moduleFor community
⬇️ Please click the 👍 reaction instead of leaving a
+1or 👍 comment