[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Python 3.4 and ensurepip (rehashed, long)



----- Original Message -----
> TL;DR: Let's re-enable the ensurepip module in Python 3.4, and possibly
>    address some usability issues.  We should descend en masse on Montreal and
>    stage a revolt at Pycon. :)
> 
> Python 3.4 has an `ensurepip` module[1] which implements the specification in
> PEP 453 regarding the explicit bootstrapping of pip in Python
> installations[2].
> This is promoted as a boon to users, especially on platforms without OS
> provided package managers, i.e. not Debian.
> 
> The PEP makes some recommendations for downstreams[3], which we do not
> currently adopt, and maybe shouldn't fully.  Our current Python 3.4 package
> disables ensurepip at build time.

In case you're interested how Fedora will approach this problem, please see this mail on Fedora's python-devel from me [1].
(Yeah, I'm Fedora's python maintainer and I'm eavesdropping here ;))
Basically, we'll add runtime deps on setuptools and pip to python3 package, so systemwide "python3 -m ensurepip" won't actually do anything, since setuptools and pip will already be there. In virtualenv, our custom "rewheel" script (see the referenced mail for more info/links) will repack the system setuptools and pip to wheels archives and install them into the virtualenv.
I've been discussing this with Nick Coghlan quite extensively and he generally likes the approach, so we'll probably be trying to push it upstream for Python 3.5 (our patch is general, so it should work on any distro or even with vanilla upstream ensurepip).

I'll be glad to discuss this/answer all questions that might arise about our approach. I'd really love to see it as a general cross-distro approach.

Regards,
Slavek Kabrda.

[1] https://lists.fedoraproject.org/pipermail/python-devel/2014-March/000580.html


Reply to: