Hi, list!
I have an announce only Mailman3 list. When I log into the web interface as an admin user, and go to the specified list, and choose Settings, I find the Message Acceptance tab. There, I find the edit field Accept these non-members. But this field is empty, although I know that some people have permissions and are able to post to this list. How can I find the list of these non-members and add more people or delete someone?
I'm running Mailman version 3.3.10, and mailman-web version 4.2.21.
Any hints?
Thanks, Lars
On 3/6/26 02:43, Lars Bjørndal wrote:
Hi, list!
I have an announce only Mailman3 list. When I log into the web interface as an admin user, and go to the specified list, and choose Settings, I find the Message Acceptance tab. There, I find the edit field Accept these non-members. But this field is empty, although I know that some people have permissions and are able to post to this list. How can I find the list of these non-members and add more people or delete someone?
I'm running Mailman version 3.3.10, and mailman-web version 4.2.21.
I don't know what mailman-web version 4.2.21 is. Is this some downstream package?
These are nonmembers whose moderation action is accept or defer. If your Postorius is >= 1.3.6, and the number of nonmembers is manageable you can just view the nonmembers list in Postorius and see their moderation action.
Otherwise a mailman shell interaction like
$ mailman shell -l list.example.com
Welcome to the GNU Mailman shell
Use commit() to commit changes.
Use abort() to discard changes since the last commit.
Exit with ctrl+D does an implicit commit() but exit() does not.
The variable 'm' is the list.example.com mailing list
>>> for nm in m.nonmembers.members:
... if nm.moderation_action in (Action.accept, Action.defer):
... print(f'{nm} {nm.moderation_action}')
...
>>>
will print those nonmembers with Action.accept or Action.defer.
-- Mark Sapiro <mark@msapiro.net> The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan
Thanks! You wrote:
On 3/6/26 02:43, Lars Bjørndal wrote:
Hi, list!
I have an announce only Mailman3 list. When I log into the web interface as an admin user, and go to the specified list, and choose Settings, I find the Message Acceptance tab. There, I find the edit field Accept these non-members. But this field is empty, although I know that some people have permissions and are able to post to this list. How can I find the list of these non-members and add more people or delete someone?
I'm running Mailman version 3.3.10, and mailman-web version 4.2.21.
I don't know what mailman-web version 4.2.21 is. Is this some downstream package?
With pip list, some of the packages is:
Django 4.2.21 django-mailman3 1.3.15 HyperKitty 1.3.12 mailman 3.3.10 mailman-hyperkitty 1.2.1 mailman-web 0.0.9 mailmanclient 3.3.5 postorius 1.3.13
These are nonmembers whose moderation action is accept or defer. If your Postorius is >= 1.3.6, and the number of nonmembers is manageable you can just view the nonmembers list in Postorius and see their moderation action.
You mean from the web interface at example.com/mailman3 > list?
Otherwise a
mailman shellinteraction like$ mailman shell -l list.example.com Welcome to the GNU Mailman shell Use commit() to commit changes. Use abort() to discard changes since the last commit. Exit with ctrl+D does an implicit commit() but exit() does not. The variable 'm' is the list.example.com mailing list >>> for nm in m.nonmembers.members: ... if nm.moderation_action in (Action.accept, Action.defer): ... print(f'{nm} {nm.moderation_action}') ... >>>will print those nonmembers with Action.accept or Action.defer.
What's the difference between Action.accept and Action.defer?
Thanks
On 3/6/26 12:52, Lars Bjørndal wrote:
Thanks! You wrote:
On 3/6/26 02:43, Lars Bjørndal wrote:
Hi, list!
I have an announce only Mailman3 list. When I log into the web interface as an admin user, and go to the specified list, and choose Settings, I find the Message Acceptance tab. There, I find the edit field Accept these non-members. But this field is empty, although I know that some people have permissions and are able to post to this list. How can I find the list of these non-members and add more people or delete someone?
I'm running Mailman version 3.3.10, and mailman-web version 4.2.21.
I don't know what mailman-web version 4.2.21 is. Is this some downstream package?
With
pip list, some of the packages is:Django 4.2.21 django-mailman3 1.3.15 HyperKitty 1.3.12 mailman 3.3.10 mailman-hyperkitty 1.2.1 mailman-web 0.0.9 mailmanclient 3.3.5 postorius 1.3.13
So your mailman-web is 0.0.9 and it's Django that's 4.2.21. I understand.
These are nonmembers whose moderation action is accept or defer. If your Postorius is >= 1.3.6, and the number of nonmembers is manageable you can just view the nonmembers list in Postorius and see their moderation action.
You mean from the web interface at example.com/mailman3 > list?
Yes
Otherwise a
mailman shellinteraction like$ mailman shell -l list.example.com Welcome to the GNU Mailman shell Use commit() to commit changes. Use abort() to discard changes since the last commit. Exit with ctrl+D does an implicit commit() but exit() does not. The variable 'm' is the list.example.com mailing list >>> for nm in m.nonmembers.members: ... if nm.moderation_action in (Action.accept, Action.defer): ... print(f'{nm} {nm.moderation_action}') ... >>>will print those nonmembers with Action.accept or Action.defer.
What's the difference between Action.accept and Action.defer?
Action.accept accepts the message immediately with no further checks. Action.defer passes the membership checks but still goes on to check other things like
mis-addressed email commands messages with implicit destination messages with too many explicit recipients messages that are bigger than a specified maximum messages with no, or empty, Subject headers messages with digest Subject or boilerplate quote messages matching a bounce_matching_header line
-- Mark Sapiro <mark@msapiro.net> The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan
participants (2)
-
Lars Bjørndal -
Mark Sapiro