-
Notifications
You must be signed in to change notification settings - Fork 3.3k
Define all old pip entrypoints #7498
Copy link
Copy link
Closed
Labels
auto-lockedOutdated issues that have been locked by automationOutdated issues that have been locked by automationstate: needs discussionThis needs some more discussionThis needs some more discussiontype: enhancementImprovements to functionalityImprovements to functionality
Metadata
Metadata
Assignees
Labels
auto-lockedOutdated issues that have been locked by automationOutdated issues that have been locked by automationstate: needs discussionThis needs some more discussionThis needs some more discussiontype: enhancementImprovements to functionalityImprovements to functionality
What's the problem this feature will solve?
Tons of users are experiencing problems related to #5599, as evidenced by the traffic that we're getting to related issues (past 2 weeks):
This probably leads to a lot of negative feelings not just for pip, but the Python packaging ecosystem in general.
Describe the solution you'd like
Move the current entrypoint from
pip._internal.main:maintopip._internal.cli.main:main(or some other location).Create a function for every known past entrypoint:
pip._internal.main:mainpip._internal:mainpip:mainAt the very least the functions should invoke the correct current pip entrypoint. This alone would prevent a lot of needless suffering and should be easy to implement and test.
Later we could also consider printing a warning, but I'd rather handle that as a separate issue since this is useful on its own.
Alternative Solutions
Additional context
sys.exit(main()) TypeError: 'module' object is not callable#7205