[Python-Dev] PEP 405 (pyvenv) and system Python upgrades

Terry Reedy tjreedy at udel.edu
Sat May 5 05:48:48 CEST 2012


On 5/4/2012 4:49 PM, Carl Meyer wrote:
> Hi all,
>
> The recent virtualenv breakage in Python 2.6.8 and 2.7.3 reveals an
> issue that deserves to be explicitly addressed in PEP 405: what happens
> when the system Python underlying a venv gets an in-place bugfix
> upgrade. If the bugfix includes a simultaneous change to the interpreter
> and standard library such that the older interpreter will not work with
> the newer standard library, all venvs created from that Python
> installation will be broken until the new interpreter is copied into them.

CPython is developed, tested, packaged, distributed, and installed as 
one unit. It is intended to be run as one package. If something caches a 
copy of python.exe, it seems to me that it should check and update as 
needed. Could venv check the file date of the current python.exe versus 
that of the one cached, much like is done with .pyc compiled code caches?

> Choices for how to address this:

> 1) Document it and provide a tool for easily upgrading a venv in this
> situation.

Right.

> 4) Adopt a policy of interpreter/stdlib cross-compatibility within a
> given X.Y version of Python. I don't expect this to be a popular choice,

What a droll sense of humor ;=).

-- 
Terry Jan Reedy



More information about the Python-Dev mailing list