Skip to content
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

Issue 4650 Remove unsupported feature selective upgrade #4988

Closed

Conversation

matteius
Copy link
Member

I am proposing via PR we remove the flag --selective-upgrade on several grounds:

  • It doesn't work and hasn't for a long time
  • The suggestion for people using it are to use --keep-outdated instead.
  • There is no documentation for the code path.
  • The code path doesn't make sense and exists in overly complex method we aim to simplify anyway.
  • It does things like uses Pip feature
    • to-satisfy-only (undocumented, please avoid) - packages are not upgraded (not even direct requirements) unless the currently installed version fails to satisfy a requirement (either explicitly specified or a dependency).
  • the https://pip.pypa.io/en/stable/cli/pip/#exists-action-option usage also doesn't seem to be anything special or make extra sense why its would be needed over --keep-outdated.
  • More reasons to follow if necessary ...

The issue

#4650
#4626
#4351
#3461
#2412
And more: https://github.com/pypa/pipenv/issues?q=is%3Aissue+is%3Aopen+selective-upgrade

The fix

I removed the code for --selective-upgrade

The checklist

  • Associated issue
  • A news fragment in the news/ directory to describe this fix with the extension .bugfix, .feature, .behavior, .doc. .vendor. or .trivial (this will appear in the release changelog). Use semantic line breaks and name the file after the issue number or the PR #.

@matteius matteius requested review from oz123 and frostming March 16, 2022 23:56
@matteius matteius changed the title Issue 4650 unsupported feature selective upgrade Issue 4650 Remove unsupported feature selective upgrade Mar 16, 2022
@matteius matteius added the Status: Deferred / On Hold 🛑 This item is on hold until further notice. label Mar 19, 2022
@matteius
Copy link
Member Author

Putting this one on hold until -- even though this flag isn't really supported, we probably need to support something that does the right thing for selective upgrades now that I realize what --keep-outdated is doing. Will revisit this.

syntaxaire added a commit to TrashMonks/hagadias that referenced this pull request Jul 30, 2022
I used to use and like Pipenv but no longer think it’s viable - the
project is in maintenance mode and has some serious unfixed issues
([link](pypa/pipenv#2665),
[link](pypa/pipenv#2412))
which have been “fixed” by removing fundamental features since the dev
team was [unable to figure out](pypa/pipenv#4988)
what was going on in the codebase. Other dev teams are also
[abandoning](log2timeline/dftimewolf#636)
this package manager.

Poetry offers some significant advantages such as compatibility with
the pyproject.toml standard, the ability to upgrade a single
dependency, and the ability to publish packages.
@matteius
Copy link
Member Author

Deferring this for now -- it needs to be revisited, but one user suggested that we keep the functionality and don't support it. I don't love that approach either, but perhaps there is a way to cleanup or understand the implementation/implications in time.

@matteius matteius closed this Aug 19, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Status: Deferred / On Hold 🛑 This item is on hold until further notice.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant