Releases: pypa/pipx
Releases · pypa/pipx
1.3.1
1.3.0
What's Changed
- Check whether pip module exists in shared lib before performing any actions, such as
reinstall-all
. - Drop
setuptools
andwheel
from the shared libraries. This results in less time consumption when the libraries are
automatically upgraded. - Allow running
pip
withpipx run
- Support PEP 723 run requirements in
pipx run
. - Imply
--include-apps
when runningpipx inject --include-deps
- Add
--with-suffix
forpipx inject
command pipx install
: emit a warning when--force
and--python
were passed at the same time- Drop support for Python 3.7
- Make usage message in
pipx run
showpackage_or_url
, so extra will be printed out as well - Add
--force-reinstall
to pip arguments when--force
was passed - Use the py launcher, if available, to select Python version with the
--python
option - Support including requirements in scripts run using
pipx run
(#916) - Pass
pip_args
toshared_libs.upgrade()
- Fallback to user's log path if the default log path (
$PIPX_HOME/logs
) is not writable to aid with pipx being used
for multi-user (e.g. system-wide) installs of applications - Fix wrong interpreter usage when injecting local pip-installable dependencies into venvs
- add pre-commit hook support
- Don't show escaped backslashes for paths in console output
- Move
pipx
paths to ensure compatibility with the platform-specific user directories - [docs] Add more examples for
pipx run
- [docs] Add subsection to make README easier to read
- Add
pipx install --preinstall
to support preinstalling build requirements - Pass
--no-input
to pip when output is not piped to parent stdout - Fix program name in generated manual page
- Print all environment variables in
pipx environment
- Return an error message when directory can't be added to PATH successfully
- Expose manual pages included in an application installed with
pipx install
- Add explicit 3.12 support
New Contributors
- @lecardozo made their first contribution in #957
- @funkyfuture made their first contribution in #962
- @peleccom made their first contribution in #898
- @secretGeek made their first contribution in #989
- @Spitfire1900 made their first contribution in #981
- @danyeaw made their first contribution in #1000
- @KotlinIsland made their first contribution in #1006
- @wpyoga made their first contribution in #1010
- @memchr made their first contribution in #1001
- @branchvincent made their first contribution in #1020
- @TheKevJames made their first contribution in #900
- @Darsstar made their first contribution in #1029
- @jbrobst made their first contribution in #1049
- @smheidrich made their first contribution in #1046
- @DimitriPapadopoulos made their first contribution in #1039
- @TomiBelan made their first contribution in #1073
- @aanghelidi made their first contribution in #1087
- @carlosperate made their first contribution in #1105
- @johnthagen made their first contribution in #1106
- @ilyagr made their first contribution in #1109
- @oviniciusfeitosa made their first contribution in #972
- @bulletmark made their first contribution in #1063
- @peterkuma made their first contribution in #1047
Full Changelog: 1.2.0...1.3.0
1.2.1
1.2.0
1.2.0
-
Add test for pip module in
pipx reinstall
to fix an issue withpipx reinstall-all
(#935) -
Add
pipx uninject
command (#820) -
[docs] Fix
pipx run
examples and update Python versions used bypipx install
examples -
[docs] Add an example for installation from source with extras
-
Match pip's behaviour when package name ends with archive extension (treat it as a path)
-
Ship a zipapp of pipx
-
Change the program name to
path/to/python -m pipx
when running aspython -m pipx
-
Improve the detection logic for MSYS2 to avoid entering infinite loop (#908) (#938)
-
Remove extra trailing quote from exception message
-
Fix EncodingWarning in
pipx_metadata_file
.
What's Changed
- Post-release by @cs01 in #846
- Add
pipx uninject
command by @meowmeowmeowcat in #820 - Bump actions/checkout from 2 to 3 by @dependabot in #862
- Bump actions/setup-python from 2 to 4 by @dependabot in #861
- Bump pypa/gh-action-pypi-publish from 1.4.1 to 1.5.0 by @dependabot in #860
- Bump actions/download-artifact from 2 to 3 by @dependabot in #858
- Bump actions/upload-artifact from 2 to 3 by @dependabot in #859
- Bump actions/cache from 2 to 3 by @dependabot in #863
- Bump mhausenblas/mkdocs-deploy-gh-pages from 1.13 to 1.24 by @dependabot in #864
- Add an example for installation from source with extras by @abey79 in #866
- Fix examples in the docs by @meowmeowmeowcat in #856
- Change the program name to
path/to/python -m pipx
when running aspython -m pipx
by @meowmeowmeowcat in #852 - Update
testdata/tests_packages
and generate missing ones by @Jackenmen in #871 - Recommend windows users use the PEP 397 python launcher by @rmcclellan-izo in #879
- Update link to setuptools by @meowmeowmeowcat in #882
- Refactor: remove redundant intermediate list building, and fix some typos by @MapleCCC in #877
- Ship a zipapp of pipx by @meowmeowmeowcat in #895
- Add hatch entry point config description to README by @ischaojie in #918
- Bump pypa/gh-action-pypi-publish from 1.5.0 to 1.5.2 by @dependabot in #921
- Update packages for tests and add support for Python 3.11 by @meowmeowmeowcat in #917
- Match pip's behavior when package name looks like an archive by @meowmeowmeowcat in #881
- Remove extra trailing quote from exception message by @srstevenson in #926
- Put the upgrade command in the correct doc section by @meowmeowmeowcat in #928
- Improve the detection logic for MSYS2 by @meowmeowmeowcat in #908
- Fix encodingwarning by @methane in #932
- Bump mhausenblas/mkdocs-deploy-gh-pages from 1.24 to 1.26 by @dependabot in #931
- Bump pypa/gh-action-pypi-publish from 1.5.2 to 1.6.4 by @dependabot in #923
- Tested for pip module in reinstall (#835) by @chrysle in #935
- Add detection logic for other mingw MSYS2 platforms by @chdka in #938
- README.md: Provide clarity on pip --upgrade vs. --user, etc. by @cclauss in #893
- pre-commit: Flake8 moved from GitLab to GitHub by @cclauss in #945
- Fix argparse-manpage dependency for Python 3.12+ by @musicinmybrain in #943
- Replace flake8, bugbear, and isort with ruff by @cclauss in #944
- pre-commit autoupdate by @cclauss in #947
New Contributors
- @dependabot made their first contribution in #862
- @abey79 made their first contribution in #866
- @rmcclellan-izo made their first contribution in #879
- @MapleCCC made their first contribution in #877
- @ischaojie made their first contribution in #918
- @srstevenson made their first contribution in #926
- @methane made their first contribution in #932
- @chrysle made their first contribution in #935
- @chdka made their first contribution in #938
- @cclauss made their first contribution in #893
- @musicinmybrain made their first contribution in #943
Full Changelog: 1.1.0...1.2.0
1.1.0
1.1.0
- Fix encoding issue on Windows when pip fails to install a package
- Improve the behaviour of
shlex.split
on Windows, so paths on Windows can be handled peoperly when they are passed in--pip-args
. (#794) - Add
pipx environment
command (#793) - Add
list --short
option to list only package names (#804) - [docs] Fix the command for installing development version. (#801)
- [docs] Fix test status badge in readme file
- [docs] Add more examples
- [dev] Change github action job names
- [docs] Add additional examples for installation from git repos
- [packaging] Switch to PEP 621
- Add a CACHEDIR.TAG to the cache directory to prevent it from being included in archives and backups. For more information about cache directory tags, see https://bford.info/cachedir
What's Changed
- Fix typos by @kianmeng in #799
- Fix the command for installing development version by @meowmeowmeowcat in #801
- rename tests and fix badge in readme by @cs01 in #809
- align badges, add symlinks to docs at repo root by @cs01 in #810
- remove python 3.6 from tests and PyPI classifiers by @cs01 in #811
- Improve the behaviour of
shlex.split
on Windows by @meowmeowmeowcat in #794 - remove makefile by @cs01 in #813
- Add list --short option by @q0w in #804
- Add
pipx environment
command by @meowmeowmeowcat in #793 - various doc updates by @cs01 in #814
- fix changelog formatting by @cs01 in #815
- Add additional examples for installation from git repos by @taranjlu in #816
- Update package metadata by @ofek in #817
- readme: fix typo by @imba-tjd in #827
- Add a CACHEDIR.TAG to the cache directory. by @KenMacD in #824
- 1.1.0 release candidate by @cs01 in #844
- Pre-release 1.1.0 by @cs01 in #845
New Contributors
- @kianmeng made their first contribution in #799
- @meowmeowmeowcat made their first contribution in #801
- @q0w made their first contribution in #804
- @taranjlu made their first contribution in #816
- @imba-tjd made their first contribution in #827
- @KenMacD made their first contribution in #824
Full Changelog: 1.0.0...1.1.0
Mark it stable and some small fixes
1.0.0 Pre-release 1.0.0
Support pipx run with version constraints and extras
Release 0.16.5
Pre-release 0.16.5 Signed-off-by: Bernát Gábor <[email protected]>
Pre-release for 0.16.4
Signed-off-by: Bernát Gábor <[email protected]>
0.16.3
- Organization: pipx is extremely pleased to now be a project of the Python Packaging Authority (PyPA)! Note that our github URL has changed to pypa/pipx
- Fixed
pipx list --json
to return valid json with no venvs installed. Previously would return an empty string to stdout. (#681) - Changed
pipx ensurepath
bash behavior so that only one of {~/.profile
,~/.bash\_profile
} is modified with the extra pipx paths, not both. Previously, if a.bash_profile
file was created where one didn't exist, it could cause problems, e.g. #456. The internal change is to use userpath v1.5.0 or greater. (#684) - Changed default nox tests, Github Workflow tests, and pytest behavior to use local pypi server with fixed lists of available packages. This allows greater test isolation (no network pypi access needed) and determinism (fixed available dependencies.) It also allows running the tests offline with some extra preparation beforehand (See Running Unit Tests Offline). The old style tests that use the internet to access pypi.org are still available using
nox -s tests_internet
orpytest --net-pypiserver tests
. (#686)
- Colorama is now only installed on Windows. (#691)