| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
| |
after this commit, I have to fix the filename of
Mailman/bin/show_qfiles because of silly svn restrictions.
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
use $-strings and optparse.
A side effect of the rewrite is that list_members -d and -n now require their
argument, whereas before they were optional (but that is counter to command
line parsing standards and not supported by optparse). Now, instead of bare
-n use '-n any' and instead of bare -d use '-d any'.
Fix ReopenableFileHandler.emit() to ensure that all lines end in a newline.
In i18n.py, create and use a subclass of string.Template so that dotted
attribute paths are legal in $-strings. So for example, if you have an object
'foo' in one of the namespaces and that has an attribute 'bar', you can say
"$foo.bar" to print the value of foo.bar. Should reduce the number of
extraneous local variables just to do the attribute path traversal.
|
| |
|
|
|
|
|
|
|
|
| |
use optparse. Update newlist and rmlist to get their version string entirely
from mm_cfg.MAILMAN_VERSION instead of having to build that string up each
time.
Fix the symlink source in the Makefile.in.
Remove b4b5-archfix entirely.
|
| |
|
| |
to the list admin to the mailman.pot file.
|
| |
|
|
|
|
|
|
|
|
|
| |
- Remove the LogStdErr() calls from all the scripts/* scripts.
- Convert the LockFile.py code to use the logging logs. Also do general code
cleanup in this module. Note that the 'withlogging' argument to __init__()
has been removed, as we can use logging's mechanisms to control how much of
LockFile will get logged (by default, not much).
- Add the 'mailman.locks' logger to loginit.py
- Remove Mailman/Handlers/Sendmail.py once and for all
- Remove LIST_LOCK_DEBUGGING from Defaults.py.in
|
| |
|
|
|
|
| |
* mailman.po: Updated Vietnamese translation.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Modify Mailman.i18n._() to understand string.Template style $-strings. The
function now looks in the frame's locals and globals for a variable
__i18n_templates__ which if True (defaults to False if missing) says that the
string being translated uses $-strings instead of %-strings.
newlist and rmlist both set __i18n_templates__ = True in their module
globals.
Rewrite ReopenableFileHandler to better ensure that nothing we log (even
random 8-bit garbage) can cause an error in the logging subsystem. First, we
open the underlying log file using a utf-8 codec, but if we get a UnicodeError
when writing a log message to the stream, we encode the string with the
'string-escape' codec, which should pretty much makes any string data
loggable.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
an uber-shell (called mmshell for now for lack of a better name). The reason
I'm doing this is because while I understand and still accept the reason for
it, I really hate having to re-run configure (or config.status) every time I
make a change to a bin script. mmshell looks at argv[0] to figure out which
Mailman.bin module to run.
Move newlist and rmlist to the new framework, but also, rewrite newlist to use
optparse instead of getopt. Much nicer. Also convert it to use $variables
for i18n even though the i18n._() function hasn't yet been updated to handle
these (it will soon). rmlist hasn't yet been optparse-ified, but that's soon
too. :)
|
| |
|
|
|
|
| |
* Defaults.py.in: Added Vietnamese to LANGUAGE_DICT.
|
| |
|
|
|
| |
and is causing a problem on build.
Clytie Siddall <clytie@riverland.net.au>
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
| |
I didn't update cron/mailpasswds because that is going away. cron/disabled
and cron/gate_news are only minimally tested.
- Instead of using the RotatingFileHandler for our logs, use our own
ReopenableFileHandler, which only minimally derives from FileHandler and
implements a reopen() method. I think it's generally better to leave file
rotation to external tools such as logrotate.
- Remove some Python 2.1 compatibility stuff.
- Ignore .mo files in messages/vi/LC_MESSAGES
|
| |
|
|
|
|
| |
* mailman.po: Added Vietnamese translation.
|
| |
|
| |
Clytie Siddall <clytie@riverland.net.au>
|
| |
|
| |
Clytie Siddall <clytie@riverland.net.au>
|
| | |
|
| |
|
| |
message that Mailman adds to the admin notification.
|
| |
|
|
| |
Mailman/Makefile.in: Remove Logging subdirectory.
|
| |
|
|
|
|
| |
the builtin types. Two still remain: a check against ClassType and a check
against MethodType. Also, fix some hinky type comparisons to use isinstance()
consistently.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
traces of our crufty old Syslog. Most of this work was purely mechanical,
except for:
1) Initializing the loggers. For this, there's a new module
Mailman/loginit.py (yes all modules from now on will use PEP 8
names). We can't call this 'logging.py' because that will
interfere with importing the stdlib module of the same name (can
you say Python 2.5 and absolute imports?).
If you want to write log messages both to the log file and to
stderr, pass True to loginit.initialize(). This will turn on
propagation of log messages to the parent 'mailman' logger, which
is set up to print to stderr. This is how bin/qrunner works when
not running as a subprocess of mailmanctl.
2) The driver script. I had to untwist the StampedLogger stuff and
implement differently printing exceptions and such to log/error
because standard logging objects don't have a write() method. So
we write to a cStringIO and then pass that to the logger.
3) SMTPDirect.py because of the configurability of the log messages.
This required changing SafeDict into a dict subclass (which is
better than using UserDicts anyway -- yay Python 2.3!). It's
probably still possible to flummox things up if you change the
name of the loggers in the SMTP_LOG_* variables in mm_cfg.py.
However, the worst you can do is cause output to go to stderr and
not go to a log file.
Note too that all entry points into the Mailman system must call
Mailman.loginit.initialize() or the log output will go to stderr
(which may occasionally be what you want). Currently all CGIs and
qrunners should be working properly.
I wish I could have tested all code paths that touch the logger, but
that's infeasible. I have tested this, but it's possible that there
were some mistakes in the translation.
- Mailman.Bouncers.BounceAPI.Stop is a singleton, but not a class
instance any more.
- True/False code cleanup, PEP 8 import restructuring, whitespace
normalization, and copyright year updates, as appropriate.
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
| |
- Remove True/False binding cruft
- Remove __future__ statements for nested scopes
- Remove ascii_letters import hack from Utils.py
- Remove mimetypes.guess_all_extensions import hack from Scrubber.py
- In Pending.py, set _missing to object() (better than using [])
Also, update copyright years where appropriate, and re-order imports more to
my PEP 8 tastes. Whitespace normalize.
|
| | |
|
| |
|
|
|
| |
the trunk. This serves also to test write permission to the svn
repository, and tests email notifications.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
| |
email addresses
and regular expressions matching email addresses whose subscriptions are exempt
from admin approval. RFE 403066.
|
| |
|
|
| |
local_part of the From: address as a 'real name' in the To: header when replying.
|
| |
|
|
| |
get_domain() if VIRTUAL_HOST_OVERVIEW off.
|
| |
|
|
| |
instead of DEFAULT_URL_HOST if VIRTUAL_HOST_OVERVIEW was off.
|
| | |
|
| |
|
|
| |
Bug 1444447.
|
| | |
|
| | |
|
| |
|
|
| |
includes asian codecs or install CJK/Japanese/Korean codecs separately.
|