summaryrefslogtreecommitdiff
path: root/Mailman/Queue/ArchRunner.py
Commit message (Collapse)AuthorAgeFilesLines
* Reorganize the qrunner infrastructure. First, the package has been renamedBarry Warsaw2007-09-291-77/+0
| | | | | | | | | | | | | | | | | | | | | | from Mailman.Queue to Mailman.queue (note the case change to be more PEP 8 compliant). The Switchboard and Runner classes have been moved into the package __init__.py and the previous class modules have been removed. The switchboard cache is removed; I don't think it was ultimately buying us much. Now, just import the Switchboard class and instantiate it directly. Added an IRunner interface. Renamed the ArchRunner to ArchiveRunner. bin/qrunner and bin/mailmanctl are updated accordingly. For the former, it no long accepts -r=All to run all qrunners. You can still use the short name (e.g. --runner=incoming) to run the built-in queue runners, but this design will eventually allow for plugin qrunners by allowing them to be run specifying the full package path to the class. It also now accepts a leading dot to indicate a qrunner class relative to the Mailman.queue package.
* Update copyright years.bwarsaw2007-01-191-1/+1
|
* Massive conversion process so that Mailman can be run from a user specifiedbwarsaw2006-07-081-8/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | configuration file. While the full conversion is not yet complete, everything that seems to be required to run mailmanctl, qrunner, rmlist, and newlist have been updated. Basically, modules should no longer import mm_cfg, but instead they should import Mailman.configuration.config. The latter is an object that's guaranteed to exist, but not guaranteed to be initialized until some top-level script calls config.load(). The latter should be called with the argument to -C/--config which is a new convention the above scripts have been given. In most cases, where mm_cfg.<variable> is used config.<variable> can be used, but the exceptions are where the default value must be available before config.load() is called. Sometimes you can import Mailman.Default and get the variable from there, but other times the code has to be changed to work around this limitation. Take each on a case-by-case basis. Note that the various directories calculated from VAR_PREFIX, EXEC_PREFIX, and PREFIX are now calculated in config.py, not in Defaults.py. This way a configuration file can override the base directories and everything should work correctly. Other changes here include: - mailmanctl, qrunner, and update are switched to optparse and $-strings, and changed to the mmshell architecture - An etc directory has been added to /usr/local/mailman and a mailman.cfg.sample file is installed there. Sites should now edit an etc/mailman.cfg file to do their configurations, although the mm_cfg file is still honored. The formats of the two files are identical. - list_lists is given the -C/--config option - Some coding style fixes in bin/update, but not extensive - Get rid of nested scope hacks in qrunner.py - A start on getting EmailBase tests working (specifically test_message), although not yet complete.
* add OverflowError in exceptions. (CVE-2005-4153 related but not DoS)tkikuchi2006-02-031-1/+1
|
* back porting from 2.1.6tkikuchi2005-08-281-1/+1
|
* FSF office has moved. chdcking in for MAIN branch.tkikuchi2005-08-271-1/+1
|
* _dispose(): Two fixes, related to Daniel Buchmann's report about SFbwarsaw2002-07-251-13/+17
| | | | | | | | | | | bug # 571634. First, catch any ValueError coming from the mktime_tz() call to calculate wildely out of date Date: headers. If we get the ValueError it's likely because the year is insane <wink> and the Date: should be clobbered. The second fix narrows the region where the list gets locked to just the .ArchiveMail() and .Save() calls. No wonder Daniel was getting AlreadyLockedErrors here -- this was clearly broken.
* Update copyright years.bwarsaw2002-03-161-1/+1
|
* Constructor simplification. Since most derived classes are justbwarsaw2002-03-021-3/+1
| | | | | | | specializing the queue directory, make QDIR a class attribute and have Runner's ctor use that instead of an __init__() argument. This lets us get rid of most of the __init__()'s in the derived classes. (OutgoingRunner still needs one though.)
* _dispose(): Move the Save() call into the try (exceptions are morallybwarsaw2001-10-241-1/+1
| | | | equivalent to transaction aborts).
* Convert from mimelib to email.bwarsaw2001-10-011-2/+1
| | | | | Also, use cStringIO directly instead of our own hack-around StringIO module.
* _dispose(): Oops! Remove an outdated comment.bwarsaw2001-05-091-3/+1
|
* _dispose(): Add a new header X-List-Received-Date: which contains thebwarsaw2001-05-091-1/+4
| | | | | | time that Mailman received the message. This header only goes into the archived copy of the message (header name and semantics were discussed on mailman-developers).
* Added missing import.bwarsaw2001-05-011-3/+22
| | | | | | | | | _dispose(): Support for new site-wide date clobbering policy. No longer is the Date: header clobbering a list-specific option, instead ARCHIVER_CLOBBER_DATE_POLICY and ARCHIVER_ALLOWABLE_SANE_DATE_SKEW control how Date: munging happens site-wide (this makes the most sense since the choice of Pipermail vs. external archiver is also made site-wide). See Defaults.py.in for more details.
* intermediatebwarsaw2001-02-151-0/+55