FAQ
Hello,


We are running mailman 2.1.10 on Solaris 9 with postfix.

We have a customer who would like to use a form on a website to
subscribe people to a mailing list. In theory, the form would email the
details the list-join address of the list. I have tried following the
instructions from the members' manual:

subscribe [<PASSWORD>] [digest-nodigest] [address=<ADDRESS>]
Subscribe to this mailing list. Your password must be given to
unsubscribe or change your options, but
if you omit the password, one will be generated for you. You may be
periodically reminded of your
password.
The next argument may be either: 'nodigest' or 'digest' (no quotes!). If
you wish to subscribe an address
other than the address you sent this request from, you may specify
'address=<ADDRESS>' (no brackets
around the email address, and no quotes!)

I am testing this process with a test list using the following email:

-----Original Message-----
From: Alan Rubin
Sent: Tuesday, 17 February 2009 1:46 PM
To: 'test-join at lists.nt.gov.au'
Subject:

subscribe nodigest address=adam.smith at nt.gov.au


but my attempts keep getting shunted (tried twice, first without a
digest option):


Feb 17 13:46:20 2009 (1046) Traceback (most recent call last):
File "/export/home/mailman/Mailman/Queue/Runner.py", line 114, in
_oneloop
self._onefile(msg, msgdata)
File "/export/home/mailman/Mailman/Queue/Runner.py", line 185, in
_onefile
keepqueued = self._dispose(mlist, msg, msgdata)
File "/export/home/mailman/Mailman/Queue/CommandRunner.py", line 241,
in _dispose
res.do_command('join')
File "/export/home/mailman/Mailman/Queue/CommandRunner.py", line 139,
in do_command
return handler.process(self, args)
File "/export/home/mailman/Mailman/Commands/cmd_subscribe.py", line
74, in process
if digest is None and password.lower() in ('digest', 'nodigest'):
AttributeError: 'NoneType' object has no attribute 'lower'

Feb 17 13:46:20 2009 (1046) SHUNTING:
1234844179.158844+4d54d8a83f98a957ccff205953e10afbc0a9eecd


Any help? Am I missing a step? This is somewhat urgent, if anyone is
still awake in the West.


Regards,

Alan Rubin
Technician Unix
DCS Midrange Services
Phone: +61 (08) 8999 5111
Fax: +61 (08) 8999 7493
e-Mail: alan.rubin at nt.gov.au

Search Discussions

  • Mark Sapiro at Feb 17, 2009 at 4:52 am

    Alan Rubin wrote:
    We have a customer who would like to use a form on a website to
    subscribe people to a mailing list. In theory, the form would email the
    details the list-join address of the list.

    Unduly complicated. See the FAQ at <http://wiki.list.org/x/hIA9>.

    But, since you ask, read on...

    I have tried following the
    instructions from the members' manual:

    subscribe [<PASSWORD>] [digest-nodigest] [address=<ADDRESS>]
    Subscribe to this mailing list. Your password must be given to
    unsubscribe or change your options, but
    if you omit the password, one will be generated for you. You may be
    periodically reminded of your
    password.
    The next argument may be either: 'nodigest' or 'digest' (no quotes!). If
    you wish to subscribe an address
    other than the address you sent this request from, you may specify
    'address=<ADDRESS>' (no brackets
    around the email address, and no quotes!)

    I am testing this process with a test list using the following email:

    -----Original Message-----
    From: Alan Rubin
    Sent: Tuesday, 17 February 2009 1:46 PM
    To: 'test-join at lists.nt.gov.au'
    Subject:

    subscribe nodigest address=adam.smith at nt.gov.au

    You can't send a generic subscribe command to to the -join or
    -subscribe address. The subject/body of mail to those addresses are
    ignored and they just request subscription of the From: address with
    generated password and default digest/nodigest.

    If you want to send a subscribe command as above in the subject or body
    of the mail, you have to send it to the -request address.

    But that isn't the reason for the following.

    but my attempts keep getting shunted (tried twice, first without a
    digest option):


    Feb 17 13:46:20 2009 (1046) Traceback (most recent call last):
    File "/export/home/mailman/Mailman/Queue/Runner.py", line 114, in
    _oneloop
    self._onefile(msg, msgdata)
    File "/export/home/mailman/Mailman/Queue/Runner.py", line 185, in
    _onefile
    keepqueued = self._dispose(mlist, msg, msgdata)
    File "/export/home/mailman/Mailman/Queue/CommandRunner.py", line 241,
    in _dispose
    res.do_command('join')
    File "/export/home/mailman/Mailman/Queue/CommandRunner.py", line 139,
    in do_command
    return handler.process(self, args)
    File "/export/home/mailman/Mailman/Commands/cmd_subscribe.py", line
    74, in process
    if digest is None and password.lower() in ('digest', 'nodigest'):
    AttributeError: 'NoneType' object has no attribute 'lower'

    Feb 17 13:46:20 2009 (1046) SHUNTING:
    1234844179.158844+4d54d8a83f98a957ccff205953e10afbc0a9eecd


    Any help? Am I missing a step? This is somewhat urgent, if anyone is
    still awake in the West.

    This was a bug in the 2.1.10 release. See
    <http://mail.python.org/pipermail/mailman-announce/2008-April/000111.html>
    for a patch, but the irony here is if you had sent the mail to
    test-request at lists.nt.gov.au, it would have worked and not triggered
    the bug.

    --
    Mark Sapiro <mark at msapiro.net> The highway is for gamblers,
    San Francisco Bay Area, California better use your sense - B. Dylan
  • Mihamina Rakotomandimby at Feb 17, 2009 at 5:00 am

    Alan Rubin wrote:

    if digest is None and password.lower() in ('digest', 'nodigest'):
    AttributeError: 'NoneType' object has no attribute 'lower'
    In Python, this means mailman is trying to lowercase the password but
    there is nothing to lowercase.
  • Alan Rubin at Feb 17, 2009 at 5:33 am
    Mark,

    I applied the patch, used the request address, and my message still gets
    shunted.

    Feb 17 14:59:32 2009 (1046) Uncaught runner exception: 'NoneType' object
    has no attribute 'lower'
    Feb 17 14:59:32 2009 (1046) Traceback (most recent call last):
    File "/export/home/mailman/Mailman/Queue/Runner.py", line 114, in
    _oneloop
    self._onefile(msg, msgdata)
    File "/export/home/mailman/Mailman/Queue/Runner.py", line 185, in
    _onefile
    keepqueued = self._dispose(mlist, msg, msgdata)
    File "/export/home/mailman/Mailman/Queue/CommandRunner.py", line 239,
    in _dispose
    res.process()
    File "/export/home/mailman/Mailman/Queue/CommandRunner.py", line 112,
    in process
    stop = self.do_command(cmd, args)
    File "/export/home/mailman/Mailman/Queue/CommandRunner.py", line 139,
    in do_command
    return handler.process(self, args)
    File "/export/home/mailman/Mailman/Commands/cmd_subscribe.py", line
    74, in process
    if (digest is None
    AttributeError: 'NoneType' object has no attribute 'lower'

    Feb 17 14:59:32 2009 (1046) SHUNTING:
    1234848571.543715+462ea839ccdd63f659aab843129562980c886d3c


    Diff on the cmd_subscribe.py new and old:

    # diff Mailman/Commands/cmd_subscribe.py Mailman/Commands/cmd_sub>
    74,75c74
    < if (digest is None
    < and password and password.lower() in ('digest',
    'nodigest')):
    ---
    if digest is None and password.lower() in ('digest', 'nodigest'):

    The web form that you pointed me at should work regardless of this error
    with the cmd_subscribe.py utility?

    Regards,

    Alan Rubin
    Technician Unix
    DCS Midrange Services
    Phone: +61 (08) 8999 5111
    Fax: +61 (08) 8999 7493
    e-Mail: alan.rubin at nt.gov.au

    -----Original Message-----
    From: Mark Sapiro [mailto:mark at msapiro.net]
    Sent: Tuesday, 17 February 2009 2:22 PM
    To: Alan Rubin; Mailman User List
    Subject: Re: [Mailman-Users] subscribing by email

    Alan Rubin wrote:
    We have a customer who would like to use a form on a website to
    subscribe people to a mailing list. In theory, the form would email the
    details the list-join address of the list.

    Unduly complicated. See the FAQ at <http://wiki.list.org/x/hIA9>.

    But, since you ask, read on...

    I have tried following the
    instructions from the members' manual:

    subscribe [<PASSWORD>] [digest-nodigest] [address=<ADDRESS>]
    Subscribe to this mailing list. Your password must be given to
    unsubscribe or change your options, but
    if you omit the password, one will be generated for you. You may be
    periodically reminded of your
    password.
    The next argument may be either: 'nodigest' or 'digest' (no quotes!). If
    you wish to subscribe an address
    other than the address you sent this request from, you may specify
    'address=<ADDRESS>' (no brackets
    around the email address, and no quotes!)

    I am testing this process with a test list using the following email:

    -----Original Message-----
    From: Alan Rubin
    Sent: Tuesday, 17 February 2009 1:46 PM
    To: 'test-join at lists.nt.gov.au'
    Subject:

    subscribe nodigest address=adam.smith at nt.gov.au

    You can't send a generic subscribe command to to the -join or
    -subscribe address. The subject/body of mail to those addresses are
    ignored and they just request subscription of the From: address with
    generated password and default digest/nodigest.

    If you want to send a subscribe command as above in the subject or body
    of the mail, you have to send it to the -request address.

    But that isn't the reason for the following.

    but my attempts keep getting shunted (tried twice, first without a
    digest option):


    Feb 17 13:46:20 2009 (1046) Traceback (most recent call last):
    File "/export/home/mailman/Mailman/Queue/Runner.py", line 114, in
    _oneloop
    self._onefile(msg, msgdata)
    File "/export/home/mailman/Mailman/Queue/Runner.py", line 185, in
    _onefile
    keepqueued = self._dispose(mlist, msg, msgdata)
    File "/export/home/mailman/Mailman/Queue/CommandRunner.py", line 241,
    in _dispose
    res.do_command('join')
    File "/export/home/mailman/Mailman/Queue/CommandRunner.py", line 139,
    in do_command
    return handler.process(self, args)
    File "/export/home/mailman/Mailman/Commands/cmd_subscribe.py", line
    74, in process
    if digest is None and password.lower() in ('digest', 'nodigest'):
    AttributeError: 'NoneType' object has no attribute 'lower'

    Feb 17 13:46:20 2009 (1046) SHUNTING:
    1234844179.158844+4d54d8a83f98a957ccff205953e10afbc0a9eecd


    Any help? Am I missing a step? This is somewhat urgent, if anyone is
    still awake in the West.

    This was a bug in the 2.1.10 release. See
    <http://mail.python.org/pipermail/mailman-announce/2008-April/000111.htm
    l>
    for a patch, but the irony here is if you had sent the mail to
    test-request at lists.nt.gov.au, it would have worked and not triggered
    the bug.

    --
    Mark Sapiro <mark at msapiro.net> The highway is for gamblers,
    San Francisco Bay Area, California better use your sense - B. Dylan
  • Mark Sapiro at Feb 17, 2009 at 3:58 pm

    Alan Rubin wrote:
    I applied the patch, used the request address, and my message still gets
    shunted.

    Did you restart Mailman after applying the patch?

    Feb 17 14:59:32 2009 (1046) Uncaught runner exception: 'NoneType' object
    has no attribute 'lower'
    Feb 17 14:59:32 2009 (1046) Traceback (most recent call last):
    File "/export/home/mailman/Mailman/Queue/Runner.py", line 114, in
    _oneloop
    self._onefile(msg, msgdata)
    File "/export/home/mailman/Mailman/Queue/Runner.py", line 185, in
    _onefile
    keepqueued = self._dispose(mlist, msg, msgdata)
    File "/export/home/mailman/Mailman/Queue/CommandRunner.py", line 239,
    in _dispose
    res.process()
    File "/export/home/mailman/Mailman/Queue/CommandRunner.py", line 112,
    in process
    stop = self.do_command(cmd, args)
    File "/export/home/mailman/Mailman/Queue/CommandRunner.py", line 139,
    in do_command
    return handler.process(self, args)
    File "/export/home/mailman/Mailman/Commands/cmd_subscribe.py", line
    74, in process
    if (digest is None
    AttributeError: 'NoneType' object has no attribute 'lower'

    Feb 17 14:59:32 2009 (1046) SHUNTING:
    1234848571.543715+462ea839ccdd63f659aab843129562980c886d3c


    Diff on the cmd_subscribe.py new and old:

    # diff Mailman/Commands/cmd_subscribe.py Mailman/Commands/cmd_sub>
    74,75c74
    < if (digest is None
    < and password and password.lower() in ('digest',
    'nodigest')):
    ---
    if digest is None and password.lower() in ('digest', 'nodigest'):

    I think the only possible explanation for the above is you didn't
    restart Mailman.

    Also, even without the patch, if you sent a

    subscribe nodigest address=xxx at example.com

    command to the list-request address, it shouldn't trigger that error
    unless you also had, e.g., a bare 'subscribe' in the subject. In mails
    to -request, both Subject: and body are scanned for commands so if you
    mail to -request with "Subject: subscribe" and body

    subscribe nodigest address=xxx at example.com

    that's two subscribe commands and the plain "subscribe" will trigger
    the bug.

    The web form that you pointed me at should work regardless of this error
    with the cmd_subscribe.py utility?

    That's correct.

    --
    Mark Sapiro <mark at msapiro.net> The highway is for gamblers,
    San Francisco Bay Area, California better use your sense - B. Dylan
  • Alan Rubin at Feb 17, 2009 at 10:14 pm
    Mark,

    Nope, I didn't realise that a restart was required. I just restarted it
    and it seems to work fine now. Thanks for the help, once again.

    Regards,

    Alan Rubin
    Technician Unix
    DCS Midrange Services
    Phone: +61 (08) 8999 5111
    Fax: +61 (08) 8999 7493
    e-Mail: alan.rubin at nt.gov.au

    -----Original Message-----
    From: Mark Sapiro [mailto:mark at msapiro.net]
    Sent: Wednesday, 18 February 2009 1:28 AM
    To: Alan Rubin; Mailman User List
    Subject: RE: [Mailman-Users] subscribing by email

    Alan Rubin wrote:
    I applied the patch, used the request address, and my message still gets
    shunted.

    Did you restart Mailman after applying the patch?

    Feb 17 14:59:32 2009 (1046) Uncaught runner exception: 'NoneType' object
    has no attribute 'lower'
    Feb 17 14:59:32 2009 (1046) Traceback (most recent call last):
    File "/export/home/mailman/Mailman/Queue/Runner.py", line 114, in
    _oneloop
    self._onefile(msg, msgdata)
    File "/export/home/mailman/Mailman/Queue/Runner.py", line 185, in
    _onefile
    keepqueued = self._dispose(mlist, msg, msgdata)
    File "/export/home/mailman/Mailman/Queue/CommandRunner.py", line 239,
    in _dispose
    res.process()
    File "/export/home/mailman/Mailman/Queue/CommandRunner.py", line 112,
    in process
    stop = self.do_command(cmd, args)
    File "/export/home/mailman/Mailman/Queue/CommandRunner.py", line 139,
    in do_command
    return handler.process(self, args)
    File "/export/home/mailman/Mailman/Commands/cmd_subscribe.py", line
    74, in process
    if (digest is None
    AttributeError: 'NoneType' object has no attribute 'lower'

    Feb 17 14:59:32 2009 (1046) SHUNTING:
    1234848571.543715+462ea839ccdd63f659aab843129562980c886d3c


    Diff on the cmd_subscribe.py new and old:

    # diff Mailman/Commands/cmd_subscribe.py Mailman/Commands/cmd_sub>
    74,75c74
    < if (digest is None
    < and password and password.lower() in ('digest',
    'nodigest')):
    ---
    if digest is None and password.lower() in ('digest', 'nodigest'):

    I think the only possible explanation for the above is you didn't
    restart Mailman.

    Also, even without the patch, if you sent a

    subscribe nodigest address=xxx at example.com

    command to the list-request address, it shouldn't trigger that error
    unless you also had, e.g., a bare 'subscribe' in the subject. In mails
    to -request, both Subject: and body are scanned for commands so if you
    mail to -request with "Subject: subscribe" and body

    subscribe nodigest address=xxx at example.com

    that's two subscribe commands and the plain "subscribe" will trigger
    the bug.

    The web form that you pointed me at should work regardless of this error
    with the cmd_subscribe.py utility?

    That's correct.

    --
    Mark Sapiro <mark at msapiro.net> The highway is for gamblers,
    San Francisco Bay Area, California better use your sense - B. Dylan

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
groupmailman-users @
categoriespython
postedFeb 17, '09 at 4:24a
activeFeb 17, '09 at 10:14p
posts6
users3
websitelist.org

People

Translate

site design / logo © 2022 Grokbase