-
Notifications
You must be signed in to change notification settings - Fork 2.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Poetry does not handle full Python version markers correctly #2480
Comments
This focuses on three-digit versions, but the requirements.txt issue at least can occur with two-digit versions as well:
says
This is wrong, even though the requirement The original requirement for fsspec 0.8.4 is Using |
results of export today for the two cases described are
and
which both use
|
This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs. |
Poetry does not install dependencies into an environment if the dependency has a marker with a full three-digit Python version, even though the environment matches the marker.
For example, the pyproject.toml below is for a project requiring Python 3.6.1 and higher. It also uses the backport of dataclasses to Python 3.6.
(This is not an uncommon situation. Packages like pre-commit explicitly exclude 3.6.0 due to a broken
NamedTuple
implementation. If such packages are added as dependency, our package also needs to exclude it.)If we create an environment with the latest Python 3.6, dataclasses is not installed:
Note that the generated
requirements.txt
is invalid. Thepython_version
marker cannot contain the full three-digit version. Insteadpython_full_version
should be used. See PEP 508.The text was updated successfully, but these errors were encountered: