Mark Sapiro pushed to branch master at GNU Mailman / Mailman Core


Commits:
329b3728 by Mark Sapiro at 2019-05-06T20:23:45Z
Make *_these_nonmembers SQLAlchemy MutableList type.

- - - - -
3b18f704 by Mark Sapiro at 2019-05-06T20:23:45Z
Merge branch 'import_nonmember' into 'master'

Make *_these_nonmembers SQLAlchemy MutableList type.

Closes #588

See merge request mailman/mailman!505
- - - - -


2 changed files:

- src/mailman/docs/NEWS.rst
- src/mailman/model/mailinglist.py


Changes:

=====================================
src/mailman/docs/NEWS.rst
=====================================
@@ -22,6 +22,11 @@ Bugs
   ``CC`` will now be removed from ``CC`` even if this results in no ``CC``.
   (Closes #575)
 
+Command line
+------------
+* The ``mailman import21`` command now leaves only regexps in the legacy
+  ``*_these_nonmembers`` list attributes.  (Closes #588)
+
 REST
 ----
 * Expose a user's preferred address using REST API. (Closes #240)


=====================================
src/mailman/model/mailinglist.py
=====================================
@@ -54,6 +54,7 @@ from sqlalchemy import (
     LargeBinary, PickleType)
 from sqlalchemy.event import listen
 from sqlalchemy.ext.hybrid import hybrid_property
+from sqlalchemy.ext.mutable import MutableList
 from sqlalchemy.orm import relationship
 from sqlalchemy.orm.exc import NoResultFound
 from zope.component import getUtility
@@ -98,7 +99,7 @@ class MailingList(Model):
     # Attributes which are directly modifiable via the web u/i.  The more
     # complicated attributes are currently stored as pickles, though that
     # will change as the schema and implementation is developed.
-    accept_these_nonmembers = Column(PickleType)       # XXX
+    accept_these_nonmembers = Column(MutableList.as_mutable(PickleType))  # XXX
     admin_immed_notify = Column(Boolean)
     admin_notify_mchanges = Column(Boolean)
     administrivia = Column(Boolean)
@@ -141,14 +142,14 @@ class MailingList(Model):
     digest_send_periodic = Column(Boolean)
     digest_size_threshold = Column(Float)
     digest_volume_frequency = Column(Enum(DigestFrequency))
-    discard_these_nonmembers = Column(PickleType)
+    discard_these_nonmembers = Column(MutableList.as_mutable(PickleType))
     emergency = Column(Boolean)
     encode_ascii_prefixes = Column(Boolean)
     first_strip_reply_to = Column(Boolean)
     forward_auto_discards = Column(Boolean)
     gateway_to_mail = Column(Boolean)
     gateway_to_news = Column(Boolean)
-    hold_these_nonmembers = Column(PickleType)
+    hold_these_nonmembers = Column(MutableList.as_mutable(PickleType))
     info = Column(SAUnicode)
     linked_newsgroup = Column(SAUnicode)
     max_days_to_hold = Column(Integer)
@@ -169,7 +170,7 @@ class MailingList(Model):
     posting_pipeline = Column(SAUnicode)
     _preferred_language = Column('preferred_language', SAUnicode)
     display_name = Column(SAUnicode)
-    reject_these_nonmembers = Column(PickleType)
+    reject_these_nonmembers = Column(MutableList.as_mutable(PickleType))
     reply_goes_to_list = Column(Enum(ReplyToMunging))
     reply_to_address = Column(SAUnicode)
     require_explicit_destination = Column(Boolean)



View it on GitLab: 
https://gitlab.com/mailman/mailman/compare/06eae890432fb53d44ca81979f5e43071d1c4c0e...3b18f7046edf0ef5b58f74301c0c1ef8600a0e99

-- 
View it on GitLab: 
https://gitlab.com/mailman/mailman/compare/06eae890432fb53d44ca81979f5e43071d1c4c0e...3b18f7046edf0ef5b58f74301c0c1ef8600a0e99
You're receiving this email because of your account on gitlab.com.


_______________________________________________
Mailman-checkins mailing list
Mailman-checkins@python.org
Unsubscribe: 
https://mail.python.org/mailman/options/mailman-checkins/archive%40jab.org

Reply via email to