pyproject.toml states two different minimum Python versions:
classifiers = [
"Programming Language :: Python :: 3.7",
"Programming Language :: Python :: 3.8",
...
]
requires-python = ">=3.9"
The same pair is live on PyPI for 1.2.0: requires_python is >=3.9, while the classifier list
includes 3.7 and 3.8.
pip enforces requires-python and ignores the classifiers; PyPI displays the classifiers. A user
on 3.7 or 3.8 therefore sees a package that says it supports their version and gets
ERROR: Package 'python-docx' requires a different Python when they try to install it.
The fix is whichever half is stale: drop the 3.7 and 3.8 classifiers, or lower requires-python
if those versions are in fact supported.
Found with a small auditing tool I am writing; no action needed on my side, and apologies if this
is already known.
pyproject.tomlstates two different minimum Python versions:The same pair is live on PyPI for 1.2.0:
requires_pythonis>=3.9, while the classifier listincludes 3.7 and 3.8.
pip enforces
requires-pythonand ignores the classifiers; PyPI displays the classifiers. A useron 3.7 or 3.8 therefore sees a package that says it supports their version and gets
ERROR: Package 'python-docx' requires a different Pythonwhen they try to install it.The fix is whichever half is stale: drop the 3.7 and 3.8 classifiers, or lower
requires-pythonif those versions are in fact supported.
Found with a small auditing tool I am writing; no action needed on my side, and apologies if this
is already known.