[Python-Dev] PEP 402: Simplified Package Layout and Partitioning
P.J. Eby
pje at telecommunity.com
Sat Aug 13 00:42:31 CEST 2011
At 05:03 PM 8/12/2011 -0400, Glyph Lefkowitz wrote:
>Are there any rules about passing invalid identifiers to __import__
>though, or is that just less likely? :)
I suppose you have a point there. ;-)
>I still like the idea of a 'marker' file. It would be great if
>there were a new marker like "__package__.py".
Having any required marker file makes separately-installable portions
of a package impossible, since it would then be in conflict at
installation time.
The (semi-)competing proposal, PEP 382, is based on allowing each
portion to have a differently-named marker; we came up with PEP 402
as a way to get rid of the need for any marker files (not to mention
the bikeshedding involved.)
>What do you mean "building of a virtual path"?
Constructing the __path__-to-be of a not-yet-imported virtual
package. The PEP defines a protocol for constructing this, by asking
the importer objects to provide __path__ entries, and it does not
require anything to be imported. So there's no reason to
re-implement the algorithm yourself.
>The more that this can focus on module-walking without executing
>code, the happier I'll be :).
Virtual packages actually improve on this situation, in that a
virtual path can be computed without the need to import the
package. (Assuming a submodule or subpackage doesn't munge the
__path__, of course.)
More information about the Python-Dev
mailing list