summaryrefslogtreecommitdiff
path: root/modules
Commit message (Collapse)AuthorAgeFilesLines
...
* Hmm, I didn't think I touched mm_pending since the last checkin. Iviega1998-05-301-2/+4
| | | | | | | | dunno what changed there. In mm_mailcmd, I fixed a bug w/ Scott's code, so that if a reply comes back with no body, the confirm still works. I don't know why he was checking the body and not just the header for the pattern, but I left that check in there in case he had a good reason.
* I must have missed checking this in yesterday. I made it so theviega1998-05-301-3/+8
| | | | recipients could be a string or a list of strings...
* SITE_PW_FILE: Use DATA_DIR as directory to store adm.pw inbwarsaw1998-05-291-1/+1
|
* MISC_DIR => DATA_DIRbwarsaw1998-05-291-1/+1
|
* MISC_DIR => DATA_DIRbwarsaw1998-05-291-1/+1
| | | | 'misc' => 'data'
* Added a MISC_DIR definition. Confirmation stuff should be complete now.viega1998-05-291-0/+1
|
* Integrated Scott's confirmation stuff into mailcmd, and fixed a few thingsviega1998-05-292-43/+97
| | | | in pending...
* Added mm_pending.py to the list of modules.viega1998-05-291-1/+1
|
* Added Scott's mm_pending.py file to the distribution.viega1998-05-291-0/+76
|
* Removed references to SENDMAIL_CMD.viega1998-05-292-2/+0
| | | | | Mailman is now sendmail independant, except that it spits out sendmail aliases w/ newlist...
* Modfied DeliverToUser to use smtplib instead of a call to sendmail.viega1998-05-281-10/+12
| | | | | Note that I'm using my smtplib right now, and not the one that comes w/ Python 1.5. That should probably be changed.
* Moved from mm_cfg.py.dist, this is now an input file for autoconfbwarsaw1998-05-271-2/+3
|
* Added new installs of mm_cfg.py.dist and conditional install ofbwarsaw1998-05-271-1/+6
| | | | mm_cfg.py
* ignore the Makefile and mm_defaults.pybwarsaw1998-05-261-0/+2
|
* Fixed minor conversion typobwarsaw1998-05-261-1/+1
|
* mm_defaults.py copied to mm_defaults.py.in for autoconf generation.bwarsaw1998-05-261-15/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | Hope I merged in all the latest changes! Added Emacs turd added to top of file. RCS crud removed Added PYTHON variable which holds the absolute path to the configure discovered Python interpreter. Added PREFIX and EXEC_PREFIX variables which hold configure's equivalents of --prefix and --exec_prefix (module autoconf 2.12 buglet). LIST_DATA_DIR, HTML_DIR, CGI_DIR, LOG_DIR, LOCK_DIR, WRAPPER_DIR, SCRIPTS_DIR, TEMPLATE_DIR, PUBLIC_ARCHIVE_FILE_DIR, PRIVATE_ARCHIVE_FILE_DIR: All moved to the bottom of this file since users will not typically edit these or the paths they are based on any more. All are calculated relative to PREFIX and EXEC_PREFIX as given by configure. VERSION is also moved to the bottom of the file. This is also generated by configure. The nice thing here is that configure.in is the only file that need be changed when the version number changes.
* mm_defaults.py becomes mm_defaults.py.inbwarsaw1998-05-261-179/+0
|
* Added an Emacs turd to the top of the file.bwarsaw1998-05-261-5/+2
| | | | | | | | Removed RCS crud Removed HOME_DIR and MAILMAN_DIR variables. Users should not need to modify these anymore, since configure will calculate these correctly and put them into the generated mm_defaults.py file.
* Removed RCS crudbwarsaw1998-05-261-3/+73
| | | | | | | | | | | | | | | | | wrap(): New function which implements the wrapping and filling algorithm, as described in the function's docstring. After talking it over with Guido and Ken, this seemed like the best compromise for ensuring that emailed messages to users look okay, when their MUAs don't auto-wrap. SendTextToUser(): Added optional argument raw which defaults to zero (meaning by default, wrap and fill as per the rules in wrap()). When raw=1, no wrapping or filling of the text argument is performed. While Ken thinks that wrapping/filling should be turned off by default, I think there are many more cases where the text should be wrapped and filled than not, so this go'round tries to minimize code changes. If the consensus is to invert the default value, we can make that change after grep'ing the code.
* Calculate site password file location in global scope, using abwarsaw1998-05-261-4/+6
| | | | | different variable from mm_cfg. The file location is stored in SITE_PW_FILE.
* Several changes:bwarsaw1998-05-261-46/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | Removed RCS crud In any text sent to the user, substitute `maillist' with `mailing list' SUBSCRIBEACKTEXT: All %s substitutions are replaced with $(varname)s substitutions with the corresponding dictionary interpolation added in Deliverer.CreateSubscribeAck(). With too many %s substitutions, it gets too hard to keep track of the right number of %s's and their proper substitution. Deliverer.SendTextToUser(): Added optional raw argument, defaulted to 0 (meaning default is to wrap/fill -- I know KLM and I disagree about this ;-). This argument is passed straight through to mm_utils.SendTextToUser(). Deliverer.DeliverToList(): When calculating the command to os.popen(), include as the first argument the configure calculated path to the Python interpreter to use. It is possible that `python' is not on the path when this gets executed (or that the wrong interpreter will be found). Deliverer.CreateSubscribeAck(): Use dictionary interpolation. Also, The header message seems redundant and unnecessary to me, so I removed it.
* Removed RCS crudbwarsaw1998-05-261-3/+3
| | | | | Archiver.InitVars(): Small rewrite of self.archive_directory calculation.
* Removed RCS crudbwarsaw1998-05-261-8/+10
| | | | | | | | | | | | (SUBSCRIPTION_AUTH_TEXT, POSTING_AUTH_TEXT): Some small, but important formatting changes. The wrapping/filling algorithm says not to fill any lines that begin with whitespace, so for the two embedded lists that shouldn't be filled, start the lines with a couple of spaces. RefuseRequest(): Call SendTextToUser() with raw=1 so that the text of the original message will not be wrapped/filled. Some of the text should probably be wrapped/filled but that's too hard to separate out right now.
* Remove RCS crudbwarsaw1998-05-261-3/+4
| | | | | | | Slight docstring rewrite MailList.__init__(): When raising an MMUnknownListError, include the given list name in the value.
* package marker filebwarsaw1998-05-261-0/+0
|
* Autoconf template for this directory's Makefile.bwarsaw1998-05-261-0/+73
|
* Fixed a typo in the zipcode.viega1998-05-2620-38/+38
|
* Sending the password notices (subscribe ack and reminder) to -adminmailman1998-05-261-7/+17
| | | | addr if new list option reminders_to_admins is set.
* Adding a list option that says to send the password reminders to themailman1998-05-262-2/+10
| | | | | | | | | user's corresponding "-owner" address - this is for lists that have only other lists as members. This way, the reminders don't get posted. (When we have scott's alternate-address confirmation stuff integrated we may not need this, but i don't know if i'll have time to do that before then end of the month, when the password reminders are delivered.)
* .ScanMessage(): Consolidated BOUNCE and REMOVE handling on themailman1998-05-261-34/+29
| | | | | | | | candidates structure, so the addresses are all pre-processed similarly (but the actions are still HandleBouncingAddress() or RegisterBounce()). Fixed a few bounce log messages that were missing some context.
* Whoops - reminder_to_admins will cause "-admin" to be appended to themailman1998-05-261-3/+3
| | | | member's account name, not "-owner".
* .GetOptionsURL(): only use the unobscured addr when optional argmailman1998-05-261-4/+17
| | | | | | | | | | | "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.
* Added copyright notices to all source files where I am legally entitled to ↵viega1998-05-2520-18/+357
| | | | | | | 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?)
* Slight simplification of remaining-messages log notice.mailman1998-05-241-3/+2
|
* Added provision for a bounce message where the email address is on aklm1998-05-241-3/+23
| | | | | | | | | | | | | | | | different line than the cue. Thus we have to use two separate checks: - One regex, 'separate_cue_1', to identify this as an failure notice. The flag var, 'check_prospects', is set if this regex triggers. - Another regex, 'separate_addr_1', adds the addr to prospects if triggered. Prospects are only used when 'check_prospects' has been set, to ensure that the message being examined is in fact a failure notice. (The two hosts i'm dealing, parrot and glyph, happen to run run berkeley sendmail 8.8.5, which happens to issue failure notices like this. I would not be surprised if more recent sendmails did, too...)
* .DeliverToList(): Append a sender field pointing to the list admin.klm1998-05-241-1/+2
|
* Use more of the available space in the basic description for 'info'klm1998-05-241-2/+5
| | | | field to better explain where it is used.
* .RegisterBounce(): I think this corrects the bounce log reporting ofklm1998-05-211-3/+4
| | | | | | | | the remaining number of bounces a member is allowed (within the stipulated time frame) before exceeding the limit. If this is right, with the other bounce-handling refinements i feel a lot more confident about predicatable, well-mannered behavior from the bounce management stuff...
* Prevent bounce loops when admin-action recipient is itself theklm1998-05-211-30/+65
| | | | | | | | | | | | | | | bouncing address - before sending the notice, check whether the bouncing address is among the list owner addresses. And otherwise, include (attach) a copy of the actual bounce notice in the admin-action message. Otherwise there is no record the administrator can examine. Finally, send both failed and successful admin-action notifications to the list administrator. Before, failed action (e.g. inability to locate the specific user) were sent to the mailman site admin - this was while i was debugging the bounce handling, but it looks a lot better now.
* Neglected to mention on last checkin:mailman1998-05-201-10/+10
| | | | | | | | | | | | | ScanMessage(): added final-step massage of all candidates to remove encompassing <, > angle brackets, if any, and check against already processed candidates. (In order to change something to enable a checkin i made a spelling change of something trivial that i resisted for a while - substituted "message_grokked" for "message_groked". I'm pretty sure the double k is right, but don't have a copy of stranger in a strange land happy to check. Anyway, i keep reading "groked" like it would rhyme with "stoked", which just can't be right...-)
* Do not send "user disabled" notices to admin when user is alreadymailman1998-05-201-17/+35
| | | | | | | | | | | disabled. The idea is that numerous outstanding bounces do not each require renotification of the admin. DisableBouncingAddress(), RemoveBouncingAddress(): changed return signatures to indicate whether email notification is necessary for this action, and in Disable version, indicate not necessary when user is already disabled. In all other cases, notification is indicated, whatever the status.
* .FormatDisabledNotice(): Text to put at top of user options pages tomailman1998-05-201-26/+46
| | | | | | | | | prominently point out when the user's delivery is disabled. (When a user's email is disabled due to bounces, they probably would not notice the checked button way down the page.) Using "from htmlformat import *" to simplify references to formatting objects.
* .DeleteMember(): Delete the option settings for the user (if any), asmailman1998-05-181-1/+3
| | | | well as the rest of the stuff.
* Really cosmetic change to the rule (dashes became underscores) in themailman1998-05-122-4/+4
| | | | default message footer.
* Essential cosmetic changes - one typo, and one missing comma (whichmailman1998-05-121-3/+3
| | | | | separates a detail elaboration from the brief description, so its lack made the two into a long brief description).
* Incremented version to 1.0b3.klm1998-05-042-6/+10
| | | | | Changed mailman URL to point to john's site, and included a comment explaining what it is for.
* Removed change_boundary() - not necessary, now that the Digest classklm1998-05-041-17/+1
| | | | is doing the right thing right off the bat.
* Removed constant i added but didn't use (SUBJ_REGARDS_PREFIX).klm1998-05-032-7/+2
|
* .SaveForDigest():klm1998-05-021-18/+55
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Digest messages now keep all headers except 'received', 'errors-to', and all 'x-*' ones (and any continuations of these). - Mime digest messages now properly (i believe) contain mime attachments. (The key was preserving the original content-type header.) - It may be that some more headers should be trimmed, ie for the sake of the non-mime recipients - but actually, it doesn't look cluttered, for the few sample messages i tried. - The entries in the table-of-contents have the redundant subject-prefix string removed. Digest: Redundant "Vol" in masthead string removed. I took a look at rfc 934 (thanks, barry), which is the pre-Mime standard for encapsulating (nesting) messages in other messages, and it looks like the key is to have an "encapsulation boundary" that starts with a "-" dash - looks like mime extended from this. However, the old rule for nesting an encapsulated message within another encapsulated message is to insert a "- " space in front of the original encapsulation boundary. Unfortunately, this would break mime encapsulation, so i'm not implementing this part of the old burstable-digests standard. The rest of it *may* be ok, though, in case anyone has the old-style bursting readers... Anyway, i've done about as much as i was hoping to do with the digests format - i don't forsee devoting much more attention to features, just to ironing out bugs.
* .SendDigest(): digest_text wasn't defined - had to read the file.klm1998-05-011-2/+2
|