Python and Trove
The Trove project has a policy of trying to write as much of its
code as possible in the form of well-documented enhancements to the
Python standard environment. Here are the things the Trove project
has fed back to Guido Van Rossum so far:
- New features, and documentation patches, for the
standard rfc822.py module which support more
general processing of header spans consisting of defined sets of
legal headers (this is used in the TRL parser).
- New features and complete documentation for the
standard multifile.py module. The new features
make it more flexible and extensible. (It's used by the TRL
parser.)
- New features and complete documentation for the
standard cmd.py module. The new features make it
more flexible and extensible. (They're used, among other places, in
the test harness for Trove's archive.py
module.)
- New features, a test harness, and complete documentation for
the standard smtplib.py module. The new features
include support for ESMTP and issuing SMTP VRFY commands. The
trovesend tool requires smtplib, though it doesn't require the new
features; I put them in while grokking the existing code.
I will probably produce a documented semaphores- and
shared-memory module before I'm done, in order to synchronize
instances of the shovel. This module may incorporate Vladimir
Marangozov's well-designed but undocumented semaphore
module, depending on how license negotiations go with
INRIA.
Eric S. Raymond <esr@snark.thyrsus.com>