| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
|
| |
before we write out a new one. I got hosed once on my big list when
the process got killed by some load dog software when it was in the
middle of writing out the database.
|
| | |
|
| |
|
|
|
|
| |
Note that it does have one problem... If you have cookies off, you
have to log in every time, plus your changes don't take effect!
That definitely needs to be fixed.
|
| |
|
|
|
|
|
| |
Slight docstring rewrite
MailList.__init__(): When raising an MMUnknownListError, include the
given list name in the value.
|
| | |
|
| |
|
|
| |
member's account name, not "-owner".
|
| |
|
|
|
|
|
|
|
|
|
| |
"obscured" is set. (Turns out that this routine is so far used only
in places where the unobscured URL is fine. mm_utils.ObscureEmail()
is generally used when the obscured addr is needed.)
reminders_to_admins: New list option that says to send the password
reminders to the user's corresponding "-owner" address - this is for
lists that have only other lists as members. This way, the reminders
don't get posted.
|
| |
|
|
|
|
|
| |
do so.
Added a copy of the GNU GPL.
Added information about mailman-users in README, and reworded some text in there (made the credits less verbose... perhaps they should move to a credits file?)
|
| |
|
|
| |
field to better explain where it is used.
|
| |
|
|
| |
well as the rest of the stuff.
|
| |
|
|
|
| |
separates a detail elaboration from the brief description, so its lack
made the two into a long brief description).
|
| | |
|
| |
|
|
| |
for the real_name setting - in the brief description.
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
(together with the 'host_name' setting) is crucial for lists that use
some alternate address of a host that has multiple identities. (I
have to go through everything to make sure these addresses are
utilized everwhere they ought to be, but this capability will be
crucial for, eg, clients of ISP's that have their own client domains,
and of course want to have their mailman setup reflect that domain!)
.GetConfigInfo(): Added long descriptions for several variables that
needed them, including particularly the real_name - have to make sure
that people know they can change the case, but not anything else about
it, and why.
|
| | |
|
| |
|
|
| |
for reflection loops.
|
| | |
|
| |
|
|
|
|
| |
rectification routine, versions.Update().
.Load(): Pass stored state into CheckVersion().
|
| |
|
|
| |
subscription of one list to another.
|
| | |
|
| |
|
|
| |
__version__ info.
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
| |
browser).
|
| | |
|
| |
|
|
| |
section.
|
| |
|
|
|
| |
they can be recognized in post script, eg to avoid sending hold
messages to spammers.
|
| |
|
|
|
|
|
| |
checkins.
.DoActualRemoval(): Fixed neglect in certain cases to initialize one
of the reporting vars.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- An optional 6th field constitutes an elaboration of the option
description. The idea is to have a 'help' link for each short
descr that has a long one, which puts the long descr in a help
browser.
- The option list entry can be a simple string, consitituting a
header to be included in the presentation.
I refined all the descriptions so those needing the help elaboration
got one. (Some of the brief descriptions got more brief, thereby.) I
haven't yet put in the help links functionality, but have rectified
the admin cgi script for the new format - in the process breaking the
different sections from one long, unwieldy page into several subpages.
Entirely Disabled "filter_prog" option. It was not implemented,
anyway, and it does not seem like a good idea to offer maillist
managers the ability to invoke arbitrary routines on the maillist
server. Perhaps some repertoire of functions would make sense,
dunno.
welcome_msg, goodbye_msg initial values are '' instead of None, to be
more congruent to the text widget null values.
"bad_posters" => "forbidden_posters".
|
| |
|
|
|
| |
came, so we can log it - and log the deletion (in the "subscribe"
log).
|
| |
|
|
|
|
| |
Add .GetOptionsURL() method.
Spell acceptable_aliases option correctly.
|
| |
|
|
|
| |
would make .HasExplicitDest() return true for every list with an empty
acceptable_aliases - fixed.
|
| |
|
|
|
|
|
|
| |
acceptable_aliases, which designate alternate account names by which
this system may be known. This will be useful for lists transitioning
from old names (eg, currently happening jpython -> jpython-interest)
and for cascading lists, ie lists that are legitemately included by
others...
|
| | |
|
| |
|
|
|
|
|
| |
them before presenting an ordered list.
Do not pad subject prefix with a trailing space - but prepare the
default one with a trailng space.
|
| |
|
|
|
| |
.ApprovedAddMember(): Do the .Save() before trying to send the
subscribe ack.
|
| |
|
|
|
|
|
|
| |
concurrent mm_defaults.py checkin for details.
Moved basic logger functionality to mm_utils.Logger() and
particularly, .StampedLogger(), so it could be used outside of lists,
as well as within them via the LogMessage() routine.
|
| |
|
|
|
|
| |
maillist session. I was running out of file descriptors in the
extensive map_maillist() type activities. Not sure if it's the log
files, but it can't hurt.
|
| |
|
|
|
|
|
|
|
|
|
| |
trailing '/' to web_page_url if not already there. (Only one, so far.)
.Load(): call CheckValues() just before CheckVersion().
Add the subject line to the info passed to 'post' .AddRequest(), so it
is available for the administrator notification and summary.
Remove some debugging prints.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
notices sent whenever a new admin request (vetted subscriptions or
list postings) arrives, in addition to daily notice.
Accommodate comments in header-match expr. And log bad header-match
exprs, rather than raising an error.
Moved header-prefix prepend to before digest and archive saves.
Moved list_names() to mm_utils.
Changed text of goodbye_msg var so to *not* imply that unsubscribe
acknowldgements are *not* sent when the goodbye_msg is empty.
Include list name in __repr__!
Whoops - last checkin had missing comma, put that sucker back in
immediately.
|
| |
|
|
|
|
|
|
|
|
|
| |
recognizing and collecting email addrs.
Make the expansion of the message headers and footers during message
post, rather than during message setting. This will enable two things.
Most importantly, list administrators can employ the format
variables from the web interface (but they need to find out what the
various keys are - via the to-be-done help system). Also, dynamically
changing values could be referenced.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
a string with "field: matchexp" lines, and, if set, messages with
header fields matching matchexp are held for approval.
MailList.parse_matching_header_opt separates the header and matchexp
using the first ':' (and trims leading whitespace off of the
matchexp), and MailList.HasMatchingHeader() does the check. And of
course, MailList.Post() does the check,
MailList.LogMsg(): given the log category, add an entry to the log
file for that category. Files all situated in setting of (new) config
opt, LOG_DIR. (Stored the open files on a list, potentially useful
when running as a long running daemon...)
MailList.ApprovedAddMember(): gets a check for existing membership -
possible when more than one subscription for the same address is
okayed from the same pending batch of subscription requests - before
it was creating multiple subscriptions, and things blew up when
attempts were made to revoke the subscriptions...
Bracketed all potentially file-creating 'open()'s
(MailList.CreateFiles(), .Save(), .Lock(), .LogMsg()) in os.umask
suspension/resumption, so that the files are created with the intended
permissions.
Added a repr which indicates the lock state of the file. (Helpful for
my exploratory programming.)
Reworded some option descriptions.
|
| |
|
|
|
| |
site's customized version. New sites can use mm_cfg.py.dist as an
example, conversely.
|
| |
|
|
|
|
| |
Move the msg_header and msg_footer defs back into the non-digest
options section. (The defaults values are good enough so that the
options don't have to be brought to the admin's attention.)
|
| |
|
|
| |
(And incidentally, first test of checkin after transition to cvs.)
|
| |
|
|
| |
program input box.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Employ defaults from mm_cfg.
Rearrange some of the options so, eg, the list descriptions options
are together near the top.
Create the retained-mail file, regardless of whether it will be used.
(This way things won't blow when the option to use the file is
selected after list init time.)
Wrap some long lines.
|