/errors/pip/no-matching-distribution-found
pip: ERROR: Could not find a version that satisfies the requirement / No matching distribution found
- tool
- pip
- exit code
- 1
- versions
- pip 20 – 25
- os
- any
ERROR: Could not find a version that satisfies the requirement X followed by ERROR: No matching distribution found for X means pip searched the package index and found no file it can install for that name and version on this Python and platform. The part in parentheses lists the versions pip did see: (from versions: none) usually means a wrong name or an index without the package; a list without your version means the version or the Python version does not match.
Reproduce it
pip download resolves exactly like pip install but only saves the files, so it shows the same error without installing anything:
pip download --disable-pip-version-check --no-deps -q -d dl errcodex-no-such-package
echo "exit status: $?"Output
ERROR: Could not find a version that satisfies the requirement errcodex-no-such-package (from versions: none) ERROR: No matching distribution found for errcodex-no-such-package exit status: 1
A version that does not exist:
pip download --disable-pip-version-check --no-deps -q -d dl "six==9.9.9" 2>&1 |
sed -E 's/\(from versions: [^)]*\)/(from versions: ...)/'Output
ERROR: Could not find a version that satisfies the requirement six==9.9.9 (from versions: ...) ERROR: No matching distribution found for six==9.9.9
The real message lists every published version of six; it is shortened here.
Diagnose
| Check | Command |
|---|---|
| Which Python pip installs into | python -m pip --version |
| Python version | python --version |
| Platform tags this pip accepts | python -m pip debug --verbose |
| Configured index | python -m pip config list |
| Available versions | python -m pip index versions NAME |
Typical fixes
python -m pip install "requests>=2.31" # a version that exists
py -3.12 -m pip install somepkg # Windows: pick another installed Python
python3.12 -m venv .venv # or create a venv with a supported Python