-
-
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
pipenv requirements
now requiring installation of VCS modules
#5755
Comments
This was a side-effect in my larger refactor of requirementslib to version 3.0.0 -- while the goal was to migrate away from attrs to pydantic, I encountered some weird behaviors with some of the prior requirementslib code. The problem here is the requirementslib method is used to just go with the name |
Another thing is that Pipfile still uses the old syntax which raises a warning:
Both of these are accepted without a warning:
However, these trigger an exception from requirementslib.
|
Hi @matteius Thanks for the response here. I understand your point about trying to determine the "real" name, but I have a few questions:
My general issue is that, as a user, I would expect |
Not as far as I can tell.
@mgmarino This is a good point, and I think it ultimately should be doing that, but it was built re-using Ultimately I'll treat this as a regression, and would be fine with moving towards requirements having its own functions that live outside requirementslib, since I am not convinced the re-use there is worth it. There may be a couple other requirements command issue reports that are hard to solve because of this re-use as well. Plus requirementslib needs additional refactor in the long run, and you are right that the lock should contain everything needed to generate the requirements. |
@matteius Ok, thanks for all your efforts here! For the moment, where this causes us issues, we will pin |
Issue description
This is less a "bug" per se, but it is absolutely a change in behavior that was not marked in the release notes, so I'm not sure if it was intended or not. Also, it's not clear why
pipenv requirements
needs to install via VCS, I would've assumed it's a simple translation of thePipfile.lock
file.As a side note, this was also a breaking change for us, because we use
pipenv requirements
in places where ssh keys are not always available.Steps to replicate
Pipfile:
Lock the above with
pipenv lock
. Then runpipenv requirements
with the two versions:This is also very fast and shows no indication of network calls
This takes quite a bit longer, and includes the network calls, etc.
Note, I have removed the deprecation warnings mentioned in #5626.
The text was updated successfully, but these errors were encountered: