summaryrefslogtreecommitdiff
path: root/scripts
Commit message (Collapse)AuthorAgeFilesLines
...
* SendTextToUser() no longer takes a raw argumentbwarsaw1998-08-291-2/+1
|
* Changing policy about when notifications are sent for posts held forklm1998-08-131-6/+2
| | | | | | | | | | | | | | | | | approval - notifications are now sent even for suspected spam. I was experimenting with avoiding alerting spammers to spam filtering, but i've come to realize that: - Not notifying prevents non-spammers from getting any feedback when they inadvertantly trip a spam sensitivity, and - It's probably best to blast stuff back at spammers. In the common case that the return addresses are useless, no harm, and if the return addrs are good, then the more people using the spam protection, the more spam the spammer gets in response. The moral is, forthrightness is the best policy. Even if it does expose our measures and up the ante in the spam war, security via obscurity is a poor, and often misguided, approach.
* What about this one?bwarsaw1998-08-041-1/+1
|
* Sighbwarsaw1998-08-041-1/+1
|
* Another trivial rsync related changebwarsaw1998-08-041-1/+1
|
* One more timebwarsaw1998-08-031-3/+4
|
* Guess again :-)bwarsaw1998-08-031-2/+2
|
* Contrived change (to test rsync'ing)bwarsaw1998-08-031-1/+1
|
* open(): put filename on the e object as an attribute to mimic the waybwarsaw1998-08-031-0/+1
| | | | Python 1.5.2 will do it (for debugging)
* Using new, tidy mechanism for getting putting a StampedLogger onklm1998-08-031-7/+2
| | | | stderr. (I expect we should do this for all the scripts.)
* Removed obsolete import of StampedLogger.klm1998-08-032-2/+0
|
* Very substantially rewritten. The old driver script let too manybwarsaw1998-07-311-60/+100
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | uncaught exceptions through to the top level. Uncommented out the open() definition. I think this is very helpful during the beta debugging phase. We'll comment this out for 1.0 release (it also won't be necessary in Python 1.5.2, but nobody has that yet!) Exception printing has been changed so that the MultiLogger is no longer necessary. Removes one more potential crash, but also rationalizes print_exception() and print_environment(). There's always exactly two places information goes: 1. To a plain text log file. This could be sys.__stderr__ if no explicit log file is given -- e.g. the Web server's log file. 2. To an HTML sink. This will always be sys.stdout (since we use the `print' statement), and will generally always be connected to the input of the Web browser. Log file printing happens first, just in case (it's better that the server knows what's happening), but we always try to print both. `Main' has been rewritten also. We now do not catch any problems with import sys. If sys can't be imported, then the Python installation is royally screwed -- even `print' won't work! Better to just let the catastrophy percolate up to the Web browser. Even so this should almost never happen. Poke __stderr__ and __stdout__ into the sys module if they aren't already there. GvR says this is a 1.5.1 feature, but we can make it work well enough for older versions of Python, and it's convenient. Give one final shot at printing the traceback and environment if the exception percolates all the way up out of run_main(). This time, just print them to stderr (usually meaning the Web server's error log). Should this fail too, do whatever we can not to generate an end-user visible server error.
* Not sure why this was missing...bwarsaw1998-07-311-0/+1
|
* run_main(): initialize logger and multi to sys.stderr. This is inbwarsaw1998-07-291-0/+5
| | | | | | | case anything breaks between the start of this function and the creation of the real objects, otherwise the calls in the except branch will fail, kicking us back to a low-level exception. using sys.stderr isn't great, but it's better than nothing.
* Use simplified LogStdErr() call to enable error logging from thisklm1998-07-232-12/+4
| | | | module all the time.
* Added a useful debugging hack (commented out).bwarsaw1998-07-221-0/+21
|
* Don't need to check whether the list is locked before doing the unlockklm1998-07-171-2/+1
| | | | - new version of Unlock takes care of that.
* Check for existing lock before unlocking.klm1998-07-151-2/+2
| | | | | | | | | | | | | | | | | QUESTION: The MailList.Unlock() method currently raises two different AttributeErrors when the list is not currently locked (depending on whether or not the lock was previously created). This certainly seems like the wrong exception. We could make .Unlock() check for the lock and return a better exception, or we could have it just return if the list is not locked. I'm inclined towards the latter, but it changes the character of the list locking interface a wee bit. I think it ought to be changed, one way or the other. John, what's your inclination? Ken
* StampedLogger now comes out of the Mailman.Logging.StampedLoggerbwarsaw1998-07-065-13/+15
| | | | | module (we should really create a mail driver similar to the CGI driver).
* Use the new Mailman.Logging package to provide better logging onbwarsaw1998-07-021-20/+23
| | | | | | | | errors. Now all tracebacks get sent to the user as HTML *and* logged to logs/error, although the format of the output is slightly different (not HTML in the latter case). Some rearranging of code, simplification, etc.
* Packagizedbwarsaw1998-06-196-56/+71
|
* New CGI driver script that attempts to import the real script from thebwarsaw1998-06-191-0/+147
| | | | | | | | | Mailman.Cgi package. Be as paranoid as possible about catching exceptions and reporting them as HTML (which has saved my butt numerous times already :-). See the comments in the file for things that can still cause Server errors.
* MAILDIR => SCRIPTSDIRbwarsaw1998-06-191-3/+3
|
* Add Unlock() calls where appropriate, and add lock = 0 to MailListviega1998-06-131-3/+1
| | | | constructor actuals when the list doesn't need to be locked.
* Modified post to take a second optional argument. If the second argumentviega1998-05-311-2/+7
| | | | | | | | is present, post realizes that it was called by the News->Mail gateway, and tells the mailing list not to Mail->News gateway anything. Actually, thinking about it, it is probably better to set a field in each message object saying "Don't send me to news!". I'll probably adjust that after I get to test the code.
* 1. Use the standard Python invocation #! line to get the interpreterbwarsaw1998-05-261-9/+8
| | | | | | | | | | | | | | | | | | | | | | | | from $PATH 2. Do no direct sys.path munging in this file. Import the `paths' module, which is created during the configure process, and which performs all necessary path munging (and exports some useful variables too). 3. Remove RCS crud Also: Removed all hardcoded absolute paths. Instead, calculate paths using paths.prefix as the base. Change ''' TQS to """ so as not to confuse font-lock. !!!! When calling SendTextToUser(), set the new optional argument raw=1 so that the text body will not be wrapped/filled. The checkin that implements wrapping and filling has not yet been made. Note that it would be nice if just the templated text could be wrapped/filled and the err_msg left alone, but that's currently too hard to separate.
* 1. Use the standard Python invocation #! line to get the interpreterbwarsaw1998-05-264-22/+12
| | | | | | | | | | | from $PATH 2. Do no direct sys.path munging in this file. Import the `paths' module, which is created during the configure process, and which performs all necessary path munging (and exports some useful variables too). 3. Remove RCS crud
* 1. Use the standard Python invocation #! line to get the interpreterbwarsaw1998-05-261-5/+7
| | | | | | | | | | | | | | from $PATH 2. Do no direct sys.path munging in this file. Import the `paths' module, which is created during the configure process, and which performs all necessary path munging (and exports some useful variables too). 3. Remove RCS crud Also, calculate path to majordomo.answer.txt file using paths.prefix as the path base.
* Autoconf template for this directory's Makefile.bwarsaw1998-05-261-0/+69
|
* Fixed a typo in the zipcode.viega1998-05-266-11/+11
|
* Added copyright notices to all source files where I am legally entitled to ↵viega1998-05-256-5/+96
| | | | | | | 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?)
* Incorporated janne sinkkonen's fix, with a bit of a spin of my own.klm1998-04-231-14/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | From janne@avocado.pc.helsinki.fi Thu Apr 23 19:17:15 1998 Date: 16 Apr 1998 02:38:37 +0300 From: Janne Sinkkonen <janne@avocado.pc.helsinki.fi> To: mailman-developers@python.org Cc: ilpo@pcuf.fi Subject: [Mailman-developers] Double Reply-To:, answer_majordomo_mail, archives I have several minor things: First, when the "reply to the list" option of a list is set, it seems that a potential existing Reply-To: is not (always) stripped off. Instead there will be two Reply-To: headers, one for the list, one from the original sender. I guess this is a bug? Second, here's a working answer_majordomo_mail script. The script in 1.0b12 didn't work for me (the patch would be larger than the script itself, hence I include this here): #!/usr/local/bin/python # This is another script that's really just for my use, but # feel free to use it if you know how... import sys f = open('/dev/null', 'w') sys.stderr = f sys.path.append('/home/mailman/mailman/modules') import mm_message, mm_utils msg = mm_message.IncomingMessage() text = open('/home/mailman/mailman/misc/majordomo.answer.txt', 'r').read() mm_utils.SendTextToUser('Your mail to Majordomo...', text, msg.GetSender(), 'mailman-owner') I would also like to ask about the archives. The README says 'integrated with [...] external pipermail'. :) Besides the links and authorization service provided, what does this mean in practice? Should I run piper-hypermail from a crontab or is there something better around somewhere? -- Janne ------------------------------------------------------ Mailman-developers maillist - Mailman-developers@python.org http://www.python.org/mailman/listinfo/mailman-developers
* Whoops - mailowner was still trying to open a file in /tmp for loggingklm1998-04-102-10/+16
| | | | (and crashandburning when that file existed and was unwritable).
* Set stderr to the logger, to get errors logged if they occur.mailman1998-04-101-3/+8
|
* Preparing to package a distribution - add __version__ info.mailman1998-04-091-0/+3
|
* Preparing to package a distribution - add a module docstring andmailman1998-04-094-8/+26
| | | | __version__ info.
* In addition to moderated messages, recognize error messages associatedmailman1998-04-081-2/+6
| | | | with spam and do not notify the sender that their message is being held.
* Add modest module docstring (while i happened to be there).mailman1998-04-031-4/+8
|
* Using StampedLogger (to logs/error) for stderr, for debugging.klm1998-03-302-12/+16
| | | | Refined module doc string a bit.
* Substitute logging (via mm_utils.StampedLogger()) instead ofmailman1998-03-272-16/+48
| | | | | | | | | | substituting a file (which, if it's unwritable, crashes mailman) for stderr. Send a notice to mailman owner when a list has an email alias, but does not exist - i.e. email makes it to the wrapper script, etc. Turn the comment at the top to a module docstring.
* Do not send out "holding for approval" messages when the reason formailman1998-03-181-2/+5
| | | | the hold is list moderation.
* Removed spurious and dangerous /tmp debugging output file - unwritableklm1998-03-081-3/+2
| | | | existence of the would silently prevent the post.
* Initial revisionmailman1998-02-274-0/+146
|
* Initial revisionmailman1998-02-262-0/+48