summaryrefslogtreecommitdiff
path: root/src/mailman/model
diff options
context:
space:
mode:
Diffstat (limited to 'src/mailman/model')
-rw-r--r--src/mailman/model/domain.py9
-rw-r--r--src/mailman/model/mailinglist.py19
-rw-r--r--src/mailman/model/messagestore.py5
-rw-r--r--src/mailman/model/requests.py17
4 files changed, 24 insertions, 26 deletions
diff --git a/src/mailman/model/domain.py b/src/mailman/model/domain.py
index 8290cb755..a9020e816 100644
--- a/src/mailman/model/domain.py
+++ b/src/mailman/model/domain.py
@@ -26,17 +26,16 @@ __all__ = [
]
-from sqlalchemy import Column, Integer, Unicode
-from urlparse import urljoin, urlparse
-from zope.event import notify
-from zope.interface import implementer
-
from mailman.database.model import Model
from mailman.database.transaction import dbconnection
from mailman.interfaces.domain import (
BadDomainSpecificationError, DomainCreatedEvent, DomainCreatingEvent,
DomainDeletedEvent, DomainDeletingEvent, IDomain, IDomainManager)
from mailman.model.mailinglist import MailingList
+from six.moves.urllib_parse import urljoin, urlparse
+from sqlalchemy import Column, Integer, Unicode
+from zope.event import notify
+from zope.interface import implementer
diff --git a/src/mailman/model/mailinglist.py b/src/mailman/model/mailinglist.py
index 761a78b94..c55786fe8 100644
--- a/src/mailman/model/mailinglist.py
+++ b/src/mailman/model/mailinglist.py
@@ -27,16 +27,6 @@ __all__ = [
import os
-from sqlalchemy import (
- Boolean, Column, DateTime, Float, ForeignKey, Integer, Interval,
- LargeBinary, PickleType, Unicode)
-from sqlalchemy.event import listen
-from sqlalchemy.orm import relationship
-from urlparse import urljoin
-from zope.component import getUtility
-from zope.event import notify
-from zope.interface import implementer
-
from mailman.config import config
from mailman.database.model import Model
from mailman.database.transaction import dbconnection
@@ -65,6 +55,15 @@ from mailman.model.mime import ContentFilter
from mailman.model.preferences import Preferences
from mailman.utilities.filesystem import makedirs
from mailman.utilities.string import expand
+from six.moves.urllib_parse import urljoin
+from sqlalchemy import (
+ Boolean, Column, DateTime, Float, ForeignKey, Integer, Interval,
+ LargeBinary, PickleType, Unicode)
+from sqlalchemy.event import listen
+from sqlalchemy.orm import relationship
+from zope.component import getUtility
+from zope.event import notify
+from zope.interface import implementer
SPACE = ' '
diff --git a/src/mailman/model/messagestore.py b/src/mailman/model/messagestore.py
index 19fa8133f..19b87c610 100644
--- a/src/mailman/model/messagestore.py
+++ b/src/mailman/model/messagestore.py
@@ -27,16 +27,15 @@ __all__ = [
import os
import errno
import base64
+import pickle
import hashlib
-import cPickle as pickle
-
-from zope.interface import implementer
from mailman.config import config
from mailman.database.transaction import dbconnection
from mailman.interfaces.messages import IMessageStore
from mailman.model.message import Message
from mailman.utilities.filesystem import makedirs
+from zope.interface import implementer
# It could be very bad if you have already stored files and you change this
diff --git a/src/mailman/model/requests.py b/src/mailman/model/requests.py
index 6b130196d..24575d3c8 100644
--- a/src/mailman/model/requests.py
+++ b/src/mailman/model/requests.py
@@ -24,18 +24,19 @@ __all__ = [
]
-from cPickle import dumps, loads
-from datetime import timedelta
-from sqlalchemy import Column, ForeignKey, Integer, LargeBinary, Unicode
-from sqlalchemy.orm import relationship
-from zope.component import getUtility
-from zope.interface import implementer
+import six
+from datetime import timedelta
from mailman.database.model import Model
from mailman.database.transaction import dbconnection
from mailman.database.types import Enum
from mailman.interfaces.pending import IPendable, IPendings
from mailman.interfaces.requests import IListRequests, RequestType
+from six.moves.cPickle import dumps, loads
+from sqlalchemy import Column, ForeignKey, Integer, LargeBinary, Unicode
+from sqlalchemy.orm import relationship
+from zope.component import getUtility
+from zope.interface import implementer
@@ -50,8 +51,8 @@ class DataPendable(dict):
# such a way that it will be properly reconstituted when unpended.
clean_mapping = {}
for key, value in mapping.items():
- assert isinstance(key, basestring)
- if not isinstance(value, unicode):
+ assert isinstance(key, six.string_types)
+ if not isinstance(value, six.text_type):
key = '_pck_' + key
value = dumps(value).decode('raw-unicode-escape')
clean_mapping[key] = value