[Distutils] Partial installs for in-process distribution upgrades (was: Installing packages using pip)

Paul Moore p.f.moore at gmail.com
Thu Dec 10 05:16:05 EST 2015

On 9 December 2015 at 21:35, Robert Collins <robertc at robertcollins.net> wrote:
> On 10 December 2015 at 08:39, Erik Bray <erik.m.bray at gmail.com> wrote:
>> Apologies for resending this--my original message got buried in
>> unrelated commentary about how *nix filesystems work.  Resending with
>> new subject line...
> I think its going to break in nasty ways for users on Windows, on a
> regular basis.

Agreed. I think that, regardless of debates on how well (or otherwise)
particular operating systems handle "in place upgrades", it's a bad
idea in principle to try to upgrade a running system, unless that
system was designed from the ground up for such behaviour (e.g.,

Even if it can be made to work, documenting the implications and
restrictions would be a nightmare.

I think that it's better to take a simple approach, and say that you
should never upgrade a Python package that's in use, and it's
recommended not to import a package that was installed since your
Python session started (this latter probably does work in theory, but
"unsupported" is an easier position to take than trying to make sure
we didn't miss anything).

If other languages in Python's niche *do* properly support in-place
upgrading, then we can reconsider, but in that case we'd have prior
art to look at to see how they did it.


More information about the Distutils-SIG mailing list