Repository navigation
deps(patch): update dependency pipx to v1.18.10 - #82
Merged
Merged
Conversation
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.
This PR contains the following updates:
1.18.9→1.18.10Release Notes
pypa/pipx (pipx)
v1.18.10Compare Source
Changes
Bug fixes
pipx upgrade pipxorpipx reinstall pipxfor example, no longer crashes with anImportErrorwhen another pipx command empties the trash while it is still running, such as during the rest ofpipx upgrade-all. The copy of its environment it imports from now stays in the trash until the process exits (#2397) by @gaborbernat.pipx reinstall-allwith Ctrl-C now gives a restored environment back the shared app, man page or completion links another environment took while the rebuild had it in the trash, as a failed rebuild already did (#2386) by @gaborbernat.pipx run --refreshor--no-cacheof a local script no longer deletes the cached environment while another run of the same script is still executing in it, and neither does the expiry sweep. Such a run builds a throwaway environment for itself instead, and after--refreshthe next run to find the cached one idle rebuilds it (#2387) by @gaborbernat.pipx upgrade pipxon a pipx that manages itself no longer fails withAccess is deniedand rolls back. uv deletes the files it replaces, which Windows refuses for the runningpipx.exe, so pipx now moves that launcher to its trash first, where the next pipx command deletes it (#2396) by @gaborbernat.pipx reinstallandpipx install --forceno longer warnOverwriting filefor the package's own launcher. Windows.exelaunchers embed their build time, so a rebuilt one never matched its old copy byte for byte and every reinstall warned. pipx now recognises its own copy by the interpreter it names and replaces it without a warning; a file another venv or the user put there still gets one (#2394) by @gaborbernat.UV_LINK_MODE=symlink,pipx uninstallnow removes the man page and shell completion links it exposed, andpipx listno longer reports those man pages as missing. uv makes the environment's own copies symlinks into its cache, and pipx followed them there instead of stopping at the environment (#2380) by @gaborbernat.--fetch-pythonandpipx interpreter upgradenow download and unpack the standalone Python build next to the interpreter directory instead of in the system temp dir, so a tmpfs/tmpor a/tmpon another btrfs subvolume no longer forces a full copy of the build into the pipx home or splits its hard links into separate files (#2403) by @gaborbernat.pipx inject pipxwithout--include-appsandpipx runpip pipxon a pipx that manages itself no longer mix old and new pipx code when they change the pipx package. Likepipx upgrade pipx, they now load late imports from a copy of the environment, which the next pipx command deletes from the trash (#2393) by @gaborbernat.pipx list --jsonno longer exports the interpreter a self-managed pipx recorded when that path no longer leads to the interpreter its environment runs on, such as a removed bootstrap environment'spython3.pipx install-allthen builds that environment on the default interpreter instead of whatever appears at the old path (#2389) by @gaborbernat.pipx reinstall pipxon a pipx that manages itself no longer crashes with anImportErrorwhen it installs a different pipx version. Modules the running pipx imported late came from the version it was installing, so old and new code mixed. It now loads them from its own moved environment, which the next pipx command deletes from the trash (#2377) by @gaborbernat.pipx upgrade pipx,pipx upgrade-allandpipx install --force pipxon a pipx that manages itself no longer crash with anImportErrorwhen they install a different pipx version. The running pipx now loads its late imports from a copy of its environment, which the next pipx command deletes from the trash (#2388) by @gaborbernat.#!/bin/shline that hands over to the interpreter, and pipx took/bin/shfor the interpreter, sopipx reinstallkept a stale copy and warned "File exists ... Not modifying." (#2392) by @gaborbernat.Security
pipx runnow names its cached environments with an HMAC keyed by a random per-user secret, stored with mode0600in.run-keyinside the run cache. Before, the name was a plain hash of inputs that include tokens and proxy passwords from the environment, so another account that could list the cache could check guesses at those values against it. Existing cache entries are not reused and expire as usual (#2370) by @gaborbernat.--requirem FILE, which pip 24.0 reads as--requirement FILE. With such a shared pip, a laterpipx upgradeorpipx reinstallused to replay it and install from whatever another account had put at that path. An existing record drops it when read, and an abbreviation that could name a source option such as--constraintgoes through the same replay check as that option (#2390) by @gaborbernat.python3of an activated bootstrap environment or of one made withpython3 -m venv --copies. It records the base interpreter named in that environment'spyvenv.cfg, which outlives the bootstrap.pipx install-allalso stops building on an exported interpreter that sits inside a virtual environment or that another account can change, and uses the default Python with a message instead, so a snapshot taken before the bootstrap was removed no longer runs whatever another account later puts at its old path (#2402) by @gaborbernat.PyPI release
Full Changelog
Configuration
📅 Schedule: (UTC)
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.