-
-
Notifications
You must be signed in to change notification settings - Fork 1.9k
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
stop using requirementslib models #5793
Conversation
…ting me use the pycharm debugger better.
…ting me use the pycharm debugger better.
… for testing resolver.
Thanks @DanielSwain I think that will be important to sort out as well, to be honest, it was a short cut I took to get things working which makes the two big things I know about that need more work here are:
|
@matteius When you get hashing on VCS repos re-implemented, just let me know. I'd be glad to test that for you. |
…f (consistent with current Pipfiles)
@DanielSwain I got the VCS lockfile hashing sorted out now. 👍 |
Hey @matteius I'm wondering if there is a way to get more details/output when a dependency resolution check fails. I'm having an issue getting Pipfile with particular private PyPI registry packages to lock, and even with |
…t because there is too many
…ated by pip resolver when supplying -v flag
@kalebmckale I just pushed a commit to this branch which gets the |
…s. Plus lesson from testing torch which contains local identifiers.
@matteius I tested with the version. The verbose output was very helpful. I think I know what the problem is, but I'm not sure why it's happening. Is this the thread to discuss it or should I create a new issue since it seems to be behavior independent of the current changes? |
@kalebmckale please open a new issue for that then. |
Done! |
The requirementslib models are a nested mess. I fixed the issue of wheel extras not being installed and broke a bunch of other stuff in the process the other night, but it dawned on me that there is a lot of translating between pip lines and data models and back and forth and it really is messy and doesn't make much sense.
This is the start of re-establishing what interfaces are actually needed to get between Pipfile, Pipfile.lock and pip lines. The preferred data model to use is pip's InstallRequirement since requirementslib was using it under the hood anwyay as
ireq
.There are still a number of edge cases to work out, but I am opening this draft PR now because I want to see if I actually broke the test runner or just my local environment.
At a high level this is what I am thinking but it requires dropping
--skip-lock
the rest of the way first:Fixes #5817
Fixes #5789
Fixes #5696
Fixes #5626
Fixes #5595
Fixes #5490
Fixes #5716 (probably)
The checklist
news/
directory to describe this fix with the extension.bugfix.rst
,.feature.rst
,.behavior.rst
,.doc.rst
..vendor.rst
. or.trivial.rst
(this will appear in the release changelog). Use semantic line breaks and name the file after the issue number or the PR #.