| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
membership. The next step is to write an XML importer that reads this file.
I'm not 100% sure that all the import data is included yet, but the intent is
that this will be the official way to move mailing lists.
A few notes: member passwords are not included by default, the idea being that
if we enable XML dumping from the web, we don't want the clear text user
passwords to be leaked. A command line option includes the member passwords.
Also, the various substitutable texts (i.e. those that include %-strings) will
be autoconverted to $-strings. In Mailman 2.2, we'll only have $-strings,
although this is not yet enforced in other parts of the code yet.
Convert config_list.py to mmshell, $-strings, and optparse.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
| |
through config_list caused a traceback.
|
| |
|
|
| |
don't have permission for. Closes SF #646571.
|
| |
|
|
| |
ALLOW_OPEN_SUBSCRIBE. UHUAK.
|
| |
|
|
|
|
| |
and cron scripts. When code/status == 0, there's no error (it's
likely --help output) so send that to stdout. Otherwise, it's an
error and the output goes to stderr.
|
| |
|
|
| |
Document.addError()
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
on the way out of the mailing list via getValue(). Always defer to
getValue() before getattr() is used. This lets us simplify the logic
a bit, but we still take care to print useful representations of the
data. Use splitlines() instead of assuming lines are \n separated.
getPropertyMap(): New function to return the reverse mapping of
attribute names to the gui components that define them.
FakeDoc: Dummy class definition which defines an API used by the gui
components when an error occurs.
do_input(): Teach this about the attribute transformations on the way
into a mailing list via _setValue(). Yes, this is a non-public
method, but there seems to be no other way. :(
|
| |
|
|
|
|
| |
sequence of 2-tuples. We're only interested in the first element of
these 2-tuples, since that is the one that names the subcategory (the
second element is a description).
|
| |
|
|
| |
scripts.
|
| |
|
|
| |
signature.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
into the script's #! line -- based on --with-python settings, without
losing CVS revision history.
#! /usr/bin/env python
becomes
#! @PYTHON@
which gets substituted for in configure.
|
| | |
|
| | |
|
| |
|
|
|
|
|
| |
comments a little more palatable. L-strip all lines, strip out html
tags, and convert entities > and <
Still not perfect, but much better, and it's not worth perfecting.
|
| |
|
|
|
| |
Use extended print statement, string methods, and other Python 2.0
features.
|
| |
|
|
|
|
|
| |
insensitive. list_lists prints them out using their real name -- not
their internal name -- and they should differ only by case.
Closes SF bug #113742 and patch #101434.
|
| |
|
|
|
| |
special-case `subscribe_policy' when ALLOW_OPEN_SUBSCRIBE is false.
Yuk.
|
| |
|
|
|
| |
Autoresponse config variables to dump. Also, massage FileUpload type
vars the same way that Text vars are processed.
|
| | |
|
| |
|
|
| |
with an underscore).
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
mailing list. In all cases, catch the base exception class
MMListError, and output a semi-standard error message which also
contains the str() of the actual exception details (is this too
much?).
Also:
config_list: slightly different usage() printing
find_member.scanlists(): print a message if a MMListError occurs
when opening the mailing list object
remove_members: Wrap actual DeleteMember() calls in a try/finally
to be sure the list is saved and unlocked should an exception
occur. Hmm, should it be all or nothing?
|
| | |
|
|
|
used to dump a list's current configuration variables to a file (or
stdout), or to change a list's variables based on the input of a
file.
Doesn't quite get us to simple conversion of MD style config files,
but writing a translator should be an easy step from here.
|