[Distutils] PEP439 and upgrading pip

Richard Jones richard at python.org
Fri Jun 14 03:05:14 CEST 2013


On 10 June 2013 06:43, Marcus Smith <qwcode at gmail.com> wrote:

> maybe this was covered before, but I'm looking for clarification on how
> pip upgrades are to work under PEP439.
>
> I see 3 relevant bits right now:
>
> 1) "attempts to import pip machinery. If it can then the pip command
> proceeds as normal"
>
> i.e., once it has a pip installed, it doesn't automatically upgrade on
> subsequent imports.
>

That's the intention. I've modified that paragraph:

"""
The Python installation includes an executable called "pip3" (see PEP 394
for
naming rationale etc.) that attempts to import pip machinery.  If it can
then
the pip command proceeds as normal.  If it cannot it will bootstrap pip by
downloading the pip implementation wheel file.  Once installed, the pip
command proceeds as normal. Once the bootstrap process is complete the
"pip3"
command is no longer the bootstrap but rather the full pip command.
"""



> 2) "A bootstrap is used in the place of a the full pip code so that we
> don't have to bundle pip and also the install tool is upgradeable outside
> of the regular Python upgrade timeframe and processes"
>
> to be clear, what is the "install tool" here?  pip? or the bootstrap?
>

I will edit the PEP to replace "install tool" with "pip":

"""
A boostrap is used in the place of a the full pip code so that we don't have
to bundle pip and also pip is upgradeable outside of the regular Python
upgrade timeframe and processes.
"""


3) "Manual installation of the pip implementation will be supported through
> the manual download of the wheel file and "pip3 install <downloaded wheel
> file>. This installation will not perform standard pip installation steps
> of saving the file to a cache directory or updating any local database of
> installed files.""
>
> I guess this means "manual upgrades" as well?
> this special logic is to be inside pip itself? or an override of "install"
> in the bootstrap (that detects when it's a pip wheel)?
>

I've modified this section to read:

"""
Some users may have no Internet access suitable for fetching the pip
implementation file. Manual installation of the pip implementation will be
supported through the manual download of the wheel file and "pip3 install
<downloaded wheel file>". This installation - since it uses only the
bootstrap
code - will not perform standard pip installation steps of saving the file
to
a cache directory or updating any local database of installed files.
"""

These changes will be online soon.


     Richard
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/distutils-sig/attachments/20130614/9126e7f3/attachment-0001.html>


More information about the Distutils-SIG mailing list