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

installation todos since vendoring pkg_resources... #1449

Closed
qwcode opened this issue Jan 10, 2014 · 11 comments
Closed

installation todos since vendoring pkg_resources... #1449

qwcode opened this issue Jan 10, 2014 · 11 comments
Labels
auto-locked Outdated issues that have been locked by automation
Milestone

Comments

@qwcode
Copy link
Contributor

qwcode commented Jan 10, 2014

3 todos related to installation since the vendoring of pkg_resources:

  1. rebuild get-pip.py with the latest pip; specifically remove the setuptools/pkg_resources import check (https://github.com/pypa/pip/blob/develop/contrib/build-installer#L13)
  2. we have to release a wheel of pip, for get-pip.py to work without setuptools
  3. update the install instructions.

I have #3 done locally, and tested a locally updated get-pip.py using this

python get-pip.py --find-links=/local/pip/wheel/location --no-index

#1 should wait till we have as many fixes as possible.

do we have any concerns about #2?

@dstufft
Copy link
Member

dstufft commented Jan 10, 2014

The biggest concern is that pip 1.4 didn't have proper script handling for Wheels so if you upgrade from 1.4 to 1.5+ with pip wheels you won't have a pip script. Not sure how much we care because in 1.4 Wheels were opt in an experimental.

@dstufft
Copy link
Member

dstufft commented Jan 12, 2014

Just a thought, if we setup the dependency information correctly, then pip can depend on setuptools in the metadata, which would cause it to install setuptools itself even from a Wheel making get-pip.py give you pip + setuptools in one command.

@qwcode
Copy link
Contributor Author

qwcode commented Jan 12, 2014

or have pip.bootstrap() include running pip install setuptools.

@dstufft
Copy link
Member

dstufft commented Jan 12, 2014

Yea that would work too.

@qwcode
Copy link
Contributor Author

qwcode commented Jan 12, 2014

but I'm imagining the people who'll relish the setuptools-free experience for whatever reason, and we're not allowing that. maybe a --no-setuptools option for get-pip.py.

@dstufft
Copy link
Member

dstufft commented Jan 12, 2014

I'd be ok with that, though I don't know if it's needed. Worst case those people can always uninstall setuptools.

@qwcode
Copy link
Contributor Author

qwcode commented Jan 12, 2014

so, ok, let's add that call, and make the install instructions even easier.

@qwcode
Copy link
Contributor Author

qwcode commented Jan 12, 2014

although, I'm concerned pip install setuptools won't recognize existing distribute installs using the vendored pkg_resources. need to confirm what will happen in that case. that could be a reason to leave this call out.

could check for a distribute install, and don't run the setuptools install in that case.

@qwcode
Copy link
Contributor Author

qwcode commented Jan 12, 2014

I confirmed pip-1.5.1 would force an uninstall of an existing distribute by running pip install setuptools. It's due to the lack of the distribute==setuptools hack (in distribute's pkg_resources, since we using our vendored one), plus the hacks we added for upgrading from distribute to setuptools.

we certainly don't want get-pip.py doing that upgrade automatically. it should check for an existing distribute, and not install setuptools.

@dstufft
Copy link
Member

dstufft commented Jan 12, 2014

Hrm, is that really a bad thing though? Seems like we'd want to get people onto setuptools. Either way though we could just make the bootstrap install setuptools if setuptools isn't importable.

@qwcode
Copy link
Contributor Author

qwcode commented Jan 13, 2014

I'm thinking of the people using distribute from the OS pkg mgr for whatever reason, and we go uninstall it.
It's pros and cons I guess.

if we did a check I was imagining using pkg_resources.get_distribution('distribute') to determine whether to install or not. In the case that they already have the setuptools distribution, pip install setuptools won't do anything.

@dstufft dstufft closed this as completed Jan 21, 2014
@lock lock bot added the auto-locked Outdated issues that have been locked by automation label Jun 5, 2019
@lock lock bot locked as resolved and limited conversation to collaborators Jun 5, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
auto-locked Outdated issues that have been locked by automation
Projects
None yet
Development

No branches or pull requests

2 participants