-
Notifications
You must be signed in to change notification settings - Fork 2.2k
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 with "vcrpy==6.0.1" and "urllib=*" requirements does NOT install urllib3>2 because of vcrpy's platform-specific marker that should be ignored on CPython 3.10 #9402
Comments
the system that you are currently running on is more or less irrelevant during locking, poetry builds cross platform solutions. As currently defined, there is no solution for PyPy. so this is working as expected, you will need to add markers spelling out where you do and don't want new urllib3 please close |
@dimbleby please, bear with me for a bit.
makes sense
here, you may have much more context, but I'm not following, "there is no solution for pypy" w.r.t. what exactly?
I am fully onboard with PyPy-specific requirement ending up in the lockfile, it makes sense that if the package in the future is going to be installed on PyPy, poetry would need that requirement to do the resolution properly. What I'm trying to get through is that there should be a consistent platform-independent lock state that says:
Because the package,
For all other platforms, there should be no requirement from vcpy side of things. |
you say you want poetry to resolve to some version of Either: don't mention please close |
I appreciate your time in responding to me, and I think I'm getting somewhere. So do I understand correctly that you are saying that since Ok, the
I have an env with CPython 3.10, where neither of the two
Why is poetry still not trying to unstall
|
Actually, let me update the bugreport to avoid the situation with "unresolvable" pyproject.toml... |
again, poetry builds a cross-platform solution. So
you can always this continues all to be working as expected, please close. |
Description
I have tried upgrading
urllib3
in a project of mine to a more recent version to fix a vulnerability, and ran into an issue, where poetry's dependency resolver didn't let me to upgrade pasturllib3>2
.AFAICS from the logs (see below), poetry insists that "urllib3<2" is a mandatory requirement. If I check how vcrpy v6.0.1 specifies its urllib requirements it looks something like this:
I am running this on CPython 3.10, so, if I understand pep-508 for environment markers correctly, neither conditional applies to my system. Which in turn means, that both
urllib3 <2
requirements should be ignored during dependency resolution.poetry lock
forvcrpy
ends up excluding thepython_version<'3.10'
from the lockfile, which is perfectly fine:But my question is, since I'm not on pypy, why does it still apply the version requirement during installation?
Workarounds
I have seen #8996, and would have gladly left my comment there, but it is locked. Looks like the maintainers of the
vcrpy
package have come up with a workaround, but until that is released, I don't see a solution.Poetry Installation Method
pipx
Operating System
Ubuntu 23.04
Poetry Version
Poetry (version 1.8.3)
Poetry Configuration
Python Sysconfig
Example pyproject.toml
Poetry Runtime Logs
The text was updated successfully, but these errors were encountered: