Abhilash Raj pushed to branch master at GNU Mailman / Mailman Core
Commits:
3027df99 by Mark Sapiro at 2018-05-30T19:47:46Z
Added acceptable_alias and require_explicit_destination attributes
to the IMailingList definition.
- - - - -
16ed7f2f by Mark Sapiro at 2018-05-30T20:34:20Z
Expose require_explicit_destination through REST API.
- - - - -
7c008ea5 by Abhilash Raj at 2018-05-30T21:13:32Z
Merge branch 'explicit' into 'master'
Add attributes to IMailingList and expose in REST
Closes #483 and #484
See merge request mailman/mailman!396
- - - - -
5 changed files:
- src/mailman/docs/NEWS.rst
- src/mailman/interfaces/mailinglist.py
- src/mailman/rest/docs/listconf.rst
- src/mailman/rest/listconf.py
- src/mailman/rest/tests/test_listconf.py
Changes:
=====================================
src/mailman/docs/NEWS.rst
=====================================
--- a/src/mailman/docs/NEWS.rst
+++ b/src/mailman/docs/NEWS.rst
@@ -121,6 +121,8 @@ Interfaces
accepts the latter and mirrors the already existing ``.get_by_list_id()``.
* A new template ``list:user:notice:rejected`` has been added for customizing
the bounce message rejection notice.
+* The ``acceptable_alias`` and ``require_explicit_destination`` attributes
+ have been added to the ``IMailingList`` definition. (Closes #483)
Other
-----
@@ -154,6 +156,8 @@ REST
* Expose ``MailingList.respond_to_post_request`` through REST API. (Closes
#420)
* Add a new API ``lists/find`` which returns all the lists related to a
subscriber. It optionally allows filtering based on a role. (See !388)
+* Expose ``MailingList.require_explicit_destination`` through REST API.
+ (Closes #484)
3.1.0 -- "Between The Wheels"
=============================
=====================================
src/mailman/interfaces/mailinglist.py
=====================================
--- a/src/mailman/interfaces/mailinglist.py
+++ b/src/mailman/interfaces/mailinglist.py
@@ -534,6 +534,21 @@ class IMailingList(Interface):
that gets created to accumlate messages for the digest.
""")
+ require_explicit_destination = Attribute(
+ """Flag controlling requiring explisit destination.
+
+ If require_explicit_destination is True, a post must have the list's
+ posting address or an acceptable alias in To: or Cc: or be held for
+ moderator approval.
+ """)
+
+ acceptable_aliases = Attribute(
+ """List of addresses and regexps acceptable as explicit destination.
+
+ This is a list of addresses and regexps matching addresses that are
+ acceptable in To: or Cc: when require_explicit_destination is True.
+ """)
+
administrivia = Attribute(
"""Flag controlling `administrivia` checks.
=====================================
src/mailman/rest/docs/listconf.rst
=====================================
--- a/src/mailman/rest/docs/listconf.rst
+++ b/src/mailman/rest/docs/listconf.rst
@@ -73,6 +73,7 @@ All readable attributes for a list are available on a
sub-resource.
reply_goes_to_list: no_munging
reply_to_address:
request_address: [email protected]
+ require_explicit_destination: True
respond_to_post_requests: True
send_welcome_message: True
subject_prefix: [Ant]
@@ -127,6 +128,7 @@ When using ``PUT``, all writable attributes must be
included.
... collapse_alternatives=False,
... reply_goes_to_list='point_to_list',
... reply_to_address='[email protected]',
+ ... require_explicit_destination=False,
... send_welcome_message=False,
... subject_prefix='[ant]',
... subscription_policy='moderate',
@@ -191,6 +193,8 @@ These values are changed permanently.
reply_goes_to_list: point_to_list
reply_to_address: [email protected]
...
+ require_explicit_destination: False
+ respond_to_post_requests: True
send_welcome_message: False
subject_prefix: [ant]
subscription_policy: moderate
=====================================
src/mailman/rest/listconf.py
=====================================
--- a/src/mailman/rest/listconf.py
+++ b/src/mailman/rest/listconf.py
@@ -180,6 +180,7 @@ ATTRIBUTES = dict(
reply_goes_to_list=GetterSetter(enum_validator(ReplyToMunging)),
reply_to_address=GetterSetter(str),
request_address=GetterSetter(None),
+ require_explicit_destination=GetterSetter(as_boolean),
send_welcome_message=GetterSetter(as_boolean),
subject_prefix=GetterSetter(str),
subscription_policy=GetterSetter(enum_validator(SubscriptionPolicy)),
=====================================
src/mailman/rest/tests/test_listconf.py
=====================================
--- a/src/mailman/rest/tests/test_listconf.py
+++ b/src/mailman/rest/tests/test_listconf.py
@@ -76,6 +76,7 @@ RESOURCE = dict(
posting_pipeline='virgin',
reply_goes_to_list='point_to_list',
reply_to_address='[email protected]',
+ require_explicit_destination=True,
send_welcome_message=False,
subject_prefix='[ant]',
subscription_policy='confirm_then_moderate',
View it on GitLab:
https://gitlab.com/mailman/mailman/compare/73a2d2b9979e23f8bc53bb1f0601c39125ca27db...7c008ea5c5b25b4c52b2bab9a1b5a9b53c8f7beb
--
View it on GitLab:
https://gitlab.com/mailman/mailman/compare/73a2d2b9979e23f8bc53bb1f0601c39125ca27db...7c008ea5c5b25b4c52b2bab9a1b5a9b53c8f7beb
You're receiving this email because of your account on gitlab.com.
_______________________________________________
Mailman-checkins mailing list
[email protected]
Unsubscribe:
https://mail.python.org/mailman/options/mailman-checkins/archive%40jab.org