[Distutils] namespace packages

P.J. Eby pje at telecommunity.com
Thu Apr 22 06:10:50 CEST 2010


At 10:18 AM 4/22/2010 +0900, David Cournapeau wrote:
>One problem with the setuptools implementation is
>that several packages sharing the same namespace have files in common,

If that were actually true (it isn't), then it would be considered a 
bug in setuptools.

When you build a package for system packaging (using install --root 
or any of the bdist_* tools that use install --root internally), 
setuptools specifically excludes __init__.py* files from 
installation, and replaces them with uniquely-named '-nspkg.pth' 
files, similar function to PEP 382's package marker files, except 
with more complicated innards.


>Removing this limitation is one of the stated goal of PEP 382.

It's not a setuptools limitation, though.  As I said above, 
setuptools goes to ridiculous lengths to work around the problem; PEP 
382 will merely remove the need for setuptools to do the complex 
work-around, allowing it to drop -nspkg.pth files in favor of the PEP 
382-specified files.


>(setuptools namespace implementation depends on pkg_resources, which is a
>complicated and quite slow piece of code).

Slow at doing what, precisely, and slower compared to what alternative?



More information about the Distutils-SIG mailing list