Hi Everyone,
I have a several ideas for features that may be of interest. Their
implementation would certainly be to my benefit. I've listed them below.
FYI, I'm testing out Mailman as a replacement for my campus' existing
Majordomo setup. If I can just get a few issued resolved, I think the
transition will go easily.
1) Please add an option so subscribers can elect to show only the username
part of their e-mail address in the subscriber list instead of the whole
thing (regardless of the @->" at " conversion).
2) In the section of the listinfo page where a user can subscribe to the
list in question, please add another radio-button option for "Conceal
yourself from subscriber list?" if the list's subscriber list can be seen
by the list members or the public. I'm somewhat of an anti-spam nut so I
don't like having my e-mail address publically visible in any form.
3) Allow the system-wide admin to disable the mail->news and news->mail
gatewaying for the whole system and/or for selected lists. (I've got some
list admins that want to use this, but I *really* don't want to see that
kind of traffic on my server. Not to mention the liability issues...)
4) On the membership management admin page, please setup a mechanism for
large lists to limit the display of user options to X number of users per
page. It's a killer to try to admin large lists from slow machines with
limited memory. (ex, took me a long time and a lot of swapping to load the
page for a 3000 member list)
5) Please setup a means by which a user can specify what additional
addresses he/she posts from other than their subscription address. (For
example, my campus has a mail aliasing system so that all public addresses
have the form "firstname.lastname(a)usm.edu" or similar. But the address
they post from may be "username(a)host.usm.edu" or similar. This becomes a
problem for lists that have member_posting_only turned on.)
6) Please setup a mechanism for a pre-made set of options to be used
as defaults when creating new lists. For instance, on our campus, we have
a form that prospective list owners fill out to request a new list. On
this form, we have the following options for them to "check" that
determine how their list is initially setup.:
Archived list (Duh)
Closed list (Subscriptions requests must be approved list list owner.
Otherwise list is "Open" and anyone may subscribe.)
Secured list (Only list members may post to the list)
Moderated list (list owner must approve all posts to the list)
Announcement (List will be used for outgoing announcements only. Implies
moderated and secured.)
I don't mind creating files with all of the configuration options and
their default config values. I just need a snippet of code to read the
values in and use those as defaults when creating the list. And then,
perhaps if I combined that with #7 below, I could get it to automatically
import the configuration of a previous majordomo list... (I don't know how
either of these would work with the idea to create lists from a site admin
page, tho. Perhaps the site admin could choose from a pull-down menu of
option pre-sets or pre-existing majordomo lists when creating a mailman
list?)
7) If anyone has written a withlist module that can read in the values in
an existing Majordomo 1.94 config file and update the corrosponding values
in a Mailman list's config db, I'd be ever so greatful to get a copy. This
would make transitioning to mailman *so* much easier than having to do
each list by hand through the web interface.
8) The <body> tag is not currently setup right for error pages.
9) Please build-in the option for individual list owners to filter binary
attachments. (I think something like this is already in the works, but I'd
like it to be a per-list option settable by the list owner.)
10) In the pipermail archives, please do the following:
- move the archives to http://host/mailman/archives/listname or provide
a redirect from there to http://host/pipermail/listname.
- implelement a link for users to reply to posts in an archive by using
a mailto: URL to open up a mailer window from their browser. Or
perhaps make this optional on a per-list basis.
(Note: this might break threading if a specific "In-Reply-to" header
can't be added)
- in threaded view:
(a) add links at the bottom of each post to go back to the previous
thread and forward to the next.
(b) perhaps setup a mode where a user could see all the threads
expanded on one page (as it is now) or see all the thread titles
on one page and clicking them expands the thread into a new page.
Lastly, I'd like to note that, while I understand most of what's
going on in the code, I don't have time ATM to sit down and really learn
Python. Hence, I don't have the expertise to go about making most of
these modifications myself. I do, however, plan to sit down and learn
Python as well as possible over the holiday break. So perhaps I can pitch
in directly during the new year.
Thank-you for your attention. I look forward to hearing from anyone
who can help! ;-)
~ Rick Niess ~
--
.oooO "Man with closed Oooo. Rick C. Niess
( ) mouth gathers ( ) University of Southern Miss.
\ ( no foot!" ) / guardian(a)bark.cc.usm.edu
--\_)------------------(_/-------------------------------
---------- Forwarded message ----------
Date: Mon, 27 Dec 1999 16:14:43 -0000
From: Phillip Porch <root(a)theporch.com>
To: root(a)theporch.com
Subject: Bug in Mailman version 1.2 (experimental)
Bug in Mailman version 1.2 (experimental)
Bug in Mailman version 1.2 (experimental)
We're sorry, we hit a bug!
If you would like to help us identify the problem, please email a copy of this page to the webmaster for this site with a description of what happened. Thanks!
Traceback:
Traceback (innermost last):
File "/home/mailman/scripts/driver", line 112, in run_main
main()
File "../Mailman/Cgi/admin.py", line 165, in main
FormatConfiguration(doc, mlist, category, category_suffix, cgi_data)
File "../Mailman/Cgi/admin.py", line 311, in FormatConfiguration
form.AddItem(FormatOptionsSection(category, mlist, cgi_data))
File "../Mailman/Cgi/admin.py", line 326, in FormatOptionsSection
return FormatMembershipOptions(mlist, cgi_data)
File "../Mailman/Cgi/admin.py", line 565, in FormatMembershipOptions
mtext = '%s' % (
TypeError: unexpected keyword argument: obscured
--------------------------------------------------------------------------------
Environment variables:
Variable Value
DOCUMENT_ROOT /home
SERVER_ADDR 207.234.31.38
HTTP_ACCEPT_ENCODING gzip, deflate
SERVER_PORT 8080
PATH_TRANSLATED /home/notam/members
REMOTE_ADDR 207.234.31.43
HTTP_ACCEPT_LANGUAGE en-us
GATEWAY_INTERFACE CGI/1.1
SERVER_NAME sco.theporch.com
TZ CST6CDT
HTTP_USER_AGENT Mozilla/4.0 (compatible; MSIE 5.01; Windows 98)
QUERY_STRING
HTTP_ACCEPT image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, */*
REQUEST_URI /mailman/admin/notam/members
PATH /etc:/bin:/usr/bin
REMOTE_PORT 1052
SCRIPT_FILENAME /home/mailman/cgi-bin/admin
PATH_INFO /notam/members
HTTP_HOST www.theporch.com:8080
REQUEST_METHOD GET
SERVER_SIGNATURE Apache/1.3.9 Server at sco.theporch.com Port 8080
SCRIPT_NAME /mailman/admin
SERVER_ADMIN root(a)sco.theporch.com
SERVER_SOFTWARE Apache/1.3.9 (Unix)
PYTHONPATH /home/mailman
HTTP_COOKIE notam:admin="(lp1\012F946332841.40999997\012aI946343641\012aS'^g\\304\\245\\300Bop\\356\\261\\020\\332\\005\\324\\245\\026'\012p2\012a."
SERVER_PROTOCOL HTTP/1.1
HTTP_CONNECTION Keep-Alive
HTTP_REFERER http://www.theporch.com:8080/mailman/admin/notam
Mailman Developers,
I have created a new mailing list called mailman-i18n(a)python.org for
discussions focused on internationalizing Mailman. This SIG has a
very narrow mission: at first it will be to discuss design issues and
patches to the source code to support multi-lingual mailing lists.
Once that is integrated into the codebase, the SIG will primarily be a
forum for translators. I urge any interested parties to subscribe by
visiting
http://www.python.org/mailman/listinfo/mailman-i18n
I'd like to keep I18N discussions off of mailman-developers.
Current status: I received a large patchset from Juan and Victoriano,
which contained some stuff by Mads and others, which I started looking
at over the Xmas break. I'd like to move all private discussions on
this stuff to the SIG so everyone can contribute. I plan on posting a
more detailed summary to the SIG within a couple of days (I'm too busy
right now). That'll also give people a chance to subscribe to the new
list.
Cheers,
-Barry
--
Greg Stein, http://www.lyra.org/
---------- Forwarded message ----------
Date: Sun, 26 Dec 1999 11:32:01 -0500
From: Aaron La Mar <alamar(a)irex.org>
To: "'webmaster(a)list.org '" <webmaster(a)list.org>
Subject: Error encountered on the Mailman webpage
I got the following error when I clicked on "Mailman-Users" on your index
page.
Bug in Mailman version 1.2 (experimental)
We're sorry, we hit a bug!
If you would like to help us identify the problem, please email a copy of
this page to the webmaster for this site with a description of what
happened. Thanks!
Traceback:
Traceback (innermost last):
File "/home/mailman/scripts/driver", line 112, in run_main
main()
File "/home/mailman/Mailman/Cgi/listinfo.py", line 54, in main
FormatListListinfo(mlist)
File "/home/mailman/Mailman/Cgi/listinfo.py", line 163, in
FormatListListinfo
replacements = mlist.GetStandardReplacements()
File "/home/mailman/Mailman/HTMLFormatter.py", line 347, in
GetStandardReplacements
return {
File "/home/mailman/Mailman/HTMLFormatter.py", line 50, in
GetMailmanFooter
Address(
File "/home/mailman/Mailman/MailList.py", line 209, in
GetRelativeScriptURL
return GetScriptURL(self, scriptname, relative=1)
NameError: GetScriptURL
----------------------------------------------------------------------------
----
Environment variables:
Variable Value
DOCUMENT_ROOT /usr/local/apache/htdocs
SERVER_ADDR 132.151.1.21
HTTP_ACCEPT_ENCODING gzip, deflate
REMOTE_HOST parrot.python.org
SERVER_PORT 80
PATH_TRANSLATED /usr/local/apache/htdocs/mailman-users
REMOTE_ADDR 132.151.1.90
HTTP_ACCEPT_LANGUAGE en-us
GATEWAY_INTERFACE CGI/1.1
SERVER_NAME dinsdale.python.org
TZ US/Eastern
HTTP_USER_AGENT Mozilla/4.0 (compatible; MSIE 5.0; Windows 98; DigExt)
HTTP_ACCEPT image/gif, image/x-xbitmap, image/jpeg, image/pjpeg,
application/vnd.ms-excel, application/msword, application/vnd.ms-powerpoint,
*/*
REQUEST_URI /mailman/listinfo/mailman-users
PATH /usr/sbin:/usr/bin
QUERY_STRING
SCRIPT_FILENAME /home/mailman/cgi-bin/listinfo
PATH_INFO /mailman-users
HTTP_HOST dinsdale.python.org
REQUEST_METHOD GET
SERVER_SIGNATURE Apache/1.3.9 Server at dinsdale.python.org Port 80
SCRIPT_NAME /mailman/listinfo
SERVER_ADMIN webmaster(a)python.org
SERVER_SOFTWARE Apache/1.3.9 (Unix)
PYTHONPATH /home/mailman
HTTP_REFERER http://www.list.org/
SERVER_PROTOCOL HTTP/1.0
REMOTE_PORT 58702
OK. let me clarify myself.
it appears, that if mailman has not set a cookie, but a sitewide cookie exists
in the browser, mailman will try to use the sitewide cookie, without checking
if it is in fact the correct cookie (which at this point is not created).
so, instead of creating a new cookie, as it should, it is dying in the process
of parsing the wrong cookie.
Hope this helps the developers.
Allen
--
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Allen Bolderoff <allen(a)gist.net.au>
LNC - Redhat and Linux, help and commentary http://linux.netnerve.com
CTPC - Caffeine - get it here: http://www.coffee-tea-pots-cups.com/
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
GPG fingerprint = CBB0 8626 702C 3D01 B5AD A54A DC2C 93B7 3E4B 6472
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Return-Path: <owner-mailman-developers(a)python.org>
Delivered-To: mailman-developers(a)dinsdale.python.org
Received: from python.org (parrot.python.org [132.151.1.90])
by dinsdale.python.org (Postfix) with ESMTP
id A809B1CD21; Thu, 23 Dec 1999 21:50:36 -0500 (EST)
Received: from ns1.gist.net.au (IDENT:root@main.gist.net.au [203.20.102.2])
by python.org (8.9.1a/8.9.1) with ESMTP id VAA21724;
Thu, 23 Dec 1999 21:50:33 -0500 (EST)
Received: from harper.gist.net.au (root(a)harper.gist.net.au [203.20.102.68])
by ns1.gist.net.au (8.8.7/8.8.7) with ESMTP id MAA03331;
Fri, 24 Dec 1999 12:18:59 +1030
Received: from harper.gist.net.au (IDENT:allen@localhost [127.0.0.1])
by harper.gist.net.au (8.9.3/8.8.7) with ESMTP id NAA13571;
Fri, 24 Dec 1999 13:21:14 +1030
Resent-Message-Id: <199912240251.NAA13571(a)harper.gist.net.au>
Message-Id: <199912240251.NAA13571(a)harper.gist.net.au>
X-Mailer: exmh version 2.1.0
To: blurr(a)txraves.org
In-Reply-To: Your message of "Thu, 23 Dec 1999 11:10:01 MDT."
<014701bf4d68$8e7011b0$ea17a8c0@jordan>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Date: Fri, 24 Dec 1999 13:14:17 +1030
From: Allen Bolderoff <allen(a)gist.net.au>
Resent-To: mailman-users(a)python.org
Resent-Cc: mailman-developers(a)python.org
Resent-Date: Fri, 24 Dec 1999 13:21:14 +1030
Resent-From: Allen Bolderoff <allen(a)gist.net.au>
Resent-Sender: allen(a)harper.gist.net.au
Subject: [Mailman-Developers] UPDATE - problem with cookies? Round 2
Sender: mailman-developers-admin(a)python.org
Errors-To: mailman-developers-admin(a)python.org
X-BeenThere: mailman-developers(a)python.org
X-Mailman-Version: 1.2 (experimental)
Precedence: bulk
List-Id: Mailman mailing list developers <mailman-developers.python.org>
> > What would you like us to do? Yes, it looks like a bug. Have you tried
> > either examining the cookie or deleting it?... since the error message
> > pretty
> > clearly points to the file of code, and the code is pretty clearly
> > examining
> > the cookie data itself and finding something wrong....
> >
> > You might add something like
> >
> > if len(cookiedata) < len(key): return 0
> >
> > before
> >
> > if cookiedata[keylen+1] <> '"' and cookiedata[-1]....
> >
> > in SecurityManager.py.
> >
> > I haven't tested the fix, because I don't know if that's what's going
> > wrong.
This does not work, however, what I can tell you is that if there is another cookie set by the webserver, it appears to confuse mailman.
Mailman then tries to use the other cookie.
ie - I use roxen - http://www.roxen.com
roxen sets a unique cookie for every user that comes to the site.
when I turn on the debug messages by removing the commented debug code, and access a bad page, I get the cookie, which is called RoxenUserID showing in the debug file, not the one we would expect.
In fact, this seems to happen when the cookie does not exist (the authentication cookie that mailman makesm that is)
Hope this helps
--
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Allen Bolderoff <allen(a)gist.net.au>
LNC - Redhat and Linux, help and commentary http://linux.netnerve.com
CTPC - Caffeine - get it here: http://www.coffee-tea-pots-cups.com/
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
GPG fingerprint = CBB0 8626 702C 3D01 B5AD A54A DC2C 93B7 3E4B 6472
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Hi,
i'm getting the following error often when approving posts
on the admindb page... there were 12 posts and about 3 of
them were marked as "Discard", the rest was approved...
i had this earlier... and when i reloaded the admindb page,
some posts showed up again, even though they were send out
to the list anyway...
Traceback (innermost last):
File "/usr/local/mailman/scripts/driver", line 112, in run_main
main()
File "../Mailman/Cgi/admindb.py", line 123, in main
mlist.Save()
File "/usr/local/mailman/Mailman/MailList.py", line 814, in Save
self.SaveRequestsDb()
File "/usr/local/mailman/Mailman/ListAdmin.py", line 89, in SaveRequestsDb
self.__closedb()
File "/usr/local/mailman/Mailman/ListAdmin.py", line 73, in __closedb
assert self.Locked()
AssertionError:
--
Ricardo.
--
International Janet Jackson fanclub called MISS JANET.
For more information write to:
Miss Janet. P.O.Box 10016, 1001 EA Amsterdam, The Netherlands
Fax/phone: +31-(0)20-7764493 Email: fanclub(a)miss-janet.com
Or check out our website: http://miss-janet.com
Hi!
When subscribing a local user address like
"mbudde" or even "mbudde@local" I get this
error message: "Bad/Invalid email address".
Why? This is a normal email address.
I´m using version 1.0b8.
cu, Marco
--
-- Linux HOWTOs: Die besten Lösungen der Linuxgemeinde --
ISBN 3-8266-0498-9
Uni: Budde(a)tu-harburg.de Fido: 2:240/6298.5
Mailbox: mbudde(a)sms.antar.com http://www.tu-harburg.de/~semb2204/
Hi,
i'd like to add a "send copy of email to..." function inside
admindb.py (to optionally allow posts on the approval page to be send
to a certain email address)... what i need to do i guess is
pipe it to the MTA and only change the "To:" line ... can anybody
advise me on which is the best python or MM function to use for this?
Thanks,
Ricardo.
--
Hi,
I've added to following lines of code to seperate the
message body from the header in PrintPostRequest() around
line 197 ...
fp = open(os.path.join(mm_cfg.DATA_DIR, filename))
# text = fp.read(mm_cfg.ADMINDB_PAGE_TEXT_LIMIT)
msg_header = ""
msg_body = ""
for line in fp.readlines():
if msg_body == "":
if line != "\n":
msg_header = msg_header + line
else:
msg_body = line
else:
msg_body = msg_body + line
fp.close()
in my copy of admindb.py i don't need the mail headers, so I just
output msg_body in the textarea... but maybe it could be made
as an option "Include message headers on approval page Y/N" in
the mailinglist configuration...
Ricardo.
--
We set up an SSL arrangement so our admin password isn't traversing
the net in clear text, but were temporarily thwarted by the
fact that the admin CGI scripts sometimes use Absolute paths,
which didn't include the https://. I made some hacks; comments?
(Does this look right, Barry et. al.?)
(This is to v1.1; if it looks good, I'll put it in CVS and put it
back)
How does the putback process usually work? Does someone review code,
or do we have a "holding area" that's protected somehow, or?...
Anyway, here are context diffs:
===================================================================
RCS file: RCS/admin.py,v
retrieving revision 1.1
diff -c -r1.1 admin.py
*** admin.py 1999/12/15 05:29:10 1.1
--- admin.py 1999/12/15 05:29:50
***************
*** 534,540 ****
buttons = []
for ci in chunk_indices:
start, end = chunks[ci][0], chunks[ci][-1]
! url = lst.GetAbsoluteScriptURL('admin')
buttons.append("<a href=%s/members?chunk=%d> from %s to %s </a>"
% ( url, ci, start, end))
buttons = apply(UnorderedList, tuple(buttons))
--- 534,540 ----
buttons = []
for ci in chunk_indices:
start, end = chunks[ci][0], chunks[ci][-1]
! url = lst.GetRelativeScriptURL('admin')
buttons.append("<a href=%s/members?chunk=%d> from %s to %s </a>"
% ( url, ci, start, end))
buttons = apply(UnorderedList, tuple(buttons))
***************
*** 544,550 ****
footer = "<p>"
for member in all:
mtext = '<a href="%s">%s</a>' % (
! lst.GetAbsoluteOptionsURL(member, obscured=1),
lst.GetUserSubscribedAddress(member))
cells = [mtext + "<input type=hidden name=user value=%s>" % (member),
Center(CheckBox(member + "_subscribed", "on", 1).Format())]
--- 544,550 ----
footer = "<p>"
for member in all:
mtext = '<a href="%s">%s</a>' % (
! lst.GetRelativeOptionsURL(member, obscured=1),
lst.GetUserSubscribedAddress(member))
cells = [mtext + "<input type=hidden name=user value=%s>" % (member),
Center(CheckBox(member + "_subscribed", "on", 1).Format())]
===================================================================
RCS file: RCS/MailList.py,v
retrieving revision 1.1
diff -c -r1.1 MailList.py
*** MailList.py 1999/12/15 05:30:09 1.1
--- MailList.py 1999/12/15 05:31:01
***************
*** 194,199 ****
--- 194,209 ----
treated = addr
return "%s/%s" % (options, treated)
+ def GetRelativeOptionsURL(self, addr, obscured=0):
+ # address could come in case-preserved
+ addr = string.lower(addr)
+ options = self.GetRelativeScriptURL('options')
+ if obscured:
+ treated = Utils.ObscureEmail(addr, for_text=0)
+ else:
+ treated = addr
+ return "%s/%s" % (options, treated)
+
def GetUserOption(self, user, option):
"""Return user's setting for option, defaulting to 0 if no
settings."""
user = self.GetUserCanonicalAddress(user)