diff --git a/docs/changelog.md b/docs/changelog.md index 4ac103fe4b..897dbfeefc 100644 --- a/docs/changelog.md +++ b/docs/changelog.md @@ -1,5 +1,9 @@ dev +- Metadata is now stored for each application installed, including install options like `--spec`, and injected packages. This information allows upgrade, upgrade-all and reinstall-all to work properly even with non-pypi installed packages. (#222) +- `upgrade` options `--spec` and `--include-deps` were removed. Pipx now uses the original options used to install each application instead. (#222) +- `upgrade-all` options `--include-deps`, `--system-site-packages`, `--index-url`, `--editable`, and `--pip-args` were removed. Pipx now uses the original options used to install each application instead. (#222) +- `reinstall-all` options `--include-deps`, `--system-site-packages`, `--index-url`, `--editable`, and `--pip-args` were removed. Pipx now uses the original options used to install each application instead. (#222) - Handle missing interpreters more gracefully (#146) - Change `reinstall-all` to use system python by default for apps. Now use `--python` option to specify a different python version. - Remove the PYTHONPATH environment variable when executing any command to prevent conflicts between pipx dependencies and package dependencies when pipx is installed via homebrew. Homebrew can use pythonpath manipulation instead of virtual environments. (#233) diff --git a/docs/docs.md b/docs/docs.md index daad583b68..5e078bdff7 100644 --- a/docs/docs.md +++ b/docs/docs.md @@ -206,13 +206,25 @@ optional arguments: ``` pipx upgrade-all --help -usage: pipx upgrade-all [-h] [--skip SKIP [SKIP ...]] [--force] [--verbose] +usage: pipx upgrade-all [-h] [--include-deps] [--system-site-packages] + [--index-url INDEX_URL] [--editable] + [--pip-args PIP_ARGS] [--skip SKIP [SKIP ...]] + [--force] [--verbose] Upgrades all packages within their virtual environments by running 'pip install --upgrade PACKAGE' optional arguments: -h, --help show this help message and exit + --include-deps Include apps of dependent packages + --system-site-packages + Give the virtual environment access to the system + site-packages dir. + --index-url INDEX_URL, -i INDEX_URL + Base URL of Python Package Index + --editable, -e Install a project in editable mode + --pip-args PIP_ARGS Arbitrary pip arguments to pass directly to pip + install/upgrade commands --skip SKIP [SKIP ...] skip these packages --force, -f Modify existing virtual environment and files in @@ -295,20 +307,35 @@ optional arguments: ``` pipx reinstall-all --help -usage: pipx reinstall-all [-h] [--skip SKIP [SKIP ...]] [--verbose] python +usage: pipx reinstall-all [-h] [--include-deps] [--system-site-packages] + [--index-url INDEX_URL] [--editable] + [--pip-args PIP_ARGS] [--skip SKIP [SKIP ...]] + [--verbose] + python Reinstalls all packages using a different version of Python. -Packages are uninstalled, then installed with pipx install PACKAGE -with the same options used in the original install of PACKAGE. +Packages are uninstalled, then installed with pipx install PACKAGE. This is useful if you upgraded to a new version of Python and want all your packages to use the latest as well. +If you originally installed a package from a source other than PyPI, +this command may behave in unexpected ways since it will reinstall from PyPI. + positional arguments: python optional arguments: -h, --help show this help message and exit + --include-deps Include apps of dependent packages + --system-site-packages + Give the virtual environment access to the system + site-packages dir. + --index-url INDEX_URL, -i INDEX_URL + Base URL of Python Package Index + --editable, -e Install a project in editable mode + --pip-args PIP_ARGS Arbitrary pip arguments to pass directly to pip + install/upgrade commands --skip SKIP [SKIP ...] skip these packages --verbose diff --git a/src/pipx/main.py b/src/pipx/main.py index df744ba055..600b00776b 100644 --- a/src/pipx/main.py +++ b/src/pipx/main.py @@ -20,7 +20,7 @@ from .util import PipxError, mkdir from .venv import VenvContainer -__version__ = "0.14.0.1" +__version__ = "0.14.0.0" def simple_parse_version(s, segments=4) -> Tuple[Union[int, str], ...]: