From Paul Hebble Wed Aug 4 16:35:48 1999 From: Paul Hebble (Paul Hebble) Date: Wed, 4 Aug 1999 10:35:48 -0500 (CDT) Subject: [Mailman-Developers] External Archiving Patch Message-ID: This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. Send mail to mime@docserver.cac.washington.edu for more info. ---559023410-851401618-933780948=:22090 Content-Type: TEXT/PLAIN; charset=US-ASCII Hi all, This patch should let the administrator specify alternative external archivers. All you have to do is set the PUBLIC_EXTERNAL_ARCHIVER and/or PRIVATE_EXTERNAL_ARCHIVER variables to the command line you wish to use. If you put "$LISTNAME" or "${LISTNAME}" in the command line, it is replaced with the name of the list. Mailman will run the command line and pipe each post to it. The main advantage to this is that all post filtering is done without having to subscribe a procmailrc to the list. This prevents list-admins from accidentally unsubscribing the archiver. If the variables given above are set to "" (the default), Mailman will fall back to the built-in Pipermail archiver, so this should not break any existing installations. My apologies for using regsub, but I have not been able to find enough documentation on the re module. Perhaps someone better acquainted with it could migrate this patch to it? -- Paul Hebble -- BEGIN PATCH (Also attached in gzip format) diff -Nru --exclude=CVS --exclude=Makefile --exclude=crontab.in --exclude=mm_cfg.py.dist --exclude=*.pyc --exclude=.*.tmp --exclude=config.* mailman/Mailman/Archiver/Archiver.py mailman-archiving/Mailman/Archiver/Archiver.py --- mailman/Mailman/Archiver/Archiver.py Thu Jul 1 13:59:51 1999 +++ mailman-archiving/Mailman/Archiver/Archiver.py Tue Aug 3 09:46:14 1999 @@ -29,6 +29,7 @@ import sys, os, string import errno from Mailman.Utils import reraise, mkdir +import regsub # # package/project modules @@ -174,6 +175,13 @@ # Resurrect original date setting. post.SetHeader('Date', olddate) + def ExternalArchive(self, ar, txt): + regsub.gsub("\$LISTNAME\>", self.real_name, ar) + regsub.gsub("\${LISTNAME}", self.real_name, ar) + extarch = os.popen(ar, "w") + extarch.write(txt) + extarch.close() + # # archiving in real time this is called from list.post(msg) # @@ -207,6 +215,16 @@ if line and line[:5] == 'From ': line = '>' + line txt = txt + "%s\n" % line + if not self.archive_private \ + and mm_cfg.PUBLIC_EXTERNAL_ARCHIVER is not "" and \ + mm_cfg.PUBLIC_EXTERNAL_ARCHIVER is not "pipermail": + ExternalArchive(mm_cfg.PUBLIC_EXTERNAL_ARCHIVER, txt) + os._exit(0) + if self.archive_private \ + and mm_cfg.PRIVATE_EXTERNAL_ARCHIVER is not "" and \ + mm_cfg.PRIVATE_EXTERNAL_ARCHIVER is not "pipermail": + ExternalArchive(mm_cfg.PRIVATE_EXTERNAL_ARCHIVER, txt) + os._exit(0) f = StringIO(txt) import HyperArch h = HyperArch.HyperArchive(self) diff -Nru --exclude=CVS --exclude=Makefile --exclude=crontab.in --exclude=mm_cfg.py.dist --exclude=*.pyc --exclude=.*.tmp --exclude=config.* mailman/Mailman/Defaults.py mailman-archiving/Mailman/Defaults.py --- mailman/Mailman/Defaults.py Wed Aug 4 10:16:26 1999 +++ mailman-archiving/Mailman/Defaults.py Tue Aug 3 09:14:44 1999 @@ -62,6 +62,8 @@ # DEFAULT_ARCHIVE_VOLUME_FREQUENCY = 1 +PUBLIC_EXTERNAL_ARCHIVER = "" +PRIVATE_EXTERNAL_ARCHIVER = "" HOME_PAGE = 'index.html' MAILMAN_OWNER = 'mailman-owner@%s' % DEFAULT_HOST_NAME diff -Nru --exclude=CVS --exclude=Makefile --exclude=crontab.in --exclude=mm_cfg.py.dist --exclude=*.pyc --exclude=.*.tmp --exclude=config.* mailman/Mailman/Defaults.py.in mailman-archiving/Mailman/Defaults.py.in --- mailman/Mailman/Defaults.py.in Mon Aug 2 11:42:20 1999 +++ mailman-archiving/Mailman/Defaults.py.in Tue Aug 3 09:15:02 1999 @@ -62,6 +62,8 @@ # DEFAULT_ARCHIVE_VOLUME_FREQUENCY = 1 +PUBLIC_EXTERNAL_ARCHIVER = "" +PRIVATE_EXTERNAL_ARCHIVER = "" HOME_PAGE = 'index.html' MAILMAN_OWNER = 'mailman-owner@%s' % DEFAULT_HOST_NAME ---559023410-851401618-933780948=:22090 Content-Type: APPLICATION/octet-stream; name="patch-mailman.archiving.gz" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: H4sICFNZqDcCA3BhdGNoLW1haWxtYW4uYXJjaGl2aW5nAN1VbW/iRhD+jH/F yGkExODDBEixxAlf4hQqXq685Fo1leWz12Qbv2m9vhBV/e+dtTHyHeFCvrW1 YL2efWZ2ZufZGZd6HjRnLIVmk2wdP3XJ4PpuWfqa2o/Eoz4piRwWhdz+rNKw JAwCy/E2avysujThpYULlDmlb/VC5UFcNheFHt2oFxDY1A/s8N109zaY80C/ ELafoKUC1LQzGQ0334VLzWbzJLuV1UMKP6c+gAbapd7t612c9Pt9SVGUN25a WaUEjHQDcAmtvt7p6VontzUcQrPdb/RAwfEKhkMJaBBHjEPynDQgwn/CGdrf ywljYSSBx6IAdnuqa079pAAwwmyakAYEjy5lkrIXb5L0swQSnOEPYtt5tDfk XcyiP4nDIYjc1CdJ5pB21REeaVfdhnaZ+VR+zmBBkpQxoRUxuqGh7YNrcwIJ 4RxdVb/Gx1HC1SXhI2K7hNWqNwitYmi+K5Tq6JEiYC7xwNxywtDc7uhqCfG9 BtisAXzL67qkVPIoVDHU5PsfJuPlamZMzfv3Mh4UolVGbN8K7YAIvfqhxl+F yt9HNciWi7TCAI9fjaOYhDXhgvwkl1bVJ0Y5qQm/SkLHjxJSQ0l+BGe7F+xp AnhFxIbAaUAA+APFvCXg2L5P3DypPt4WVRxaLUg29cJQRpTWVcYUDfPSO8hL 8VAPTYQE7NDNJr/r3T9gMIDqrbBe1V/WEk+mhsD3VVCyj5ehGDOixKiAfJ7c hzKc53ClUsHdw4jnJ5tHTayY0S+CH/cCICwI13bl4eP6w2R8bZm/rszFzJhY xuJ6NL4zF+JUhCFZztB71VPVYhoTJm6prBeq37LrFVM56QplpIJFtpTXWvVd mKeHuBjfGSvz7TG+qveGII/ZOh7lQd49zPoyK0bjeU78Q+7ltWb0jH4JDw4R 4lrtl9X9rLjtdcn9NzegG+LZqc+T7/edEurFdlNar3zCa591BmwILV3r6e3e KV2mbOLr5qJ19E6pufTaomTg+GNWMLAi3Zi3xnqyKhhg3c0n66lp3S7MX9bm 7Po3TJAmivLRKzZAwuLyUXZm69hnRnM0+9H4ydwnH2sLDV2yVR944FclmBrj ydSYWfNPM9TbIYqgo6eQsOF5UsXqUvg8mi9Xlqje/xmaiL1OSiMCXyMLQirT KMyT3QZN0zttvd16I1+ElW8o09Vb7f8/Zf4BW//I5NsKAAA= ---559023410-851401618-933780948=:22090-- From Harald.Meland@usit.uio.no Wed Aug 4 18:48:27 1999 From: Harald.Meland@usit.uio.no (Harald Meland) Date: 04 Aug 1999 19:48:27 +0200 Subject: [Mailman-Developers] message board functionality? In-Reply-To: "Barry A. Warsaw"'s message of "Thu, 29 Jul 1999 18:23:22 -0400 (EDT)" References: <14240.27508.634165.859250@anthem.cnri.reston.va.us> <000201bed9f4$e9043fd0$723e2080@bean.eecs.berkeley.edu> <14240.54362.921170.841818@anthem.cnri.reston.va.us> Message-ID: [Barry A. Warsaw] > Second, it sounds like you want to perhaps have a Mailman hook for > authenticating users. Would it be enough to design an API that > Mailman would call, given an email address (future: login name) Just a quick note: I think that when we add "user accounts" (which I think is what previously has been referred to as "user objects"), there shouldn't necessarily be any single "login name" associated with this account. Any of the email addresses that Mailman (in som way) verifies as belonging to the same user object should be able to work as login names. Remembering what Mailman login name you have on various servers could become just as much a PITA as remembering all those different passwords is. > and a password, and ask if they matched? First of all: I admit to not understanding the issues around the various authentication schemes implemented (more or less natively) in various web servers as well as I could. Be gentle. From Paul Hebble's Kerberos patch, I thought that given a kerberized web server, the web server itself will do all the (site-specific) authentication without really needing to consult Mailman at all. The problem, then, is to create a clean interface between Mailman and kerberized/other webserver-based authentication methods. Whether any of this is at all relevant to John's situation is _way_ to complex for me to say anything about (yet) :) Are there any web gurus out there who have the pointers (or explanations) that could make all of this a bit clearer to me? -- Harald From Harald.Meland@usit.uio.no Thu Aug 5 10:18:21 1999 From: Harald.Meland@usit.uio.no (Harald Meland) Date: 05 Aug 1999 11:18:21 +0200 Subject: [Mailman-Developers] Configurable Archiving Proposal In-Reply-To: Paul Hebble's message of "Thu, 29 Jul 1999 14:13:14 -0500 (CDT)" References: Message-ID: [Paul Hebble] > I want to set up Mailman to support other archiving methods, more cleanly > than subscribing a procmailrc to a list. I know a few other people are > interested in this as well. > > I would like to add a per-list configuration option to each list's > config.db which tells Mailman a command line to run to archive a > message. If you're looking for a quick hack to fix this (as opposed to a clean solution), I think this is yet another thing the per-list "filter script" could be (ab)used to do. Just have the filter make two copies to stdin, and send one to stdout (for the rest of Mailman to enjoy it) and one to your archiver pipe. -- Harald From Harald.Meland@usit.uio.no Thu Aug 5 11:10:38 1999 From: Harald.Meland@usit.uio.no (Harald Meland) Date: 05 Aug 1999 12:10:38 +0200 Subject: [Mailman-Developers] RE: Mailman-Developers digest, Vol 1 #328 - 6 msgs In-Reply-To: "Barry A. Warsaw"'s message of "Thu, 29 Jul 1999 18:31:29 -0400 (EDT)" References: <613145F79272D211914B0020AFF640191D1C3C@gandalf.digicool.com> <14240.54849.147230.336426@anthem.cnri.reston.va.us> Message-ID: [Barry A. Warsaw] > >>>>> "HM" == Harald Meland writes: > > HM> Like, in a separate frame, maybe? That's what I've been > HM> thinking, anyway... > > HM> However, the frame-full UI should be optional. For a > HM> frame-less UI, I agree with Ken. > > Harald, I hope you're not advocating using HTML s! I > absolutely detest those things :). I think we can get all the > benefits of frames without the headaches by using an arrangement > similar to www.python.org and www.jpython.org (and not-coincidentally > www.python.org/~bwarsaw :) I suspect that I'm not understanding the issues involved clearly enough to be advocation one or the other construct. However, mere suspicion of lack of understanding have never stopped me from putting my foot in my mouth before :) Here are some of possible uses I have been thinking about for HTML s in Mailman: * Implementing a admin-interface sidebar with links to the various admin pages * Viewing list option documentation in the same browser window as the admin interface * Keeping buttons like "submit changes" fixed in one window position while scrolling through all the settings in another frame (although this might very well be undoable due to the SUBMIT input being in another document than where the POST form is...) The sidebar stuff could be done with an arrangement like Barry suggests, even though then the entire page would have to be re-rendered when a new page is loaded, and the sidebar would scroll along with the rest of the page. Adding an option documentation row to the full-page table would only work properly if the entire page fits inside one windowful -- and would probably be messy even then. On the other hand, maybe the current approach of always showing option documentation in a separate window is the way to go. Having fixed-position buttons is not really that important, I think :) -- Harald From hebble@ncsa.uiuc.edu Thu Aug 5 15:27:42 1999 From: hebble@ncsa.uiuc.edu (Paul Hebble) Date: Thu, 5 Aug 1999 09:27:42 -0500 (CDT) Subject: [Mailman-Developers] Configurable Archiving Proposal In-Reply-To: Message-ID: On 5 Aug 1999, Harald Meland wrote: > [Paul Hebble] > > > I want to set up Mailman to support other archiving methods, more cleanly > > than subscribing a procmailrc to a list. I know a few other people are > > interested in this as well. > > > > I would like to add a per-list configuration option to each list's > > config.db which tells Mailman a command line to run to archive a > > message. > > If you're looking for a quick hack to fix this (as opposed to a clean > solution), I think this is yet another thing the per-list "filter > script" could be (ab)used to do. Just have the filter make two copies > to stdin, and send one to stdout (for the rest of Mailman to enjoy it) > and one to your archiver pipe. This solution does not do what we want. It would either put unapproved posts in the archive, or require duplication of Mailman's filtering mechanisms in each per-list filter. We're looking for a clean solution. I posted a patch yesterday. It transparently replaces Pipermail if the site admin sets a variable to point to a new archiver. -- Paul From johnr@eecs.berkeley.edu Thu Aug 5 21:13:54 1999 From: johnr@eecs.berkeley.edu (John Reekie) Date: Thu, 5 Aug 1999 13:13:54 -0700 Subject: [Mailman-Developers] RE: Mailman-Developers digest, Vol 1 #328 - 6 msgs In-Reply-To: Message-ID: <000501bedf7f$0c5043a0$1b132581@bean.eecs.berkeley.edu> > Here are some of possible uses I have been thinking about for HTML > s in Mailman: > > * Implementing a admin-interface sidebar with links to the various > admin pages > > * Viewing list option documentation in the same browser window as the > admin interface > > * Keeping buttons like "submit changes" fixed in one window position > while scrolling through all the settings in another frame (although > this might very well be undoable due to the SUBMIT input being in > another document than where the POST form is...) Frames are only useful for pages that are authored by hand. If you are dynamically generating pages, I think it really is better to stay away from frames. You can do the first two things in code and it will be easier to deal with and more robust. The third you can't, but it's also of dubious benefit. Basically, frames introduce all kinds of navigation problems. Although in theory they can be made to work properly, they rarely do. Things like having four scrollbars in one browser window, having yahoo.com embedded in one of your frames, and so on, are the kinds of things that you expect from frames-based sites. There are a few cases where frames are useful (eg Javadoc) but not many -- and that particular example again is static HTML. My 2c :-) I have some pages that are a dynamically generated mix of MailMan HTML and my own, and I think they might illustrate how much you don't need frames :) I'll post a URL once I get a few more bugs ironed out. JohnR From tdfunk@asd-web.com Thu Aug 5 21:16:51 1999 From: tdfunk@asd-web.com (Tom Funk) Date: Thu, 5 Aug 1999 16:16:51 -0400 Subject: [Mailman-Developers] An NT Mailman version Message-ID: <7DB247B399FED211A73F00600841DDC7099463@TAL_ENT> Is there a Windows NT version of Mailman in our future? I checked the archives and didn't see anything about this (hope I didn't miss it.... :-). Since Mailman is written in Python, and there are only six C programs, all of which look *fairly* non-*nix specific, a port doesn't seem too far-fetched. Any thoughts? -=< tom >=- From ricardo@miss-janet.com Thu Aug 5 23:24:09 1999 From: ricardo@miss-janet.com (Ricardo Kustner) Date: Fri, 06 Aug 1999 00:24:09 +0200 (CEST) Subject: [Mailman-Developers] tech docs? Message-ID: Hi, is there some information/docs/draft on the structure in the Mailman source code? Since the moderate function is an important feature in the mailinglist we're running, i have a lot of ideas for things that could make the moderate page more powerfull and easy to work with... i can make my own little hacks in the source but i could also offer my patches in here... so i can share my code plus i wont have to put it back everytime i upgrade mailman to a new version ;) one thing i really wanted to fix fast was stripping a lot of the headers you see on the moderated posts page... this is what i made for it (this it my first piece of python ever so it can be probably made much more efficient ;) ) It's just a function a call in admindb.py before it outputs the message on the screen with Preformatted() ideally this could be a config option and one should be able to choose which headers to show in the output. ==== def stripheaders(msg): found = 0 emsg = '' # define which headers to keep headers = ['From:', 'To:', 'Date:', 'Subject:'] for i in string.split(msg, "\012"): if not found: for j in headers: if i[:len(j)] == j: emsg = emsg + i + "\012" # the first empty line means we're done with the headers part if i == "": found = 1 emsg = emsg + "\012" else: # we've had the header part so every line can be added back emsg = emsg + i + "\012" return(emsg) ==== Ricardo. -- From Harald.Meland@usit.uio.no Fri Aug 6 10:31:19 1999 From: Harald.Meland@usit.uio.no (Harald Meland) Date: 06 Aug 1999 11:31:19 +0200 Subject: [Mailman-Developers] Configurable Archiving Proposal In-Reply-To: Paul Hebble's message of "Thu, 5 Aug 1999 09:27:42 -0500 (CDT)" References: Message-ID: [Paul Hebble] > This solution does not do what we want. It would either put > unapproved posts in the archive, Indeed -- sorry, I missed that. > We're looking for a clean solution. I posted a patch yesterday. Yup, didn't see your patch until after my hack idea was sent. I'll take a closer look at it when I get some spare time... -- Harald From tdfunk@asd-web.com Mon Aug 9 01:07:07 1999 From: tdfunk@asd-web.com (Tom Funk) Date: Sun, 8 Aug 1999 20:07:07 -0400 Subject: [Mailman-Developers] An NT Mailman version Message-ID: <7DB247B399FED211A73F00600841DDC70994BB@TAL_ENT> Dan: Thanks for getting back to me. Do you, or anyone else on this list, know of any attempts to recompile the core C source files using the Cygnus' cygwin product? One of the design goals of cygwin was to mimic fork(), spawn family of functions that are missing from the Win32 API. Dan said: >> will be in troubles with locking and forking... >> ...But if You wont use included archiving Is the locking and forking code only the archiving parts of the code? Or is it spread throughout the source? Has anyone considered porting the forking code to Python threads? I've not worked with them, but the impression I get is that for the O/S's that support them, they tend to be pretty non-os-specific. 'Course I may be wrong on this.... I'd consider working on an NT port. It's a *great* way to learn all kinds of things about a software package - and the implementation language. I'd just like to not start from scratch if at all possible. One last thing: is there a CVS tree in place for the Mailman source? I downloaded the source for Mailman, but don't recall seeing anything about revision/source code control. I seem to recall some discussion at the Starship Python site (http://starship.python.net) about hosting CVS trees for Python-based source code. If there isn't a CVS tree (or SCCS or RCS) then this might be an option. Just my $.02. -=< tom >=- -----Original Message----- From: Dan Ohnesorg [mailto:dan@feld.cvut.cz] Sent: Sunday, August 08, 1999 4:57 PM To: Tom Funk Subject: Re: [Mailman-Developers] An NT Mailman version On Thu, 5 Aug 1999, Tom Funk wrote: > > Is there a Windows NT version of Mailman in our future? I checked the > archives and didn't see anything about this (hope I didn't miss it.... :-). > > > Since Mailman is written in Python, and there are only six C programs, all > of which look *fairly* non-*nix specific, a port doesn't seem too > far-fetched. > > Any thoughts? I think You will be in troubles with locking and forking code in mailman under NT. But if You wont use included archiving, it will probably run good. cheers dan From Harald.Meland@usit.uio.no Mon Aug 9 18:05:05 1999 From: Harald.Meland@usit.uio.no (Harald Meland) Date: 09 Aug 1999 19:05:05 +0200 Subject: [Mailman-Developers] An NT Mailman version In-Reply-To: Tom Funk's message of "Sun, 8 Aug 1999 20:07:07 -0400" References: <7DB247B399FED211A73F00600841DDC70994BB@TAL_ENT> Message-ID: [Tom Funk] > Is the locking and forking code only the archiving parts of the code? No. > Or is it spread throughout the source? Yes. "grep -w" the source for (at least) "fork" and "posixfile" to get a quick overview of exactly where. > Has anyone considered porting the forking code to Python threads? The only time I can recall having heard of python threads, was when someone said that using threaded python should be _optional_ even if Mailman started supporting this. I think this was in relation to a discussion of whether Mailman should implement it's own listening SMTP server or aim to interface (i.e. use alias files) for all kinds of other MTAs. I don't know if anything at all came of the discussion, but the general scepticism towards trusting a threaded python implementation probably hasn't quite disappeared yet. > I've not worked with them, but the impression I get is that for the > O/S's that support them, they tend to be pretty non-os-specific. > 'Course I may be wrong on this.... I wouldn't know, as I'm not a python guru by far. > I'd consider working on an NT port. I think that would be nice (even though for my own uses it doesn't matter) -- but I know nothing about cross-platform python and what kind of code hoops such a port would make Mailman. > It's a *great* way to learn all kinds of things about a software > package - and the implementation language. That's the motivation that got me started as well, so I can confirm that :) > One last thing: is there a CVS tree in place for the Mailman source? Yup, see for info on how to access it. -- Harald From tdfunk@asd-web.com Mon Aug 9 19:25:17 1999 From: tdfunk@asd-web.com (Tom Funk) Date: Mon, 9 Aug 1999 14:25:17 -0400 Subject: [Mailman-Developers] An NT Mailman version Message-ID: <7DB247B399FED211A73F00600841DDC70994CC@TAL_ENT> On Sun, 8 Aug 1999, I (Tom Funk) wrote the following: >> One last thing: is there a CVS tree in place for the Mailman source? Please disregard this question. I found the CVS tree at Python.org. -=< tom >=- From a.k.heath@shu.ac.uk Mon Aug 9 21:26:33 1999 From: a.k.heath@shu.ac.uk (Andy Heath) Date: Mon, 09 Aug 1999 20:26:33 +0000 Subject: [Mailman-Developers] why not make archive into coference Message-ID: <37AF3979.44240C10@shu.ac.uk> Sorry if this has been asked/suggested before but I can find no trace of it in the archives. My point is this - if it were possible for subscribers to use a web form to post to archives (as well as the usual email method) it would be nice. Users could then choose to use a service as a conference or via email. For myself, there are times when I like to receive everything by email so I don't miss anything and times things are busy enough that I would prefer the conference idea. Often I want to switch from one to the other depending on how busy things are. The point about doing this with the archives is that this functionality is almost there already - it just needs a way of "on-server" posting to be developed. Since this could be limited to subscribers and can only go to the list then it is safe. There are other products that do this sort of thing - I think bscw does, but non so "clean" and simple to use as mailman. Also, the same thing *could* be done with gating to newsgroups but doing so involves much unneccessary complexity. Why has no-one combined the list-server and conference functions before (rhetorical). Please COPY replies to a.k.heath@shu.ac.uk as I'm not a subscriber Andy -- ---------------------------- Andy Heath a.k.heath@shu.ac.uk From cherub@azrael.dyn.cheapnet.net Tue Aug 10 06:44:01 1999 From: cherub@azrael.dyn.cheapnet.net (Steven Hazel) Date: Tue, 10 Aug 1999 00:44:01 -0500 (CDT) Subject: [Mailman-Developers] why not make archive into coference Message-ID: Sorry if this has been asked/suggested before but I can find no trace of it in the archives. It's there -- I proposed to start working on it a few weeks ago. The point about doing this with the archives is that this functionality is almost there already - it just needs a way of "on-server" posting to be developed. Since this could be limited to subscribers and can only go to the list then it is safe. Actually, I administrate a web-based forum, and we have stronger needs -- user accounts on a per-system basis, for example, are crucial, and seem to be a popular wish-list item for Mailman already. (For those who have been discussing these, my co-conspiritor and I have been listening. A simple interface to Mailman accounts will be provided for easy integration with existing site accounts, and we're working on allowing logins under email addresses as well as user names.) I've already got a simple web-based posting CGI script written -- I'm cleaning up the formatting and error reporting before I submit it. My friend has a user account system in place, but integration with the list subscription info is still too crude to submit. (BTW, what's the best way for me to submit significant code changes? Since this is a GNU project, I imagine there are some legal papers to be exchanged. Also, do you prefer frequent submissions of sort-of-working code, or infrequent submissions of clean, working code?) If you're interested in helping, let me know. -S From lindsey@ncsa.uiuc.edu Tue Aug 10 07:15:05 1999 From: lindsey@ncsa.uiuc.edu (Christopher Lindsey) Date: Tue, 10 Aug 1999 01:15:05 -0500 (CDT) Subject: [Mailman-Developers] why not make archive into coference In-Reply-To: <37AF3979.44240C10@shu.ac.uk> from "Andy Heath" at Aug 9, 99 08:26:33 pm Message-ID: <199908100615.BAA17194@ferret.ncsa.uiuc.edu> > My point is this - if it were possible for subscribers > to use a web form to post to archives (as well as the > usual email method) it would be nice. Users could then > choose to use a service as a conference or via email. This is pretty easy to do, and I think outside of the scope of Mailman. Just set the list subscription so that it only archives, then restrict posting to a single known (non-obvious) address. The Web form would then call a CGI script which would provide the correct headers to a local sendmail invocation, or connect to a remote system on port 25 and jump through the proper ESMTP hoops. The mail should be sent to look as if it's coming from the allowed address, so it will go through the system checks and be archived. What I would really like to see in addition to sender-based authentication is some sort of "if this header matches send it through" type scenario. Majordomo uses an 'Approved: password' header -- implementing something similar could allow Web-based forms to post, etc. NOTE: password wouldn't have to be the list password -- it could be anything. Mailman should also have the option of stripping it out before sending the message through. Imagine any of these possibilties! Approved: mypassword # we'll add a special header Message-Id: .*example.com # we generate a Message-Id, so trust it Date:.*\sAug\s1999 # allow anyone to post before the contest ends Chris From jarrell@solaris.cc.vt.edu Wed Aug 11 16:35:48 1999 From: jarrell@solaris.cc.vt.edu (Ron Jarrell) Date: Wed, 11 Aug 1999 11:35:48 -0400 (EDT) Subject: [Mailman-Developers] Ok, what's wrong with this header... Message-ID: <199908111535.LAA22368@solaris.cc.vt.edu> This is related to a bug that's appeared on mailman-users... I'm trying to port old mbox archives into a new mailman list that's replacing and old listproc list. This message is causing arch, while processing my 9704 file, to think it needs to create an 1999-August archive and file it there; shortly there after it explodes... It appears to be the comma before the timezone. When I edited the file by hand to loose the comma suddenly the archive processed fine, and the article made it intot he April 97 archive. (Oh, yea, archiving is set for monthly volumes, if that wasn't obvious from the previous discussion). I tried switching to "when resent" instead of sent, thinking what that *meant* was that it'd use the From header time instead of the Date header, but as far as I can tell, it didn't affect article processing at all; same error. Here's the header: From jarrell@solaris.cc.vt.edu Wed Aug 11 17:16:54 1999 From: jarrell@solaris.cc.vt.edu (Ron Jarrell) Date: Wed, 11 Aug 1999 12:16:54 -0400 (EDT) Subject: [Mailman-Developers] More on bad dates Message-ID: <199908111616.MAA23928@solaris.cc.vt.edu> I found a second date that blows arch out of the water: Date: Tue, 10 Aug 1999 17:39:26 -0400 (EDT) Deleting the (EDT) solves this one. From ckolar@admin.aurora.edu Wed Aug 11 20:17:03 1999 From: ckolar@admin.aurora.edu (Christopher Kolar) Date: Wed, 11 Aug 1999 14:17:03 -0500 (CDT) Subject: [Mailman-Developers] draft end-user doc Message-ID: The first draft of an end user (subscriber) document for Mail Man is available for view at http://www.aurora.edu/~ckolar/mailman. A second document for list managers (own the list, but are not the sysadmin) will be available shortly. Feedback appreciated. --chris From ricardo@miss-janet.com Wed Aug 11 21:56:05 1999 From: ricardo@miss-janet.com (Ricardo Kustner) Date: Wed, 11 Aug 1999 22:56:05 +0200 (CEST) Subject: [Mailman-Developers] admindb addition (was: tech docs?) In-Reply-To: Message-ID: Hi, I hate to reply to my own posts (as usual ;) ) but is anybody else interested in this feature or agrees this can be an usfull addition to mailman? if i get some positive responses, i'm going to have a better look at the mailman source and i'll try to fit it in and make it and configurable option... if anybody this my python code sucks... let me know! :) Thanks, Ricardo. On 05-Aug-99 Ricardo Kustner wrote: > one thing i really wanted to fix fast was stripping a lot of the headers you > see on the moderated posts page... > this is what i made for it (this it my first piece of python ever so it can > be probably made much more efficient ;) ) It's just a function a call in > admindb.py > before it outputs the message on the screen with Preformatted() > ideally this could be a config option and one should be able to choose which > headers to show in the output. > > ==== > def stripheaders(msg): > > found = 0 > emsg = '' > # define which headers to keep > headers = ['From:', 'To:', 'Date:', 'Subject:'] > > for i in string.split(msg, "\012"): > if not found: > for j in headers: > if i[:len(j)] == j: > emsg = emsg + i + "\012" > # the first empty line means we're done with the headers part > if i == "": > found = 1 > emsg = emsg + "\012" > else: > # we've had the header part so every line can be added back > emsg = emsg + i + "\012" > > return(emsg) > ==== From jarrell@babylon5.cc.vt.edu Wed Aug 11 23:41:05 1999 From: jarrell@babylon5.cc.vt.edu (Ronald A. Jarrell) Date: Wed, 11 Aug 1999 18:41:05 -0400 Subject: [Mailman-Developers] news to mail gatewaying problem... Message-ID: <199908112241.SAA24656@babylon5.cc.vt.edu> This is actually a python bug, but it breaks mailman. The news to mail gateway stuff won't (can't in fact) work when mailman and the news server are the same machine (or if mailman is running on a machine with transfer privs to the news server), and the news server is INN. Apparently python's nntplib hasn't been updated in a LONG time; every other major library out there knows to issue a "mode reader" before trying to do anything as a reader on an inn server. It doesn't hurt if you're already in reader mode; it's vital if you aren't. A feeder connects to the inn daemon; which doesn't understand reader commands. "mode reader" causes it to fork off an nnrpd daemon which DOES understand reader commands... Which kinda stinks, since one of the main reasons I put mailman up on the news server was to replace the homebrew gateway stuff I was running... Sigh. From bwarsaw@cnri.reston.va.us (Barry A. Warsaw) Wed Aug 11 23:50:33 1999 From: bwarsaw@cnri.reston.va.us (Barry A. Warsaw) (Barry A. Warsaw) Date: Wed, 11 Aug 1999 18:50:33 -0400 (EDT) Subject: [Mailman-Developers] news to mail gatewaying problem... References: <199908112241.SAA24656@babylon5.cc.vt.edu> Message-ID: <14257.65081.758160.822786@anthem.cnri.reston.va.us> >>>>> "RAJ" == Ronald A Jarrell writes: RAJ> Apparently python's nntplib hasn't been updated in a LONG RAJ> time Ronald. I must admit to knowing next to nothing about the details of NNTP or INN. Would you be able to generate a patch for nntplib.py? If so, we can do two things: install the patch in the standard Python distribution, and include the patched module in Mailman/pythonlib so that Mailman installations using older Python's will work correctly. -Barry From jarrell@vt.edu Wed Aug 11 23:25:48 1999 From: jarrell@vt.edu (Ron Jarrell) Date: Wed, 11 Aug 1999 18:25:48 -0400 Subject: [Mailman-Developers] news to mail gatewaying problem... In-Reply-To: <14257.65081.758160.822786@anthem.cnri.reston.va.us> References: <199908112241.SAA24656@babylon5.cc.vt.edu> Message-ID: <4.2.0.58.19990811182105.04f04ef0@vtserf.cc.vt.edu> At 06:50 PM 8/11/99 -0400, Barry A. Warsaw wrote: > >>>>> "RAJ" == Ronald A Jarrell writes: > > RAJ> Apparently python's nntplib hasn't been updated in a LONG > RAJ> time > >Ronald. I must admit to knowing next to nothing about the details of >NNTP or INN. Would you be able to generate a patch for nntplib.py? >If so, we can do two things: install the patch in the standard Python >distribution, and include the patched module in Mailman/pythonlib so >that Mailman installations using older Python's will work correctly. > >-Barry Unfortunately I'm just getting my feet wet in python. However, that said, this one line patch has worked for me so far. The library test now correctly accesses groups off the server.. This patch should also be sufficient for mailman's needs. It's not a 100% complete patch. An older news server that doesn't know to grab and ignore the mode reader might return an error, thus screwup up the stashed greeting line; doing the code for that logic is beyond me. But it's better than it was! 73a74 > self.welcome = self.shortcmd('mode reader') From johnr@eecs.berkeley.edu Thu Aug 12 04:05:49 1999 From: johnr@eecs.berkeley.edu (John Reekie) Date: Wed, 11 Aug 1999 20:05:49 -0700 Subject: [Mailman-Developers] Problem with archives after renaming a list In-Reply-To: <37AF3979.44240C10@shu.ac.uk> Message-ID: <000001bee495$638170c0$5f142581@bean.eecs.berkeley.edu> I renamed a list by creating a new one with the new name, then copying the old one over the top of the new one. This worked, except that the archives still get put into the old location. Does anyone know where the info might be that tells the archiver where to put the archives -- it appears to be separate from the visible configuraton options. Thanks! JohnR From tismer@appliedbiometrics.com Fri Aug 13 12:45:31 1999 From: tismer@appliedbiometrics.com (Christian Tismer) Date: Fri, 13 Aug 1999 13:45:31 +0200 Subject: [Mailman-Developers] Bug in Mailman 1.0, newlist Message-ID: <37B4055B.74F6CC9A@appliedbiometrics.com> Hi Developers, yesterday we upgraded to Mailman 1.0 (thanks to Jimbo Titsler). There is a new bug when creating new lists: I tried to supply this email when creating the pyxie list: [root@starship bin]# ./newlist Enter the name of the list: pyxie Enter the email of the person running the list: Sean Mc Grath Initial pyxie password: Traceback (innermost last): File "./newlist", line 146, in ? raise SystemExit(main(sys.argv)) File "./newlist", line 93, in main newlist.Create(list_name, owner_mail, pw) File "/home/mailman/Mailman/MailList.py", line 720, in Create Utils.ValidateEmail(admin) File "/home/mailman/Mailman/Utils.py", line 296, in ValidateEmail raise Errors.MMHostileAddress Mailman.Errors.MMHostileAddress This is new. In earlier versions, I was allowed to use decorated email names. When I changed to sean@digitome.com, it worked as expected. ciao - chris -- Christian Tismer :^) Applied Biometrics GmbH : Have a break! Take a ride on Python's Kaiserin-Augusta-Allee 101 : *Starship* http://starship.python.net 10553 Berlin : PGP key -> http://wwwkeys.pgp.net PGP Fingerprint E182 71C7 1A9D 66E9 9D15 D3CC D4D7 93E2 1FAE F6DF we're tired of banana software - shipped green, ripens at home From tauren@servlets.net Sat Aug 14 10:39:16 1999 From: tauren@servlets.net (Tauren Mills) Date: Sat, 14 Aug 1999 02:39:16 -0700 Subject: [Mailman-Developers] Virtual Hosts -- can mailman handle them better? Message-ID: <007c01bee638$e04dba60$1ad7a2d1@easystreet.com> I just installed Mailman and love it! Great work! However, I have a question about how to make it work better with VirtualHosts. I am hosting numerous client web sites using Apache VirtualHosts. I have been able to make it so that my client's web sites can each bring up the /mailman/listinfo and /mailman/admin pages from their own domain. The /mailman/listinfo page only shows the lists that are part of that domain. Excellent. But the /mailman/admin page shows all of the lists on the server whether they are for that domain or not (unless the lists are not publicly displayed). Not so good. Also, if I send an email to clientlist-request@clientdomain.com with the command "help", the response email comes back from clientlist-request@mydomain.com. It also has links and email addresses throughout the email that point to http://www.mydomain.com/mailman/listinfo/clientlist and clientlist-admin@mydomain.com rather than http://www.clientdomain.com/mailman/listinfo/clientlist and clientlist-admin@clientdomain.com. I expect that most of the email-based commands are going have responses that look like they come from the main server rather than the customer's domain, but I'm hoping there is a workaround I'm not aware of. Lastly, when I execute the "newlist" command, the email that gets automatically sent to the administrator refers to URLs at mydomain.com. I would love to have a way to have that email refer to URLs at clientdomain.com. I'm sure there are all sorts of other little things that could be done to make Mailman support VirtualHosts better. Are there ways to deal with these issues? If not, do people think that they are worth adding to the product? Thanks, tauren@servlets.net From Harald.Meland@usit.uio.no Sun Aug 15 23:37:37 1999 From: Harald.Meland@usit.uio.no (Harald Meland) Date: 16 Aug 1999 00:37:37 +0200 Subject: [Mailman-Developers] Bug in Mailman 1.0, newlist In-Reply-To: Christian Tismer's message of "Fri, 13 Aug 1999 13:45:31 +0200" References: <37B4055B.74F6CC9A@appliedbiometrics.com> Message-ID: [Christian Tismer] > This is new. In earlier versions, I was allowed to use decorated > email names. True. However, this also allowed site admins to create lists with bogus admin addresses, which could lead to all kinds of more or less subtle trouble -- so I changed things to have Mailman do the same address checks on list admins as is done when considering new subscribers. The right thing to do would probably be to allow (all kinds of) email address comments in both admin and member addresses, but that has it's problems too -- for one, it could make the process of automatically correlating failed delivery reports to subscribed member addresses more difficult. -- Harald From mailman-developers@python.org Mon Aug 16 00:03:04 1999 From: mailman-developers@python.org (Harald Meland) Date: 16 Aug 1999 01:03:04 +0200 Subject: [Mailman-Developers] Re: [Mailman-Users] Virtual Hosts -- can mailman handle them better? In-Reply-To: Tauren Mills's message of "Sat, 14 Aug 1999 02:39:16 -0700" References: <007c01bee638$e04dba60$1ad7a2d1@easystreet.com> Message-ID: [Tauren Mills] > I just installed Mailman and love it! Great work! Thanks, glad you like it! > But the /mailman/admin page shows all of the lists on the server > whether they are for that domain or not (unless the lists are not > publicly displayed). Not so good. Yup -- the admin CGI script hasn't been made aware of virtual domains yet. Doing so would probably be quite easy, but I think the current support for virtual domains is a bit shoddy, so I've been putting it off... > Also, if I send an email to clientlist-request@clientdomain.com with > the command "help", the response email comes back from > clientlist-request@mydomain.com. This can be configured -- see the "Host name this list prefers" setting on the general options page. However, if you have several lists with the same localpart name in different domains (i.e. "foobar@dom1.com" and "foobar@dom2.org"), you'll have to assign them different Mailman-internal names. I'd like to allow full email addresses as Mailman-internal list names to alleviate this. Then, the site admin could maintain some sort of a webserver<->maildomain cross reference (available to Mailman), and two settings on the general options page would no longer be needed. This would increase the need for easy internal renaming of a list, as domain changes would essentially be a change in the internal list name. Opinions, anyone? > It also has links and email addresses throughout the email that > point to http://www.mydomain.com/mailman/listinfo/clientlist See the "Base URL for Mailman web interface" setting in the general options page. > Lastly, when I execute the "newlist" command, the email that gets > automatically sent to the administrator refers to URLs at > mydomain.com. I would love to have a way to have that email refer > to URLs at clientdomain.com. I'm not aware of any easy solution to that problem. Sure, we could add another option to the "newlist" script for specifying the list's default URL (and another for it's mail domain), but I don't think that's a particularly neat solution... > I'm sure there are all sorts of other little things that could be > done to make Mailman support VirtualHosts better. Are there ways to > deal with these issues? If not, do people think that they are worth > adding to the product? I think better support for virtual hosts (or multiple domains, or whatever this kind of feature really /should/ be called :) are important, so my answer would definitely be yes. -- Harald From tauren@servlets.net Mon Aug 16 09:05:44 1999 From: tauren@servlets.net (Tauren Mills) Date: Mon, 16 Aug 1999 01:05:44 -0700 Subject: [Mailman-Developers] RE: [Mailman-Users] Virtual Hosts -- can mailman handle them better? In-Reply-To: Message-ID: <00e801bee7be$23e89480$1ad7a2d1@easystreet.com> Hi Harald, Thanks for the details! > > Also, if I send an email to clientlist-request@clientdomain.com with > > the command "help", the response email comes back from > > clientlist-request@mydomain.com. > > This can be configured -- see the "Host name this list prefers" > setting on the general options page. It is good to hear that this is already supposed to work, but this is not what I have experienced. I have set "Host name this list prefers" and it still returns emails with the main domain name in them. Maybe I have something configured incorrectly. I'll go poke around some more. > However, if you have several lists with the same localpart name in > different domains (i.e. "foobar@dom1.com" and "foobar@dom2.org"), > you'll have to assign them different Mailman-internal names. What do you mean by "different Mailman-internal names"? If you meant that the name of a mailing list can look like one thing to the "world", but can be a unique name "internal" to Mailman, then I think I understand what you mean. See my notes below for more about this. > I'd like to allow full email addresses as Mailman-internal list names > to alleviate this. Then, the site admin could maintain some sort of a > webserver<->maildomain cross reference (available to Mailman), and two > settings on the general options page would no longer be needed. One thing that I have noticed might be a problem is that multiple domains might want a mailing list with the same name. For instance, we have this mailing list: announce@mydomain.com We've put this into our aliases file to handle it: announce: "|/home/mailman/mail/wrapper post announce" announce-admin: "|/home/mailman/mail/wrapper mailowner announce" announce-request: "|/home/mailman/mail/wrapper mailcmd announce" owner-announce: announce-admin announce-owner: announce-admin But, if a customer wanted a mailing list with the same name at their own domain, I'm not sure what we would do. I guess we could create a list called "announce2", and put this in the aliases file: announce2: "|/home/mailman/mail/wrapper post announce2" announce2-admin: "|/home/mailman/mail/wrapper mailowner announce2" announce2-request: "|/home/mailman/mail/wrapper mailcmd announce2" owner-announce2: announce2-admin announce2-owner: announce2-admin We would then put this into the virtusertable file: announce@customerdomain.com announce2 announce-admin@customerdomain.com announce2-admin announce-request@customerdomain.com announce2-request owner-announce@customerdomain.com owner-announce2 announce-owner@customerdomain.com announce2-owner But the problem is that the emails that get sent from Mailman would still say "announce2@customerdomain.com" all throughout them, instead of "announce@customerdomain.com". Would your suggested changes solve this problem? > This would increase the need for easy internal renaming of a list, as > domain changes would essentially be a change in the internal list > name. > > Opinions, anyone? > > > It also has links and email addresses throughout the email that > > point to http://www.mydomain.com/mailman/listinfo/clientlist > > See the "Base URL for Mailman web interface" setting in the general > options page. Again, the "Base URL" setting is not working for me. I'll experiment with this some more. > > Lastly, when I execute the "newlist" command, the email that gets > > automatically sent to the administrator refers to URLs at > > mydomain.com. I would love to have a way to have that email refer > > to URLs at clientdomain.com. > > I'm not aware of any easy solution to that problem. Sure, we could > add another option to the "newlist" script for specifying the list's > default URL (and another for it's mail domain), but I don't think > that's a particularly neat solution... We are trying to automate as much of our system as possible. We would love to make it so that when a customer orders a mailing list service, it is automatically installed and configured. With this in mind, it would really make sense for the newlist command to be able to accept a bunch of command line parameters instead of stdin. Could the newlist command at least include options on the command line for the list's default URL and for the mail domain? That way you wouldn't have to muck up the stdin questions, but people who wanted more control could have it. It would be best if all options could be specified on the command line and any required ones that were not specified would be asked via stdin. > > I'm sure there are all sorts of other little things that could be > > done to make Mailman support VirtualHosts better. Are there ways to > > deal with these issues? If not, do people think that they are worth > > adding to the product? > > I think better support for virtual hosts (or multiple domains, or > whatever this kind of feature really /should/ be called :) are > important, so my answer would definitely be yes. I think that there are many ISPs that would absolutely love a mailing list system like Mailman if it had virtual hosting support built right in flawlessly (we certainly would!). We've managed to tweak Majordomo a bit so that it kind of works. And now we've kind of got Mailman working too. But we really would like it to make our lives easier in a virtual hosting environment, since that is pretty much all we do all day long. > -- > Harald Thanks again! Tauren tauren@servlets.net From tomas@euronetics.se Mon Aug 16 09:58:51 1999 From: tomas@euronetics.se (Tomas Fasth) Date: Mon, 16 Aug 1999 10:58:51 +0200 Subject: [Mailman-Developers] Re: [Mailman-Users] Virtual Hosts -- can mailman handle them better? References: <00e801bee7be$23e89480$1ad7a2d1@easystreet.com> Message-ID: <003401bee7c5$92150fe0$f6d52dc1@twinspot.net> Tauren, Harald, I also have experienced problems with virtual hosting in Mailman. That is, if you try to make it work within a single installation. My solution was to install one instance of Mailman för each virtual domain, each with it's own account (userid). It works and it only takes a few extra meg for each domain. I even wrote a script to automate the configuration and installation which I use each time I need to setup a new domain. It's not perfect but it works. Just my two cents. Tomas From boldi@budapest.hu Mon Aug 16 15:16:04 1999 From: boldi@budapest.hu (Bencsath Boldizsar) Date: Mon, 16 Aug 1999 16:16:04 +0200 (CEST) Subject: [Mailman-Developers] archive,multilang Message-ID: Hi, First of all, thanks for all developers contributing this software. Be proud of doing that. I have some notices, I think some asked for them before, but I didn't find on the TODO list. -It would be great to have language templates, so every site or user could see the web UI in his/her own language. This templates could be created as XML/DTD docs, or so, to provide more comfortable update mechanism (If XY makes the russian interface, but the central interface, so the english is changing, then the russian should be rewritten. If mailman would have a central doc-template format, then it would be more easy to change the document (language) format -As using mailman in Hungary I always met problems with spcial characters. Now one problem is reading archives on the web like this one: [Nov7] =?iso-8859-1?Q?=E9ljen?= a forradalom! Szekfu Balazs Other problem is using mime attachments etc in the archives. The solution is not easy. To read all messages as it could be read on a mail client is a bigger problem than writing a mail reader because of the web interface's problems. The first functional workaround could be if an archive-reader would able to press a "send this messages to me by email" button or press a "forward this to.." button... Of course some lists have new members who wish to read many older messages... so "get gzipd archive"" for this month could be extended to "get all messages by email gaain". There are problems.If the archive is public, then it could be used to email-bomb a person's email box. At the other hand a bad email address could cause problems on the mailman server ( if i send tousands of messages to unknown recipients). So I don't know the best answer, but now only sysadmins are trained enough to excavate an archive messages as readable as it should be. thanks, boldi From jwt@dskk.co.jp Tue Aug 17 03:11:27 1999 From: jwt@dskk.co.jp (Jim Tittsler) Date: Tue, 17 Aug 1999 11:11:27 +0900 Subject: [Mailman-Developers] news to mail gatewaying problem... In-Reply-To: <199908112241.SAA24656@babylon5.cc.vt.edu>; from Ronald A. Jarrell on Wed, Aug 11, 1999 at 06:41:05PM -0400 References: <199908112241.SAA24656@babylon5.cc.vt.edu> Message-ID: <19990817111127.A14880@mail.dskk.co.jp> On Wed, Aug 11, 1999 at 06:41:05PM -0400, Ronald A. Jarrell wrote: > The news to mail gateway stuff won't (can't in fact) work when mailman > and the news server are the same machine (or if mailman is running on a > machine with transfer privs to the news server), and the news server is > INN. > > Apparently python's nntplib hasn't been updated in a LONG time; every > other major library out there knows to issue a "mode reader" before > trying to do anything as a reader on an inn server. It doesn't hurt if I proposed such a patch in comp.lang.python last year, but Guido rejected it for fear it might break something else. He suggested instead calling the constructor (with no user argument), and then using separate commands for mode reader and authinfo. I use nntplib for several tasks on news server machines so I found it cleaner to just add: diff -u nntplib.py.dist nntplib.py --- nntplib.py.dist Tue Apr 28 17:43:35 1998 +++ nntplib.py Tue Jun 23 22:06:00 1998 @@ -71,6 +71,10 @@ self.file = self.sock.makefile('rb') self.debugging = 0 self.welcome = self.getresp() + try: + self.welcome = self.shortcmd('mode reader') + except: + pass if user: resp = self.shortcmd('authinfo user '+user) if resp[:3] == '381': I think you should also be able to add the shortcmd('mode reader') to GatewayManager.py and stay with the standard Python library if you don't have other nntplib uses on your machine. -- Jim Tittsler, Tokyo http://starship.python.net/crew/jwt/ From klm@digicool.com Tue Aug 17 17:16:14 1999 From: klm@digicool.com (Ken Manheimer) Date: Tue, 17 Aug 1999 12:16:14 -0400 Subject: [Mailman-Developers] RE: Mailman-Developers digest, Vol 1 #344 - 4 msgs Message-ID: <613145F79272D211914B0020AFF640191D1CA0@gandalf.digicool.com> > From: "Tauren Mills" > To: , "mailman-users" > Date: Mon, 16 Aug 1999 01:05:44 -0700 > Subject: [Mailman-Developers] RE: [Mailman-Users] Virtual Hosts -- can mailman handle them better? > > It is good to hear that this is already supposed to work, but this is not > what I have experienced. I have set "Host name this list prefers" and it > still returns emails with the main domain name in them. Maybe I have > something configured incorrectly. I'll go poke around some more. It's likely that your MTA (sendmail, or whatever you're using) is doing this, not mailman. Try some experiments passing things directly to your MTA claiming to originate from your virtual host, and see if they get transformed on the way through. If not, i'm not sure what to suggest - i believe numerous people are using the virtual host mailman feature successfully. Re having mailman host multiple lists having the same list name but different domains, i think thomas fasth's suggestion is a good one - use separate mailman installs for separate lists. (You'll have to work out the MTA details to dispatch to the right mailman install according to the domain...) Making a single mailman handle multiple lists with the same apparent name would take another level of indirection in the mailman code on the maillist names, plus an option on the mailman pipe command lines. If you're interested, this is doable, but definitely not trivial. I doubt it will happen until someone directly needing it makes the effort. > > I'm not aware of any easy solution to that problem. Sure, we could > > add another option to the "newlist" script for specifying the list's > > default URL (and another for it's mail domain), but I don't think > > that's a particularly neat solution... > > We are trying to automate as much of our system as possible. We would love > to make it so that when a customer orders a mailing list service, it is > automatically installed and configured. With this in mind, it would really > make sense for the newlist command to be able to accept a bunch of command > line parameters instead of stdin. It's not an instead kind of thing - it does both. (At this point it may be worth "getting your hands dirty" reading a bit of mailman's python code. In particular, the docstring for the newlist command gives you the invocation info; there may be other questions you have that would be answered in a similar way...) > I think that there are many ISPs that would absolutely love a mailing list > system like Mailman if it had virtual hosting support built right in > flawlessly (we certainly would!). We've managed to tweak Majordomo a bit so > that it kind of works. And now we've kind of got Mailman working too. But > we really would like it to make our lives easier in a virtual hosting > environment, since that is pretty much all we do all day long. Clearly virtual hosting is important in the ISP world, and mailman certainly provides some capability there. However, we simply *can't* aim for flawless in any of the myriad dimensions where mailman operates - mailman has to do a lot of things well, not just any one thing. It's at these limits where open source, and a particularly comprehensible implementation language like python, can be a saving grace. There are limits in both directions, of course... Ken Manheimer klm@digicool.com From Harald.Meland@usit.uio.no Tue Aug 17 18:03:43 1999 From: Harald.Meland@usit.uio.no (Harald Meland) Date: 17 Aug 1999 19:03:43 +0200 Subject: [Mailman-Developers] RE: [Mailman-Users] Virtual Hosts -- can mailman handle them better? In-Reply-To: Tauren Mills's message of "Mon, 16 Aug 1999 01:05:44 -0700" References: <00e801bee7be$23e89480$1ad7a2d1@easystreet.com> Message-ID: [Tauren Mills] > I have set "Host name this list prefers" and it still returns emails > with the main domain name in them. Strange -- this certainly works fine for me, and I can't see any site-global configuration settings that could somehow inhibit changes done here. You're sure that it isn't your MTA that's rewriting the (header) addresses after Mailman has handed the message over to it? > > However, if you have several lists with the same localpart name in > > different domains (i.e. "foobar@dom1.com" and "foobar@dom2.org"), > > you'll have to assign them different Mailman-internal names. > > What do you mean by "different Mailman-internal names"? E.g. the list has the Mailman-internal name "mailman-users". Thus, if the Mailman installation at python.org housed another domain "example.com" that wanted a list , that list would have to use a different Mailman-internal name, e.g. "mailman-users-example.com" -- which would result in Mailman-generated messages looking rather messy, with email addresses like mailman-users-example.com@example.com all over them... If the Mailman-internal name was equal to the (preferred) email address of the list, there wouldn't be these kind of naming collisions. > But the problem is that the emails that get sent from Mailman would still > say "announce2@customerdomain.com" all throughout them, instead of > "announce@customerdomain.com". > > Would your suggested changes solve this problem? That is the main motivation for me suggesting it, so yes, I do hope it would :) > Could the newlist command at least include options on the command > line for the list's default URL and for the mail domain? What do others think about this? I'd really rather solve this once and for all with my proposed email-addr-as-internal-name and maildomain->base_URL scheme... but if no one but me think that that's the way to go, I probably won't bother :) Besides, I'm kind of swamped with real work right now :( -- Harald From Harald.Meland@usit.uio.no Tue Aug 17 18:05:57 1999 From: Harald.Meland@usit.uio.no (Harald Meland) Date: 17 Aug 1999 19:05:57 +0200 Subject: [Mailman-Developers] Re: [Mailman-Users] Virtual Hosts -- can mailman handle them better? In-Reply-To: Tomas Fasth's message of "Mon, 16 Aug 1999 10:58:51 +0200" References: <00e801bee7be$23e89480$1ad7a2d1@easystreet.com> <003401bee7c5$92150fe0$f6d52dc1@twinspot.net> Message-ID: [Tomas Fasth] > Tauren, Harald, > > I also have experienced problems with virtual hosting in > Mailman. That is, if you try to make it work within a single > installation. My solution was to install one instance of Mailman för > each virtual domain, each with it's own account (userid). Just a quick note: That would work OK for now, but wouldn't benefit as well as it could from the installation-global user database that's planned for next generation Mailman... Thanks for the tip anyway, -- Harald From tauren@servlets.net Tue Aug 17 19:20:18 1999 From: tauren@servlets.net (Tauren Mills) Date: Tue, 17 Aug 1999 11:20:18 -0700 Subject: [Mailman-Developers] RE: [Mailman-Users] Virtual Hosts -- can mailman handle them better? In-Reply-To: Message-ID: <000a01bee8dd$2934dfa0$1ad7a2d1@easystreet.com> Harald, > > I have set "Host name this list prefers" and it still returns emails > > with the main domain name in them. > > Strange -- this certainly works fine for me, and I can't see any > site-global configuration settings that could somehow inhibit changes > done here. You're sure that it isn't your MTA that's rewriting the > (header) addresses after Mailman has handed the message over to it? I haven't had a chance to look into this more. I'll let you know what I find. Thanks for the suggestion. > If the Mailman-internal name was equal to the (preferred) email > address of the list, there wouldn't be these kind of naming > collisions. OK. That is the same problem I was describing. Glad to hear we are talking about the same thing. > > Could the newlist command at least include options on the command > > line for the list's default URL and for the mail domain? > > What do others think about this? I'd really rather solve this once > and for all with my proposed email-addr-as-internal-name and > maildomain->base_URL scheme... but if no one but me think that that's > the way to go, I probably won't bother :) If the newlist command asked for the maillist name, but expected a fully qualified email address, then I would certainly be satisfied. But I would still like to be able to run newlist by specifying all of the options on the command line so that automating list creation is a little easier. > Besides, I'm kind of swamped with real work right now :( I hear ya! It was suggested on this list that we install a separate installation of Mailman for each domain. This would work and would solve the virtualhost problem. But it seems like you are already very close to having virtual hosting support built into a single installation. I think I'd rather try to hold off until you can add these features. Can you comment on when we might expect them? Where are these virtual hosting features being placed on your priority list? Are there a bunch of other items that need to be taken care of before you tackle virtual hosting support? Thanks again for your help! Tauren From jarrell@vt.edu Tue Aug 17 19:25:07 1999 From: jarrell@vt.edu (Ron Jarrell) Date: Tue, 17 Aug 1999 14:25:07 -0400 Subject: [Mailman-Developers] RE: [Mailman-Users] Virtual Hosts -- can mailman handle them better? In-Reply-To: References: <00e801bee7be$23e89480$1ad7a2d1@easystreet.com> Message-ID: <4.2.0.58.19990817142100.051fcc10@vtserf.cc.vt.edu> This bites people a lot, and should probably be in the faq; hell, I've been doing dns and sendmail for *years* and *I* periodically forget it's going to happen. If you're planning on sending mail *from* a host, make sure it's a real host entry, not an alias. In DNS terms, verify that it's an A record pointing at the same ip address as the main host (perfectly valid to do); do *not* put in a CNAME pointing at it. Unless someone has specifically configured sendmail to be set to nocanonify, mail from cnames will be re-written into the canonical name (that's what cname stands for), which is not the virtual hostname. This is also done by the *receiving* end, so there's nothing you can change on your side, it must be done in DNS. This is a stupid default, but was the default before virtual hosting really caught on. Most sites that just web virtual host use cnames; add email into the picture and suddenly nothing works like you expect. At 07:03 PM 8/17/99 +0200, Harald Meland wrote: >[Tauren Mills] > > > I have set "Host name this list prefers" and it still returns emails > > with the main domain name in them. > >Strange -- this certainly works fine for me, and I can't see any >site-global configuration settings that could somehow inhibit changes >done here. You're sure that it isn't your MTA that's rewriting the >(header) addresses after Mailman has handed the message over to it? > > > > However, if you have several lists with the same localpart name in > > > different domains (i.e. "foobar@dom1.com" and "foobar@dom2.org"), > > > you'll have to assign them different Mailman-internal names. > > > > What do you mean by "different Mailman-internal names"? > >E.g. the list has the Mailman-internal name >"mailman-users". Thus, if the Mailman installation at python.org >housed another domain "example.com" that wanted a list >, that list would have to use a different >Mailman-internal name, e.g. "mailman-users-example.com" -- which would >result in Mailman-generated messages looking rather messy, with email >addresses like > > mailman-users-example.com@example.com > >all over them... > >If the Mailman-internal name was equal to the (preferred) email >address of the list, there wouldn't be these kind of naming >collisions. > > > But the problem is that the emails that get sent from Mailman would still > > say "announce2@customerdomain.com" all throughout them, instead of > > "announce@customerdomain.com". > > > > Would your suggested changes solve this problem? > >That is the main motivation for me suggesting it, so yes, I do hope it >would :) > > > Could the newlist command at least include options on the command > > line for the list's default URL and for the mail domain? > >What do others think about this? I'd really rather solve this once >and for all with my proposed email-addr-as-internal-name and >maildomain->base_URL scheme... but if no one but me think that that's >the way to go, I probably won't bother :) > >Besides, I'm kind of swamped with real work right now :( >-- >Harald > >_______________________________________________ >Mailman-Developers maillist - Mailman-Developers@python.org >http://www.python.org/mailman/listinfo/mailman-developers From tomas@euronetics.se Tue Aug 17 22:05:56 1999 From: tomas@euronetics.se (Tomas Fasth) Date: Tue, 17 Aug 1999 23:05:56 +0200 Subject: [Mailman-Developers] RE: [Mailman-Users] Virtual Hosts --can mailman handle them better? References: <00e801bee7be$23e89480$1ad7a2d1@easystreet.com> <4.2.0.58.19990817142100.051fcc10@vtserf.cc.vt.edu> Message-ID: <37B9CEB4.4EE99067@euronetics.se> Ron Jarrell wrote: > Most sites that just web virtual host use cnames; add email into the picture > and suddenly nothing works like you expect. I got a recommendation long ago about using A records, not CNAME. I have since then followed that recommendation, but long since forgot why. Thanks for reminding me (us). Cheers, Tomas From ricardo@miss-janet.com Wed Aug 18 00:22:40 1999 From: ricardo@miss-janet.com (Ricardo Kustner) Date: Wed, 18 Aug 1999 01:22:40 +0200 (CEST) Subject: [Mailman-Developers] RE: [Mailman-Users] Usability patch: (Details) Buttons for 1.0 In-Reply-To: <19990816160955.K20043@alpha1.csd.uwm.edu> Message-ID: Hi, On 16-Aug-99 Bernhard Reiter wrote: > Mailman developers don't share my view on this so far, but I thought maybe > one > or the other user might be interested in it. With all respect to the great product the "core" mailman developers have created so far, i've noticed that it's not easy to get feedback from the developers when you post ideas/suggestions for mailman on the list... this way i (and maybe others too?) am not really motivated in sharing the changes or enhancements i make into mailman, which could be useful to other people too... Ricardo. -- From bernhard@uwm.edu Wed Aug 18 01:16:32 1999 From: bernhard@uwm.edu (Bernhard Reiter) Date: Tue, 17 Aug 1999 19:16:32 -0500 Subject: [Mailman-Developers] Re: [Mailman-Users] Usability patch: (Details) Buttons for 1.0 In-Reply-To: ; from Ricardo Kustner on Wed, Aug 18, 1999 at 01:22:40AM +0200 References: <19990816160955.K20043@alpha1.csd.uwm.edu> Message-ID: <19990817191632.B25816@alpha1.csd.uwm.edu> --ftEhullJWpWg/VHq Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable On Wed, Aug 18, 1999 at 01:22:40AM +0200, Ricardo Kustner wrote: > With all respect to the great product the "core" mailman developers have > created so far, i've noticed that it's not easy to get feedback from the > developers when you post ideas/suggestions for mailman on the list...=20 In my case Harald Meland answered (a while later after I posted that the first time), but didn't agree with my usability arguments.=20 > this way > i (and maybe others too?) am not really motivated in sharing the=20 > changes or enhancements i make into mailman, which could be > useful to other people too... I can understand that the developers are busy. Generally, Jitterbug Reports are recognised sooner or later. It might be a nice idea to create a contrib directory for side hacks for Mailman. People could exchange all sort of patches and enchancements there. Regards, Bernhard --=20 Research Assistant, Geog Dept UM-Milwaukee, USA. (www.uwm.edu/~bernhard) Association for a Free Informational Infrastructure (ffii.org) --ftEhullJWpWg/VHq Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: 2.6.2 iQCVAwUBN7n7XxFKNN1LD7H9AQGnqgQAwu2l3/n+VYU1DAMxAAS+sdkFaDMFKXut RgoiTBh9XbZk1l7vfCG5IIM7Wj+fQ9Q36KO7XX1EjeynZEeE9Zq96+691fGHy5KI X5zCttJQwWWIXwUvqNTnCnf7gv/ikYdFHNYEBl2UQcEJERMbKFM7Ud+qGtyZ8Sj+ kFTu5HBgBRg= =PuKv -----END PGP SIGNATURE----- --ftEhullJWpWg/VHq-- From bwarsaw@cnri.reston.va.us (Barry A. Warsaw) Wed Aug 18 04:36:51 1999 From: bwarsaw@cnri.reston.va.us (Barry A. Warsaw) (Barry A. Warsaw) Date: Tue, 17 Aug 1999 23:36:51 -0400 (EDT) Subject: [Mailman-Developers] Re: [Mailman-Users] Usability patch: (Details) Buttons for 1.0 References: <19990816160955.K20043@alpha1.csd.uwm.edu> <19990817191632.B25816@alpha1.csd.uwm.edu> Message-ID: <14266.10835.774279.283391@anthem.cnri.reston.va.us> >>>>> "BR" == Bernhard Reiter writes: BR> I can understand that the developers are busy. Generally, BR> Jitterbug Reports are recognised sooner or later. Guilty as charged. Understand that Mailman hacking on my part is almost entirely voluntary (I won't speak for the other developers). Yes I'm motivated because python.org runs nothing but Mailman (and many lists at that), but I only get to hack on stuff in chunks. This means that for me, the really deep issues get buried for a while until I can free up enough time to read and understand what's going on. But I always cruise through, and try to clear, the Jitterbug database when I'm thinking about doing a release. The next `deep' issue on my plate is internationalization, and I can see that that will consume most of my free Mailman hacking time for a while. BR> It might be a nice idea to create a contrib directory for side BR> hacks for Mailman. People could exchange all sort of patches BR> and enchancements there. This is a good idea. How should we do it? Can somebody donate some ftp space (and more importantly the responsibility to keep it up to date)? And remember, if you're interested in becoming a core developer, let us know. I know we could use knowledgeable and motivated contributors. -Barry From bernhard@uwm.edu Wed Aug 18 04:49:03 1999 From: bernhard@uwm.edu (Bernhard Reiter) Date: Tue, 17 Aug 1999 22:49:03 -0500 Subject: [Mailman-Developers] Re: Mailman development organisation In-Reply-To: <14266.10835.774279.283391@anthem.cnri.reston.va.us>; from Barry A. Warsaw on Tue, Aug 17, 1999 at 11:36:51PM -0400 References: <19990816160955.K20043@alpha1.csd.uwm.edu> <19990817191632.B25816@alpha1.csd.uwm.edu> <14266.10835.774279.283391@anthem.cnri.reston.va.us> Message-ID: <19990817224903.F30129@alpha1.csd.uwm.edu> --XWOWbaMNXpFDWE00 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable On Tue, Aug 17, 1999 at 11:36:51PM -0400, Barry A. Warsaw wrote: > Yes I'm motivated because python.org runs nothing but Mailman (and > many lists at that), but I only get to hack on stuff in chunks. This > means that for me, the really deep issues get buried for a while until > I can free up enough time to read and understand what's going on. But > I always cruise through, and try to clear, the Jitterbug database when > I'm thinking about doing a release. Well I do understand that. L;-) For my part, I run Mailman for the Association for a Free Informational Infrastructure (ffii.org) > The next `deep' issue on my plate is internationalization, u Very good! > BR> It might be a nice idea to create a contrib directory for side > BR> hacks for Mailman. People could exchange all sort of patches > BR> and enchancements there. > This is a good idea. How should we do it? Can somebody donate some > ftp space (and more importantly the responsibility to keep it up to > date)? Not much ftp space is needed. I can't offer time, but if there is no other ftp space,=20 FFII might be able to offer some. Is there some space, where Mailman is maintained now? > And remember, if you're interested in becoming a core developer, let > us know. I know we could use knowledgeable and motivated > contributors. Thanks for the offer! It is well received. The next problem I will hack on=20 will be hypermail. First the overview page generation and then, maybe the connection to Mailman. Bernhard --=20 Research Assistant, Geog Dept UM-Milwaukee, USA. (www.uwm.edu/~bernhard) Association for a Free Informational Infrastructure (ffii.org) --XWOWbaMNXpFDWE00 Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: 2.6.2 iQCVAwUBN7otLhFKNN1LD7H9AQG1GwQAp1GLdJohkRAtcjcH1nAOlCFDNKzNqqSC IbhiR6roVe1+9UHkl71n3AVsaVPnogqTMlk6EkWWNr1cbUE5YXRkvGZglSCcQUER FKTQjNWTG3Cj7ZPa5K7KR0mhE1TRKpTDxniGpc9waAqB2W6zqKpcy8CN3fW5Ug9j hk131Tg59Kw= =oJM8 -----END PGP SIGNATURE----- --XWOWbaMNXpFDWE00-- From bwarsaw@python.org Wed Aug 18 04:58:34 1999 From: bwarsaw@python.org (Barry A. Warsaw) Date: Tue, 17 Aug 1999 23:58:34 -0400 (EDT) Subject: [Mailman-Developers] Re: Mailman development organisation References: <19990816160955.K20043@alpha1.csd.uwm.edu> <19990817191632.B25816@alpha1.csd.uwm.edu> <14266.10835.774279.283391@anthem.cnri.reston.va.us> <19990817224903.F30129@alpha1.csd.uwm.edu> Message-ID: <14266.12138.666733.673840@anthem.cnri.reston.va.us> >>>>> "BR" == Bernhard Reiter writes: BR> Not much ftp space is needed. I can't offer time, but if BR> there is no other ftp space, FFII might be able to offer BR> some. Is there some space, where Mailman is maintained now? Time's the more important issue, really. Either list.org or python.org's got the space, but the permission issue might be problematic (I sure wish I had time to Zope-ify python.org). BR> Thanks for the offer! It is well received. The next problem I BR> will hack on will be hypermail. First the overview page BR> generation and then, maybe the connection to Mailman. Very cool. Please continue! -Barry From bernhard@uwm.edu Wed Aug 18 05:17:05 1999 From: bernhard@uwm.edu (Bernhard Reiter) Date: Tue, 17 Aug 1999 23:17:05 -0500 Subject: [Mailman-Developers] Re: Mailman development organisation In-Reply-To: <14266.12138.666733.673840@anthem.cnri.reston.va.us>; from Barry A. Warsaw on Tue, Aug 17, 1999 at 11:58:34PM -0400 References: <19990816160955.K20043@alpha1.csd.uwm.edu> <19990817191632.B25816@alpha1.csd.uwm.edu> <14266.10835.774279.283391@anthem.cnri.reston.va.us> <19990817224903.F30129@alpha1.csd.uwm.edu> <14266.12138.666733.673840@anthem.cnri.reston.va.us> Message-ID: <19990817231705.G30129@alpha1.csd.uwm.edu> --W5WqUoFLvi1M7tJE Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable On Tue, Aug 17, 1999 at 11:58:34PM -0400, Barry A. Warsaw wrote: > Time's the more important issue, really. =20 How did I guessed that? 8-) Okay, we might write out an open position: WANTED: Contribution Manager for GNU Mailman=20 Tasks:=20 Collect patches and other contributions for GNU Mailman, mainly through observation of the mailing lists and the incoming directory. You will be responsible for GNU Mailman's new "contrib" directory. In this volenteer position _you_ are the important link between the rapidly ongoing outsite Mailman development and the core developers! Apply now to mailman-developers@python.org ;) > Either list.org or python.org's got the space,=20 Good. > but the permission issue might be problematic=20 Well incoming will not be readable and the new Contribution Manager just have to move the stuff. Guidelines for contributions: Your patch has to: - include a significant abbr of your name - mailman version it was intended for - a readme explaining, what it does Example files names: help_usability1_bernhard_mailman-1.0.patch help_usability1_bernhard_mailman-1.0.txt > (I sure wish I had time to Zope-ify python.org). :-) ((Sometimes the usability is better with a more non automated approach. E.g. Jitterbug should offer an option to show all bug reports together in one big page. Because it is hard to search and get an overview.=20 (Knowing a bit about usability is painful, you can only wine, because you don't have the time to recode it all yourself or explain it in detail.) )) Regards, Bernhard --=20 Research Assistant, Geog Dept UM-Milwaukee, USA. (www.uwm.edu/~bernhard) Association for a Free Informational Infrastructure (ffii.org) --W5WqUoFLvi1M7tJE Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: 2.6.2 iQCVAwUBN7ozwRFKNN1LD7H9AQHhXgQAhUGgyl8mR4QRNYzjlXTPAypEZiZ9AfKO r82d/6pW6Va2ORbghzJjDpV7sjPvxkbG5JTWFhY0tzZg5t7kxpWBv2TKFUEZMek/ dlZENY7Wn1jDkrNphQx92ew2+N8F0iLGa0JCXwka9aQ0V5RbaV6ocF2IoRpvYjvc 7gmGMNt7w4Q= =i4r1 -----END PGP SIGNATURE----- --W5WqUoFLvi1M7tJE-- From Harald.Meland@usit.uio.no Wed Aug 18 11:19:01 1999 From: Harald.Meland@usit.uio.no (Harald Meland) Date: 18 Aug 1999 12:19:01 +0200 Subject: [Mailman-Developers] news to mail gatewaying problem... References: <199908112241.SAA24656@babylon5.cc.vt.edu> <19990817111127.A14880@mail.dskk.co.jp> Message-ID: [Jim Tittsler] > On Wed, Aug 11, 1999 at 06:41:05PM -0400, Ronald A. Jarrell wrote: > > Apparently python's nntplib hasn't been updated in a LONG time; every > > other major library out there knows to issue a "mode reader" before > > trying to do anything as a reader on an inn server. It doesn't hurt if > > I proposed such a patch in comp.lang.python last year, but Guido > rejected it for fear it might break something else. He suggested > instead calling the constructor (with no user argument), and then > using separate commands for mode reader and authinfo. Which would imply that programs using the library would have to call the "shortcmd" NNTP method, which is described as "internal": # Internal: send a command and get the response def shortcmd(self, line): I can't say that I'd feel very comfortable doing this, as I suspect any library-internal methods capable of changing their name and/or contract when I'm not looking. > I think you should also be able to add the shortcmd('mode reader') > to GatewayManager.py and stay with the standard Python library if > you don't have other nntplib uses on your machine. Experimental patch that I've now been running for several minutes at my site: Index: GatewayManager.py =================================================================== RCS file: /export/public/cvsroot/mailman/Mailman/GatewayManager.py,v retrieving revision 1.16 diff -u -r1.16 GatewayManager.py --- GatewayManager.py 1999/07/01 18:37:31 1.16 +++ GatewayManager.py 1999/08/18 10:14:24 @@ -64,6 +64,11 @@ # - that the watermark is non-zero def PollNewsGroup(self, conn, wm, first, last): import nntplib + # Tell the news server that we want to _read_ articles now + try: + conn.shortcmd('mode reader') + except: + pass # NEWNEWS is not portable and has synchronization issues... Use a # watermark system instead. for num in range(max(wm+1, first), last+1): However, our news server appears to work fine without the "mode reader" magic, so it'd be nice if the patch could be verified by someone who actually need this... -- Harald From cherub@azrael.dyn.cheapnet.net Wed Aug 18 16:34:40 1999 From: cherub@azrael.dyn.cheapnet.net (Steven Hazel) Date: Wed, 18 Aug 1999 10:34:40 -0500 (CDT) Subject: [Mailman-Developers] submitting code Message-ID: I have a basic CGI set up to allow posting to mailman lists from a page in the mailman site. It involves one new file and changes to two other files. I've made it off the latest CVS source, so it should work with that. What's the best way to submit it? Do I just post the file and context diffs here? -S From ricardo@miss-janet.com Wed Aug 18 19:29:51 1999 From: ricardo@miss-janet.com (Ricardo Kustner) Date: Wed, 18 Aug 1999 20:29:51 +0200 (CEST) Subject: [Mailman-Developers] Re: [Mailman-Users] Usability patch: (D In-Reply-To: <19990817191632.B25816@alpha1.csd.uwm.edu> Message-ID: Hi, On 18-Aug-99 Bernhard Reiter wrote: > On Wed, Aug 18, 1999 at 01:22:40AM +0200, Ricardo Kustner wrote: >> With all respect to the great product the "core" mailman developers have >> created so far, i've noticed that it's not easy to get feedback from the >> developers when you post ideas/suggestions for mailman on the list... > In my case Harald Meland answered (a while later after I posted that the > first time), but didn't agree with my usability arguments. ah.. sorry, i didnt know that :) >> i (and maybe others too?) am not really motivated in sharing the >> changes or enhancements i make into mailman, which could be >> useful to other people too... > I can understand that the developers are busy. same here... but i've never had any reactions to the suggestions i posted in here so i kind of got the feeling that nobody took me seriously... > It might be a nice idea to create a contrib directory for side hacks for > Mailman. People could exchange all sort of patches and enchancements > there. that would be a great idea... i'm quite new to python programming (i've experience with other languages and script languages though, including object-orientied onces... i've never looked into python untill i wanted to make some changes in mailman) so i don't think i'm ready to be an active developer for mailman, however i can make small enhancements and if we had a contrib dir, i could put them in there... Ricardo. From tomas@euronetics.se Thu Aug 19 15:29:47 1999 From: tomas@euronetics.se (Tomas Fasth) Date: Thu, 19 Aug 1999 16:29:47 +0200 Subject: [Mailman-Developers] Re: [Mailman-Users] Virtual Hosts -- can mailman handle them better? References: <00e801bee7be$23e89480$1ad7a2d1@easystreet.com> <003401bee7c5$92150fe0$f6d52dc1@twinspot.net> Message-ID: <37BC14DB.BFB1BB08@euronetics.se> At my site, an installation-global (site-specific) user database will not prove useful in most cases. Customers are typically administer their own lists of recipients using a tool of their own choice, exporting email addresses to mailman when needed. This is an interesting area in it self, and an extension to the notion of user (or subscriber) databases. For example providing "hooks" in Mailman for externally managed information about subscribers. Anyway, Mailman is already showing an impressive range of usefulness, and better native support for virtual hosting would surely make it excel even more. All in all, great stuff! Cheers, Tomas Harald Meland wrote: > [Tomas Fasth] > > > Tauren, Harald, > > > > I also have experienced problems with virtual hosting in > > Mailman. That is, if you try to make it work within a single > > installation. My solution was to install one instance of Mailman för > > each virtual domain, each with it's own account (userid). > > Just a quick note: That would work OK for now, but wouldn't benefit as > well as it could from the installation-global user database that's > planned for next generation Mailman... > > Thanks for the tip anyway, > -- > Harald > > ------------------------------------------------------ > Mailman-Users maillist - Mailman-Users@python.org > http://www.python.org/mailman/listinfo/mailman-users From guido@CNRI.Reston.VA.US Thu Aug 19 17:16:35 1999 From: guido@CNRI.Reston.VA.US (Guido van Rossum) Date: Thu, 19 Aug 1999 12:16:35 -0400 Subject: [Mailman-Developers] Localization expert needed Message-ID: <199908191616.MAA11031@eric.cnri.reston.va.us> My contact at HP is asking for expert advice on localization and multi-byte characters. I have little to share except pointing to Martin von Loewis and Pythonware. Does anyone on this list have a suggestion besides those? Don't hesitate to recommend yourself -- there's money in it! PS I'm not on the mailman-developers list, so please reply to me directly! --Guido van Rossum (home page: http://www.python.org/~guido/) ------- Forwarded Message Date: Wed, 18 Aug 1999 23:15:55 -0700 From: JOE_ELLSWORTH To: guido@CNRI.Reston.VA.US Subject: Localization efforts and state in Python. Hi Guido. Can you give me some references to The best references currently available for using Python in CGI applications when multi-byte localization is known to be needed? Who is the expert in this in the Python area? Can you recomend that they work with us in this area? Thanks, Joe E. ------- End of Forwarded Message From dan@feld.cvut.cz Thu Aug 19 18:14:27 1999 From: dan@feld.cvut.cz (Dan Ohnesorg) Date: Thu, 19 Aug 1999 19:14:27 +0200 (CEST) Subject: [Mailman-Developers] Localization expert needed In-Reply-To: <199908191616.MAA11031@eric.cnri.reston.va.us> Message-ID: On Thu, 19 Aug 1999, Guido van Rossum wrote: > My contact at HP is asking for expert advice on localization and > multi-byte characters. I have little to share except pointing to > Martin von Loewis and Pythonware. Does anyone on this list have a > suggestion besides those? Don't hesitate to recommend yourself -- > there's money in it! Exist some small group, which works on localization using gettext, but not multibyte characters. The project is in first beta stage and we are not sure, if it will be included in official distribution. Currently is supported French, Spanish, Italian and Czech. The coordinator of this project is avalaible under e-mail: jcrey@uma.es As far as i know, there is no one site which is runnig localized mailman on public accesible listserv. cheers dan -- ________________________________________ DDDDDD DD DD Dan Ohnesorg, supervisor on POWER DD OOOO Dan@feld.cvut.cz DD OODDOO Dep. of Power Engineering DDDDDD OO CTU FEL Prague, Bohemia OO OO work: +420 2 24352785;+420 2 24972109 OOOO home: +420 311 679679;+420 311 679311 ________________________________________ Nekdy je rozumne o krok ustoupit, aby se prodlouzil rozbeh. From bwarsaw@cnri.reston.va.us (Barry A. Warsaw) Sat Aug 21 06:50:21 1999 From: bwarsaw@cnri.reston.va.us (Barry A. Warsaw) (Barry A. Warsaw) Date: Sat, 21 Aug 1999 01:50:21 -0400 (EDT) Subject: [Mailman-Developers] The Hylton Archiver Band-aid Message-ID: <14270.15901.493000.460708@anthem.cnri.reston.va.us> I've just checked in a slew of changes affecting the archiver, hopefully fixing the more serious of the nasty performance problems we've been seeing. Jeremy Hylton deserves a lot of credit for his excellent analysis and patching of the code. He called his changes "a band-aid" because it's clear the archiver could still use more improvement, and in fact should go through a simplification and partial rewrite. We don't have the time for that now, so we'll go with the Hylton Band-aid for now. I hope I can accurately outline the changes, but it's late and I'm tired so I might miss something. Please check the CVS log messages for details. I really hope some of you adventurous types will try running with these new changes. I intend to put them up on python.org (perhaps this weekend, or Monday) to see if it fixes the performance problems I've been seeing there. First of all, Jeremy noticed that the way the archiver's .txt.gz file is created is very inefficient. It essentially reads the .txt and uses Python's gzip module to write the .txt.gz file -- for /every/ message that gets posted! This is a lot of work for not much benefit. So the first change is that the .gz file is not created by default (see mm_cfg.GZIP_ARCHIVE_TXT_FILES). We need to work in a crontab entry that gzip's the file nightly. Yes this means that the .txt.gz file will lag behind the on-line archive, but that should be a worthwhile tradeoff for better performance. Jeremy also changed the DumbBTree implementation so that the keys are not sorted until some client starts to iterate through the data structure. This saves work when adding the initial elements. Remember a while back I added a clear() method to do a bulk clear of the items and this saved a lot of work. Finally, Jeremy made some observations about the cache in the HyperDatabase. He says that since it traverses the elements in linear order, the lack of locality of reference means that evicting items from the cache doesn't really help, and in fact might hurt performance. So we now keep all the items in the cache (trade space for time). It might be worthwhile to get rid of the cache altogether, although it does serve a useful purpose currently. The DumbBTree is essentially a dictionary of pickles, and this whole structure is then marshaled. The cache keeps a hold of the unpickled objects. It might make sense then to make the DumbBTree a simple dictionary and just pickle it directly. Then the cache wouldn't be needed. Jeremy has some other ideas about how to improve the archiver. I'm way too tired to outline them here. Jeremy will be out of the office for a week, so hopefully he'll be able to restore enough state when he gets back to post his ideas. G'night, :) -Barry From ken@kyler.com Sun Aug 22 13:50:57 1999 From: ken@kyler.com (Ken Kyler) Date: Sun, 22 Aug 1999 08:50:57 -0400 Subject: [Mailman-Developers] Volunteering In-Reply-To: <199908220500.BAA22322@python.org> Message-ID: <000701beec9c$fa5e7420$4d0fc897@kylernet> Greetings! We have just recently started using MailMan (http://www.eLists.org). We switched from MajorDomo. It is a significant improvement. Although I am a programmer, I'm not very familiar with Python - however I am a fairly good tech writer (http://www.kyler.com). Which leads me to... How does one get involved? It appears you could use some help with the documentation. Ken Kyler From bwarsaw@cnri.reston.va.us (Barry A. Warsaw) Mon Aug 23 17:58:46 1999 From: bwarsaw@cnri.reston.va.us (Barry A. Warsaw) (Barry A. Warsaw) Date: Mon, 23 Aug 1999 12:58:46 -0400 (EDT) Subject: [Mailman-Developers] Volunteering References: <199908220500.BAA22322@python.org> <000701beec9c$fa5e7420$4d0fc897@kylernet> Message-ID: <14273.32198.27665.105033@anthem.cnri.reston.va.us> >>>>> "KK" == Ken Kyler writes: KK> We have just recently started using MailMan KK> (http://www.eLists.org). We switched from MajorDomo. It is a KK> significant improvement. Although I am a programmer, I'm not KK> very familiar with Python - however I am a fairly good tech KK> writer (http://www.kyler.com). Which leads me to... KK> How does one get involved? It appears you could use some help KK> with the documentation. Ken, Glad to hear that you'd like to help out with Mailman documentation. You should definitely get in touch with Chris Kolar (who is on this list). He posted the following URL with his fine start at documentation: http://www.aurora.edu/~ckolar/mailman David Thiessen also edited a version of the Mailman Users Manual but I can't dig up the reference right now. While I really appreciate and applaud both efforts, we need to talk about a couple of things. First, for us to include any documentation with the Mailman distro, it'll have to be GPL'd and FSF-assigned. I can email the forms for anybody who needs them, but you need to know this in advance in case you can't or won't be able to do this. Second, there's the matter of the format for the documentation. Because we're GNU, we need the docs in a "free" format. Unfortunately PDF isn't "free" as far as the FSF is concerned. Most ideal would be texinfo, which I believe is the GNU preferred documentation format. I've hacked enough texinfo to know that that's not the most convenient format to write. I think that PostScript and HTML are both okay, so I'm not sure if it's enough that a non-free source can be translated into a free format. I would encourage those who are working on documentation to get together and coordinate efforts. Post URLs for drafts on this mailing list. If you think you need me to create a little focused sig list to help you out, let me know. And thanks! -Barry From ricardo@miss-janet.com Mon Aug 23 23:16:00 1999 From: ricardo@miss-janet.com (Ricardo Kustner) Date: Tue, 24 Aug 1999 00:16:00 +0200 (CEST) Subject: [Mailman-Developers] mailman changes Message-ID: Hi, I've made some changes into the version of Mailman i'm using to make life a bit easier of our moderators (and me)... most of which are on the 'administrative requests' page (Mailman/Cgi/admindb.py) some of these changes are: 1) all mail headers of the moderated messages are filtered by default; only a few nesecary headers are printed. I've also added a button to view the posts with all headers in case that's needed for some reason. 2) i've added an extra text-field which can be used to enter an email address, and an extra button 'send copy' in the Approve/Reject/Discard list that will send a copy of the email to that entered email addy. my next step will be adding a 'comment' field that will add a "note from the editor" to a post that is being approved to be send to the mailinglist. If anybody thinks these changes can be useful for others too, please let me know, and i'll try to make a patch out of them... I must say that it wasn't easy to understand some parts of the source, things like val[2][1] aren't that obvious :) And since i'm a python-newbie i had some problems with NameErrors at first when i added some of my changes... ;) I've only focussed on Cgi/admindb.py so far (and partly ListAdmin.py).... also, i wanted to add some configuration options, but i couldn't find an easy way to do that without having to know the complete structure of the mailman sourcecode... so i gave up... for now... I also want to enhance the 'Membership Management' section (to be honest, it takes too much time to find a member through the webinterface), but i think i'll need a few more hours of studying the mailman source before i can do that I'm really interested in learing more about mailman and python... it has been a while since i learned something new with programming and i've just remembered how addicting it can be :) Ricardo. -- From ken@kyler.com Mon Aug 23 23:26:37 1999 From: ken@kyler.com (Ken Kyler) Date: Mon, 23 Aug 1999 18:26:37 -0400 Subject: [Mailman-Developers] Volunteering In-Reply-To: <14273.32198.27665.105033@anthem.cnri.reston.va.us> Message-ID: <002f01beedb6$90a9f200$4d0fc897@kylernet> I'm comfortable with the GPL, etc - email me the forms. As far as format, I use primarily a windoze machine so I would prefer plain ascii or html. Ken > Ken, > > Glad to hear that you'd like to help out with Mailman documentation. > You should definitely get in touch with Chris Kolar (who is on this > list). He posted the following URL with his fine start at > documentation: > http://www.aurora.edu/~ckolar/mailman David Thiessen also edited a version of the Mailman Users Manual but I can't dig up the reference right now. While I really appreciate and applaud both efforts, we need to talk about a couple of things. First, for us to include any documentation with the Mailman distro, it'll have to be GPL'd and FSF-assigned. I can email the forms for anybody who needs them, but you need to know this in advance in case you can't or won't be able to do this. Second, there's the matter of the format for the documentation. Because we're GNU, we need the docs in a "free" format. Unfortunately PDF isn't "free" as far as the FSF is concerned. Most ideal would be texinfo, which I believe is the GNU preferred documentation format. I've hacked enough texinfo to know that that's not the most convenient format to write. I think that PostScript and HTML are both okay, so I'm not sure if it's enough that a non-free source can be translated into a free format. I would encourage those who are working on documentation to get together and coordinate efforts. Post URLs for drafts on this mailing list. If you think you need me to create a little focused sig list to help you out, let me know. And thanks! -Barry From cherub@azrael.dyn.cheapnet.net Wed Aug 25 09:07:29 1999 From: cherub@azrael.dyn.cheapnet.net (Steven Hazel) Date: Wed, 25 Aug 1999 03:07:29 -0500 (CDT) Subject: [Mailman-Developers] post messages from the web Message-ID: Well, my previous mailing inquiring about how to best submit code got no reponse, so I'm submitting as I see fit: namely, via attached files and generous context diffs. Attached are mailman/Mailman/Cgi/postmsg.py, a basic web interface for posting messages, and Message.diff, a 30-line context diff of some minor changes to IncomingMessage which allow postmsg.py to work properly. This is still all very early code, so your beautifcations and suggestions are appriciated. Patches to make the postmsg script accessable via a replacement tag are pending. User accounts are in progress, but further off. -S ===File ~/projects/mailman/Mailman/Cgi/postmsg.py=========== #! /usr/bin/env python # # Copyright (C) 1999 by the Free Software Foundation, Inc. # # This program is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public License # as published by the Free Software Foundation; either version 2 # of the License, or (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. """Allows user to log in, setting authentication cookies """ # No lock needed in this script, because we don't change data. from Mailman import auth import Cookie import sys import os, string, cgi from regsub import gsub from Mailman import Utils, MailList, Message, Errors from Mailman import mm_cfg from Mailman.htmlformat import * def main(): global user try: path = os.environ['PATH_INFO'] except KeyError: path = "" list_info = Utils.GetPathPieces(path) list_name = string.lower(list_info[0]) try: list = MailList.MailList(list_name, lock=0) except: list = None if not (list and list._ready): FormatPostmsgStatus(error="List %s not found." % list_name) return if len(list_info) == 0: FormatPostmsgStatus() return global cgi_data cgi_data = cgi.FieldStorage() message = None if cgi_data.has_key('message'): imsg = Message.IncomingMessage(''); fromaddr = cgi_data['from'].value is_auth = 0 try: # admin uses cookies with -admin name suffix is_auth = list.WebAuthenticate(user=fromaddr, password= cgi_data['password'].value) except Errors.MMNotAMemberError: errormsg = 'Incorrect user name or password.' except Errors.MMBadPasswordError: errormsg = 'Incorrect user name or password.' except Errors.MMExpiredCookieError: errormsg = 'Your cookie has gone stale, ' \ 'enter password to get a new one.', except Errors.MMInvalidCookieError: errormsg = 'Error decoding authorization cookie.' except Errors.MMAuthenticationError: errormsg = 'Authentication error.' if (is_auth): imsg.SetHeader('from', fromaddr) else: FormatPostmsgStatus(errormsg) return imsg.SetHeader('subject', cgi_data['subject'].value) imsg.SetHeader('to', list.GetListEmail()) message = cgi_data['message'].value if message[len(message)-1]!='\n': message = "%s\n" % message imsg.SetBody(message) list.Post(imsg) FormatPostmsgStatus('Message Posted') else: doc = Document() doc.SetTitle('Post Message') doc.AddItem('Fill out the form below to post a message to the ') doc.AddItem(list_name) doc.AddItem(' mailing list.

') form = Form(list.GetRelativeScriptURL('postmsg')) doc.AddItem(form) form.AddItem('Email Address: ') form.AddItem(TextBox(name='from', size=30)) form.AddItem('
Password: ') form.AddItem(PasswordBox(name='password')) form.AddItem('
') form.AddItem('

Subject: ') form.AddItem(TextBox(name='subject', size=30)) form.AddItem('

Post
') form.AddItem(TextArea(name='message', rows=24, cols=80, wrap='soft')) form.AddItem('
') form.AddItem(SubmitButton('Post','Post Message')) print doc.Format() def FormatPostmsgStatus(error=None): "Simple message posting overview" # XXX We need a portable way to determine the host by which we are being # visited! An absolute URL would do... http_host = os.environ.get('HTTP_HOST') or\ os.environ.get('SERVER_NAME') port = os.environ.get('SERVER_PORT') # strip off the port if there is one if port and http_host[-len(port)-1:] == ':'+port: http_host = http_host[:-len(port)-1] if mm_cfg.VIRTUAL_HOST_OVERVIEW and http_host: host_name = http_host else: host_name = mm_cfg.DEFAULT_HOST_NAME doc = Document() doc.SetTitle(error) table = Table(border=0, width="100%") table.AddRow([Center(Header(2, error))]) table.AddCellInfo(max(table.GetCurrentRowIndex(), 0), 0, colspan=2, bgcolor="#99ccff") advertised = [] names = Utils.list_names() names.sort() for n in names: l = MailList.MailList(n, lock = 0) if l.advertised: if (mm_cfg.VIRTUAL_HOST_OVERVIEW and http_host and (string.find(http_host, l.web_page_url) == -1 and string.find(l.web_page_url, http_host) == -1)): # List is for different identity of this host - skip it. continue else: advertised.append(l) doc.AddItem(table) doc.AddItem('
') doc.AddItem(MailmanLogo()) print doc.Format(bgcolor="#ffffff") if __name__ == "__main__": main() ============================================================ ===File ~/Message.diff====================================== Index: Message.py =================================================================== RCS file: /home/cherub/cvs/mailman/Mailman/Message.py,v retrieving revision 1.1 retrieving revision 1.4 diff -c -3 -0 -r1.1 -r1.4 *** Message.py 1999/07/28 20:42:33 1.1 --- Message.py 1999/08/25 07:58:32 1.4 *************** *** 76,135 **** --- 76,141 ---- # We know the message is gonna come in on stdin or from text for our purposes. class IncomingMessage(rfc822.Message): def __init__(self, text=None): if not text: rfc822.Message.__init__(self, sys.stdin, 0) self.body = self.fp.read() else: rfc822.Message.__init__(self, FakeFile(text), 0) self.body = self.fp.read() self.file_count = None def readlines(self): if self.file_count <> None: x = self.file_count self.file_count = len(self.file_data) return self.file_data[x:] return map(RemoveNewline, self.headers) + [''] + \ string.split(self.body,'\n') def readline(self): if self.file_count == None: self.file_count = 0 self.file_data = map(RemoveNewline, self.headers) + [''] + \ string.split(self.body,'\n') if self.file_count >= len(self.file_data): return '' self.file_count = self.file_count + 1 return self.file_data[self.file_count-1] + '\n' + def SetBody(self, body): + self.body = body + + def AppendToBody(self, text): + self.body = self.body + text + def GetSender(self): # Look for a Sender field. sender = self.getheader('sender') if sender: realname, mail_address = self.getaddr('sender') else: try: realname, mail_address = self.getaddr('from') except: real_name = mail_address = None # We can't trust that any of the headers really contained an address if mail_address and type(mail_address) == type(""): return string.lower(mail_address) else: # The unix from line is all we have left... if self.unixfrom: return string.lower(string.split(self.unixfrom)[1]) def GetEnvelopeSender(self): # # look for unix from line and attain address # from it, return None if there is no unix from line # this function is used to get the envelope sender # when mail is sent to a -admin address # if not self.unixfrom: return None # XXX assumes no whitespace in address parts = string.split(self.unixfrom) ============================================================ From Gergely Madarasz Wed Aug 25 13:25:57 1999 From: Gergely Madarasz (Gergely Madarasz) Date: Wed, 25 Aug 1999 14:25:57 +0200 (METDST) Subject: [Mailman-Developers] duplicate messages with 1.0 Message-ID: Hello, I've heard from some users that sometimes they get duplicate messages from the list. Now I got one myself, here they are with full headers. I don't think that it has to do with the fact that I replied to myself in this message.... -- Madarasz Gergely gorgo@caesar.elte.hu gorgo@linux.rulez.org It's practically impossible to look at a penguin and feel angry. Egy pingvinre gyakorlatilag lehetetlen haragosan nezni. HuLUG: http://mlf.linux.rulez.org/ ---------- Forwarded message ---------- Received: from mlf.linux.rulez.org (mlf.linux.rulez.org [192.188.244.13]) by caesar.elte.hu (8.9.0/8.9.0) with ESMTP id OAA126500 for ; Wed, 25 Aug 1999 14:15:47 +0200 Received: from mlf.linux.rulez.org (localhost [127.0.0.1]) by mlf.linux.rulez.org (8.9.3/8.9.3/Debian/GNU) with ESMTP id OAA25029; Wed, 25 Aug 1999 14:12:08 +0200 Received: from darmol.elte.hu (darmol.elte.hu [157.181.3.1]) by mlf.linux.rulez.org (8.9.3/8.9.3/Debian/GNU) with ESMTP id OAA24949 for ; Wed, 25 Aug 1999 14:11:48 +0200 Received: from caesar.power.elte.hu (caesar.elte.hu [157.181.42.42]) by darmol.elte.hu (8.9.3/8.9.3/Debian/GNU) with SMTP id OAA18043 for ; Wed, 25 Aug 1999 14:11:48 +0200 Date: Wed, 25 Aug 1999 14:12:53 +0200 (METDST) From: Gergely Madarasz X-Sender: gorgo@caesar.power.elte.hu To: Linux Lista Subject: Re: RAID + boot + lilo In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Reply-To: linux@mlf.linux.rulez.org Sender: linux-admin@mlf.linux.rulez.org Errors-To: linux-admin@mlf.linux.rulez.org X-Mailman-Version: 1.0 Precedence: bulk List-Id: linux kerdesek/valaszok X-BeenThere: linux@mlf.linux.rulez.org On Wed, 25 Aug 1999, Gergely Madarasz wrote: > dd if=/dev/sdaX of=/dev/sdbX > ahol X a /boot particio Ja, es ezt csakis mountolatlan vagy ro mountolt /boot-al -- Madarasz Gergely gorgo@caesar.elte.hu gorgo@linux.rulez.org Egy pingvinre gyakorlatilag lehetetlen haragosan nezni. HuLUG: http://mlf.linux.rulez.org/ _________________________________________________ linux lista - linux@mlf.linux.rulez.org http://mlf.linux.rulez.org/mailman/listinfo/linux ---------- Forwarded message ---------- Received: from mlf.linux.rulez.org (mlf.linux.rulez.org [192.188.244.13]) by caesar.elte.hu (8.9.0/8.9.0) with ESMTP id OAA17705 for ; Wed, 25 Aug 1999 14:15:59 +0200 Received: from mlf.linux.rulez.org (localhost [127.0.0.1]) by mlf.linux.rulez.org (8.9.3/8.9.3/Debian/GNU) with ESMTP id OAA25083; Wed, 25 Aug 1999 14:12:29 +0200 Received: from darmol.elte.hu (darmol.elte.hu [157.181.3.1]) by mlf.linux.rulez.org (8.9.3/8.9.3/Debian/GNU) with ESMTP id OAA24949 for ; Wed, 25 Aug 1999 14:11:48 +0200 Received: from caesar.power.elte.hu (caesar.elte.hu [157.181.42.42]) by darmol.elte.hu (8.9.3/8.9.3/Debian/GNU) with SMTP id OAA18043 for ; Wed, 25 Aug 1999 14:11:48 +0200 Date: Wed, 25 Aug 1999 14:12:53 +0200 (METDST) From: Gergely Madarasz X-Sender: gorgo@caesar.power.elte.hu To: Linux Lista Subject: Re: RAID + boot + lilo In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Reply-To: linux@mlf.linux.rulez.org Sender: linux-admin@mlf.linux.rulez.org Errors-To: linux-admin@mlf.linux.rulez.org X-Mailman-Version: 1.0 Precedence: bulk List-Id: linux kerdesek/valaszok X-BeenThere: linux@mlf.linux.rulez.org On Wed, 25 Aug 1999, Gergely Madarasz wrote: > dd if=/dev/sdaX of=/dev/sdbX > ahol X a /boot particio Ja, es ezt csakis mountolatlan vagy ro mountolt /boot-al -- Madarasz Gergely gorgo@caesar.elte.hu gorgo@linux.rulez.org Egy pingvinre gyakorlatilag lehetetlen haragosan nezni. HuLUG: http://mlf.linux.rulez.org/ _________________________________________________ linux lista - linux@mlf.linux.rulez.org http://mlf.linux.rulez.org/mailman/listinfo/linux From cherub@azrael.dyn.cheapnet.net Fri Aug 27 02:40:59 1999 From: cherub@azrael.dyn.cheapnet.net (Steven Hazel) Date: Thu, 26 Aug 1999 20:40:59 -0500 (CDT) Subject: [Mailman-Developers] small addtions for web posting Message-ID: These simple patches -- submitted in my new insanely generous 30-line context diff fashion -- will add anchors to link to the postmsg script, and use them in the listinfo.html template. -S ===File mailman/Mailman/HTMLFormatter.py.diff====================== Index: HTMLFormatter.py =================================================================== RCS file: /home/cherub/cvs/mailman/Mailman/HTMLFormatter.py,v retrieving revision 1.1 retrieving revision 1.2 diff -c -3 -0 -r1.1 -r1.2 *** HTMLFormatter.py 1999/07/28 20:42:33 1.1 --- HTMLFormatter.py 1999/08/27 01:32:37 1.2 *************** *** 282,386 **** --- 282,391 ---- whom = 'Admin address:' # Solicit the user and password. container.AddItem(self.RestrictedListMessage('subscribers list', self.private_roster) + "

Enter your " + string.lower(whom[:-1]) + " and password to visit" " the subscribers list:

" + whom + " ") container.AddItem(self.FormatBox('roster-email')) container.AddItem(" Password: " + self.FormatSecureBox('roster-pw') + "  ") container.AddItem(SubmitButton('SubscriberRoster', 'Visit Subscriber List')) container.AddItem("
") return container def FormatFormStart(self, name, extra=''): base_url = self.GetAbsoluteScriptURL(name) if extra: full_url = "%s/%s" % (base_url, extra) else: full_url = base_url return ('
' % full_url) def FormatArchiveAnchor(self): return '' % self.GetBaseArchiveURL() + def FormatPostAnchor(self): + return '' % self.GetRelativeScriptURL('postmsg') + def FormatFormEnd(self): return '' def FormatBox(self, name, size=20): return '' % (name, size) def FormatSecureBox(self, name): return '' % name def FormatButton(self, name, text='Submit'): return '' % (name, text) def FormatReminder(self): if self.send_reminders: return 'Once a month, your password will be emailed to you as a reminder.' return '' def ParseTags(self, template, replacements): text = self.SnarfHTMLTemplate(template) parts = regsub.splitx(text, ']*>') i = 1 while i < len(parts): tag = string.lower(parts[i]) if replacements.has_key(tag): parts[i] = replacements[tag] else: parts[i] = '' i = i + 2 return string.join(parts, '') # This needs to wait until after the list is inited, so let's build it # when it's needed only. def GetStandardReplacements(self): dmember_len = len(self.GetDigestMembers()) member_len = len(self.GetMembers()) return { '' : self.GetMailmanFooter(), '' : self.real_name, '' : self._internal_name, '' : self.description, '' : string.join(string.split(self.info, '\n'), '
'), '' : self.FormatFormEnd(), '' : self.FormatArchiveAnchor(), '' : '
', + '' : self.FormatPostAnchor(), + '' : '', '' : self.FormatSubscriptionMsg(), '' : \ self.RestrictedListMessage('current archive', self.archive_private), '' : `member_len`, '' : `dmember_len`, '' : (`member_len + dmember_len`), '' : '%s' % self.GetListEmail(), '' : '%s' % self.GetRequestEmail(), '' : self.GetAdminEmail(), '' : self.FormatReminder(), '' : self.host_name, } def GetAllReplacements(self): """ returns standard replaces plus formatted user lists in a dict just like GetStandardReplacements. """ d = self.GetStandardReplacements() d.update({"": self.FormatUsers(0), "": self.FormatUsers(1)}) return d def InitTemplates(self): def ExtensionFilter(item): return item[-5:] == '.html' files = filter(ExtensionFilter, os.listdir(mm_cfg.TEMPLATE_DIR)) Utils.MakeDirTree(self._template_dir) ============================================================ ===File mailman/templates/listinfo.html.diff======================= Index: listinfo.html =================================================================== RCS file: /home/cherub/cvs/mailman/templates/listinfo.html,v retrieving revision 1.1 retrieving revision 1.2 diff -c -3 -0 -r1.1 -r1.2 *** listinfo.html 1999/07/28 20:42:34 1.1 --- listinfo.html 1999/08/27 01:34:27 1.2 *************** *** 1,76 **** ! <MM-List-Name> Info Page

--

 

About

To see the collection of prior postings to the list, visit the Archives.

Using
To post a message to all the list members, send email to .

You can subscribe to the list, or change your existing subscription, in the sections below.

Subscribing to

Subscribe to by filling out the following form.

    Your email address:  
    You must enter a privacy password. This provides only mild security, but should prevent others from messing with your subscription. Do not use valuable passwords! --- 1,80 ---- ! <MM-List-Name> Info Page

    --

     

    About

    To see the collection of prior postings to the list, visit the Archives.

    Using
    To post a message to all the list members, send email to . + +

    If you are a subscriber, you can post a message to the + mailing list here. +

    You can subscribe to the list, or change your existing subscription, in the sections below.

    Subscribing to

    Subscribe to by filling out the following form.

      Your email address:  
      You must enter a privacy password. This provides only mild security, but should prevent others from messing with your subscription. Do not use valuable passwords! ============================================================ From jafo@tummy.com Mon Aug 30 15:35:29 1999 From: jafo@tummy.com (Sean Reifschneider) Date: Mon, 30 Aug 1999 08:35:29 -0600 Subject: [Mailman-Developers] TODO Additions Message-ID: <19990830083529.Z4599@tummy.com> I'd like to suggest the following additions to the TODO list. As I'm also willing to actually IMPLEMENT them, I'd also like some discussion on it as well. I'll probably start with some smaller tasks just so I can start understanding how mailman thinks. Virtual domain handling It would be nice to have the ability for the CGIs to list only active mailing lists on the host you connected to. Ditto for adding new lists (especially if a web-based interface is available for doing so). I run the mailing lists for a local LUG, and it would be nice if they didn't see other mailing lists on our same server as if they were the LUG mailing lists. QMail/Sendmail Sub-address Matching QMail lets a user manage username-whatever@example.com names. I frequently use these to allow me to easily split out mailing lists. However, closed mailing lists don't like it if I submit from "username@example.com" when I'm subscribed as "username-lug@example.com". Sendmail does something similar, except it uses a '+'. It would be nice to have the membership checking recognise this. Overall, mailman is *REALLY* sweet. I was considering loading Majordomo just because it's so wide-spread, but any modifications I'd want to do, or fixes, would have to be done in Perl. Not if I can help it, please. :-) Somone was mentioning Majordomo 2 would have all this great stuff that it looks like Mailman already has. I'm glad I couldn't *FIND* the Majordomo 2 beta in the end. Sean -- Linux: Bring back that "greased weasel" feeling. -- Sean Reifschneider, 1998 Sean Reifschneider, Inimitably Superfluous URL: HP-UX/Linux/FreeBSD/BSDOS scanning software. From jafo@tummy.com Mon Aug 30 16:05:50 1999 From: jafo@tummy.com (Sean Reifschneider) Date: Mon, 30 Aug 1999 09:05:50 -0600 Subject: [Mailman-Developers] QMail Patch Message-ID: <19990830090550.B4599@tummy.com> Here's a patch for Defaults.py which adds a variable named "MTA", and sets it to "qmail" if the directory /var/qmail exists. Also included is a patch to newlist which if MTA is set to "qmail" displays the commands required to create the specified aliases using the "~alias/.qmail" method. I'm not really happy with all the "SM*" keys added to the dict, but I think that the goal of making the sendmail aliases prettier is a good one... Maybe it would make more sense to remove the SM* ones and have a set of routines for each MTA like: def display_aliases_qmail(dict): print 'whatever' def display_aliases_sendmail(dict): for key in ( 'admin', 'owner1', 'owner2', 'list' ): dict[key] = '%-24s' % ( dict[key] + ':' ) print 'whatever' def display_aliases_default(dict): print "Don't know how to set up aliases for your MTA." print print "You will have to manually set up aliases for the following" print "addresses:" print [...] [...] try: eval('display_aliases_%s(dict)' % mm_cfg.MTA) except NameError: display_aliases_default(dict) Sean ============================================= *** bin/newlist.orig Mon Aug 30 08:43:32 1999 --- bin/newlist Sun Aug 29 18:45:01 1999 *************** *** 98,122 **** sys.exit(1) ###os.system('%s %s' % (ADDALIASES_CMD, list_name)) ! print ''' Entry for aliases file: ## %(listname)s mailing list ## created: %(date)s %(user)s ! %(list)s "|%(wrapper)s post %(listname)s" ! %(admin)s "|%(wrapper)s mailowner %(listname)s" ! %(request)s "|%(wrapper)s mailcmd %(listname)s" ! %(owner1)s %(listname)s-admin ! %(owner2)s %(listname)s-admin ! ''' % {'listname': list_name, ! 'list' : "%-24s" % (list_name + ":"), ! 'wrapper' : '%s/wrapper' % mm_cfg.WRAPPER_DIR, ! 'admin' : "%-24s" % ("%s-admin:" % list_name), ! 'request' : "%-24s" % ("%s-request:" % list_name), ! 'owner1' : "%-24s" % ("owner-%s:" % list_name), ! 'owner2' : "%-24s" % ("%s-owner:" % list_name), ! 'date' : time.strftime('%d-%b-%Y', time.localtime(time.time())), ! 'user' : getusername(), } if len(argv) < 5: --- 98,144 ---- sys.exit(1) ###os.system('%s %s' % (ADDALIASES_CMD, list_name)) ! print '%s %s' % (ADDALIASES_CMD, list_name) ! ! if mm_cfg.MTA == 'qmail': ! aliases = ''' ! To create system aliases: ! ! echo '|%(wrapper)s post %(listname)s' >~alias/.qmail-%(list)s ! echo '|%(wrapper)s mailowner %(listname)s' >~alias/.qmail-%(admin)s ! echo '|%(wrapper)s mailcmd %(listname)s' >~alias/.qmail-%(request)s ! echo '&%(listname)s-admin' >~alias/.qmail-%(owner1)s ! echo '&%(listname)s-admin' >~alias/.qmail-%(owner2)s ! chmod 644 ~alias/.qmail-%(list)s ~alias/.qmail-%(admin)s ! chmod 644 ~alias/.qmail-%(request)s ~alias/.qmail-%(owner1)s ! chmod 644 ~alias/.qmail-%(owner2)s ! ''' ! else: ! aliases = ''' Entry for aliases file: ## %(listname)s mailing list ## created: %(date)s %(user)s ! %(SMlist)s "|%(wrapper)s post %(listname)s" ! %(SMadmin)s "|%(wrapper)s mailowner %(listname)s" ! %(SMrequest)s "|%(wrapper)s mailcmd %(listname)s" ! %(SMowner1)s %(listname)s-admin ! %(SMowner2)s %(listname)s-admin ! ''' ! print aliases % {'listname': list_name, ! 'list' : list_name, ! 'SMlist' : "%-24s" % (list_name + ":"), ! 'wrapper' : '%s/wrapper' % mm_cfg.WRAPPER_DIR, ! 'admin' : "%s-admin" % list_name, ! 'SMadmin' : "%-24s" % ("%s-admin:" % list_name), ! 'request' : "%s-request" % list_name, ! 'SMrequest' : "%-24s" % ("%s-request:" % list_name), ! 'owner1' : "owner-%s" % list_name, ! 'SMowner1' : "%-24s" % ("owner-%s:" % list_name), ! 'owner2' : "%s-owner" % list_name, ! 'SMowner2' : "%-24s" % ("%s-owner:" % list_name), ! 'date' : time.strftime('%d-%b-%Y', time.localtime(time.time())), ! 'user' : getusername(), } if len(argv) < 5: *** Mailman/Defaults.py.orig Sun Aug 29 18:17:13 1999 --- Mailman/Defaults.py Sun Aug 29 18:22:49 1999 *************** *** 300,307 **** PUBLIC_ARCHIVE_FILE_DIR = os.path.join(PREFIX, 'archives/public') PRIVATE_ARCHIVE_FILE_DIR = os.path.join(PREFIX, 'archives/private') # The Mailman version, also set by configure VERSION = "1.0" # Data file version number ! DATA_FILE_VERSION = 15 --- 300,313 ---- PUBLIC_ARCHIVE_FILE_DIR = os.path.join(PREFIX, 'archives/public') PRIVATE_ARCHIVE_FILE_DIR = os.path.join(PREFIX, 'archives/private') + # autodetect MTA being used, can be overridden in config file. + if os.path.isdir(os.path.join('/var', 'qmail')): + MTA = 'qmail' + else: + MTA = 'sendmail' + # The Mailman version, also set by configure VERSION = "1.0" # Data file version number ! DATA_FILE_VERSION = 16 -- A smart terminal is not a smart*ass* terminal, but rather a terminal you can educate. -- Rob Pike Sean Reifschneider, Inimitably Superfluous URL: HP-UX/Linux/FreeBSD/BSDOS scanning software. From ricardo@miss-janet.com Mon Aug 30 21:37:40 1999 From: ricardo@miss-janet.com (RicardoKustner) Date: Mon, 30 Aug 1999 22:37:40 +0200 (CEST) Subject: [Mailman-Developers] thouhts on web scripts & sending mail Message-ID: Hi, From what i've noticed, when an action in the mailman web interface sends out a message, it does this directly by calling another part of the system that makes the smtp connection. Sending out just one message this way is probably not much of a problem... but if it sends out a large batch of messages (like when you approve a large number of messages), the http connection is staying open untill all of the messages are send to the MTA on the localhost... I was wondering if maybe it could be better if the cgi scripts 'mark' messages as being allowed to post to the list, and a mailman cron job picking them up next time... i think this could also make the UID-thing a bit less complicated as the cgi scripts don't have to send out any mail, just make a small change in the database. And maybe this also can prevent the high system loads when the cgi scripts are feeding messages to the MTA and the MTA is trying to deliver most of them at the same time (at least, that's what's happening in my mailman/exim configuration) maybe i'm completely wrong, but these were just my thoughts :) Ricardo. -- From r.scheike@r2-net.de Mon Aug 30 21:55:45 1999 From: r.scheike@r2-net.de (Roland Scheike) Date: Mon, 30 Aug 1999 22:55:45 +0200 Subject: [Mailman-Developers] German translation Message-ID: <37CAEFD1.21C01DA6@r2-net.de> Dies ist eine kryptographisch unterzeichnete Nachricht im MIME-Format. --------------ms262B0A2DC944688A7DAD219C Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Hi, last week I tried to translate all the html-files and mail messages into german. Doing this I noticed that most of the messages repeat often and are spread over different files (e.g. HTMLFormatter.py, MailCommandHandler.py aso.). Now I think about the following idea: Wouldn`t it be a good idea to substitute the messages with variables and to take the messages then out of a text-file? The advantage would be a "language independent" version of mailman. You would only have to translate the message-file into your preffered language without grabbing through various Python, HTML and Text-files. I think a "language independent" version could be a reason for a lot more people to use mailman instead of majordomo or something else! By the way: For me mailman is the most comfortable mailing list software around! Congratulations to the coders ! Response from the coders of mailman or other interrested people would be welcome! Thanks a lot from germany Roland -- [-------------------------------------------] [ R˛.NET, Damm & Scheike GbR ] [ Zum Herrlesgrund 1 91287 Plech ] [ fon. +49 9244 92330 fax. +49 9244 92430 ] [ roland.scheike@r2-net.de ] [ http://www.r2-net.de ] [-------------------------------------------] --------------ms262B0A2DC944688A7DAD219C Content-Type: application/x-pkcs7-signature; name="smime.p7s" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="smime.p7s" Content-Description: Kryptographische Unterschrift mit S/MIME MIIJYAYJKoZIhvcNAQcCoIIJUTCCCU0CAQExCzAJBgUrDgMCGgUAMAsGCSqGSIb3DQEHAaCC B2IwggQsMIIDlaADAgECAhAmhxe/FWKhqlsacJE/2moHMA0GCSqGSIb3DQEBBAUAMIHMMRcw FQYDVQQKEw5WZXJpU2lnbiwgSW5jLjEfMB0GA1UECxMWVmVyaVNpZ24gVHJ1c3QgTmV0d29y azFGMEQGA1UECxM9d3d3LnZlcmlzaWduLmNvbS9yZXBvc2l0b3J5L1JQQSBJbmNvcnAuIEJ5 IFJlZi4sTElBQi5MVEQoYyk5ODFIMEYGA1UEAxM/VmVyaVNpZ24gQ2xhc3MgMSBDQSBJbmRp dmlkdWFsIFN1YnNjcmliZXItUGVyc29uYSBOb3QgVmFsaWRhdGVkMB4XDTk5MDgxODAwMDAw MFoXDTAwMDgxNzIzNTk1OVowggEUMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjEfMB0GA1UE CxMWVmVyaVNpZ24gVHJ1c3QgTmV0d29yazFGMEQGA1UECxM9d3d3LnZlcmlzaWduLmNvbS9y ZXBvc2l0b3J5L1JQQSBJbmNvcnAuIGJ5IFJlZi4sTElBQi5MVEQoYyk5ODEeMBwGA1UECxMV UGVyc29uYSBOb3QgVmFsaWRhdGVkMTMwMQYDVQQLEypEaWdpdGFsIElEIENsYXNzIDEgLSBO ZXRzY2FwZSBGdWxsIFNlcnZpY2UxFzAVBgNVBAMUDlJvbGFuZCBTY2hlaWtlMSIwIAYJKoZI hvcNAQkBFhNyLnNjaGVpa2VAcjItbmV0LmRlMFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBANe5 2KlbjyCLC6Fvp8+zjTRod3OgJwHhWMvdVCQtKkRsAtSgwQzrGokohVp5OMKlB/zaIWopRLEw bA9vTSmXLh8CAwEAAaOCAQYwggECMAkGA1UdEwQCMAAwgawGA1UdIASBpDCBoTCBngYLYIZI AYb4RQEHAQEwgY4wKAYIKwYBBQUHAgEWHGh0dHBzOi8vd3d3LnZlcmlzaWduLmNvbS9DUFMw YgYIKwYBBQUHAgIwVjAVFg5WZXJpU2lnbiwgSW5jLjADAgEBGj1WZXJpU2lnbidzIENQUyBp bmNvcnAuIGJ5IHJlZmVyZW5jZSBsaWFiLiBsdGQuIChjKTk3IFZlcmlTaWduMBEGCWCGSAGG +EIBAQQEAwIHgDAzBgNVHR8ELDAqMCigJqAkhiJodHRwOi8vY3JsLnZlcmlzaWduLmNvbS9j bGFzczEuY3JsMA0GCSqGSIb3DQEBBAUAA4GBAB0mXCIioLJFZWsR98iLycUhWGnZwWt093xL q/Uqlm38XDqE3+Y0oQuRM3VP1Rkk1ItoYobKEMnLGWvbRrGqZFT37PPf3B3k0ekQLT7KXvsE xczGlrozsbZ+4z+tI0e3nnY8RrUf5bi25b6Ug30u54pZ8k5E472RAHn/8L9vuFabMIIDLjCC ApegAwIBAgIRANJ2Lo0UDD19sqglXa/uDXUwDQYJKoZIhvcNAQECBQAwXzELMAkGA1UEBhMC VVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFzcyAxIFB1YmxpYyBQ cmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTk4MDUxMjAwMDAwMFoXDTA4MDUx MjIzNTk1OVowgcwxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZWZXJpU2ln biBUcnVzdCBOZXR3b3JrMUYwRAYDVQQLEz13d3cudmVyaXNpZ24uY29tL3JlcG9zaXRvcnkv UlBBIEluY29ycC4gQnkgUmVmLixMSUFCLkxURChjKTk4MUgwRgYDVQQDEz9WZXJpU2lnbiBD bGFzcyAxIENBIEluZGl2aWR1YWwgU3Vic2NyaWJlci1QZXJzb25hIE5vdCBWYWxpZGF0ZWQw gZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBALtaRIoEFrtV/QN6ii2UTxV4NrgNSrJvnFS/ vOh3Kp258Gi7ldkxQXB6gUu5SBNWLccI4YRCq8CikqtEXKpC8IIOAukv+8I7u77JJwpdtrA2 QjO1blSIT4dKvxna+RXoD4e2HOPMxpqOf2okkuP84GW6p7F+78nbN2rISsgJBuSZAgMBAAGj fDB6MBEGCWCGSAGG+EIBAQQEAwIBBjBHBgNVHSAEQDA+MDwGC2CGSAGG+EUBBwEBMC0wKwYI KwYBBQUHAgEWH3d3dy52ZXJpc2lnbi5jb20vcmVwb3NpdG9yeS9SUEEwDwYDVR0TBAgwBgEB /wIBADALBgNVHQ8EBAMCAQYwDQYJKoZIhvcNAQECBQADgYEAiLg3O93alDcAraqf4YEBcR6S am0v9vGd08pkONwbmAwHhluFFWoPuUmFpJXxF31ntH8tLN2aQp7DPrSOquULBt7yVir6M8e+ GddTTMO9yOMXtaRJQmPswqYXD11YGkk8kFxVo2UgAP0YIOVfgqaxqJLFWGrBjQM868PNBaKQ rm4xggHGMIIBwgIBATCB4TCBzDEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsT FlZlcmlTaWduIFRydXN0IE5ldHdvcmsxRjBEBgNVBAsTPXd3dy52ZXJpc2lnbi5jb20vcmVw b3NpdG9yeS9SUEEgSW5jb3JwLiBCeSBSZWYuLExJQUIuTFREKGMpOTgxSDBGBgNVBAMTP1Zl cmlTaWduIENsYXNzIDEgQ0EgSW5kaXZpZHVhbCBTdWJzY3JpYmVyLVBlcnNvbmEgTm90IFZh bGlkYXRlZAIQJocXvxVioapbGnCRP9pqBzAJBgUrDgMCGgUAoH0wGAYJKoZIhvcNAQkDMQsG CSqGSIb3DQEHATAcBgkqhkiG9w0BCQUxDxcNOTkwODMwMjA1NTQ1WjAeBgkqhkiG9w0BCQ8x ETAPMA0GCCqGSIb3DQMCAgEoMCMGCSqGSIb3DQEJBDEWBBR8DlGIDkzzAKaROZiqQCSeCHt1 3TANBgkqhkiG9w0BAQEFAARAkfBbSSnPYXbP6zb/0URSoxNOk5tzFFy0bXQsqvLYMMZGlpoD 05VEsVFfamdBdJvKpdOMvju2Lo6hovXgBqv1Fw== --------------ms262B0A2DC944688A7DAD219C-- From Nigel.Metheringham@vdata.co.uk Tue Aug 31 09:19:05 1999 From: Nigel.Metheringham@vdata.co.uk (Nigel Metheringham) Date: Tue, 31 Aug 1999 09:19:05 +0100 Subject: [Mailman-Developers] German translation In-Reply-To: Message from Roland Scheike of "Mon, 30 Aug 1999 22:55:45 +0200." <37CAEFD1.21C01DA6@r2-net.de> Message-ID: I may be telling you something you already know, but earlier this year The Perl Journal had a very good article on internationalization and all the pitfalls. Its generic rather than particularly perl specific, so could be worth a look before anything is set in stone. Nigel. -- [ Nigel Metheringham Nigel.Metheringham@VData.co.uk ] [ Phone: +44 1423 850000 Fax +44 1423 858866 ] From Paul Hebble Wed Aug 4 16:35:48 1999 From: Paul Hebble (Paul Hebble) Date: Wed, 4 Aug 1999 10:35:48 -0500 (CDT) Subject: [Mailman-Developers] External Archiving Patch Message-ID: This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. Send mail to mime@docserver.cac.washington.edu for more info. ---559023410-851401618-933780948=:22090 Content-Type: TEXT/PLAIN; charset=US-ASCII Hi all, This patch should let the administrator specify alternative external archivers. All you have to do is set the PUBLIC_EXTERNAL_ARCHIVER and/or PRIVATE_EXTERNAL_ARCHIVER variables to the command line you wish to use. If you put "$LISTNAME" or "${LISTNAME}" in the command line, it is replaced with the name of the list. Mailman will run the command line and pipe each post to it. The main advantage to this is that all post filtering is done without having to subscribe a procmailrc to the list. This prevents list-admins from accidentally unsubscribing the archiver. If the variables given above are set to "" (the default), Mailman will fall back to the built-in Pipermail archiver, so this should not break any existing installations. My apologies for using regsub, but I have not been able to find enough documentation on the re module. Perhaps someone better acquainted with it could migrate this patch to it? -- Paul Hebble -- BEGIN PATCH (Also attached in gzip format) diff -Nru --exclude=CVS --exclude=Makefile --exclude=crontab.in --exclude=mm_cfg.py.dist --exclude=*.pyc --exclude=.*.tmp --exclude=config.* mailman/Mailman/Archiver/Archiver.py mailman-archiving/Mailman/Archiver/Archiver.py --- mailman/Mailman/Archiver/Archiver.py Thu Jul 1 13:59:51 1999 +++ mailman-archiving/Mailman/Archiver/Archiver.py Tue Aug 3 09:46:14 1999 @@ -29,6 +29,7 @@ import sys, os, string import errno from Mailman.Utils import reraise, mkdir +import regsub # # package/project modules @@ -174,6 +175,13 @@ # Resurrect original date setting. post.SetHeader('Date', olddate) + def ExternalArchive(self, ar, txt): + regsub.gsub("\$LISTNAME\>", self.real_name, ar) + regsub.gsub("\${LISTNAME}", self.real_name, ar) + extarch = os.popen(ar, "w") + extarch.write(txt) + extarch.close() + # # archiving in real time this is called from list.post(msg) # @@ -207,6 +215,16 @@ if line and line[:5] == 'From ': line = '>' + line txt = txt + "%s\n" % line + if not self.archive_private \ + and mm_cfg.PUBLIC_EXTERNAL_ARCHIVER is not "" and \ + mm_cfg.PUBLIC_EXTERNAL_ARCHIVER is not "pipermail": + ExternalArchive(mm_cfg.PUBLIC_EXTERNAL_ARCHIVER, txt) + os._exit(0) + if self.archive_private \ + and mm_cfg.PRIVATE_EXTERNAL_ARCHIVER is not "" and \ + mm_cfg.PRIVATE_EXTERNAL_ARCHIVER is not "pipermail": + ExternalArchive(mm_cfg.PRIVATE_EXTERNAL_ARCHIVER, txt) + os._exit(0) f = StringIO(txt) import HyperArch h = HyperArch.HyperArchive(self) diff -Nru --exclude=CVS --exclude=Makefile --exclude=crontab.in --exclude=mm_cfg.py.dist --exclude=*.pyc --exclude=.*.tmp --exclude=config.* mailman/Mailman/Defaults.py mailman-archiving/Mailman/Defaults.py --- mailman/Mailman/Defaults.py Wed Aug 4 10:16:26 1999 +++ mailman-archiving/Mailman/Defaults.py Tue Aug 3 09:14:44 1999 @@ -62,6 +62,8 @@ # DEFAULT_ARCHIVE_VOLUME_FREQUENCY = 1 +PUBLIC_EXTERNAL_ARCHIVER = "" +PRIVATE_EXTERNAL_ARCHIVER = "" HOME_PAGE = 'index.html' MAILMAN_OWNER = 'mailman-owner@%s' % DEFAULT_HOST_NAME diff -Nru --exclude=CVS --exclude=Makefile --exclude=crontab.in --exclude=mm_cfg.py.dist --exclude=*.pyc --exclude=.*.tmp --exclude=config.* mailman/Mailman/Defaults.py.in mailman-archiving/Mailman/Defaults.py.in --- mailman/Mailman/Defaults.py.in Mon Aug 2 11:42:20 1999 +++ mailman-archiving/Mailman/Defaults.py.in Tue Aug 3 09:15:02 1999 @@ -62,6 +62,8 @@ # DEFAULT_ARCHIVE_VOLUME_FREQUENCY = 1 +PUBLIC_EXTERNAL_ARCHIVER = "" +PRIVATE_EXTERNAL_ARCHIVER = "" HOME_PAGE = 'index.html' MAILMAN_OWNER = 'mailman-owner@%s' % DEFAULT_HOST_NAME ---559023410-851401618-933780948=:22090 Content-Type: APPLICATION/octet-stream; name="patch-mailman.archiving.gz" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: H4sICFNZqDcCA3BhdGNoLW1haWxtYW4uYXJjaGl2aW5nAN1VbW/iRhD+jH/F yGkExODDBEixxAlf4hQqXq685Fo1leWz12Qbv2m9vhBV/e+dtTHyHeFCvrW1 YL2efWZ2ZufZGZd6HjRnLIVmk2wdP3XJ4PpuWfqa2o/Eoz4piRwWhdz+rNKw JAwCy/E2avysujThpYULlDmlb/VC5UFcNheFHt2oFxDY1A/s8N109zaY80C/ ELafoKUC1LQzGQ0334VLzWbzJLuV1UMKP6c+gAbapd7t612c9Pt9SVGUN25a WaUEjHQDcAmtvt7p6VontzUcQrPdb/RAwfEKhkMJaBBHjEPynDQgwn/CGdrf ywljYSSBx6IAdnuqa079pAAwwmyakAYEjy5lkrIXb5L0swQSnOEPYtt5tDfk XcyiP4nDIYjc1CdJ5pB21REeaVfdhnaZ+VR+zmBBkpQxoRUxuqGh7YNrcwIJ 4RxdVb/Gx1HC1SXhI2K7hNWqNwitYmi+K5Tq6JEiYC7xwNxywtDc7uhqCfG9 BtisAXzL67qkVPIoVDHU5PsfJuPlamZMzfv3Mh4UolVGbN8K7YAIvfqhxl+F yt9HNciWi7TCAI9fjaOYhDXhgvwkl1bVJ0Y5qQm/SkLHjxJSQ0l+BGe7F+xp AnhFxIbAaUAA+APFvCXg2L5P3DypPt4WVRxaLUg29cJQRpTWVcYUDfPSO8hL 8VAPTYQE7NDNJr/r3T9gMIDqrbBe1V/WEk+mhsD3VVCyj5ehGDOixKiAfJ7c hzKc53ClUsHdw4jnJ5tHTayY0S+CH/cCICwI13bl4eP6w2R8bZm/rszFzJhY xuJ6NL4zF+JUhCFZztB71VPVYhoTJm6prBeq37LrFVM56QplpIJFtpTXWvVd mKeHuBjfGSvz7TG+qveGII/ZOh7lQd49zPoyK0bjeU78Q+7ltWb0jH4JDw4R 4lrtl9X9rLjtdcn9NzegG+LZqc+T7/edEurFdlNar3zCa591BmwILV3r6e3e KV2mbOLr5qJ19E6pufTaomTg+GNWMLAi3Zi3xnqyKhhg3c0n66lp3S7MX9bm 7Po3TJAmivLRKzZAwuLyUXZm69hnRnM0+9H4ydwnH2sLDV2yVR944FclmBrj ydSYWfNPM9TbIYqgo6eQsOF5UsXqUvg8mi9Xlqje/xmaiL1OSiMCXyMLQirT KMyT3QZN0zttvd16I1+ElW8o09Vb7f8/Zf4BW//I5NsKAAA= ---559023410-851401618-933780948=:22090-- From Harald.Meland@usit.uio.no Wed Aug 4 18:48:27 1999 From: Harald.Meland@usit.uio.no (Harald Meland) Date: 04 Aug 1999 19:48:27 +0200 Subject: [Mailman-Developers] message board functionality? In-Reply-To: "Barry A. Warsaw"'s message of "Thu, 29 Jul 1999 18:23:22 -0400 (EDT)" References: <14240.27508.634165.859250@anthem.cnri.reston.va.us> <000201bed9f4$e9043fd0$723e2080@bean.eecs.berkeley.edu> <14240.54362.921170.841818@anthem.cnri.reston.va.us> Message-ID: [Barry A. Warsaw] > Second, it sounds like you want to perhaps have a Mailman hook for > authenticating users. Would it be enough to design an API that > Mailman would call, given an email address (future: login name) Just a quick note: I think that when we add "user accounts" (which I think is what previously has been referred to as "user objects"), there shouldn't necessarily be any single "login name" associated with this account. Any of the email addresses that Mailman (in som way) verifies as belonging to the same user object should be able to work as login names. Remembering what Mailman login name you have on various servers could become just as much a PITA as remembering all those different passwords is. > and a password, and ask if they matched? First of all: I admit to not understanding the issues around the various authentication schemes implemented (more or less natively) in various web servers as well as I could. Be gentle. From Paul Hebble's Kerberos patch, I thought that given a kerberized web server, the web server itself will do all the (site-specific) authentication without really needing to consult Mailman at all. The problem, then, is to create a clean interface between Mailman and kerberized/other webserver-based authentication methods. Whether any of this is at all relevant to John's situation is _way_ to complex for me to say anything about (yet) :) Are there any web gurus out there who have the pointers (or explanations) that could make all of this a bit clearer to me? -- Harald From Harald.Meland@usit.uio.no Thu Aug 5 10:18:21 1999 From: Harald.Meland@usit.uio.no (Harald Meland) Date: 05 Aug 1999 11:18:21 +0200 Subject: [Mailman-Developers] Configurable Archiving Proposal In-Reply-To: Paul Hebble's message of "Thu, 29 Jul 1999 14:13:14 -0500 (CDT)" References: Message-ID: [Paul Hebble] > I want to set up Mailman to support other archiving methods, more cleanly > than subscribing a procmailrc to a list. I know a few other people are > interested in this as well. > > I would like to add a per-list configuration option to each list's > config.db which tells Mailman a command line to run to archive a > message. If you're looking for a quick hack to fix this (as opposed to a clean solution), I think this is yet another thing the per-list "filter script" could be (ab)used to do. Just have the filter make two copies to stdin, and send one to stdout (for the rest of Mailman to enjoy it) and one to your archiver pipe. -- Harald From Harald.Meland@usit.uio.no Thu Aug 5 11:10:38 1999 From: Harald.Meland@usit.uio.no (Harald Meland) Date: 05 Aug 1999 12:10:38 +0200 Subject: [Mailman-Developers] RE: Mailman-Developers digest, Vol 1 #328 - 6 msgs In-Reply-To: "Barry A. Warsaw"'s message of "Thu, 29 Jul 1999 18:31:29 -0400 (EDT)" References: <613145F79272D211914B0020AFF640191D1C3C@gandalf.digicool.com> <14240.54849.147230.336426@anthem.cnri.reston.va.us> Message-ID: [Barry A. Warsaw] > >>>>> "HM" == Harald Meland writes: > > HM> Like, in a separate frame, maybe? That's what I've been > HM> thinking, anyway... > > HM> However, the frame-full UI should be optional. For a > HM> frame-less UI, I agree with Ken. > > Harald, I hope you're not advocating using HTML s! I > absolutely detest those things :). I think we can get all the > benefits of frames without the headaches by using an arrangement > similar to www.python.org and www.jpython.org (and not-coincidentally > www.python.org/~bwarsaw :) I suspect that I'm not understanding the issues involved clearly enough to be advocation one or the other construct. However, mere suspicion of lack of understanding have never stopped me from putting my foot in my mouth before :) Here are some of possible uses I have been thinking about for HTML s in Mailman: * Implementing a admin-interface sidebar with links to the various admin pages * Viewing list option documentation in the same browser window as the admin interface * Keeping buttons like "submit changes" fixed in one window position while scrolling through all the settings in another frame (although this might very well be undoable due to the SUBMIT input being in another document than where the POST form is...) The sidebar stuff could be done with an arrangement like Barry suggests, even though then the entire page would have to be re-rendered when a new page is loaded, and the sidebar would scroll along with the rest of the page. Adding an option documentation row to the full-page table would only work properly if the entire page fits inside one windowful -- and would probably be messy even then. On the other hand, maybe the current approach of always showing option documentation in a separate window is the way to go. Having fixed-position buttons is not really that important, I think :) -- Harald From hebble@ncsa.uiuc.edu Thu Aug 5 15:27:42 1999 From: hebble@ncsa.uiuc.edu (Paul Hebble) Date: Thu, 5 Aug 1999 09:27:42 -0500 (CDT) Subject: [Mailman-Developers] Configurable Archiving Proposal In-Reply-To: Message-ID: On 5 Aug 1999, Harald Meland wrote: > [Paul Hebble] > > > I want to set up Mailman to support other archiving methods, more cleanly > > than subscribing a procmailrc to a list. I know a few other people are > > interested in this as well. > > > > I would like to add a per-list configuration option to each list's > > config.db which tells Mailman a command line to run to archive a > > message. > > If you're looking for a quick hack to fix this (as opposed to a clean > solution), I think this is yet another thing the per-list "filter > script" could be (ab)used to do. Just have the filter make two copies > to stdin, and send one to stdout (for the rest of Mailman to enjoy it) > and one to your archiver pipe. This solution does not do what we want. It would either put unapproved posts in the archive, or require duplication of Mailman's filtering mechanisms in each per-list filter. We're looking for a clean solution. I posted a patch yesterday. It transparently replaces Pipermail if the site admin sets a variable to point to a new archiver. -- Paul From johnr@eecs.berkeley.edu Thu Aug 5 21:13:54 1999 From: johnr@eecs.berkeley.edu (John Reekie) Date: Thu, 5 Aug 1999 13:13:54 -0700 Subject: [Mailman-Developers] RE: Mailman-Developers digest, Vol 1 #328 - 6 msgs In-Reply-To: Message-ID: <000501bedf7f$0c5043a0$1b132581@bean.eecs.berkeley.edu> > Here are some of possible uses I have been thinking about for HTML > s in Mailman: > > * Implementing a admin-interface sidebar with links to the various > admin pages > > * Viewing list option documentation in the same browser window as the > admin interface > > * Keeping buttons like "submit changes" fixed in one window position > while scrolling through all the settings in another frame (although > this might very well be undoable due to the SUBMIT input being in > another document than where the POST form is...) Frames are only useful for pages that are authored by hand. If you are dynamically generating pages, I think it really is better to stay away from frames. You can do the first two things in code and it will be easier to deal with and more robust. The third you can't, but it's also of dubious benefit. Basically, frames introduce all kinds of navigation problems. Although in theory they can be made to work properly, they rarely do. Things like having four scrollbars in one browser window, having yahoo.com embedded in one of your frames, and so on, are the kinds of things that you expect from frames-based sites. There are a few cases where frames are useful (eg Javadoc) but not many -- and that particular example again is static HTML. My 2c :-) I have some pages that are a dynamically generated mix of MailMan HTML and my own, and I think they might illustrate how much you don't need frames :) I'll post a URL once I get a few more bugs ironed out. JohnR From tdfunk@asd-web.com Thu Aug 5 21:16:51 1999 From: tdfunk@asd-web.com (Tom Funk) Date: Thu, 5 Aug 1999 16:16:51 -0400 Subject: [Mailman-Developers] An NT Mailman version Message-ID: <7DB247B399FED211A73F00600841DDC7099463@TAL_ENT> Is there a Windows NT version of Mailman in our future? I checked the archives and didn't see anything about this (hope I didn't miss it.... :-). Since Mailman is written in Python, and there are only six C programs, all of which look *fairly* non-*nix specific, a port doesn't seem too far-fetched. Any thoughts? -=< tom >=- From ricardo@miss-janet.com Thu Aug 5 23:24:09 1999 From: ricardo@miss-janet.com (Ricardo Kustner) Date: Fri, 06 Aug 1999 00:24:09 +0200 (CEST) Subject: [Mailman-Developers] tech docs? Message-ID: Hi, is there some information/docs/draft on the structure in the Mailman source code? Since the moderate function is an important feature in the mailinglist we're running, i have a lot of ideas for things that could make the moderate page more powerfull and easy to work with... i can make my own little hacks in the source but i could also offer my patches in here... so i can share my code plus i wont have to put it back everytime i upgrade mailman to a new version ;) one thing i really wanted to fix fast was stripping a lot of the headers you see on the moderated posts page... this is what i made for it (this it my first piece of python ever so it can be probably made much more efficient ;) ) It's just a function a call in admindb.py before it outputs the message on the screen with Preformatted() ideally this could be a config option and one should be able to choose which headers to show in the output. ==== def stripheaders(msg): found = 0 emsg = '' # define which headers to keep headers = ['From:', 'To:', 'Date:', 'Subject:'] for i in string.split(msg, "\012"): if not found: for j in headers: if i[:len(j)] == j: emsg = emsg + i + "\012" # the first empty line means we're done with the headers part if i == "": found = 1 emsg = emsg + "\012" else: # we've had the header part so every line can be added back emsg = emsg + i + "\012" return(emsg) ==== Ricardo. -- From Harald.Meland@usit.uio.no Fri Aug 6 10:31:19 1999 From: Harald.Meland@usit.uio.no (Harald Meland) Date: 06 Aug 1999 11:31:19 +0200 Subject: [Mailman-Developers] Configurable Archiving Proposal In-Reply-To: Paul Hebble's message of "Thu, 5 Aug 1999 09:27:42 -0500 (CDT)" References: Message-ID: [Paul Hebble] > This solution does not do what we want. It would either put > unapproved posts in the archive, Indeed -- sorry, I missed that. > We're looking for a clean solution. I posted a patch yesterday. Yup, didn't see your patch until after my hack idea was sent. I'll take a closer look at it when I get some spare time... -- Harald From tdfunk@asd-web.com Mon Aug 9 01:07:07 1999 From: tdfunk@asd-web.com (Tom Funk) Date: Sun, 8 Aug 1999 20:07:07 -0400 Subject: [Mailman-Developers] An NT Mailman version Message-ID: <7DB247B399FED211A73F00600841DDC70994BB@TAL_ENT> Dan: Thanks for getting back to me. Do you, or anyone else on this list, know of any attempts to recompile the core C source files using the Cygnus' cygwin product? One of the design goals of cygwin was to mimic fork(), spawn family of functions that are missing from the Win32 API. Dan said: >> will be in troubles with locking and forking... >> ...But if You wont use included archiving Is the locking and forking code only the archiving parts of the code? Or is it spread throughout the source? Has anyone considered porting the forking code to Python threads? I've not worked with them, but the impression I get is that for the O/S's that support them, they tend to be pretty non-os-specific. 'Course I may be wrong on this.... I'd consider working on an NT port. It's a *great* way to learn all kinds of things about a software package - and the implementation language. I'd just like to not start from scratch if at all possible. One last thing: is there a CVS tree in place for the Mailman source? I downloaded the source for Mailman, but don't recall seeing anything about revision/source code control. I seem to recall some discussion at the Starship Python site (http://starship.python.net) about hosting CVS trees for Python-based source code. If there isn't a CVS tree (or SCCS or RCS) then this might be an option. Just my $.02. -=< tom >=- -----Original Message----- From: Dan Ohnesorg [mailto:dan@feld.cvut.cz] Sent: Sunday, August 08, 1999 4:57 PM To: Tom Funk Subject: Re: [Mailman-Developers] An NT Mailman version On Thu, 5 Aug 1999, Tom Funk wrote: > > Is there a Windows NT version of Mailman in our future? I checked the > archives and didn't see anything about this (hope I didn't miss it.... :-). > > > Since Mailman is written in Python, and there are only six C programs, all > of which look *fairly* non-*nix specific, a port doesn't seem too > far-fetched. > > Any thoughts? I think You will be in troubles with locking and forking code in mailman under NT. But if You wont use included archiving, it will probably run good. cheers dan From Harald.Meland@usit.uio.no Mon Aug 9 18:05:05 1999 From: Harald.Meland@usit.uio.no (Harald Meland) Date: 09 Aug 1999 19:05:05 +0200 Subject: [Mailman-Developers] An NT Mailman version In-Reply-To: Tom Funk's message of "Sun, 8 Aug 1999 20:07:07 -0400" References: <7DB247B399FED211A73F00600841DDC70994BB@TAL_ENT> Message-ID: [Tom Funk] > Is the locking and forking code only the archiving parts of the code? No. > Or is it spread throughout the source? Yes. "grep -w" the source for (at least) "fork" and "posixfile" to get a quick overview of exactly where. > Has anyone considered porting the forking code to Python threads? The only time I can recall having heard of python threads, was when someone said that using threaded python should be _optional_ even if Mailman started supporting this. I think this was in relation to a discussion of whether Mailman should implement it's own listening SMTP server or aim to interface (i.e. use alias files) for all kinds of other MTAs. I don't know if anything at all came of the discussion, but the general scepticism towards trusting a threaded python implementation probably hasn't quite disappeared yet. > I've not worked with them, but the impression I get is that for the > O/S's that support them, they tend to be pretty non-os-specific. > 'Course I may be wrong on this.... I wouldn't know, as I'm not a python guru by far. > I'd consider working on an NT port. I think that would be nice (even though for my own uses it doesn't matter) -- but I know nothing about cross-platform python and what kind of code hoops such a port would make Mailman. > It's a *great* way to learn all kinds of things about a software > package - and the implementation language. That's the motivation that got me started as well, so I can confirm that :) > One last thing: is there a CVS tree in place for the Mailman source? Yup, see for info on how to access it. -- Harald From tdfunk@asd-web.com Mon Aug 9 19:25:17 1999 From: tdfunk@asd-web.com (Tom Funk) Date: Mon, 9 Aug 1999 14:25:17 -0400 Subject: [Mailman-Developers] An NT Mailman version Message-ID: <7DB247B399FED211A73F00600841DDC70994CC@TAL_ENT> On Sun, 8 Aug 1999, I (Tom Funk) wrote the following: >> One last thing: is there a CVS tree in place for the Mailman source? Please disregard this question. I found the CVS tree at Python.org. -=< tom >=- From a.k.heath@shu.ac.uk Mon Aug 9 21:26:33 1999 From: a.k.heath@shu.ac.uk (Andy Heath) Date: Mon, 09 Aug 1999 20:26:33 +0000 Subject: [Mailman-Developers] why not make archive into coference Message-ID: <37AF3979.44240C10@shu.ac.uk> Sorry if this has been asked/suggested before but I can find no trace of it in the archives. My point is this - if it were possible for subscribers to use a web form to post to archives (as well as the usual email method) it would be nice. Users could then choose to use a service as a conference or via email. For myself, there are times when I like to receive everything by email so I don't miss anything and times things are busy enough that I would prefer the conference idea. Often I want to switch from one to the other depending on how busy things are. The point about doing this with the archives is that this functionality is almost there already - it just needs a way of "on-server" posting to be developed. Since this could be limited to subscribers and can only go to the list then it is safe. There are other products that do this sort of thing - I think bscw does, but non so "clean" and simple to use as mailman. Also, the same thing *could* be done with gating to newsgroups but doing so involves much unneccessary complexity. Why has no-one combined the list-server and conference functions before (rhetorical). Please COPY replies to a.k.heath@shu.ac.uk as I'm not a subscriber Andy -- ---------------------------- Andy Heath a.k.heath@shu.ac.uk From cherub@azrael.dyn.cheapnet.net Tue Aug 10 06:44:01 1999 From: cherub@azrael.dyn.cheapnet.net (Steven Hazel) Date: Tue, 10 Aug 1999 00:44:01 -0500 (CDT) Subject: [Mailman-Developers] why not make archive into coference Message-ID: Sorry if this has been asked/suggested before but I can find no trace of it in the archives. It's there -- I proposed to start working on it a few weeks ago. The point about doing this with the archives is that this functionality is almost there already - it just needs a way of "on-server" posting to be developed. Since this could be limited to subscribers and can only go to the list then it is safe. Actually, I administrate a web-based forum, and we have stronger needs -- user accounts on a per-system basis, for example, are crucial, and seem to be a popular wish-list item for Mailman already. (For those who have been discussing these, my co-conspiritor and I have been listening. A simple interface to Mailman accounts will be provided for easy integration with existing site accounts, and we're working on allowing logins under email addresses as well as user names.) I've already got a simple web-based posting CGI script written -- I'm cleaning up the formatting and error reporting before I submit it. My friend has a user account system in place, but integration with the list subscription info is still too crude to submit. (BTW, what's the best way for me to submit significant code changes? Since this is a GNU project, I imagine there are some legal papers to be exchanged. Also, do you prefer frequent submissions of sort-of-working code, or infrequent submissions of clean, working code?) If you're interested in helping, let me know. -S From lindsey@ncsa.uiuc.edu Tue Aug 10 07:15:05 1999 From: lindsey@ncsa.uiuc.edu (Christopher Lindsey) Date: Tue, 10 Aug 1999 01:15:05 -0500 (CDT) Subject: [Mailman-Developers] why not make archive into coference In-Reply-To: <37AF3979.44240C10@shu.ac.uk> from "Andy Heath" at Aug 9, 99 08:26:33 pm Message-ID: <199908100615.BAA17194@ferret.ncsa.uiuc.edu> > My point is this - if it were possible for subscribers > to use a web form to post to archives (as well as the > usual email method) it would be nice. Users could then > choose to use a service as a conference or via email. This is pretty easy to do, and I think outside of the scope of Mailman. Just set the list subscription so that it only archives, then restrict posting to a single known (non-obvious) address. The Web form would then call a CGI script which would provide the correct headers to a local sendmail invocation, or connect to a remote system on port 25 and jump through the proper ESMTP hoops. The mail should be sent to look as if it's coming from the allowed address, so it will go through the system checks and be archived. What I would really like to see in addition to sender-based authentication is some sort of "if this header matches send it through" type scenario. Majordomo uses an 'Approved: password' header -- implementing something similar could allow Web-based forms to post, etc. NOTE: password wouldn't have to be the list password -- it could be anything. Mailman should also have the option of stripping it out before sending the message through. Imagine any of these possibilties! Approved: mypassword # we'll add a special header Message-Id: .*example.com # we generate a Message-Id, so trust it Date:.*\sAug\s1999 # allow anyone to post before the contest ends Chris From jarrell@solaris.cc.vt.edu Wed Aug 11 16:35:48 1999 From: jarrell@solaris.cc.vt.edu (Ron Jarrell) Date: Wed, 11 Aug 1999 11:35:48 -0400 (EDT) Subject: [Mailman-Developers] Ok, what's wrong with this header... Message-ID: <199908111535.LAA22368@solaris.cc.vt.edu> This is related to a bug that's appeared on mailman-users... I'm trying to port old mbox archives into a new mailman list that's replacing and old listproc list. This message is causing arch, while processing my 9704 file, to think it needs to create an 1999-August archive and file it there; shortly there after it explodes... It appears to be the comma before the timezone. When I edited the file by hand to loose the comma suddenly the archive processed fine, and the article made it intot he April 97 archive. (Oh, yea, archiving is set for monthly volumes, if that wasn't obvious from the previous discussion). I tried switching to "when resent" instead of sent, thinking what that *meant* was that it'd use the From header time instead of the Date header, but as far as I can tell, it didn't affect article processing at all; same error. Here's the header: From jarrell@solaris.cc.vt.edu Wed Aug 11 17:16:54 1999 From: jarrell@solaris.cc.vt.edu (Ron Jarrell) Date: Wed, 11 Aug 1999 12:16:54 -0400 (EDT) Subject: [Mailman-Developers] More on bad dates Message-ID: <199908111616.MAA23928@solaris.cc.vt.edu> I found a second date that blows arch out of the water: Date: Tue, 10 Aug 1999 17:39:26 -0400 (EDT) Deleting the (EDT) solves this one. From ckolar@admin.aurora.edu Wed Aug 11 20:17:03 1999 From: ckolar@admin.aurora.edu (Christopher Kolar) Date: Wed, 11 Aug 1999 14:17:03 -0500 (CDT) Subject: [Mailman-Developers] draft end-user doc Message-ID: The first draft of an end user (subscriber) document for Mail Man is available for view at http://www.aurora.edu/~ckolar/mailman. A second document for list managers (own the list, but are not the sysadmin) will be available shortly. Feedback appreciated. --chris From ricardo@miss-janet.com Wed Aug 11 21:56:05 1999 From: ricardo@miss-janet.com (Ricardo Kustner) Date: Wed, 11 Aug 1999 22:56:05 +0200 (CEST) Subject: [Mailman-Developers] admindb addition (was: tech docs?) In-Reply-To: Message-ID: Hi, I hate to reply to my own posts (as usual ;) ) but is anybody else interested in this feature or agrees this can be an usfull addition to mailman? if i get some positive responses, i'm going to have a better look at the mailman source and i'll try to fit it in and make it and configurable option... if anybody this my python code sucks... let me know! :) Thanks, Ricardo. On 05-Aug-99 Ricardo Kustner wrote: > one thing i really wanted to fix fast was stripping a lot of the headers you > see on the moderated posts page... > this is what i made for it (this it my first piece of python ever so it can > be probably made much more efficient ;) ) It's just a function a call in > admindb.py > before it outputs the message on the screen with Preformatted() > ideally this could be a config option and one should be able to choose which > headers to show in the output. > > ==== > def stripheaders(msg): > > found = 0 > emsg = '' > # define which headers to keep > headers = ['From:', 'To:', 'Date:', 'Subject:'] > > for i in string.split(msg, "\012"): > if not found: > for j in headers: > if i[:len(j)] == j: > emsg = emsg + i + "\012" > # the first empty line means we're done with the headers part > if i == "": > found = 1 > emsg = emsg + "\012" > else: > # we've had the header part so every line can be added back > emsg = emsg + i + "\012" > > return(emsg) > ==== From jarrell@babylon5.cc.vt.edu Wed Aug 11 23:41:05 1999 From: jarrell@babylon5.cc.vt.edu (Ronald A. Jarrell) Date: Wed, 11 Aug 1999 18:41:05 -0400 Subject: [Mailman-Developers] news to mail gatewaying problem... Message-ID: <199908112241.SAA24656@babylon5.cc.vt.edu> This is actually a python bug, but it breaks mailman. The news to mail gateway stuff won't (can't in fact) work when mailman and the news server are the same machine (or if mailman is running on a machine with transfer privs to the news server), and the news server is INN. Apparently python's nntplib hasn't been updated in a LONG time; every other major library out there knows to issue a "mode reader" before trying to do anything as a reader on an inn server. It doesn't hurt if you're already in reader mode; it's vital if you aren't. A feeder connects to the inn daemon; which doesn't understand reader commands. "mode reader" causes it to fork off an nnrpd daemon which DOES understand reader commands... Which kinda stinks, since one of the main reasons I put mailman up on the news server was to replace the homebrew gateway stuff I was running... Sigh. From bwarsaw@cnri.reston.va.us (Barry A. Warsaw) Wed Aug 11 23:50:33 1999 From: bwarsaw@cnri.reston.va.us (Barry A. Warsaw) (Barry A. Warsaw) Date: Wed, 11 Aug 1999 18:50:33 -0400 (EDT) Subject: [Mailman-Developers] news to mail gatewaying problem... References: <199908112241.SAA24656@babylon5.cc.vt.edu> Message-ID: <14257.65081.758160.822786@anthem.cnri.reston.va.us> >>>>> "RAJ" == Ronald A Jarrell writes: RAJ> Apparently python's nntplib hasn't been updated in a LONG RAJ> time Ronald. I must admit to knowing next to nothing about the details of NNTP or INN. Would you be able to generate a patch for nntplib.py? If so, we can do two things: install the patch in the standard Python distribution, and include the patched module in Mailman/pythonlib so that Mailman installations using older Python's will work correctly. -Barry From jarrell@vt.edu Wed Aug 11 23:25:48 1999 From: jarrell@vt.edu (Ron Jarrell) Date: Wed, 11 Aug 1999 18:25:48 -0400 Subject: [Mailman-Developers] news to mail gatewaying problem... In-Reply-To: <14257.65081.758160.822786@anthem.cnri.reston.va.us> References: <199908112241.SAA24656@babylon5.cc.vt.edu> Message-ID: <4.2.0.58.19990811182105.04f04ef0@vtserf.cc.vt.edu> At 06:50 PM 8/11/99 -0400, Barry A. Warsaw wrote: > >>>>> "RAJ" == Ronald A Jarrell writes: > > RAJ> Apparently python's nntplib hasn't been updated in a LONG > RAJ> time > >Ronald. I must admit to knowing next to nothing about the details of >NNTP or INN. Would you be able to generate a patch for nntplib.py? >If so, we can do two things: install the patch in the standard Python >distribution, and include the patched module in Mailman/pythonlib so >that Mailman installations using older Python's will work correctly. > >-Barry Unfortunately I'm just getting my feet wet in python. However, that said, this one line patch has worked for me so far. The library test now correctly accesses groups off the server.. This patch should also be sufficient for mailman's needs. It's not a 100% complete patch. An older news server that doesn't know to grab and ignore the mode reader might return an error, thus screwup up the stashed greeting line; doing the code for that logic is beyond me. But it's better than it was! 73a74 > self.welcome = self.shortcmd('mode reader') From johnr@eecs.berkeley.edu Thu Aug 12 04:05:49 1999 From: johnr@eecs.berkeley.edu (John Reekie) Date: Wed, 11 Aug 1999 20:05:49 -0700 Subject: [Mailman-Developers] Problem with archives after renaming a list In-Reply-To: <37AF3979.44240C10@shu.ac.uk> Message-ID: <000001bee495$638170c0$5f142581@bean.eecs.berkeley.edu> I renamed a list by creating a new one with the new name, then copying the old one over the top of the new one. This worked, except that the archives still get put into the old location. Does anyone know where the info might be that tells the archiver where to put the archives -- it appears to be separate from the visible configuraton options. Thanks! JohnR From tismer@appliedbiometrics.com Fri Aug 13 12:45:31 1999 From: tismer@appliedbiometrics.com (Christian Tismer) Date: Fri, 13 Aug 1999 13:45:31 +0200 Subject: [Mailman-Developers] Bug in Mailman 1.0, newlist Message-ID: <37B4055B.74F6CC9A@appliedbiometrics.com> Hi Developers, yesterday we upgraded to Mailman 1.0 (thanks to Jimbo Titsler). There is a new bug when creating new lists: I tried to supply this email when creating the pyxie list: [root@starship bin]# ./newlist Enter the name of the list: pyxie Enter the email of the person running the list: Sean Mc Grath Initial pyxie password: Traceback (innermost last): File "./newlist", line 146, in ? raise SystemExit(main(sys.argv)) File "./newlist", line 93, in main newlist.Create(list_name, owner_mail, pw) File "/home/mailman/Mailman/MailList.py", line 720, in Create Utils.ValidateEmail(admin) File "/home/mailman/Mailman/Utils.py", line 296, in ValidateEmail raise Errors.MMHostileAddress Mailman.Errors.MMHostileAddress This is new. In earlier versions, I was allowed to use decorated email names. When I changed to sean@digitome.com, it worked as expected. ciao - chris -- Christian Tismer :^) Applied Biometrics GmbH : Have a break! Take a ride on Python's Kaiserin-Augusta-Allee 101 : *Starship* http://starship.python.net 10553 Berlin : PGP key -> http://wwwkeys.pgp.net PGP Fingerprint E182 71C7 1A9D 66E9 9D15 D3CC D4D7 93E2 1FAE F6DF we're tired of banana software - shipped green, ripens at home From tauren@servlets.net Sat Aug 14 10:39:16 1999 From: tauren@servlets.net (Tauren Mills) Date: Sat, 14 Aug 1999 02:39:16 -0700 Subject: [Mailman-Developers] Virtual Hosts -- can mailman handle them better? Message-ID: <007c01bee638$e04dba60$1ad7a2d1@easystreet.com> I just installed Mailman and love it! Great work! However, I have a question about how to make it work better with VirtualHosts. I am hosting numerous client web sites using Apache VirtualHosts. I have been able to make it so that my client's web sites can each bring up the /mailman/listinfo and /mailman/admin pages from their own domain. The /mailman/listinfo page only shows the lists that are part of that domain. Excellent. But the /mailman/admin page shows all of the lists on the server whether they are for that domain or not (unless the lists are not publicly displayed). Not so good. Also, if I send an email to clientlist-request@clientdomain.com with the command "help", the response email comes back from clientlist-request@mydomain.com. It also has links and email addresses throughout the email that point to http://www.mydomain.com/mailman/listinfo/clientlist and clientlist-admin@mydomain.com rather than http://www.clientdomain.com/mailman/listinfo/clientlist and clientlist-admin@clientdomain.com. I expect that most of the email-based commands are going have responses that look like they come from the main server rather than the customer's domain, but I'm hoping there is a workaround I'm not aware of. Lastly, when I execute the "newlist" command, the email that gets automatically sent to the administrator refers to URLs at mydomain.com. I would love to have a way to have that email refer to URLs at clientdomain.com. I'm sure there are all sorts of other little things that could be done to make Mailman support VirtualHosts better. Are there ways to deal with these issues? If not, do people think that they are worth adding to the product? Thanks, tauren@servlets.net From Harald.Meland@usit.uio.no Sun Aug 15 23:37:37 1999 From: Harald.Meland@usit.uio.no (Harald Meland) Date: 16 Aug 1999 00:37:37 +0200 Subject: [Mailman-Developers] Bug in Mailman 1.0, newlist In-Reply-To: Christian Tismer's message of "Fri, 13 Aug 1999 13:45:31 +0200" References: <37B4055B.74F6CC9A@appliedbiometrics.com> Message-ID: [Christian Tismer] > This is new. In earlier versions, I was allowed to use decorated > email names. True. However, this also allowed site admins to create lists with bogus admin addresses, which could lead to all kinds of more or less subtle trouble -- so I changed things to have Mailman do the same address checks on list admins as is done when considering new subscribers. The right thing to do would probably be to allow (all kinds of) email address comments in both admin and member addresses, but that has it's problems too -- for one, it could make the process of automatically correlating failed delivery reports to subscribed member addresses more difficult. -- Harald From mailman-developers@python.org Mon Aug 16 00:03:04 1999 From: mailman-developers@python.org (Harald Meland) Date: 16 Aug 1999 01:03:04 +0200 Subject: [Mailman-Developers] Re: [Mailman-Users] Virtual Hosts -- can mailman handle them better? In-Reply-To: Tauren Mills's message of "Sat, 14 Aug 1999 02:39:16 -0700" References: <007c01bee638$e04dba60$1ad7a2d1@easystreet.com> Message-ID: [Tauren Mills] > I just installed Mailman and love it! Great work! Thanks, glad you like it! > But the /mailman/admin page shows all of the lists on the server > whether they are for that domain or not (unless the lists are not > publicly displayed). Not so good. Yup -- the admin CGI script hasn't been made aware of virtual domains yet. Doing so would probably be quite easy, but I think the current support for virtual domains is a bit shoddy, so I've been putting it off... > Also, if I send an email to clientlist-request@clientdomain.com with > the command "help", the response email comes back from > clientlist-request@mydomain.com. This can be configured -- see the "Host name this list prefers" setting on the general options page. However, if you have several lists with the same localpart name in different domains (i.e. "foobar@dom1.com" and "foobar@dom2.org"), you'll have to assign them different Mailman-internal names. I'd like to allow full email addresses as Mailman-internal list names to alleviate this. Then, the site admin could maintain some sort of a webserver<->maildomain cross reference (available to Mailman), and two settings on the general options page would no longer be needed. This would increase the need for easy internal renaming of a list, as domain changes would essentially be a change in the internal list name. Opinions, anyone? > It also has links and email addresses throughout the email that > point to http://www.mydomain.com/mailman/listinfo/clientlist See the "Base URL for Mailman web interface" setting in the general options page. > Lastly, when I execute the "newlist" command, the email that gets > automatically sent to the administrator refers to URLs at > mydomain.com. I would love to have a way to have that email refer > to URLs at clientdomain.com. I'm not aware of any easy solution to that problem. Sure, we could add another option to the "newlist" script for specifying the list's default URL (and another for it's mail domain), but I don't think that's a particularly neat solution... > I'm sure there are all sorts of other little things that could be > done to make Mailman support VirtualHosts better. Are there ways to > deal with these issues? If not, do people think that they are worth > adding to the product? I think better support for virtual hosts (or multiple domains, or whatever this kind of feature really /should/ be called :) are important, so my answer would definitely be yes. -- Harald From tauren@servlets.net Mon Aug 16 09:05:44 1999 From: tauren@servlets.net (Tauren Mills) Date: Mon, 16 Aug 1999 01:05:44 -0700 Subject: [Mailman-Developers] RE: [Mailman-Users] Virtual Hosts -- can mailman handle them better? In-Reply-To: Message-ID: <00e801bee7be$23e89480$1ad7a2d1@easystreet.com> Hi Harald, Thanks for the details! > > Also, if I send an email to clientlist-request@clientdomain.com with > > the command "help", the response email comes back from > > clientlist-request@mydomain.com. > > This can be configured -- see the "Host name this list prefers" > setting on the general options page. It is good to hear that this is already supposed to work, but this is not what I have experienced. I have set "Host name this list prefers" and it still returns emails with the main domain name in them. Maybe I have something configured incorrectly. I'll go poke around some more. > However, if you have several lists with the same localpart name in > different domains (i.e. "foobar@dom1.com" and "foobar@dom2.org"), > you'll have to assign them different Mailman-internal names. What do you mean by "different Mailman-internal names"? If you meant that the name of a mailing list can look like one thing to the "world", but can be a unique name "internal" to Mailman, then I think I understand what you mean. See my notes below for more about this. > I'd like to allow full email addresses as Mailman-internal list names > to alleviate this. Then, the site admin could maintain some sort of a > webserver<->maildomain cross reference (available to Mailman), and two > settings on the general options page would no longer be needed. One thing that I have noticed might be a problem is that multiple domains might want a mailing list with the same name. For instance, we have this mailing list: announce@mydomain.com We've put this into our aliases file to handle it: announce: "|/home/mailman/mail/wrapper post announce" announce-admin: "|/home/mailman/mail/wrapper mailowner announce" announce-request: "|/home/mailman/mail/wrapper mailcmd announce" owner-announce: announce-admin announce-owner: announce-admin But, if a customer wanted a mailing list with the same name at their own domain, I'm not sure what we would do. I guess we could create a list called "announce2", and put this in the aliases file: announce2: "|/home/mailman/mail/wrapper post announce2" announce2-admin: "|/home/mailman/mail/wrapper mailowner announce2" announce2-request: "|/home/mailman/mail/wrapper mailcmd announce2" owner-announce2: announce2-admin announce2-owner: announce2-admin We would then put this into the virtusertable file: announce@customerdomain.com announce2 announce-admin@customerdomain.com announce2-admin announce-request@customerdomain.com announce2-request owner-announce@customerdomain.com owner-announce2 announce-owner@customerdomain.com announce2-owner But the problem is that the emails that get sent from Mailman would still say "announce2@customerdomain.com" all throughout them, instead of "announce@customerdomain.com". Would your suggested changes solve this problem? > This would increase the need for easy internal renaming of a list, as > domain changes would essentially be a change in the internal list > name. > > Opinions, anyone? > > > It also has links and email addresses throughout the email that > > point to http://www.mydomain.com/mailman/listinfo/clientlist > > See the "Base URL for Mailman web interface" setting in the general > options page. Again, the "Base URL" setting is not working for me. I'll experiment with this some more. > > Lastly, when I execute the "newlist" command, the email that gets > > automatically sent to the administrator refers to URLs at > > mydomain.com. I would love to have a way to have that email refer > > to URLs at clientdomain.com. > > I'm not aware of any easy solution to that problem. Sure, we could > add another option to the "newlist" script for specifying the list's > default URL (and another for it's mail domain), but I don't think > that's a particularly neat solution... We are trying to automate as much of our system as possible. We would love to make it so that when a customer orders a mailing list service, it is automatically installed and configured. With this in mind, it would really make sense for the newlist command to be able to accept a bunch of command line parameters instead of stdin. Could the newlist command at least include options on the command line for the list's default URL and for the mail domain? That way you wouldn't have to muck up the stdin questions, but people who wanted more control could have it. It would be best if all options could be specified on the command line and any required ones that were not specified would be asked via stdin. > > I'm sure there are all sorts of other little things that could be > > done to make Mailman support VirtualHosts better. Are there ways to > > deal with these issues? If not, do people think that they are worth > > adding to the product? > > I think better support for virtual hosts (or multiple domains, or > whatever this kind of feature really /should/ be called :) are > important, so my answer would definitely be yes. I think that there are many ISPs that would absolutely love a mailing list system like Mailman if it had virtual hosting support built right in flawlessly (we certainly would!). We've managed to tweak Majordomo a bit so that it kind of works. And now we've kind of got Mailman working too. But we really would like it to make our lives easier in a virtual hosting environment, since that is pretty much all we do all day long. > -- > Harald Thanks again! Tauren tauren@servlets.net From tomas@euronetics.se Mon Aug 16 09:58:51 1999 From: tomas@euronetics.se (Tomas Fasth) Date: Mon, 16 Aug 1999 10:58:51 +0200 Subject: [Mailman-Developers] Re: [Mailman-Users] Virtual Hosts -- can mailman handle them better? References: <00e801bee7be$23e89480$1ad7a2d1@easystreet.com> Message-ID: <003401bee7c5$92150fe0$f6d52dc1@twinspot.net> Tauren, Harald, I also have experienced problems with virtual hosting in Mailman. That is, if you try to make it work within a single installation. My solution was to install one instance of Mailman för each virtual domain, each with it's own account (userid). It works and it only takes a few extra meg for each domain. I even wrote a script to automate the configuration and installation which I use each time I need to setup a new domain. It's not perfect but it works. Just my two cents. Tomas From boldi@budapest.hu Mon Aug 16 15:16:04 1999 From: boldi@budapest.hu (Bencsath Boldizsar) Date: Mon, 16 Aug 1999 16:16:04 +0200 (CEST) Subject: [Mailman-Developers] archive,multilang Message-ID: Hi, First of all, thanks for all developers contributing this software. Be proud of doing that. I have some notices, I think some asked for them before, but I didn't find on the TODO list. -It would be great to have language templates, so every site or user could see the web UI in his/her own language. This templates could be created as XML/DTD docs, or so, to provide more comfortable update mechanism (If XY makes the russian interface, but the central interface, so the english is changing, then the russian should be rewritten. If mailman would have a central doc-template format, then it would be more easy to change the document (language) format -As using mailman in Hungary I always met problems with spcial characters. Now one problem is reading archives on the web like this one: [Nov7] =?iso-8859-1?Q?=E9ljen?= a forradalom! Szekfu Balazs Other problem is using mime attachments etc in the archives. The solution is not easy. To read all messages as it could be read on a mail client is a bigger problem than writing a mail reader because of the web interface's problems. The first functional workaround could be if an archive-reader would able to press a "send this messages to me by email" button or press a "forward this to.." button... Of course some lists have new members who wish to read many older messages... so "get gzipd archive"" for this month could be extended to "get all messages by email gaain". There are problems.If the archive is public, then it could be used to email-bomb a person's email box. At the other hand a bad email address could cause problems on the mailman server ( if i send tousands of messages to unknown recipients). So I don't know the best answer, but now only sysadmins are trained enough to excavate an archive messages as readable as it should be. thanks, boldi From jwt@dskk.co.jp Tue Aug 17 03:11:27 1999 From: jwt@dskk.co.jp (Jim Tittsler) Date: Tue, 17 Aug 1999 11:11:27 +0900 Subject: [Mailman-Developers] news to mail gatewaying problem... In-Reply-To: <199908112241.SAA24656@babylon5.cc.vt.edu>; from Ronald A. Jarrell on Wed, Aug 11, 1999 at 06:41:05PM -0400 References: <199908112241.SAA24656@babylon5.cc.vt.edu> Message-ID: <19990817111127.A14880@mail.dskk.co.jp> On Wed, Aug 11, 1999 at 06:41:05PM -0400, Ronald A. Jarrell wrote: > The news to mail gateway stuff won't (can't in fact) work when mailman > and the news server are the same machine (or if mailman is running on a > machine with transfer privs to the news server), and the news server is > INN. > > Apparently python's nntplib hasn't been updated in a LONG time; every > other major library out there knows to issue a "mode reader" before > trying to do anything as a reader on an inn server. It doesn't hurt if I proposed such a patch in comp.lang.python last year, but Guido rejected it for fear it might break something else. He suggested instead calling the constructor (with no user argument), and then using separate commands for mode reader and authinfo. I use nntplib for several tasks on news server machines so I found it cleaner to just add: diff -u nntplib.py.dist nntplib.py --- nntplib.py.dist Tue Apr 28 17:43:35 1998 +++ nntplib.py Tue Jun 23 22:06:00 1998 @@ -71,6 +71,10 @@ self.file = self.sock.makefile('rb') self.debugging = 0 self.welcome = self.getresp() + try: + self.welcome = self.shortcmd('mode reader') + except: + pass if user: resp = self.shortcmd('authinfo user '+user) if resp[:3] == '381': I think you should also be able to add the shortcmd('mode reader') to GatewayManager.py and stay with the standard Python library if you don't have other nntplib uses on your machine. -- Jim Tittsler, Tokyo http://starship.python.net/crew/jwt/ From klm@digicool.com Tue Aug 17 17:16:14 1999 From: klm@digicool.com (Ken Manheimer) Date: Tue, 17 Aug 1999 12:16:14 -0400 Subject: [Mailman-Developers] RE: Mailman-Developers digest, Vol 1 #344 - 4 msgs Message-ID: <613145F79272D211914B0020AFF640191D1CA0@gandalf.digicool.com> > From: "Tauren Mills" > To: , "mailman-users" > Date: Mon, 16 Aug 1999 01:05:44 -0700 > Subject: [Mailman-Developers] RE: [Mailman-Users] Virtual Hosts -- can mailman handle them better? > > It is good to hear that this is already supposed to work, but this is not > what I have experienced. I have set "Host name this list prefers" and it > still returns emails with the main domain name in them. Maybe I have > something configured incorrectly. I'll go poke around some more. It's likely that your MTA (sendmail, or whatever you're using) is doing this, not mailman. Try some experiments passing things directly to your MTA claiming to originate from your virtual host, and see if they get transformed on the way through. If not, i'm not sure what to suggest - i believe numerous people are using the virtual host mailman feature successfully. Re having mailman host multiple lists having the same list name but different domains, i think thomas fasth's suggestion is a good one - use separate mailman installs for separate lists. (You'll have to work out the MTA details to dispatch to the right mailman install according to the domain...) Making a single mailman handle multiple lists with the same apparent name would take another level of indirection in the mailman code on the maillist names, plus an option on the mailman pipe command lines. If you're interested, this is doable, but definitely not trivial. I doubt it will happen until someone directly needing it makes the effort. > > I'm not aware of any easy solution to that problem. Sure, we could > > add another option to the "newlist" script for specifying the list's > > default URL (and another for it's mail domain), but I don't think > > that's a particularly neat solution... > > We are trying to automate as much of our system as possible. We would love > to make it so that when a customer orders a mailing list service, it is > automatically installed and configured. With this in mind, it would really > make sense for the newlist command to be able to accept a bunch of command > line parameters instead of stdin. It's not an instead kind of thing - it does both. (At this point it may be worth "getting your hands dirty" reading a bit of mailman's python code. In particular, the docstring for the newlist command gives you the invocation info; there may be other questions you have that would be answered in a similar way...) > I think that there are many ISPs that would absolutely love a mailing list > system like Mailman if it had virtual hosting support built right in > flawlessly (we certainly would!). We've managed to tweak Majordomo a bit so > that it kind of works. And now we've kind of got Mailman working too. But > we really would like it to make our lives easier in a virtual hosting > environment, since that is pretty much all we do all day long. Clearly virtual hosting is important in the ISP world, and mailman certainly provides some capability there. However, we simply *can't* aim for flawless in any of the myriad dimensions where mailman operates - mailman has to do a lot of things well, not just any one thing. It's at these limits where open source, and a particularly comprehensible implementation language like python, can be a saving grace. There are limits in both directions, of course... Ken Manheimer klm@digicool.com From Harald.Meland@usit.uio.no Tue Aug 17 18:03:43 1999 From: Harald.Meland@usit.uio.no (Harald Meland) Date: 17 Aug 1999 19:03:43 +0200 Subject: [Mailman-Developers] RE: [Mailman-Users] Virtual Hosts -- can mailman handle them better? In-Reply-To: Tauren Mills's message of "Mon, 16 Aug 1999 01:05:44 -0700" References: <00e801bee7be$23e89480$1ad7a2d1@easystreet.com> Message-ID: [Tauren Mills] > I have set "Host name this list prefers" and it still returns emails > with the main domain name in them. Strange -- this certainly works fine for me, and I can't see any site-global configuration settings that could somehow inhibit changes done here. You're sure that it isn't your MTA that's rewriting the (header) addresses after Mailman has handed the message over to it? > > However, if you have several lists with the same localpart name in > > different domains (i.e. "foobar@dom1.com" and "foobar@dom2.org"), > > you'll have to assign them different Mailman-internal names. > > What do you mean by "different Mailman-internal names"? E.g. the list has the Mailman-internal name "mailman-users". Thus, if the Mailman installation at python.org housed another domain "example.com" that wanted a list , that list would have to use a different Mailman-internal name, e.g. "mailman-users-example.com" -- which would result in Mailman-generated messages looking rather messy, with email addresses like mailman-users-example.com@example.com all over them... If the Mailman-internal name was equal to the (preferred) email address of the list, there wouldn't be these kind of naming collisions. > But the problem is that the emails that get sent from Mailman would still > say "announce2@customerdomain.com" all throughout them, instead of > "announce@customerdomain.com". > > Would your suggested changes solve this problem? That is the main motivation for me suggesting it, so yes, I do hope it would :) > Could the newlist command at least include options on the command > line for the list's default URL and for the mail domain? What do others think about this? I'd really rather solve this once and for all with my proposed email-addr-as-internal-name and maildomain->base_URL scheme... but if no one but me think that that's the way to go, I probably won't bother :) Besides, I'm kind of swamped with real work right now :( -- Harald From Harald.Meland@usit.uio.no Tue Aug 17 18:05:57 1999 From: Harald.Meland@usit.uio.no (Harald Meland) Date: 17 Aug 1999 19:05:57 +0200 Subject: [Mailman-Developers] Re: [Mailman-Users] Virtual Hosts -- can mailman handle them better? In-Reply-To: Tomas Fasth's message of "Mon, 16 Aug 1999 10:58:51 +0200" References: <00e801bee7be$23e89480$1ad7a2d1@easystreet.com> <003401bee7c5$92150fe0$f6d52dc1@twinspot.net> Message-ID: [Tomas Fasth] > Tauren, Harald, > > I also have experienced problems with virtual hosting in > Mailman. That is, if you try to make it work within a single > installation. My solution was to install one instance of Mailman för > each virtual domain, each with it's own account (userid). Just a quick note: That would work OK for now, but wouldn't benefit as well as it could from the installation-global user database that's planned for next generation Mailman... Thanks for the tip anyway, -- Harald From tauren@servlets.net Tue Aug 17 19:20:18 1999 From: tauren@servlets.net (Tauren Mills) Date: Tue, 17 Aug 1999 11:20:18 -0700 Subject: [Mailman-Developers] RE: [Mailman-Users] Virtual Hosts -- can mailman handle them better? In-Reply-To: Message-ID: <000a01bee8dd$2934dfa0$1ad7a2d1@easystreet.com> Harald, > > I have set "Host name this list prefers" and it still returns emails > > with the main domain name in them. > > Strange -- this certainly works fine for me, and I can't see any > site-global configuration settings that could somehow inhibit changes > done here. You're sure that it isn't your MTA that's rewriting the > (header) addresses after Mailman has handed the message over to it? I haven't had a chance to look into this more. I'll let you know what I find. Thanks for the suggestion. > If the Mailman-internal name was equal to the (preferred) email > address of the list, there wouldn't be these kind of naming > collisions. OK. That is the same problem I was describing. Glad to hear we are talking about the same thing. > > Could the newlist command at least include options on the command > > line for the list's default URL and for the mail domain? > > What do others think about this? I'd really rather solve this once > and for all with my proposed email-addr-as-internal-name and > maildomain->base_URL scheme... but if no one but me think that that's > the way to go, I probably won't bother :) If the newlist command asked for the maillist name, but expected a fully qualified email address, then I would certainly be satisfied. But I would still like to be able to run newlist by specifying all of the options on the command line so that automating list creation is a little easier. > Besides, I'm kind of swamped with real work right now :( I hear ya! It was suggested on this list that we install a separate installation of Mailman for each domain. This would work and would solve the virtualhost problem. But it seems like you are already very close to having virtual hosting support built into a single installation. I think I'd rather try to hold off until you can add these features. Can you comment on when we might expect them? Where are these virtual hosting features being placed on your priority list? Are there a bunch of other items that need to be taken care of before you tackle virtual hosting support? Thanks again for your help! Tauren From jarrell@vt.edu Tue Aug 17 19:25:07 1999 From: jarrell@vt.edu (Ron Jarrell) Date: Tue, 17 Aug 1999 14:25:07 -0400 Subject: [Mailman-Developers] RE: [Mailman-Users] Virtual Hosts -- can mailman handle them better? In-Reply-To: References: <00e801bee7be$23e89480$1ad7a2d1@easystreet.com> Message-ID: <4.2.0.58.19990817142100.051fcc10@vtserf.cc.vt.edu> This bites people a lot, and should probably be in the faq; hell, I've been doing dns and sendmail for *years* and *I* periodically forget it's going to happen. If you're planning on sending mail *from* a host, make sure it's a real host entry, not an alias. In DNS terms, verify that it's an A record pointing at the same ip address as the main host (perfectly valid to do); do *not* put in a CNAME pointing at it. Unless someone has specifically configured sendmail to be set to nocanonify, mail from cnames will be re-written into the canonical name (that's what cname stands for), which is not the virtual hostname. This is also done by the *receiving* end, so there's nothing you can change on your side, it must be done in DNS. This is a stupid default, but was the default before virtual hosting really caught on. Most sites that just web virtual host use cnames; add email into the picture and suddenly nothing works like you expect. At 07:03 PM 8/17/99 +0200, Harald Meland wrote: >[Tauren Mills] > > > I have set "Host name this list prefers" and it still returns emails > > with the main domain name in them. > >Strange -- this certainly works fine for me, and I can't see any >site-global configuration settings that could somehow inhibit changes >done here. You're sure that it isn't your MTA that's rewriting the >(header) addresses after Mailman has handed the message over to it? > > > > However, if you have several lists with the same localpart name in > > > different domains (i.e. "foobar@dom1.com" and "foobar@dom2.org"), > > > you'll have to assign them different Mailman-internal names. > > > > What do you mean by "different Mailman-internal names"? > >E.g. the list has the Mailman-internal name >"mailman-users". Thus, if the Mailman installation at python.org >housed another domain "example.com" that wanted a list >, that list would have to use a different >Mailman-internal name, e.g. "mailman-users-example.com" -- which would >result in Mailman-generated messages looking rather messy, with email >addresses like > > mailman-users-example.com@example.com > >all over them... > >If the Mailman-internal name was equal to the (preferred) email >address of the list, there wouldn't be these kind of naming >collisions. > > > But the problem is that the emails that get sent from Mailman would still > > say "announce2@customerdomain.com" all throughout them, instead of > > "announce@customerdomain.com". > > > > Would your suggested changes solve this problem? > >That is the main motivation for me suggesting it, so yes, I do hope it >would :) > > > Could the newlist command at least include options on the command > > line for the list's default URL and for the mail domain? > >What do others think about this? I'd really rather solve this once >and for all with my proposed email-addr-as-internal-name and >maildomain->base_URL scheme... but if no one but me think that that's >the way to go, I probably won't bother :) > >Besides, I'm kind of swamped with real work right now :( >-- >Harald > >_______________________________________________ >Mailman-Developers maillist - Mailman-Developers@python.org >http://www.python.org/mailman/listinfo/mailman-developers From tomas@euronetics.se Tue Aug 17 22:05:56 1999 From: tomas@euronetics.se (Tomas Fasth) Date: Tue, 17 Aug 1999 23:05:56 +0200 Subject: [Mailman-Developers] RE: [Mailman-Users] Virtual Hosts --can mailman handle them better? References: <00e801bee7be$23e89480$1ad7a2d1@easystreet.com> <4.2.0.58.19990817142100.051fcc10@vtserf.cc.vt.edu> Message-ID: <37B9CEB4.4EE99067@euronetics.se> Ron Jarrell wrote: > Most sites that just web virtual host use cnames; add email into the picture > and suddenly nothing works like you expect. I got a recommendation long ago about using A records, not CNAME. I have since then followed that recommendation, but long since forgot why. Thanks for reminding me (us). Cheers, Tomas From ricardo@miss-janet.com Wed Aug 18 00:22:40 1999 From: ricardo@miss-janet.com (Ricardo Kustner) Date: Wed, 18 Aug 1999 01:22:40 +0200 (CEST) Subject: [Mailman-Developers] RE: [Mailman-Users] Usability patch: (Details) Buttons for 1.0 In-Reply-To: <19990816160955.K20043@alpha1.csd.uwm.edu> Message-ID: Hi, On 16-Aug-99 Bernhard Reiter wrote: > Mailman developers don't share my view on this so far, but I thought maybe > one > or the other user might be interested in it. With all respect to the great product the "core" mailman developers have created so far, i've noticed that it's not easy to get feedback from the developers when you post ideas/suggestions for mailman on the list... this way i (and maybe others too?) am not really motivated in sharing the changes or enhancements i make into mailman, which could be useful to other people too... Ricardo. -- From bernhard@uwm.edu Wed Aug 18 01:16:32 1999 From: bernhard@uwm.edu (Bernhard Reiter) Date: Tue, 17 Aug 1999 19:16:32 -0500 Subject: [Mailman-Developers] Re: [Mailman-Users] Usability patch: (Details) Buttons for 1.0 In-Reply-To: ; from Ricardo Kustner on Wed, Aug 18, 1999 at 01:22:40AM +0200 References: <19990816160955.K20043@alpha1.csd.uwm.edu> Message-ID: <19990817191632.B25816@alpha1.csd.uwm.edu> --ftEhullJWpWg/VHq Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable On Wed, Aug 18, 1999 at 01:22:40AM +0200, Ricardo Kustner wrote: > With all respect to the great product the "core" mailman developers have > created so far, i've noticed that it's not easy to get feedback from the > developers when you post ideas/suggestions for mailman on the list...=20 In my case Harald Meland answered (a while later after I posted that the first time), but didn't agree with my usability arguments.=20 > this way > i (and maybe others too?) am not really motivated in sharing the=20 > changes or enhancements i make into mailman, which could be > useful to other people too... I can understand that the developers are busy. Generally, Jitterbug Reports are recognised sooner or later. It might be a nice idea to create a contrib directory for side hacks for Mailman. People could exchange all sort of patches and enchancements there. Regards, Bernhard --=20 Research Assistant, Geog Dept UM-Milwaukee, USA. (www.uwm.edu/~bernhard) Association for a Free Informational Infrastructure (ffii.org) --ftEhullJWpWg/VHq Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: 2.6.2 iQCVAwUBN7n7XxFKNN1LD7H9AQGnqgQAwu2l3/n+VYU1DAMxAAS+sdkFaDMFKXut RgoiTBh9XbZk1l7vfCG5IIM7Wj+fQ9Q36KO7XX1EjeynZEeE9Zq96+691fGHy5KI X5zCttJQwWWIXwUvqNTnCnf7gv/ikYdFHNYEBl2UQcEJERMbKFM7Ud+qGtyZ8Sj+ kFTu5HBgBRg= =PuKv -----END PGP SIGNATURE----- --ftEhullJWpWg/VHq-- From bwarsaw@cnri.reston.va.us (Barry A. Warsaw) Wed Aug 18 04:36:51 1999 From: bwarsaw@cnri.reston.va.us (Barry A. Warsaw) (Barry A. Warsaw) Date: Tue, 17 Aug 1999 23:36:51 -0400 (EDT) Subject: [Mailman-Developers] Re: [Mailman-Users] Usability patch: (Details) Buttons for 1.0 References: <19990816160955.K20043@alpha1.csd.uwm.edu> <19990817191632.B25816@alpha1.csd.uwm.edu> Message-ID: <14266.10835.774279.283391@anthem.cnri.reston.va.us> >>>>> "BR" == Bernhard Reiter writes: BR> I can understand that the developers are busy. Generally, BR> Jitterbug Reports are recognised sooner or later. Guilty as charged. Understand that Mailman hacking on my part is almost entirely voluntary (I won't speak for the other developers). Yes I'm motivated because python.org runs nothing but Mailman (and many lists at that), but I only get to hack on stuff in chunks. This means that for me, the really deep issues get buried for a while until I can free up enough time to read and understand what's going on. But I always cruise through, and try to clear, the Jitterbug database when I'm thinking about doing a release. The next `deep' issue on my plate is internationalization, and I can see that that will consume most of my free Mailman hacking time for a while. BR> It might be a nice idea to create a contrib directory for side BR> hacks for Mailman. People could exchange all sort of patches BR> and enchancements there. This is a good idea. How should we do it? Can somebody donate some ftp space (and more importantly the responsibility to keep it up to date)? And remember, if you're interested in becoming a core developer, let us know. I know we could use knowledgeable and motivated contributors. -Barry From bernhard@uwm.edu Wed Aug 18 04:49:03 1999 From: bernhard@uwm.edu (Bernhard Reiter) Date: Tue, 17 Aug 1999 22:49:03 -0500 Subject: [Mailman-Developers] Re: Mailman development organisation In-Reply-To: <14266.10835.774279.283391@anthem.cnri.reston.va.us>; from Barry A. Warsaw on Tue, Aug 17, 1999 at 11:36:51PM -0400 References: <19990816160955.K20043@alpha1.csd.uwm.edu> <19990817191632.B25816@alpha1.csd.uwm.edu> <14266.10835.774279.283391@anthem.cnri.reston.va.us> Message-ID: <19990817224903.F30129@alpha1.csd.uwm.edu> --XWOWbaMNXpFDWE00 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable On Tue, Aug 17, 1999 at 11:36:51PM -0400, Barry A. Warsaw wrote: > Yes I'm motivated because python.org runs nothing but Mailman (and > many lists at that), but I only get to hack on stuff in chunks. This > means that for me, the really deep issues get buried for a while until > I can free up enough time to read and understand what's going on. But > I always cruise through, and try to clear, the Jitterbug database when > I'm thinking about doing a release. Well I do understand that. L;-) For my part, I run Mailman for the Association for a Free Informational Infrastructure (ffii.org) > The next `deep' issue on my plate is internationalization, u Very good! > BR> It might be a nice idea to create a contrib directory for side > BR> hacks for Mailman. People could exchange all sort of patches > BR> and enchancements there. > This is a good idea. How should we do it? Can somebody donate some > ftp space (and more importantly the responsibility to keep it up to > date)? Not much ftp space is needed. I can't offer time, but if there is no other ftp space,=20 FFII might be able to offer some. Is there some space, where Mailman is maintained now? > And remember, if you're interested in becoming a core developer, let > us know. I know we could use knowledgeable and motivated > contributors. Thanks for the offer! It is well received. The next problem I will hack on=20 will be hypermail. First the overview page generation and then, maybe the connection to Mailman. Bernhard --=20 Research Assistant, Geog Dept UM-Milwaukee, USA. (www.uwm.edu/~bernhard) Association for a Free Informational Infrastructure (ffii.org) --XWOWbaMNXpFDWE00 Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: 2.6.2 iQCVAwUBN7otLhFKNN1LD7H9AQG1GwQAp1GLdJohkRAtcjcH1nAOlCFDNKzNqqSC IbhiR6roVe1+9UHkl71n3AVsaVPnogqTMlk6EkWWNr1cbUE5YXRkvGZglSCcQUER FKTQjNWTG3Cj7ZPa5K7KR0mhE1TRKpTDxniGpc9waAqB2W6zqKpcy8CN3fW5Ug9j hk131Tg59Kw= =oJM8 -----END PGP SIGNATURE----- --XWOWbaMNXpFDWE00-- From bwarsaw@python.org Wed Aug 18 04:58:34 1999 From: bwarsaw@python.org (Barry A. Warsaw) Date: Tue, 17 Aug 1999 23:58:34 -0400 (EDT) Subject: [Mailman-Developers] Re: Mailman development organisation References: <19990816160955.K20043@alpha1.csd.uwm.edu> <19990817191632.B25816@alpha1.csd.uwm.edu> <14266.10835.774279.283391@anthem.cnri.reston.va.us> <19990817224903.F30129@alpha1.csd.uwm.edu> Message-ID: <14266.12138.666733.673840@anthem.cnri.reston.va.us> >>>>> "BR" == Bernhard Reiter writes: BR> Not much ftp space is needed. I can't offer time, but if BR> there is no other ftp space, FFII might be able to offer BR> some. Is there some space, where Mailman is maintained now? Time's the more important issue, really. Either list.org or python.org's got the space, but the permission issue might be problematic (I sure wish I had time to Zope-ify python.org). BR> Thanks for the offer! It is well received. The next problem I BR> will hack on will be hypermail. First the overview page BR> generation and then, maybe the connection to Mailman. Very cool. Please continue! -Barry From bernhard@uwm.edu Wed Aug 18 05:17:05 1999 From: bernhard@uwm.edu (Bernhard Reiter) Date: Tue, 17 Aug 1999 23:17:05 -0500 Subject: [Mailman-Developers] Re: Mailman development organisation In-Reply-To: <14266.12138.666733.673840@anthem.cnri.reston.va.us>; from Barry A. Warsaw on Tue, Aug 17, 1999 at 11:58:34PM -0400 References: <19990816160955.K20043@alpha1.csd.uwm.edu> <19990817191632.B25816@alpha1.csd.uwm.edu> <14266.10835.774279.283391@anthem.cnri.reston.va.us> <19990817224903.F30129@alpha1.csd.uwm.edu> <14266.12138.666733.673840@anthem.cnri.reston.va.us> Message-ID: <19990817231705.G30129@alpha1.csd.uwm.edu> --W5WqUoFLvi1M7tJE Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable On Tue, Aug 17, 1999 at 11:58:34PM -0400, Barry A. Warsaw wrote: > Time's the more important issue, really. =20 How did I guessed that? 8-) Okay, we might write out an open position: WANTED: Contribution Manager for GNU Mailman=20 Tasks:=20 Collect patches and other contributions for GNU Mailman, mainly through observation of the mailing lists and the incoming directory. You will be responsible for GNU Mailman's new "contrib" directory. In this volenteer position _you_ are the important link between the rapidly ongoing outsite Mailman development and the core developers! Apply now to mailman-developers@python.org ;) > Either list.org or python.org's got the space,=20 Good. > but the permission issue might be problematic=20 Well incoming will not be readable and the new Contribution Manager just have to move the stuff. Guidelines for contributions: Your patch has to: - include a significant abbr of your name - mailman version it was intended for - a readme explaining, what it does Example files names: help_usability1_bernhard_mailman-1.0.patch help_usability1_bernhard_mailman-1.0.txt > (I sure wish I had time to Zope-ify python.org). :-) ((Sometimes the usability is better with a more non automated approach. E.g. Jitterbug should offer an option to show all bug reports together in one big page. Because it is hard to search and get an overview.=20 (Knowing a bit about usability is painful, you can only wine, because you don't have the time to recode it all yourself or explain it in detail.) )) Regards, Bernhard --=20 Research Assistant, Geog Dept UM-Milwaukee, USA. (www.uwm.edu/~bernhard) Association for a Free Informational Infrastructure (ffii.org) --W5WqUoFLvi1M7tJE Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: 2.6.2 iQCVAwUBN7ozwRFKNN1LD7H9AQHhXgQAhUGgyl8mR4QRNYzjlXTPAypEZiZ9AfKO r82d/6pW6Va2ORbghzJjDpV7sjPvxkbG5JTWFhY0tzZg5t7kxpWBv2TKFUEZMek/ dlZENY7Wn1jDkrNphQx92ew2+N8F0iLGa0JCXwka9aQ0V5RbaV6ocF2IoRpvYjvc 7gmGMNt7w4Q= =i4r1 -----END PGP SIGNATURE----- --W5WqUoFLvi1M7tJE-- From Harald.Meland@usit.uio.no Wed Aug 18 11:19:01 1999 From: Harald.Meland@usit.uio.no (Harald Meland) Date: 18 Aug 1999 12:19:01 +0200 Subject: [Mailman-Developers] news to mail gatewaying problem... References: <199908112241.SAA24656@babylon5.cc.vt.edu> <19990817111127.A14880@mail.dskk.co.jp> Message-ID: [Jim Tittsler] > On Wed, Aug 11, 1999 at 06:41:05PM -0400, Ronald A. Jarrell wrote: > > Apparently python's nntplib hasn't been updated in a LONG time; every > > other major library out there knows to issue a "mode reader" before > > trying to do anything as a reader on an inn server. It doesn't hurt if > > I proposed such a patch in comp.lang.python last year, but Guido > rejected it for fear it might break something else. He suggested > instead calling the constructor (with no user argument), and then > using separate commands for mode reader and authinfo. Which would imply that programs using the library would have to call the "shortcmd" NNTP method, which is described as "internal": # Internal: send a command and get the response def shortcmd(self, line): I can't say that I'd feel very comfortable doing this, as I suspect any library-internal methods capable of changing their name and/or contract when I'm not looking. > I think you should also be able to add the shortcmd('mode reader') > to GatewayManager.py and stay with the standard Python library if > you don't have other nntplib uses on your machine. Experimental patch that I've now been running for several minutes at my site: Index: GatewayManager.py =================================================================== RCS file: /export/public/cvsroot/mailman/Mailman/GatewayManager.py,v retrieving revision 1.16 diff -u -r1.16 GatewayManager.py --- GatewayManager.py 1999/07/01 18:37:31 1.16 +++ GatewayManager.py 1999/08/18 10:14:24 @@ -64,6 +64,11 @@ # - that the watermark is non-zero def PollNewsGroup(self, conn, wm, first, last): import nntplib + # Tell the news server that we want to _read_ articles now + try: + conn.shortcmd('mode reader') + except: + pass # NEWNEWS is not portable and has synchronization issues... Use a # watermark system instead. for num in range(max(wm+1, first), last+1): However, our news server appears to work fine without the "mode reader" magic, so it'd be nice if the patch could be verified by someone who actually need this... -- Harald From cherub@azrael.dyn.cheapnet.net Wed Aug 18 16:34:40 1999 From: cherub@azrael.dyn.cheapnet.net (Steven Hazel) Date: Wed, 18 Aug 1999 10:34:40 -0500 (CDT) Subject: [Mailman-Developers] submitting code Message-ID: I have a basic CGI set up to allow posting to mailman lists from a page in the mailman site. It involves one new file and changes to two other files. I've made it off the latest CVS source, so it should work with that. What's the best way to submit it? Do I just post the file and context diffs here? -S From ricardo@miss-janet.com Wed Aug 18 19:29:51 1999 From: ricardo@miss-janet.com (Ricardo Kustner) Date: Wed, 18 Aug 1999 20:29:51 +0200 (CEST) Subject: [Mailman-Developers] Re: [Mailman-Users] Usability patch: (D In-Reply-To: <19990817191632.B25816@alpha1.csd.uwm.edu> Message-ID: Hi, On 18-Aug-99 Bernhard Reiter wrote: > On Wed, Aug 18, 1999 at 01:22:40AM +0200, Ricardo Kustner wrote: >> With all respect to the great product the "core" mailman developers have >> created so far, i've noticed that it's not easy to get feedback from the >> developers when you post ideas/suggestions for mailman on the list... > In my case Harald Meland answered (a while later after I posted that the > first time), but didn't agree with my usability arguments. ah.. sorry, i didnt know that :) >> i (and maybe others too?) am not really motivated in sharing the >> changes or enhancements i make into mailman, which could be >> useful to other people too... > I can understand that the developers are busy. same here... but i've never had any reactions to the suggestions i posted in here so i kind of got the feeling that nobody took me seriously... > It might be a nice idea to create a contrib directory for side hacks for > Mailman. People could exchange all sort of patches and enchancements > there. that would be a great idea... i'm quite new to python programming (i've experience with other languages and script languages though, including object-orientied onces... i've never looked into python untill i wanted to make some changes in mailman) so i don't think i'm ready to be an active developer for mailman, however i can make small enhancements and if we had a contrib dir, i could put them in there... Ricardo. From tomas@euronetics.se Thu Aug 19 15:29:47 1999 From: tomas@euronetics.se (Tomas Fasth) Date: Thu, 19 Aug 1999 16:29:47 +0200 Subject: [Mailman-Developers] Re: [Mailman-Users] Virtual Hosts -- can mailman handle them better? References: <00e801bee7be$23e89480$1ad7a2d1@easystreet.com> <003401bee7c5$92150fe0$f6d52dc1@twinspot.net> Message-ID: <37BC14DB.BFB1BB08@euronetics.se> At my site, an installation-global (site-specific) user database will not prove useful in most cases. Customers are typically administer their own lists of recipients using a tool of their own choice, exporting email addresses to mailman when needed. This is an interesting area in it self, and an extension to the notion of user (or subscriber) databases. For example providing "hooks" in Mailman for externally managed information about subscribers. Anyway, Mailman is already showing an impressive range of usefulness, and better native support for virtual hosting would surely make it excel even more. All in all, great stuff! Cheers, Tomas Harald Meland wrote: > [Tomas Fasth] > > > Tauren, Harald, > > > > I also have experienced problems with virtual hosting in > > Mailman. That is, if you try to make it work within a single > > installation. My solution was to install one instance of Mailman för > > each virtual domain, each with it's own account (userid). > > Just a quick note: That would work OK for now, but wouldn't benefit as > well as it could from the installation-global user database that's > planned for next generation Mailman... > > Thanks for the tip anyway, > -- > Harald > > ------------------------------------------------------ > Mailman-Users maillist - Mailman-Users@python.org > http://www.python.org/mailman/listinfo/mailman-users From guido@CNRI.Reston.VA.US Thu Aug 19 17:16:35 1999 From: guido@CNRI.Reston.VA.US (Guido van Rossum) Date: Thu, 19 Aug 1999 12:16:35 -0400 Subject: [Mailman-Developers] Localization expert needed Message-ID: <199908191616.MAA11031@eric.cnri.reston.va.us> My contact at HP is asking for expert advice on localization and multi-byte characters. I have little to share except pointing to Martin von Loewis and Pythonware. Does anyone on this list have a suggestion besides those? Don't hesitate to recommend yourself -- there's money in it! PS I'm not on the mailman-developers list, so please reply to me directly! --Guido van Rossum (home page: http://www.python.org/~guido/) ------- Forwarded Message Date: Wed, 18 Aug 1999 23:15:55 -0700 From: JOE_ELLSWORTH To: guido@CNRI.Reston.VA.US Subject: Localization efforts and state in Python. Hi Guido. Can you give me some references to The best references currently available for using Python in CGI applications when multi-byte localization is known to be needed? Who is the expert in this in the Python area? Can you recomend that they work with us in this area? Thanks, Joe E. ------- End of Forwarded Message From dan@feld.cvut.cz Thu Aug 19 18:14:27 1999 From: dan@feld.cvut.cz (Dan Ohnesorg) Date: Thu, 19 Aug 1999 19:14:27 +0200 (CEST) Subject: [Mailman-Developers] Localization expert needed In-Reply-To: <199908191616.MAA11031@eric.cnri.reston.va.us> Message-ID: On Thu, 19 Aug 1999, Guido van Rossum wrote: > My contact at HP is asking for expert advice on localization and > multi-byte characters. I have little to share except pointing to > Martin von Loewis and Pythonware. Does anyone on this list have a > suggestion besides those? Don't hesitate to recommend yourself -- > there's money in it! Exist some small group, which works on localization using gettext, but not multibyte characters. The project is in first beta stage and we are not sure, if it will be included in official distribution. Currently is supported French, Spanish, Italian and Czech. The coordinator of this project is avalaible under e-mail: jcrey@uma.es As far as i know, there is no one site which is runnig localized mailman on public accesible listserv. cheers dan -- ________________________________________ DDDDDD DD DD Dan Ohnesorg, supervisor on POWER DD OOOO Dan@feld.cvut.cz DD OODDOO Dep. of Power Engineering DDDDDD OO CTU FEL Prague, Bohemia OO OO work: +420 2 24352785;+420 2 24972109 OOOO home: +420 311 679679;+420 311 679311 ________________________________________ Nekdy je rozumne o krok ustoupit, aby se prodlouzil rozbeh. From bwarsaw@cnri.reston.va.us (Barry A. Warsaw) Sat Aug 21 06:50:21 1999 From: bwarsaw@cnri.reston.va.us (Barry A. Warsaw) (Barry A. Warsaw) Date: Sat, 21 Aug 1999 01:50:21 -0400 (EDT) Subject: [Mailman-Developers] The Hylton Archiver Band-aid Message-ID: <14270.15901.493000.460708@anthem.cnri.reston.va.us> I've just checked in a slew of changes affecting the archiver, hopefully fixing the more serious of the nasty performance problems we've been seeing. Jeremy Hylton deserves a lot of credit for his excellent analysis and patching of the code. He called his changes "a band-aid" because it's clear the archiver could still use more improvement, and in fact should go through a simplification and partial rewrite. We don't have the time for that now, so we'll go with the Hylton Band-aid for now. I hope I can accurately outline the changes, but it's late and I'm tired so I might miss something. Please check the CVS log messages for details. I really hope some of you adventurous types will try running with these new changes. I intend to put them up on python.org (perhaps this weekend, or Monday) to see if it fixes the performance problems I've been seeing there. First of all, Jeremy noticed that the way the archiver's .txt.gz file is created is very inefficient. It essentially reads the .txt and uses Python's gzip module to write the .txt.gz file -- for /every/ message that gets posted! This is a lot of work for not much benefit. So the first change is that the .gz file is not created by default (see mm_cfg.GZIP_ARCHIVE_TXT_FILES). We need to work in a crontab entry that gzip's the file nightly. Yes this means that the .txt.gz file will lag behind the on-line archive, but that should be a worthwhile tradeoff for better performance. Jeremy also changed the DumbBTree implementation so that the keys are not sorted until some client starts to iterate through the data structure. This saves work when adding the initial elements. Remember a while back I added a clear() method to do a bulk clear of the items and this saved a lot of work. Finally, Jeremy made some observations about the cache in the HyperDatabase. He says that since it traverses the elements in linear order, the lack of locality of reference means that evicting items from the cache doesn't really help, and in fact might hurt performance. So we now keep all the items in the cache (trade space for time). It might be worthwhile to get rid of the cache altogether, although it does serve a useful purpose currently. The DumbBTree is essentially a dictionary of pickles, and this whole structure is then marshaled. The cache keeps a hold of the unpickled objects. It might make sense then to make the DumbBTree a simple dictionary and just pickle it directly. Then the cache wouldn't be needed. Jeremy has some other ideas about how to improve the archiver. I'm way too tired to outline them here. Jeremy will be out of the office for a week, so hopefully he'll be able to restore enough state when he gets back to post his ideas. G'night, :) -Barry From ken@kyler.com Sun Aug 22 13:50:57 1999 From: ken@kyler.com (Ken Kyler) Date: Sun, 22 Aug 1999 08:50:57 -0400 Subject: [Mailman-Developers] Volunteering In-Reply-To: <199908220500.BAA22322@python.org> Message-ID: <000701beec9c$fa5e7420$4d0fc897@kylernet> Greetings! We have just recently started using MailMan (http://www.eLists.org). We switched from MajorDomo. It is a significant improvement. Although I am a programmer, I'm not very familiar with Python - however I am a fairly good tech writer (http://www.kyler.com). Which leads me to... How does one get involved? It appears you could use some help with the documentation. Ken Kyler From bwarsaw@cnri.reston.va.us (Barry A. Warsaw) Mon Aug 23 17:58:46 1999 From: bwarsaw@cnri.reston.va.us (Barry A. Warsaw) (Barry A. Warsaw) Date: Mon, 23 Aug 1999 12:58:46 -0400 (EDT) Subject: [Mailman-Developers] Volunteering References: <199908220500.BAA22322@python.org> <000701beec9c$fa5e7420$4d0fc897@kylernet> Message-ID: <14273.32198.27665.105033@anthem.cnri.reston.va.us> >>>>> "KK" == Ken Kyler writes: KK> We have just recently started using MailMan KK> (http://www.eLists.org). We switched from MajorDomo. It is a KK> significant improvement. Although I am a programmer, I'm not KK> very familiar with Python - however I am a fairly good tech KK> writer (http://www.kyler.com). Which leads me to... KK> How does one get involved? It appears you could use some help KK> with the documentation. Ken, Glad to hear that you'd like to help out with Mailman documentation. You should definitely get in touch with Chris Kolar (who is on this list). He posted the following URL with his fine start at documentation: http://www.aurora.edu/~ckolar/mailman David Thiessen also edited a version of the Mailman Users Manual but I can't dig up the reference right now. While I really appreciate and applaud both efforts, we need to talk about a couple of things. First, for us to include any documentation with the Mailman distro, it'll have to be GPL'd and FSF-assigned. I can email the forms for anybody who needs them, but you need to know this in advance in case you can't or won't be able to do this. Second, there's the matter of the format for the documentation. Because we're GNU, we need the docs in a "free" format. Unfortunately PDF isn't "free" as far as the FSF is concerned. Most ideal would be texinfo, which I believe is the GNU preferred documentation format. I've hacked enough texinfo to know that that's not the most convenient format to write. I think that PostScript and HTML are both okay, so I'm not sure if it's enough that a non-free source can be translated into a free format. I would encourage those who are working on documentation to get together and coordinate efforts. Post URLs for drafts on this mailing list. If you think you need me to create a little focused sig list to help you out, let me know. And thanks! -Barry From ricardo@miss-janet.com Mon Aug 23 23:16:00 1999 From: ricardo@miss-janet.com (Ricardo Kustner) Date: Tue, 24 Aug 1999 00:16:00 +0200 (CEST) Subject: [Mailman-Developers] mailman changes Message-ID: Hi, I've made some changes into the version of Mailman i'm using to make life a bit easier of our moderators (and me)... most of which are on the 'administrative requests' page (Mailman/Cgi/admindb.py) some of these changes are: 1) all mail headers of the moderated messages are filtered by default; only a few nesecary headers are printed. I've also added a button to view the posts with all headers in case that's needed for some reason. 2) i've added an extra text-field which can be used to enter an email address, and an extra button 'send copy' in the Approve/Reject/Discard list that will send a copy of the email to that entered email addy. my next step will be adding a 'comment' field that will add a "note from the editor" to a post that is being approved to be send to the mailinglist. If anybody thinks these changes can be useful for others too, please let me know, and i'll try to make a patch out of them... I must say that it wasn't easy to understand some parts of the source, things like val[2][1] aren't that obvious :) And since i'm a python-newbie i had some problems with NameErrors at first when i added some of my changes... ;) I've only focussed on Cgi/admindb.py so far (and partly ListAdmin.py).... also, i wanted to add some configuration options, but i couldn't find an easy way to do that without having to know the complete structure of the mailman sourcecode... so i gave up... for now... I also want to enhance the 'Membership Management' section (to be honest, it takes too much time to find a member through the webinterface), but i think i'll need a few more hours of studying the mailman source before i can do that I'm really interested in learing more about mailman and python... it has been a while since i learned something new with programming and i've just remembered how addicting it can be :) Ricardo. -- From ken@kyler.com Mon Aug 23 23:26:37 1999 From: ken@kyler.com (Ken Kyler) Date: Mon, 23 Aug 1999 18:26:37 -0400 Subject: [Mailman-Developers] Volunteering In-Reply-To: <14273.32198.27665.105033@anthem.cnri.reston.va.us> Message-ID: <002f01beedb6$90a9f200$4d0fc897@kylernet> I'm comfortable with the GPL, etc - email me the forms. As far as format, I use primarily a windoze machine so I would prefer plain ascii or html. Ken > Ken, > > Glad to hear that you'd like to help out with Mailman documentation. > You should definitely get in touch with Chris Kolar (who is on this > list). He posted the following URL with his fine start at > documentation: > http://www.aurora.edu/~ckolar/mailman David Thiessen also edited a version of the Mailman Users Manual but I can't dig up the reference right now. While I really appreciate and applaud both efforts, we need to talk about a couple of things. First, for us to include any documentation with the Mailman distro, it'll have to be GPL'd and FSF-assigned. I can email the forms for anybody who needs them, but you need to know this in advance in case you can't or won't be able to do this. Second, there's the matter of the format for the documentation. Because we're GNU, we need the docs in a "free" format. Unfortunately PDF isn't "free" as far as the FSF is concerned. Most ideal would be texinfo, which I believe is the GNU preferred documentation format. I've hacked enough texinfo to know that that's not the most convenient format to write. I think that PostScript and HTML are both okay, so I'm not sure if it's enough that a non-free source can be translated into a free format. I would encourage those who are working on documentation to get together and coordinate efforts. Post URLs for drafts on this mailing list. If you think you need me to create a little focused sig list to help you out, let me know. And thanks! -Barry From cherub@azrael.dyn.cheapnet.net Wed Aug 25 09:07:29 1999 From: cherub@azrael.dyn.cheapnet.net (Steven Hazel) Date: Wed, 25 Aug 1999 03:07:29 -0500 (CDT) Subject: [Mailman-Developers] post messages from the web Message-ID: Well, my previous mailing inquiring about how to best submit code got no reponse, so I'm submitting as I see fit: namely, via attached files and generous context diffs. Attached are mailman/Mailman/Cgi/postmsg.py, a basic web interface for posting messages, and Message.diff, a 30-line context diff of some minor changes to IncomingMessage which allow postmsg.py to work properly. This is still all very early code, so your beautifcations and suggestions are appriciated. Patches to make the postmsg script accessable via a replacement tag are pending. User accounts are in progress, but further off. -S ===File ~/projects/mailman/Mailman/Cgi/postmsg.py=========== #! /usr/bin/env python # # Copyright (C) 1999 by the Free Software Foundation, Inc. # # This program is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public License # as published by the Free Software Foundation; either version 2 # of the License, or (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. """Allows user to log in, setting authentication cookies """ # No lock needed in this script, because we don't change data. from Mailman import auth import Cookie import sys import os, string, cgi from regsub import gsub from Mailman import Utils, MailList, Message, Errors from Mailman import mm_cfg from Mailman.htmlformat import * def main(): global user try: path = os.environ['PATH_INFO'] except KeyError: path = "" list_info = Utils.GetPathPieces(path) list_name = string.lower(list_info[0]) try: list = MailList.MailList(list_name, lock=0) except: list = None if not (list and list._ready): FormatPostmsgStatus(error="List %s not found." % list_name) return if len(list_info) == 0: FormatPostmsgStatus() return global cgi_data cgi_data = cgi.FieldStorage() message = None if cgi_data.has_key('message'): imsg = Message.IncomingMessage(''); fromaddr = cgi_data['from'].value is_auth = 0 try: # admin uses cookies with -admin name suffix is_auth = list.WebAuthenticate(user=fromaddr, password= cgi_data['password'].value) except Errors.MMNotAMemberError: errormsg = 'Incorrect user name or password.' except Errors.MMBadPasswordError: errormsg = 'Incorrect user name or password.' except Errors.MMExpiredCookieError: errormsg = 'Your cookie has gone stale, ' \ 'enter password to get a new one.', except Errors.MMInvalidCookieError: errormsg = 'Error decoding authorization cookie.' except Errors.MMAuthenticationError: errormsg = 'Authentication error.' if (is_auth): imsg.SetHeader('from', fromaddr) else: FormatPostmsgStatus(errormsg) return imsg.SetHeader('subject', cgi_data['subject'].value) imsg.SetHeader('to', list.GetListEmail()) message = cgi_data['message'].value if message[len(message)-1]!='\n': message = "%s\n" % message imsg.SetBody(message) list.Post(imsg) FormatPostmsgStatus('Message Posted') else: doc = Document() doc.SetTitle('Post Message') doc.AddItem('Fill out the form below to post a message to the ') doc.AddItem(list_name) doc.AddItem(' mailing list.

      ') form = Form(list.GetRelativeScriptURL('postmsg')) doc.AddItem(form) form.AddItem('Email Address: ') form.AddItem(TextBox(name='from', size=30)) form.AddItem('
      Password: ') form.AddItem(PasswordBox(name='password')) form.AddItem('
      ') form.AddItem('

      Subject: ') form.AddItem(TextBox(name='subject', size=30)) form.AddItem('

      Post
      ') form.AddItem(TextArea(name='message', rows=24, cols=80, wrap='soft')) form.AddItem('
      ') form.AddItem(SubmitButton('Post','Post Message')) print doc.Format() def FormatPostmsgStatus(error=None): "Simple message posting overview" # XXX We need a portable way to determine the host by which we are being # visited! An absolute URL would do... http_host = os.environ.get('HTTP_HOST') or\ os.environ.get('SERVER_NAME') port = os.environ.get('SERVER_PORT') # strip off the port if there is one if port and http_host[-len(port)-1:] == ':'+port: http_host = http_host[:-len(port)-1] if mm_cfg.VIRTUAL_HOST_OVERVIEW and http_host: host_name = http_host else: host_name = mm_cfg.DEFAULT_HOST_NAME doc = Document() doc.SetTitle(error) table = Table(border=0, width="100%") table.AddRow([Center(Header(2, error))]) table.AddCellInfo(max(table.GetCurrentRowIndex(), 0), 0, colspan=2, bgcolor="#99ccff") advertised = [] names = Utils.list_names() names.sort() for n in names: l = MailList.MailList(n, lock = 0) if l.advertised: if (mm_cfg.VIRTUAL_HOST_OVERVIEW and http_host and (string.find(http_host, l.web_page_url) == -1 and string.find(l.web_page_url, http_host) == -1)): # List is for different identity of this host - skip it. continue else: advertised.append(l) doc.AddItem(table) doc.AddItem('
      ') doc.AddItem(MailmanLogo()) print doc.Format(bgcolor="#ffffff") if __name__ == "__main__": main() ============================================================ ===File ~/Message.diff====================================== Index: Message.py =================================================================== RCS file: /home/cherub/cvs/mailman/Mailman/Message.py,v retrieving revision 1.1 retrieving revision 1.4 diff -c -3 -0 -r1.1 -r1.4 *** Message.py 1999/07/28 20:42:33 1.1 --- Message.py 1999/08/25 07:58:32 1.4 *************** *** 76,135 **** --- 76,141 ---- # We know the message is gonna come in on stdin or from text for our purposes. class IncomingMessage(rfc822.Message): def __init__(self, text=None): if not text: rfc822.Message.__init__(self, sys.stdin, 0) self.body = self.fp.read() else: rfc822.Message.__init__(self, FakeFile(text), 0) self.body = self.fp.read() self.file_count = None def readlines(self): if self.file_count <> None: x = self.file_count self.file_count = len(self.file_data) return self.file_data[x:] return map(RemoveNewline, self.headers) + [''] + \ string.split(self.body,'\n') def readline(self): if self.file_count == None: self.file_count = 0 self.file_data = map(RemoveNewline, self.headers) + [''] + \ string.split(self.body,'\n') if self.file_count >= len(self.file_data): return '' self.file_count = self.file_count + 1 return self.file_data[self.file_count-1] + '\n' + def SetBody(self, body): + self.body = body + + def AppendToBody(self, text): + self.body = self.body + text + def GetSender(self): # Look for a Sender field. sender = self.getheader('sender') if sender: realname, mail_address = self.getaddr('sender') else: try: realname, mail_address = self.getaddr('from') except: real_name = mail_address = None # We can't trust that any of the headers really contained an address if mail_address and type(mail_address) == type(""): return string.lower(mail_address) else: # The unix from line is all we have left... if self.unixfrom: return string.lower(string.split(self.unixfrom)[1]) def GetEnvelopeSender(self): # # look for unix from line and attain address # from it, return None if there is no unix from line # this function is used to get the envelope sender # when mail is sent to a -admin address # if not self.unixfrom: return None # XXX assumes no whitespace in address parts = string.split(self.unixfrom) ============================================================ From Gergely Madarasz Wed Aug 25 13:25:57 1999 From: Gergely Madarasz (Gergely Madarasz) Date: Wed, 25 Aug 1999 14:25:57 +0200 (METDST) Subject: [Mailman-Developers] duplicate messages with 1.0 Message-ID: Hello, I've heard from some users that sometimes they get duplicate messages from the list. Now I got one myself, here they are with full headers. I don't think that it has to do with the fact that I replied to myself in this message.... -- Madarasz Gergely gorgo@caesar.elte.hu gorgo@linux.rulez.org It's practically impossible to look at a penguin and feel angry. Egy pingvinre gyakorlatilag lehetetlen haragosan nezni. HuLUG: http://mlf.linux.rulez.org/ ---------- Forwarded message ---------- Received: from mlf.linux.rulez.org (mlf.linux.rulez.org [192.188.244.13]) by caesar.elte.hu (8.9.0/8.9.0) with ESMTP id OAA126500 for ; Wed, 25 Aug 1999 14:15:47 +0200 Received: from mlf.linux.rulez.org (localhost [127.0.0.1]) by mlf.linux.rulez.org (8.9.3/8.9.3/Debian/GNU) with ESMTP id OAA25029; Wed, 25 Aug 1999 14:12:08 +0200 Received: from darmol.elte.hu (darmol.elte.hu [157.181.3.1]) by mlf.linux.rulez.org (8.9.3/8.9.3/Debian/GNU) with ESMTP id OAA24949 for ; Wed, 25 Aug 1999 14:11:48 +0200 Received: from caesar.power.elte.hu (caesar.elte.hu [157.181.42.42]) by darmol.elte.hu (8.9.3/8.9.3/Debian/GNU) with SMTP id OAA18043 for ; Wed, 25 Aug 1999 14:11:48 +0200 Date: Wed, 25 Aug 1999 14:12:53 +0200 (METDST) From: Gergely Madarasz X-Sender: gorgo@caesar.power.elte.hu To: Linux Lista Subject: Re: RAID + boot + lilo In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Reply-To: linux@mlf.linux.rulez.org Sender: linux-admin@mlf.linux.rulez.org Errors-To: linux-admin@mlf.linux.rulez.org X-Mailman-Version: 1.0 Precedence: bulk List-Id: linux kerdesek/valaszok X-BeenThere: linux@mlf.linux.rulez.org On Wed, 25 Aug 1999, Gergely Madarasz wrote: > dd if=/dev/sdaX of=/dev/sdbX > ahol X a /boot particio Ja, es ezt csakis mountolatlan vagy ro mountolt /boot-al -- Madarasz Gergely gorgo@caesar.elte.hu gorgo@linux.rulez.org Egy pingvinre gyakorlatilag lehetetlen haragosan nezni. HuLUG: http://mlf.linux.rulez.org/ _________________________________________________ linux lista - linux@mlf.linux.rulez.org http://mlf.linux.rulez.org/mailman/listinfo/linux ---------- Forwarded message ---------- Received: from mlf.linux.rulez.org (mlf.linux.rulez.org [192.188.244.13]) by caesar.elte.hu (8.9.0/8.9.0) with ESMTP id OAA17705 for ; Wed, 25 Aug 1999 14:15:59 +0200 Received: from mlf.linux.rulez.org (localhost [127.0.0.1]) by mlf.linux.rulez.org (8.9.3/8.9.3/Debian/GNU) with ESMTP id OAA25083; Wed, 25 Aug 1999 14:12:29 +0200 Received: from darmol.elte.hu (darmol.elte.hu [157.181.3.1]) by mlf.linux.rulez.org (8.9.3/8.9.3/Debian/GNU) with ESMTP id OAA24949 for ; Wed, 25 Aug 1999 14:11:48 +0200 Received: from caesar.power.elte.hu (caesar.elte.hu [157.181.42.42]) by darmol.elte.hu (8.9.3/8.9.3/Debian/GNU) with SMTP id OAA18043 for ; Wed, 25 Aug 1999 14:11:48 +0200 Date: Wed, 25 Aug 1999 14:12:53 +0200 (METDST) From: Gergely Madarasz X-Sender: gorgo@caesar.power.elte.hu To: Linux Lista Subject: Re: RAID + boot + lilo In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Reply-To: linux@mlf.linux.rulez.org Sender: linux-admin@mlf.linux.rulez.org Errors-To: linux-admin@mlf.linux.rulez.org X-Mailman-Version: 1.0 Precedence: bulk List-Id: linux kerdesek/valaszok X-BeenThere: linux@mlf.linux.rulez.org On Wed, 25 Aug 1999, Gergely Madarasz wrote: > dd if=/dev/sdaX of=/dev/sdbX > ahol X a /boot particio Ja, es ezt csakis mountolatlan vagy ro mountolt /boot-al -- Madarasz Gergely gorgo@caesar.elte.hu gorgo@linux.rulez.org Egy pingvinre gyakorlatilag lehetetlen haragosan nezni. HuLUG: http://mlf.linux.rulez.org/ _________________________________________________ linux lista - linux@mlf.linux.rulez.org http://mlf.linux.rulez.org/mailman/listinfo/linux From cherub@azrael.dyn.cheapnet.net Fri Aug 27 02:40:59 1999 From: cherub@azrael.dyn.cheapnet.net (Steven Hazel) Date: Thu, 26 Aug 1999 20:40:59 -0500 (CDT) Subject: [Mailman-Developers] small addtions for web posting Message-ID: These simple patches -- submitted in my new insanely generous 30-line context diff fashion -- will add anchors to link to the postmsg script, and use them in the listinfo.html template. -S ===File mailman/Mailman/HTMLFormatter.py.diff====================== Index: HTMLFormatter.py =================================================================== RCS file: /home/cherub/cvs/mailman/Mailman/HTMLFormatter.py,v retrieving revision 1.1 retrieving revision 1.2 diff -c -3 -0 -r1.1 -r1.2 *** HTMLFormatter.py 1999/07/28 20:42:33 1.1 --- HTMLFormatter.py 1999/08/27 01:32:37 1.2 *************** *** 282,386 **** --- 282,391 ---- whom = 'Admin address:' # Solicit the user and password. container.AddItem(self.RestrictedListMessage('subscribers list', self.private_roster) + "

      Enter your " + string.lower(whom[:-1]) + " and password to visit" " the subscribers list:

      " + whom + " ") container.AddItem(self.FormatBox('roster-email')) container.AddItem(" Password: " + self.FormatSecureBox('roster-pw') + "  ") container.AddItem(SubmitButton('SubscriberRoster', 'Visit Subscriber List')) container.AddItem("
      ") return container def FormatFormStart(self, name, extra=''): base_url = self.GetAbsoluteScriptURL(name) if extra: full_url = "%s/%s" % (base_url, extra) else: full_url = base_url return ('
      ' % full_url) def FormatArchiveAnchor(self): return '' % self.GetBaseArchiveURL() + def FormatPostAnchor(self): + return '' % self.GetRelativeScriptURL('postmsg') + def FormatFormEnd(self): return '' def FormatBox(self, name, size=20): return '' % (name, size) def FormatSecureBox(self, name): return '' % name def FormatButton(self, name, text='Submit'): return '' % (name, text) def FormatReminder(self): if self.send_reminders: return 'Once a month, your password will be emailed to you as a reminder.' return '' def ParseTags(self, template, replacements): text = self.SnarfHTMLTemplate(template) parts = regsub.splitx(text, ']*>') i = 1 while i < len(parts): tag = string.lower(parts[i]) if replacements.has_key(tag): parts[i] = replacements[tag] else: parts[i] = '' i = i + 2 return string.join(parts, '') # This needs to wait until after the list is inited, so let's build it # when it's needed only. def GetStandardReplacements(self): dmember_len = len(self.GetDigestMembers()) member_len = len(self.GetMembers()) return { '' : self.GetMailmanFooter(), '' : self.real_name, '' : self._internal_name, '' : self.description, '' : string.join(string.split(self.info, '\n'), '
      '), '' : self.FormatFormEnd(), '' : self.FormatArchiveAnchor(), '' : '
      ', + '' : self.FormatPostAnchor(), + '' : '', '' : self.FormatSubscriptionMsg(), '' : \ self.RestrictedListMessage('current archive', self.archive_private), '' : `member_len`, '' : `dmember_len`, '' : (`member_len + dmember_len`), '' : '%s' % self.GetListEmail(), '' : '%s' % self.GetRequestEmail(), '' : self.GetAdminEmail(), '' : self.FormatReminder(), '' : self.host_name, } def GetAllReplacements(self): """ returns standard replaces plus formatted user lists in a dict just like GetStandardReplacements. """ d = self.GetStandardReplacements() d.update({"": self.FormatUsers(0), "": self.FormatUsers(1)}) return d def InitTemplates(self): def ExtensionFilter(item): return item[-5:] == '.html' files = filter(ExtensionFilter, os.listdir(mm_cfg.TEMPLATE_DIR)) Utils.MakeDirTree(self._template_dir) ============================================================ ===File mailman/templates/listinfo.html.diff======================= Index: listinfo.html =================================================================== RCS file: /home/cherub/cvs/mailman/templates/listinfo.html,v retrieving revision 1.1 retrieving revision 1.2 diff -c -3 -0 -r1.1 -r1.2 *** listinfo.html 1999/07/28 20:42:34 1.1 --- listinfo.html 1999/08/27 01:34:27 1.2 *************** *** 1,76 **** ! <MM-List-Name> Info Page

      --

       

      About

      To see the collection of prior postings to the list, visit the Archives.

      Using
      To post a message to all the list members, send email to .

      You can subscribe to the list, or change your existing subscription, in the sections below.

      Subscribing to

      Subscribe to by filling out the following form.

        Your email address:  
        You must enter a privacy password. This provides only mild security, but should prevent others from messing with your subscription. Do not use valuable passwords! --- 1,80 ---- ! <MM-List-Name> Info Page

        --

         

        About

        To see the collection of prior postings to the list, visit the Archives.

        Using
        To post a message to all the list members, send email to . + +

        If you are a subscriber, you can post a message to the + mailing list here. +

        You can subscribe to the list, or change your existing subscription, in the sections below.

        Subscribing to

        Subscribe to by filling out the following form.

          Your email address:  
          You must enter a privacy password. This provides only mild security, but should prevent others from messing with your subscription. Do not use valuable passwords! ============================================================ From jafo@tummy.com Mon Aug 30 15:35:29 1999 From: jafo@tummy.com (Sean Reifschneider) Date: Mon, 30 Aug 1999 08:35:29 -0600 Subject: [Mailman-Developers] TODO Additions Message-ID: <19990830083529.Z4599@tummy.com> I'd like to suggest the following additions to the TODO list. As I'm also willing to actually IMPLEMENT them, I'd also like some discussion on it as well. I'll probably start with some smaller tasks just so I can start understanding how mailman thinks. Virtual domain handling It would be nice to have the ability for the CGIs to list only active mailing lists on the host you connected to. Ditto for adding new lists (especially if a web-based interface is available for doing so). I run the mailing lists for a local LUG, and it would be nice if they didn't see other mailing lists on our same server as if they were the LUG mailing lists. QMail/Sendmail Sub-address Matching QMail lets a user manage username-whatever@example.com names. I frequently use these to allow me to easily split out mailing lists. However, closed mailing lists don't like it if I submit from "username@example.com" when I'm subscribed as "username-lug@example.com". Sendmail does something similar, except it uses a '+'. It would be nice to have the membership checking recognise this. Overall, mailman is *REALLY* sweet. I was considering loading Majordomo just because it's so wide-spread, but any modifications I'd want to do, or fixes, would have to be done in Perl. Not if I can help it, please. :-) Somone was mentioning Majordomo 2 would have all this great stuff that it looks like Mailman already has. I'm glad I couldn't *FIND* the Majordomo 2 beta in the end. Sean -- Linux: Bring back that "greased weasel" feeling. -- Sean Reifschneider, 1998 Sean Reifschneider, Inimitably Superfluous URL: HP-UX/Linux/FreeBSD/BSDOS scanning software. From jafo@tummy.com Mon Aug 30 16:05:50 1999 From: jafo@tummy.com (Sean Reifschneider) Date: Mon, 30 Aug 1999 09:05:50 -0600 Subject: [Mailman-Developers] QMail Patch Message-ID: <19990830090550.B4599@tummy.com> Here's a patch for Defaults.py which adds a variable named "MTA", and sets it to "qmail" if the directory /var/qmail exists. Also included is a patch to newlist which if MTA is set to "qmail" displays the commands required to create the specified aliases using the "~alias/.qmail" method. I'm not really happy with all the "SM*" keys added to the dict, but I think that the goal of making the sendmail aliases prettier is a good one... Maybe it would make more sense to remove the SM* ones and have a set of routines for each MTA like: def display_aliases_qmail(dict): print 'whatever' def display_aliases_sendmail(dict): for key in ( 'admin', 'owner1', 'owner2', 'list' ): dict[key] = '%-24s' % ( dict[key] + ':' ) print 'whatever' def display_aliases_default(dict): print "Don't know how to set up aliases for your MTA." print print "You will have to manually set up aliases for the following" print "addresses:" print [...] [...] try: eval('display_aliases_%s(dict)' % mm_cfg.MTA) except NameError: display_aliases_default(dict) Sean ============================================= *** bin/newlist.orig Mon Aug 30 08:43:32 1999 --- bin/newlist Sun Aug 29 18:45:01 1999 *************** *** 98,122 **** sys.exit(1) ###os.system('%s %s' % (ADDALIASES_CMD, list_name)) ! print ''' Entry for aliases file: ## %(listname)s mailing list ## created: %(date)s %(user)s ! %(list)s "|%(wrapper)s post %(listname)s" ! %(admin)s "|%(wrapper)s mailowner %(listname)s" ! %(request)s "|%(wrapper)s mailcmd %(listname)s" ! %(owner1)s %(listname)s-admin ! %(owner2)s %(listname)s-admin ! ''' % {'listname': list_name, ! 'list' : "%-24s" % (list_name + ":"), ! 'wrapper' : '%s/wrapper' % mm_cfg.WRAPPER_DIR, ! 'admin' : "%-24s" % ("%s-admin:" % list_name), ! 'request' : "%-24s" % ("%s-request:" % list_name), ! 'owner1' : "%-24s" % ("owner-%s:" % list_name), ! 'owner2' : "%-24s" % ("%s-owner:" % list_name), ! 'date' : time.strftime('%d-%b-%Y', time.localtime(time.time())), ! 'user' : getusername(), } if len(argv) < 5: --- 98,144 ---- sys.exit(1) ###os.system('%s %s' % (ADDALIASES_CMD, list_name)) ! print '%s %s' % (ADDALIASES_CMD, list_name) ! ! if mm_cfg.MTA == 'qmail': ! aliases = ''' ! To create system aliases: ! ! echo '|%(wrapper)s post %(listname)s' >~alias/.qmail-%(list)s ! echo '|%(wrapper)s mailowner %(listname)s' >~alias/.qmail-%(admin)s ! echo '|%(wrapper)s mailcmd %(listname)s' >~alias/.qmail-%(request)s ! echo '&%(listname)s-admin' >~alias/.qmail-%(owner1)s ! echo '&%(listname)s-admin' >~alias/.qmail-%(owner2)s ! chmod 644 ~alias/.qmail-%(list)s ~alias/.qmail-%(admin)s ! chmod 644 ~alias/.qmail-%(request)s ~alias/.qmail-%(owner1)s ! chmod 644 ~alias/.qmail-%(owner2)s ! ''' ! else: ! aliases = ''' Entry for aliases file: ## %(listname)s mailing list ## created: %(date)s %(user)s ! %(SMlist)s "|%(wrapper)s post %(listname)s" ! %(SMadmin)s "|%(wrapper)s mailowner %(listname)s" ! %(SMrequest)s "|%(wrapper)s mailcmd %(listname)s" ! %(SMowner1)s %(listname)s-admin ! %(SMowner2)s %(listname)s-admin ! ''' ! print aliases % {'listname': list_name, ! 'list' : list_name, ! 'SMlist' : "%-24s" % (list_name + ":"), ! 'wrapper' : '%s/wrapper' % mm_cfg.WRAPPER_DIR, ! 'admin' : "%s-admin" % list_name, ! 'SMadmin' : "%-24s" % ("%s-admin:" % list_name), ! 'request' : "%s-request" % list_name, ! 'SMrequest' : "%-24s" % ("%s-request:" % list_name), ! 'owner1' : "owner-%s" % list_name, ! 'SMowner1' : "%-24s" % ("owner-%s:" % list_name), ! 'owner2' : "%s-owner" % list_name, ! 'SMowner2' : "%-24s" % ("%s-owner:" % list_name), ! 'date' : time.strftime('%d-%b-%Y', time.localtime(time.time())), ! 'user' : getusername(), } if len(argv) < 5: *** Mailman/Defaults.py.orig Sun Aug 29 18:17:13 1999 --- Mailman/Defaults.py Sun Aug 29 18:22:49 1999 *************** *** 300,307 **** PUBLIC_ARCHIVE_FILE_DIR = os.path.join(PREFIX, 'archives/public') PRIVATE_ARCHIVE_FILE_DIR = os.path.join(PREFIX, 'archives/private') # The Mailman version, also set by configure VERSION = "1.0" # Data file version number ! DATA_FILE_VERSION = 15 --- 300,313 ---- PUBLIC_ARCHIVE_FILE_DIR = os.path.join(PREFIX, 'archives/public') PRIVATE_ARCHIVE_FILE_DIR = os.path.join(PREFIX, 'archives/private') + # autodetect MTA being used, can be overridden in config file. + if os.path.isdir(os.path.join('/var', 'qmail')): + MTA = 'qmail' + else: + MTA = 'sendmail' + # The Mailman version, also set by configure VERSION = "1.0" # Data file version number ! DATA_FILE_VERSION = 16 -- A smart terminal is not a smart*ass* terminal, but rather a terminal you can educate. -- Rob Pike Sean Reifschneider, Inimitably Superfluous URL: HP-UX/Linux/FreeBSD/BSDOS scanning software. From ricardo@miss-janet.com Mon Aug 30 21:37:40 1999 From: ricardo@miss-janet.com (RicardoKustner) Date: Mon, 30 Aug 1999 22:37:40 +0200 (CEST) Subject: [Mailman-Developers] thouhts on web scripts & sending mail Message-ID: Hi, From what i've noticed, when an action in the mailman web interface sends out a message, it does this directly by calling another part of the system that makes the smtp connection. Sending out just one message this way is probably not much of a problem... but if it sends out a large batch of messages (like when you approve a large number of messages), the http connection is staying open untill all of the messages are send to the MTA on the localhost... I was wondering if maybe it could be better if the cgi scripts 'mark' messages as being allowed to post to the list, and a mailman cron job picking them up next time... i think this could also make the UID-thing a bit less complicated as the cgi scripts don't have to send out any mail, just make a small change in the database. And maybe this also can prevent the high system loads when the cgi scripts are feeding messages to the MTA and the MTA is trying to deliver most of them at the same time (at least, that's what's happening in my mailman/exim configuration) maybe i'm completely wrong, but these were just my thoughts :) Ricardo. -- From r.scheike@r2-net.de Mon Aug 30 21:55:45 1999 From: r.scheike@r2-net.de (Roland Scheike) Date: Mon, 30 Aug 1999 22:55:45 +0200 Subject: [Mailman-Developers] German translation Message-ID: <37CAEFD1.21C01DA6@r2-net.de> Dies ist eine kryptographisch unterzeichnete Nachricht im MIME-Format. --------------ms262B0A2DC944688A7DAD219C Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Hi, last week I tried to translate all the html-files and mail messages into german. Doing this I noticed that most of the messages repeat often and are spread over different files (e.g. HTMLFormatter.py, MailCommandHandler.py aso.). Now I think about the following idea: Wouldn`t it be a good idea to substitute the messages with variables and to take the messages then out of a text-file? The advantage would be a "language independent" version of mailman. You would only have to translate the message-file into your preffered language without grabbing through various Python, HTML and Text-files. I think a "language independent" version could be a reason for a lot more people to use mailman instead of majordomo or something else! By the way: For me mailman is the most comfortable mailing list software around! Congratulations to the coders ! Response from the coders of mailman or other interrested people would be welcome! Thanks a lot from germany Roland -- [-------------------------------------------] [ R˛.NET, Damm & Scheike GbR ] [ Zum Herrlesgrund 1 91287 Plech ] [ fon. +49 9244 92330 fax. +49 9244 92430 ] [ roland.scheike@r2-net.de ] [ http://www.r2-net.de ] [-------------------------------------------] --------------ms262B0A2DC944688A7DAD219C Content-Type: application/x-pkcs7-signature; name="smime.p7s" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="smime.p7s" Content-Description: Kryptographische Unterschrift mit S/MIME MIIJYAYJKoZIhvcNAQcCoIIJUTCCCU0CAQExCzAJBgUrDgMCGgUAMAsGCSqGSIb3DQEHAaCC B2IwggQsMIIDlaADAgECAhAmhxe/FWKhqlsacJE/2moHMA0GCSqGSIb3DQEBBAUAMIHMMRcw FQYDVQQKEw5WZXJpU2lnbiwgSW5jLjEfMB0GA1UECxMWVmVyaVNpZ24gVHJ1c3QgTmV0d29y azFGMEQGA1UECxM9d3d3LnZlcmlzaWduLmNvbS9yZXBvc2l0b3J5L1JQQSBJbmNvcnAuIEJ5 IFJlZi4sTElBQi5MVEQoYyk5ODFIMEYGA1UEAxM/VmVyaVNpZ24gQ2xhc3MgMSBDQSBJbmRp dmlkdWFsIFN1YnNjcmliZXItUGVyc29uYSBOb3QgVmFsaWRhdGVkMB4XDTk5MDgxODAwMDAw MFoXDTAwMDgxNzIzNTk1OVowggEUMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjEfMB0GA1UE CxMWVmVyaVNpZ24gVHJ1c3QgTmV0d29yazFGMEQGA1UECxM9d3d3LnZlcmlzaWduLmNvbS9y ZXBvc2l0b3J5L1JQQSBJbmNvcnAuIGJ5IFJlZi4sTElBQi5MVEQoYyk5ODEeMBwGA1UECxMV UGVyc29uYSBOb3QgVmFsaWRhdGVkMTMwMQYDVQQLEypEaWdpdGFsIElEIENsYXNzIDEgLSBO ZXRzY2FwZSBGdWxsIFNlcnZpY2UxFzAVBgNVBAMUDlJvbGFuZCBTY2hlaWtlMSIwIAYJKoZI hvcNAQkBFhNyLnNjaGVpa2VAcjItbmV0LmRlMFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBANe5 2KlbjyCLC6Fvp8+zjTRod3OgJwHhWMvdVCQtKkRsAtSgwQzrGokohVp5OMKlB/zaIWopRLEw bA9vTSmXLh8CAwEAAaOCAQYwggECMAkGA1UdEwQCMAAwgawGA1UdIASBpDCBoTCBngYLYIZI AYb4RQEHAQEwgY4wKAYIKwYBBQUHAgEWHGh0dHBzOi8vd3d3LnZlcmlzaWduLmNvbS9DUFMw YgYIKwYBBQUHAgIwVjAVFg5WZXJpU2lnbiwgSW5jLjADAgEBGj1WZXJpU2lnbidzIENQUyBp bmNvcnAuIGJ5IHJlZmVyZW5jZSBsaWFiLiBsdGQuIChjKTk3IFZlcmlTaWduMBEGCWCGSAGG +EIBAQQEAwIHgDAzBgNVHR8ELDAqMCigJqAkhiJodHRwOi8vY3JsLnZlcmlzaWduLmNvbS9j bGFzczEuY3JsMA0GCSqGSIb3DQEBBAUAA4GBAB0mXCIioLJFZWsR98iLycUhWGnZwWt093xL q/Uqlm38XDqE3+Y0oQuRM3VP1Rkk1ItoYobKEMnLGWvbRrGqZFT37PPf3B3k0ekQLT7KXvsE xczGlrozsbZ+4z+tI0e3nnY8RrUf5bi25b6Ug30u54pZ8k5E472RAHn/8L9vuFabMIIDLjCC ApegAwIBAgIRANJ2Lo0UDD19sqglXa/uDXUwDQYJKoZIhvcNAQECBQAwXzELMAkGA1UEBhMC VVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFzcyAxIFB1YmxpYyBQ cmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTk4MDUxMjAwMDAwMFoXDTA4MDUx MjIzNTk1OVowgcwxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZWZXJpU2ln biBUcnVzdCBOZXR3b3JrMUYwRAYDVQQLEz13d3cudmVyaXNpZ24uY29tL3JlcG9zaXRvcnkv UlBBIEluY29ycC4gQnkgUmVmLixMSUFCLkxURChjKTk4MUgwRgYDVQQDEz9WZXJpU2lnbiBD bGFzcyAxIENBIEluZGl2aWR1YWwgU3Vic2NyaWJlci1QZXJzb25hIE5vdCBWYWxpZGF0ZWQw gZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBALtaRIoEFrtV/QN6ii2UTxV4NrgNSrJvnFS/ vOh3Kp258Gi7ldkxQXB6gUu5SBNWLccI4YRCq8CikqtEXKpC8IIOAukv+8I7u77JJwpdtrA2 QjO1blSIT4dKvxna+RXoD4e2HOPMxpqOf2okkuP84GW6p7F+78nbN2rISsgJBuSZAgMBAAGj fDB6MBEGCWCGSAGG+EIBAQQEAwIBBjBHBgNVHSAEQDA+MDwGC2CGSAGG+EUBBwEBMC0wKwYI KwYBBQUHAgEWH3d3dy52ZXJpc2lnbi5jb20vcmVwb3NpdG9yeS9SUEEwDwYDVR0TBAgwBgEB /wIBADALBgNVHQ8EBAMCAQYwDQYJKoZIhvcNAQECBQADgYEAiLg3O93alDcAraqf4YEBcR6S am0v9vGd08pkONwbmAwHhluFFWoPuUmFpJXxF31ntH8tLN2aQp7DPrSOquULBt7yVir6M8e+ GddTTMO9yOMXtaRJQmPswqYXD11YGkk8kFxVo2UgAP0YIOVfgqaxqJLFWGrBjQM868PNBaKQ rm4xggHGMIIBwgIBATCB4TCBzDEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsT FlZlcmlTaWduIFRydXN0IE5ldHdvcmsxRjBEBgNVBAsTPXd3dy52ZXJpc2lnbi5jb20vcmVw b3NpdG9yeS9SUEEgSW5jb3JwLiBCeSBSZWYuLExJQUIuTFREKGMpOTgxSDBGBgNVBAMTP1Zl cmlTaWduIENsYXNzIDEgQ0EgSW5kaXZpZHVhbCBTdWJzY3JpYmVyLVBlcnNvbmEgTm90IFZh bGlkYXRlZAIQJocXvxVioapbGnCRP9pqBzAJBgUrDgMCGgUAoH0wGAYJKoZIhvcNAQkDMQsG CSqGSIb3DQEHATAcBgkqhkiG9w0BCQUxDxcNOTkwODMwMjA1NTQ1WjAeBgkqhkiG9w0BCQ8x ETAPMA0GCCqGSIb3DQMCAgEoMCMGCSqGSIb3DQEJBDEWBBR8DlGIDkzzAKaROZiqQCSeCHt1 3TANBgkqhkiG9w0BAQEFAARAkfBbSSnPYXbP6zb/0URSoxNOk5tzFFy0bXQsqvLYMMZGlpoD 05VEsVFfamdBdJvKpdOMvju2Lo6hovXgBqv1Fw== --------------ms262B0A2DC944688A7DAD219C-- From Nigel.Metheringham@vdata.co.uk Tue Aug 31 09:19:05 1999 From: Nigel.Metheringham@vdata.co.uk (Nigel Metheringham) Date: Tue, 31 Aug 1999 09:19:05 +0100 Subject: [Mailman-Developers] German translation In-Reply-To: Message from Roland Scheike of "Mon, 30 Aug 1999 22:55:45 +0200." <37CAEFD1.21C01DA6@r2-net.de> Message-ID: I may be telling you something you already know, but earlier this year The Perl Journal had a very good article on internationalization and all the pitfalls. Its generic rather than particularly perl specific, so could be worth a look before anything is set in stone. Nigel. -- [ Nigel Metheringham Nigel.Metheringham@VData.co.uk ] [ Phone: +44 1423 850000 Fax +44 1423 858866 ]