Upgrade pipx

Move pipx itself to the latest release. Pick the method that matches how you installed it.

Upgrade per OS

macOS:

$ brew update && brew upgrade pipx

Ubuntu Linux:

$ sudo apt update && sudo apt upgrade pipx

Fedora Linux:

$ sudo dnf upgrade pipx

Windows (Scoop):

$ scoop update pipx

Self-managed installs

If pipx manages its own installation (see Install from source control and the self-managed bootstrap in Install pipx), upgrade it like any other pipx app:

$ pipx upgrade pipx

A pipx installed with --global belongs to the global installation, so upgrade it there:

$ sudo pipx upgrade --global pipx

Upgrade via pip

When you installed pipx with pip install --user and cannot upgrade it as a pipx app:

$ python3 -m pip install --user --upgrade pipx

Warning

On systems that adopt PEP 668 (Ubuntu 23.04+, Debian 12+, Fedora 38+), this fails with externally-managed-environment. Use the distribution package or the self-managed path above instead. See Install pipx for the PEP 668 install options.

Respond to a distrusted certificate authority

After the eMudhra/emSign CA incident, pip 26.2.2 and certifi 2026.10.19 stopped trusting the compromised root. Upgrade pipx first. Under the pip backend every app borrows the shared pip, and pipx replaces a shared pip older than 26.2.2 the next time it installs, upgrades, reinstalls, injects or runs an app. To replace it now:

$ pipx upgrade-shared

Apps that depend on certifi (for example through requests) carry their own copy. Upgrade it in each app that has one:

$ pipx runpip APP install --upgrade "certifi>=2026.10.19"

Under the uv backend pipx runs the uv from its uv extra, or the one on your PATH; upgrade that uv to 0.13.4 or later.

Verify it

$ pipx --version

Note

Upgrading from a pre-0.15.0.0 pipx to 0.15.0.0 or later requires reinstalling your packages so they gain the persistent metadata files that release introduced. These files store the pip spec, injected packages, and custom pip arguments in each venv. With no --spec installs and no injected packages, run pipx reinstall-all. Otherwise reinstall manually: pipx uninstall-all followed by pipx install and, where needed, pipx inject.