[Distutils] PEP 376 for Distutils

Floris Bruynooghe floris.bruynooghe at gmail.com
Tue Feb 24 19:21:32 CET 2009


On Mon, Feb 23, 2009 at 09:53:17PM -0500, P.J. Eby wrote:
> At 01:50 AM 2/24/2009 +0100, Tarek Ziadé wrote:
>> PEP, because as far as I
>> can see, the namespace package boilerplate in setuptools is using
>> pkgutil.extend_path which
>> fixes __path__ variables on the fly. So I can't think of a case where
>> a static __init__.py file
>> will be shared, thus removed.
>
> When a distutils package does it.  I'm not positive, but if 'pip'  
> supports namespace packages without using .pth files, then it has to use 
> a shared __init__ also.
>
> And in the long run, easy_install will do this too.
>
> So, the uninstallation code should simply not remove file(s) that are  
> referenced by more than one manifest in the target directory -- a  
> relatively simple, future-proof safeguard, that doesn't require any  
> specific knowledge of "namespace packages" per se.

But it does require that the uninstall reads all *.egg-info/RECORD
files in a site directory when uninstalling.  That's slow, but I guess
that's fair enough.


Regards
Floris

-- 
Debian GNU/Linux -- The Power of Freedom
www.debian.org | www.gnu.org | www.kernel.org


More information about the Distutils-SIG mailing list