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

easy_install: wrap pip #1030

Closed
wants to merge 4 commits into from
Closed

easy_install: wrap pip #1030

wants to merge 4 commits into from

Conversation

ghost
Copy link

@ghost ghost commented May 15, 2017

No description provided.

@ghost
Copy link
Author

ghost commented May 15, 2017

one thing to keep in mind is that module mode I don't think works on py26, meaning that pip will not be used for that version.

@ghost
Copy link
Author

ghost commented May 15, 2017

@jaraco Before I proceed, is this a valid approach?

@jaraco
Copy link
Member

jaraco commented May 17, 2017

This PR relates to #917.

This is interesting. The first thing I notice is there are several stylistic changes here. While I'm not opposed to stylistic changes, they do distract from the meaningful changes. May I suggest resisting the temptation to make stylistic changes, or if they're important to the implementation, make them as a separate pull request first so they're not visible during the review of the functional changes?

I think you're on the right track here, and I'm eager to see where you take this. I'm a bit concerned about the inclusion of a dependency on pip, as it starts to create a weird circular dependency where pip requires setuptools to build packages during install, but setuptools uses pip to install packages during builds.

Other challenges that need to be considered:

  • Should pip install affect all easy_install or just setup_requires/tests_require? (the former will affect more
  • What are the use cases expected by the current implementation? Do you intend to replace them in a compatible way or will it be backward-incompatible? If the latter, what are the implications (and actions necessary for a system upgrading)?
  • Although the test suite is meant to reflect the required use cases, it's not 100%, so wherever possible, consider ensuring the presence of tests to validate the behavior as it is now (or how we want it to be).

I'll be honest, while I'm hopeful that pip might replace easy_install, it may prove a difficult transition to make. I welcome the effort, but with the understanding that it may prove infeasible to roll out. Anything you can do to help with that effort (soliciting feedback on distutils-sig) will help a lot in getting this ultimately accepted.

@ghost
Copy link
Author

ghost commented May 17, 2017

I'm a bit concerned about the inclusion of a dependency on pip, as it starts to create a weird circular dependency where pip requires setuptools to build packages during install, but setuptools uses pip to install packages during builds.

I was concerned about this but I remember that other people assured me it would not be a problem.

I think you're on the right track here, and I'm eager to see where you take this.

Actually given that egg and whl are both zip formats, it would be possible to use the wheel command and then add those to the pythonpath.

@ghost ghost closed this May 18, 2017
This pull request was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants