a few weeks I started a debate on how to name things when the
transition is made to a distutils package structure. My major
objection to going with Chuck's suggestion of putting a 'Webware.pth'
file in PYTHONHOME/site-packages/ was that the names MiscUtils and
WebUtils are ambiguous and don't belong in PYTHONPATH. I would have
no objections to using Webware.pth if we were to rename these
So I have three proposals for Webware 0.7:
1) merge MiscUtils and WebUtils into a package called 'WebwareUtils'.
The non-web / web split feels rather artificial and I can never
remember whether something is in WebUtils or MiscUtils. If people
really want to keep this split, then how about 'WebwareUtils.Web'?
2) put all copies of external modules (cookie, pydoc, introspect,
cgitb, etc.) together in a subpackage called WebwareUtils.external,
W.copies, or something else like that, rather than leaving them lying
about in MiscUtils.
3) get rid of all the deprecated functions that are in there.
They've been deprecated for a year now so it should be safe to
That would give us the following package structure:
PSP/ (really should be rename as
there is another module with the same name)
CheetahForWebware/ (just the Webware plugin bit)
Chuck, the reason why I described the .pth convention as a 'hack to
be avoided' was that the creators of that convention also describe it
as a hack. It was added for backwards compatibility ... read on ...
"If the package really requires adding one or more directories on
sys.path (e.g. because it has not yet been structured to support
dotted-name import), a 'path configuration file' named package.pth
can be placed in either the site-python or site-packages directory.
... A typical installation should have no or very few .pth files or
something is wrong"
--- quoting from the essay in which Guido introduces Python's Packages
# Well, we're not actually fully completely finalized yet: we still
# have to deal with 'extra_path', which is the hack for allowing
# non-packagized module distributions (hello, Numerical Python!) to
# get their own directories.
" --- quoting from a comment in distutils/command/install.py