[Import-SIG] PEP 382: Partial packages
Eric V. Smith
eric at trueblade.com
Sun Jul 10 19:59:03 CEST 2011
On 07/10/2011 01:27 PM, "Martin v. Löwis" wrote:
> I've been talking to people about how things should be named in PEP 382.
> I think "namespace package" is the wrong name for the feature: every
> package is a namespace, as is every class, object, and function. In
> setuptools, there might have been a point in calling it "namespace
> package" to indicate it is a *mere* namespace (i.e. can't contain
> code on its own); this won't be the case for the PEP 382 feature.
I agree "namespace package" is not a great name. I don't see any
particular problem with changing to a different name, though.
> Likewise, people had objections to the .ns extension:
> - as Phillip points out, people may confuse the file with actually
> being a namespace
> - the .ns extension does not indicate that it belongs to Python,
> which apparently is important to people (who otherwise don't
> know what piece of software is in charge of that file); this
> is also a flaw in Phillip's proposed '.contrib' file
> - the extension asks to invoke Godwin's law
In my head I was thinking .pyns, but I thought people might pronounce
the "y" as a long "e". I hadn't thought of Godwin's law with .ns, but I
see your point.
> So here is my proposal:
> - the feature defined in PEP 382 is called "partial package",
> indicating that the entire package may be more than that.
> "package portion" could work as well, as could "component
> package" or "package component"; "partial package has the
> advantage of raising associations with C#'s "partial classes"
> which are esstentially the same feature (but on a class level).
> - the extension is ".pyp", for "Python Package"
> What do you think?
Partial package works for me. I too like the association with partial
classes. ".pyp" is okay, although I'd avoid saying it stands for "Python
Package", since the presence of the file is not what makes this code a
package, it makes it a partial package.
More information about the Import-SIG