-
Notifications
You must be signed in to change notification settings - Fork 94
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
bug/python pip argspec #219
Conversation
c53ae80
to
e20e0ce
Compare
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.
Changes look good. I'm a little concerned you didn't have to touch any tests when making them.
…resuming we will always have a pkgspec
… write back to reuqirements.txt
e20e0ce
to
50a4138
Compare
|
d865499
to
72820c7
Compare
Why
When installing packages via pip by way of the
Packages
pane, we interpolate the CLI arg by way ofarg + spec
.In looking for why this was the case, it turns out that we impose the same argument specifications on all languages, namely
<pkg> <spec>
, which gets confusing in situations likeflask[async]>=2,<3
, where the spec would actually be[async]>=2,<3
.Instead, we should defer to language specific parsing semantics where possible, accepting a wider variety of acceptable argspecs, which more closely resemble the args of the underlying commands, to be less confusing.
What changed
==
instead of leaving it unconstrainedrequirements.txt
, soupm add flask>=2.3.0
doesn't get turned intoflask===2.3.3
on save.Test plan
these all work as expected in both Poetry and Pip