Skip to content

Releases: pypa/pipx

1.3.1

02 Dec 20:09
4820f3c
Compare
Choose a tag to compare

What's Changed

  • Make links actually links by @hynek in #1123
  • Fix creation of test cache for clean checkout by @potiuk in #1125
  • Fix combining of --editable and --force flag by @potiuk in #1124

New Contributors

Full Changelog: 1.3.0...1.3.1

1.3.0

02 Dec 16:29
d2a7bd8
Compare
Choose a tag to compare

What's Changed

  • Check whether pip module exists in shared lib before performing any actions, such as reinstall-all.
  • Drop setuptools and wheel from the shared libraries. This results in less time consumption when the libraries are
    automatically upgraded.
  • Allow running pip with pipx run
  • Support PEP 723 run requirements in pipx run.
  • Imply --include-apps when running pipx inject --include-deps
  • Add --with-suffix for pipx 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 show package_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 to shared_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

Full Changelog: 1.2.0...1.3.0

1.2.1

23 Oct 10:34
Compare
Choose a tag to compare

Note: This is a non-main release to only contain fix for the new packaging release on top of 1.2.0 without additional changes.

  • Fix compatibility to packaging 23.2+ by removing reliance on packaging's requirement validation logic and detecting a URL-based requirement in pipx. (#1070)

1.2.0

12 Mar 06:08
Compare
Choose a tag to compare

1.2.0

  • Add test for pip module in pipx reinstall to fix an issue with pipx reinstall-all (#935)

  • Add pipx uninject command (#820)

  • [docs] Fix pipx run examples and update Python versions used by pipx 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 as python -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 as python -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

Full Changelog: 1.1.0...1.2.0

1.1.0

28 May 04:01
53c4f2b
Compare
Choose a tag to compare

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

Full Changelog: 1.0.0...1.1.0

Mark it stable and some small fixes

04 Jan 08:50
078f260
Compare
Choose a tag to compare
1.0.0

Pre-release 1.0.0

Support pipx run with version constraints and extras

28 Dec 23:15
51156ed
Compare
Choose a tag to compare

Release 0.16.5

26 Dec 09:53
4731ea3
Compare
Choose a tag to compare
Pre-release 0.16.5

Signed-off-by: Bernát Gábor <gaborjbernat@gmail.com>

Pre-release for 0.16.4

26 Sep 09:07
dcdc434
Compare
Choose a tag to compare
Signed-off-by: Bernát Gábor <gaborjbernat@gmail.com>

0.16.3

28 May 23:08
Compare
Choose a tag to compare
  • 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 or pytest --net-pypiserver tests. (#686)
  • Colorama is now only installed on Windows. (#691)