I am running a list. available_languages is set to English (USA) and
Polish, and it looks that subject lines of list subscription request
(those that I need to approve) e-mails are in those 2 languages. Perhaps
this depends on the language the subscribing user has selected. The body
is English every time.
Moreover, those Polish subject lines are distorted. It looks that they
contain some Unicode/whatever but are not encoded at all; and the mail
Content-Type: text/plain; charset="us-ascii"
Looks like 2 bugs?
OpenPGP: E3D9 C030 88F5 D254 434C 6683 17DD 22A0 8A3B 5CC0
> -----Original Message-----
> From: mailman-developers-bounces+msk=cloudmark.com(a)python.org [mailto:firstname.lastname@example.org] On
> Behalf Of Murray S. Kucherawy
> Sent: Monday, April 02, 2012 2:59 PM
> To: mailman-developers(a)python.org
> Subject: [Mailman-Developers] Presenting on anti-abuse developments
> Hi all,
> One of the hats I wear these days is technical committee co-chair for
> the Messaging Anti-Abuse Working Group (MAAWG). I'm looking to fill
> slots for our Berlin (June) and Baltimore (October) conferences.
> If someone on the mailman development team would like to come and speak
> about developments and features of Mailman (especially the new version)
> that try to deal with abuse mitigation issues, please contact me off-
> list. I have a request in to the executive director to find out what
> support we offer to speakers in terms of expenses, etc., so I'll pass
> that on once I have it to anyone that replies.
I'd like to repeat this invitation. We've filled our slots for Berlin, but I have three available for Baltimore and I think any information you'd like to share on anti-abuse measures going into Mailman v3 would be of great interest. The slots are an hour long each. If you don't think you could fill that time, I can possibly pair you up with another half-session.
If you'd like to make a proposal, feel free to say so here or off-list.
M. S. Kucherawy
MAAWG Technical Co-chair, Messaging
I'm posting some additional details of my outline for this week. For
an easier reading please read it in my blog .
Following a “top-down design” methodology, i came up with additional
detail of my design concept.
What information is stored?
As i have already mentioned the information is stored in Django models.
This model represents an author of the mailing list. It mostly keeps
track of the number of postings and number of threads started. It has
the following fields:
mail – CharField (Mail address of the author)
totalmails – IntegerField
totalthreads – IntegerField
firstmsgdate – DateTimeField
lastmsgdate – DateTimeField
This model counts the total number of postings and threads started.
totalmails – IntegerField
totalthreads – IntegerField
This model associates the author and the mailing list with each month.
author – ForeignKey
month – CharField
postscount – IntegerField
threadscount – IntegerField
mailinglist – Boolean (if this is true it corresponds to the whole mailing list)
This model is similar to month. It has a year field instead of a month field.
What happens when a new email is posted to the list?
- The IArchiver interface will grab the email and send it to the Metrics class.
- The Metrics class will update the models:
* If the author is sending to the mailing list for the first time, A
new Author row will be created to the database. Otherwise, the Posts
field will increase by one. - Also, the corresponding row of the two
foreign fields (Month and Year) will also increase by one.
* The Posts field of the Mailing List model (as well as the the
related rows on the Month and Year models) will increase by one.
What happens when a user requests the Metrics page?
Django will generate a page based on the current models that outputs:
- On top, general metrics about total authors, total mails and total
threads, based on the MailingList model and below some charts (AJAX
based) that represents this information
- The authors of the mailing list ordered by the number of their total
posts, after the general metrics. Each user will correspond to a more
specific page with information like date of first and last message on
top and a chart on his overall activity below.
What will happen if the app is installed after an existing archive or
something crashes on the system? How do the metrics are being
For this case there should be a special ‘Generate’ button in the admin
page. When this button is pressed, the class ‘Generate’ will be
- The Django models will be initialized (the metrics will go back to
zero). A progress bar will inform the administrator that the operation
is being held.
- All the messages of the archive will be parsed by performing a
direct Python call to the IArchiver. Another instance to the IArchiver
will grab any mails sent while the parsing is going on and store them
to a text file.
- The metrics will be generated from scratch.
- The mails stored to the text file will be added to the metrics
- The administrator will be informed with a success message when the
process is over.
On May 03, 2012, at 02:04 AM, George Chatzisofroniou wrote:
>Interface to the MM core
>The app needs to interact with the Mailman core. I think the best idea
>is to implement a message bus that will send a notification every time
>a message is sent (the same way an archiver works). Based on this
>notification -which will carry the information about the sent message-
>the app will be ready to update the counts.
>Although, in some cases (eg the app is installed after an existing
>archive or there was an unexpected crash), the message bus should
>deliver (triggered by a button) more than one notifications (for the
>whole archive) to the app in order to initialize/recover the metrics.
>In those cases, the models will be initialized and the generation of
>the metrics will start over.
Do you know exactly what kind of information you need?
The suggestion to use the IArchiver interface is convenient, but might not
tell you much other than who posted what to which list on what date. It won't
tell you things like the number of recipients, how long that message took to
deliver, if there were any failures, etc.
The core does know this, and in fact logs it, but all you get at the IArchiver
interface is the posted message.
It would certainly be possible to hook in a zope.event notification with those
metrics for each successfully posted message. From there, a plugin could
register a subscriber that put the event data on a message bus. Or you could
grep the logs. :)
Anyway, I think it would be useful to improve the support for this in the
* David <dave(a)fiteyes.com>:
> On Fri, May 4, 2012 at 4:22 PM, Barry Warsaw <barry(a)list.org> wrote:
> > On May 04, 2012, at 02:10 PM, David wrote:
> > Now start up Mailman, your MTA
> Good up to that point. What is the method for generating aliases for
> Postfix in Mailman 3?
This has changed im MM3. Postfix now delivers ML mails to MM3 via LMTP.
state of mind ()
Franziskanerstraße 15 Telefon +49 89 3090 4664
81669 München Telefax +49 89 3090 4666
Amtsgericht München Partnerschaftsregister PR 563
On Fri, 4 May 2012, George Chatzisofroniou wrote:
>> On Thu, May 3, 2012 at 8:04 AM, George Chatzisofroniou
>> <sophron(a)latthi.com> wrote:
>> I don't know how feasible it would be to implement, but if you're
>> willing to use AJAX, you could simply build up bar and line charts on
>> the fly, adding "slices" of say 5 users at a time on the right side of
>> the chart in progress. That might be cool. It could be set in a
>> "viewport" and scrolled if it gets too big for the viewport.
> Yes, AJAX can do the job here. I will implement the AJAX bar as you
> described, although i think it's better to primarily have a
I would just like to restate my plea for the ability to manage Mailman
merely asking for it to be possible to use without it.
I use lynx as my primary browser, and while general web surfing can be a
bit tricky these days, it's very quick and useful for doing admin-type
things, and I for one would like to be able to continue to do so.
Certainly I have no problems using Mailman 2'.1's interface with lynx, and
have been doing so for many years.
If my memory serves me correctly, this was generally felt to be a
reasonable request when I first mentioned it. I'm sure it's in the
> I don't have a dev_setup directory. Also, I want to start the Web GUI on
> port 80 for public access via apache.
> The following page is empty:
> How to get Postorius running on Apache and mod_wsgi
Postorius is just a Django-based website that communicates with MM3.
To deploy it, find, and follow, the directions which apply to any website powered by Django.
However, I should warn you that Postorius is not as far along in its development as is the core parts that handle mail.
In fact, at this time, there are so many things missing that you will be disappointed if you attempt to make the interface publicly visible.
Perhaps it is premature for you to attempt to work with this early development release.
On May 04, 2012, at 02:10 PM, David wrote:
>1. what are the first tests I should perform after starting mailman?
Try creating a mailing list from the command line:
$ mailman create -d mylist(a)example.com
Subscribe some addresses to mylist. Edit a file with a list of email
addresses and names using one of these formats, one entry per line:
anne(a)example.com (Anne Person)
Bart Person <bart(a)example.com>
$ mailman members -a filename.txt mylist(a)example.com
Now start up Mailman, your MTA and send a message to mylist(a)example.com. All
the members you just added should get a copy. Check your MTA logs and
Mailman's own logs for details or problems.