-
-
Notifications
You must be signed in to change notification settings - Fork 611
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
Re resolve combined ireq #1512
Re resolve combined ireq #1512
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Neat! Could you add an integration test to test_cli_compile.py
base on the issue details? You could use make_package
and make_wheel
, see test_duplicate_reqs_combined
for example.
279cb95
to
98c8060
Compare
added tests |
9c34649
to
2f8abf5
Compare
@atugushev , any update on this, please? |
It looks like this will conflict with #1507 ! I haven't dug in (I think I tried this solution some time ago, but no longer remember why I abandoned it), so I don't have a recommendation yet, but curious if folks have initial thoughts:
|
This PR adds two tests, But I feel |
I'm still looking into this, but I think the issue with the naive combination of the two PRs is that setting
The new test from the other PR exposes the issue here that trying to prepare a linked requirement a second time fails an assertion. There are many cases that avoid this code path, but unfortunately if the particular requirement hits the code path with the comment
then an |
I forgot to update here: #1519 is intended to resolve the conflict between these two. |
I'm going to close this in favor of focusing related attention on #1519. Thank you for this, and please let me know if something's amiss! |
An idea for fixing #1511
It will affects this line https://github.com/pypa/pip/blob/fc6d7778a5ee5616cc517ba8b9d41ddf5f204e5c/src/pip/_internal/resolution/legacy/resolver.py#L373 and leads to resolution of the dependencies of
ray[default,tune]==1.4.0
properlyCurrently, this line evaluated to
True
becausecombined_ireq
copied the.prepared=True
fromray[default]==1.4.0
, which was already prepared before.