[Distutils] Bilingual namespace package conundrum
Donald Stufft
donald at stufft.io
Thu Jan 1 22:57:35 CET 2015
> On Jan 1, 2015, at 4:54 PM, Barry Warsaw <barry at python.org> wrote:
>
> On Jan 01, 2015, at 03:20 PM, Tres Seaver wrote:
>
>> That sounds right to me. I never really understood the motivation for
>> PEP 420, but if the presence of that file disables it, then it should
>> ensure the "old" behavior regardless.
>
> The motivation is described in the PEP, but briefly, on (many, most, all?)
> Linux distros any single file can be owned by exactly one system package. So
> which package would own e.g. zope/__init__.py?
>
> Before PEP 420, the answer is "well, it's complicated". After PEP 420, the
> answer is "no package, because that file doesn't exist".
>
> This is why the Debian tools delete any stray zope/__init__.py files when they
> are creating any zope.* binary package for Python 3.
>
> I think you're right that removing the version guard will make it work, but
> they won't be PEP 420 packages. I don't think it's possible to make a
> bilingual package a pseudo-namespace package under Python 2, but a PEP 420
> namespace package under Python >= 3.3.
>
> Cheers,
> -Barry
> _______________________________________________
> Distutils-SIG maillist - Distutils-SIG at python.org
> https://mail.python.org/mailman/listinfo/distutils-sig
I’m pretty sure the problem with setup.py develop and setup.py install is because
they are installed as eggs more or less and setuptools probably doesn’t support it.
pip install <whatever> installs it unpacked so it’ll rely on built in importing.
---
Donald Stufft
PGP: 7C6B 7C5D 5E2B 6356 A926 F04F 6E3C BCE9 3372 DCFA
More information about the Distutils-SIG
mailing list