[Import-SIG] PEP 420: Implicit Namespace Packages
Yury Selivanov
yselivanov.ml at gmail.com
Sat May 5 18:06:48 CEST 2012
On 2012-05-05, at 9:18 AM, Nick Coghlan wrote:
> Now rename zope/ to zope.pyp/ in a full Zope checkout and see how much
> noise you get.
Why can't we modify whatever PEP to simply mark namespace package
with '__init__.pyp' or some other special file? Why rename directories,
introduce ugly suffixes, deal with all the weirdness of importing
just plain directories and guessing that they are namespace packages,
ignoring content in __init__.py etc, instead of plain simple file
marker?
In terms of steps (as Nick illustrated):
With PEP 382, the migration path is:
1. delete all __init__.py files from namespace package portions
2. rename the directories for all namespace package portions to append
the ".pyp" extension
With PEP 420, the migration path is:
1. delete all __init__.py files from namespace package portions
2. there is no step 2
With a marker:
1. $ mv __init__.py __init__.pyp
2. there is no step 2
The first step can be even replaced with
'$ rm __init__.py && touch __init__.pyp', as current __init__.py files
of namespace packages contain only '__path__ = extend_path(__path__ ...)'
crap.
-
Yury
More information about the Import-SIG
mailing list