------------------------------------------------------------
revno: 6661
committer: Barry Warsaw <[email protected]>
branch nick: 3.0
timestamp: Sun 2009-01-04 00:22:08 -0500
message:
  Remove the mailman.interface magic.  Use the more specific interface imports.
modified:
  mailman/Defaults.py
  mailman/app/commands.py
  mailman/app/lifecycle.py
  mailman/app/membership.py
  mailman/app/moderator.py
  mailman/app/registrar.py
  mailman/chains/base.py
  mailman/chains/builtin.py
  mailman/chains/headers.py
  mailman/chains/hold.py
  mailman/commands/echo.py
  mailman/commands/end.py
  mailman/commands/join.py
  mailman/constants.py
  mailman/core/chains.py
  mailman/core/initialize.py
  mailman/core/pipelines.py
  mailman/core/rules.py
  mailman/core/styles.py
  mailman/database/address.py
  mailman/database/listmanager.py
  mailman/database/mailinglist.py
  mailman/database/member.py
  mailman/database/message.py
  mailman/database/messagestore.py
  mailman/database/pending.py
  mailman/database/preferences.py
  mailman/database/requests.py
  mailman/database/roster.py
  mailman/database/user.py
  mailman/database/usermanager.py
  mailman/docs/addresses.txt
  mailman/docs/chains.txt
  mailman/docs/languages.txt
  mailman/docs/lifecycle.txt
  mailman/docs/listmanager.txt
  mailman/docs/membership.txt
  mailman/docs/pending.txt
  mailman/docs/registration.txt
  mailman/docs/requests.txt
  mailman/docs/styles.txt
  mailman/docs/usermanager.txt
  mailman/docs/users.txt
  mailman/i18n.py
  mailman/interfaces/__init__.py
  mailman/languages.py
  mailman/pipeline/__init__.py
  mailman/pipeline/acknowledge.py
  mailman/pipeline/after_delivery.py
  mailman/pipeline/avoid_duplicates.py
  mailman/pipeline/calculate_recipients.py
  mailman/pipeline/cleanse.py
  mailman/pipeline/cleanse_dkim.py
  mailman/pipeline/cook_headers.py
  mailman/pipeline/decorate.py
  mailman/pipeline/docs/acknowledge.txt
  mailman/pipeline/docs/avoid-duplicates.txt
  mailman/pipeline/docs/calc-recips.txt
  mailman/pipeline/docs/cook-headers.txt
  mailman/pipeline/docs/file-recips.txt
  mailman/pipeline/docs/reply-to.txt
  mailman/pipeline/docs/to-outgoing.txt
  mailman/pipeline/file_recipients.py
  mailman/pipeline/mime_delete.py
  mailman/pipeline/replybot.py
  mailman/pipeline/scrubber.py
  mailman/pipeline/smtp_direct.py
  mailman/pipeline/tagger.py
  mailman/pipeline/to_archive.py
  mailman/pipeline/to_digest.py
  mailman/pipeline/to_outgoing.py
  mailman/pipeline/to_usenet.py
  mailman/queue/command.py
  mailman/queue/docs/incoming.txt
  mailman/queue/docs/outgoing.txt
  mailman/rules/__init__.py
  mailman/rules/administrivia.py
  mailman/rules/any.py
  mailman/rules/approved.py
  mailman/rules/docs/moderation.txt
  mailman/rules/docs/rules.txt
  mailman/rules/emergency.py
  mailman/rules/implicit_dest.py
  mailman/rules/loop.py
  mailman/rules/max_recipients.py
  mailman/rules/max_size.py
  mailman/rules/moderation.py
  mailman/rules/news_moderation.py
  mailman/rules/no_subject.py
  mailman/rules/suspicious.py
  mailman/rules/truth.py

=== modified file 'mailman/Defaults.py'
--- a/mailman/Defaults.py       2009-01-03 10:13:41 +0000
+++ b/mailman/Defaults.py       2009-01-04 05:22:08 +0000
@@ -19,7 +19,7 @@
 
 from datetime import timedelta
 
-from mailman.interfaces import ReplyToMunging
+from mailman.interfaces.mailinglist import ReplyToMunging
 
 
 

=== modified file 'mailman/app/commands.py'
--- a/mailman/app/commands.py   2009-01-01 22:16:51 +0000
+++ b/mailman/app/commands.py   2009-01-04 05:22:08 +0000
@@ -25,7 +25,7 @@
 
 from mailman.config import config
 from mailman.core.plugins import get_plugins
-from mailman.interfaces import IEmailCommand
+from mailman.interfaces.command import IEmailCommand
 
 
 

=== modified file 'mailman/app/lifecycle.py'
--- a/mailman/app/lifecycle.py  2009-01-03 10:13:41 +0000
+++ b/mailman/app/lifecycle.py  2009-01-04 05:22:08 +0000
@@ -34,7 +34,7 @@
 from mailman.config import config
 from mailman.core import errors
 from mailman.core.styles import style_manager
-from mailman.interfaces import MemberRole
+from mailman.interfaces.member import MemberRole
 
 
 log = logging.getLogger('mailman.error')

=== modified file 'mailman/app/membership.py'
--- a/mailman/app/membership.py 2009-01-01 22:16:51 +0000
+++ b/mailman/app/membership.py 2009-01-04 05:22:08 +0000
@@ -32,7 +32,8 @@
 from mailman.app.notifications import send_goodbye_message
 from mailman.config import config
 from mailman.core import errors
-from mailman.interfaces import AlreadySubscribedError, DeliveryMode, MemberRole
+from mailman.interfaces.member import (
+    AlreadySubscribedError, DeliveryMode, MemberRole)
 
 _ = i18n._
 

=== modified file 'mailman/app/moderator.py'
--- a/mailman/app/moderator.py  2009-01-01 22:16:51 +0000
+++ b/mailman/app/moderator.py  2009-01-04 05:22:08 +0000
@@ -17,6 +17,7 @@
 
 """Application support for moderators."""
 
+__metaclass__ = type
 __all__ = [
     'handle_message',
     'handle_subscription',
@@ -39,8 +40,9 @@
     send_admin_subscription_notice, send_welcome_message)
 from mailman.config import config
 from mailman.core import errors
-from mailman.interfaces import Action, DeliveryMode, RequestType
-from mailman.interfaces.member import AlreadySubscribedError
+from mailman.interfaces import Action
+from mailman.interfaces.member import AlreadySubscribedError, DeliveryMode
+from mailman.interfaces.requests import RequestType
 
 _ = i18n._
 

=== modified file 'mailman/app/registrar.py'
--- a/mailman/app/registrar.py  2009-01-01 22:16:51 +0000
+++ b/mailman/app/registrar.py  2009-01-04 05:22:08 +0000
@@ -33,8 +33,10 @@
 from mailman.Utils import ValidateEmail
 from mailman.config import config
 from mailman.i18n import _
-from mailman.interfaces import IDomain, IPendable, IRegistrar
+from mailman.interfaces.domain import IDomain
 from mailman.interfaces.member import MemberRole
+from mailman.interfaces.pending import IPendable
+from mailman.interfaces.registrar import IRegistrar
 
 
 

=== modified file 'mailman/chains/base.py'
--- a/mailman/chains/base.py    2009-01-01 22:16:51 +0000
+++ b/mailman/chains/base.py    2009-01-04 05:22:08 +0000
@@ -28,7 +28,7 @@
 from zope.interface import implements
 
 from mailman.config import config
-from mailman.interfaces import (
+from mailman.interfaces.chain import (
     IChain, IChainIterator, IChainLink, IMutableChain, LinkAction)
 
 

=== modified file 'mailman/chains/builtin.py'
--- a/mailman/chains/builtin.py 2009-01-01 22:16:51 +0000
+++ b/mailman/chains/builtin.py 2009-01-04 05:22:08 +0000
@@ -17,8 +17,10 @@
 
 """The default built-in starting chain."""
 
-__all__ = ['BuiltInChain']
 __metaclass__ = type
+__all__ = [
+    'BuiltInChain',
+    ]
 
 
 import logging
@@ -28,7 +30,7 @@
 from mailman.chains.base import Link
 from mailman.config import config
 from mailman.i18n import _
-from mailman.interfaces import IChain, LinkAction
+from mailman.interfaces.chain import IChain, LinkAction
 
 
 log = logging.getLogger('mailman.vette')

=== modified file 'mailman/chains/headers.py'
--- a/mailman/chains/headers.py 2009-01-01 22:16:51 +0000
+++ b/mailman/chains/headers.py 2009-01-04 05:22:08 +0000
@@ -17,8 +17,10 @@
 
 """The header-matching chain."""
 
-__all__ = ['HeaderMatchChain']
 __metaclass__ = type
+__all__ = [
+    'HeaderMatchChain',
+    ]
 
 
 import re
@@ -27,10 +29,11 @@
 
 from zope.interface import implements
 
-from mailman.interfaces import IChainIterator, IRule, LinkAction
 from mailman.chains.base import Chain, Link
+from mailman.config import config
 from mailman.i18n import _
-from mailman.config import config
+from mailman.interfaces.chain import IChainIterator, LinkAction
+from mailman.interfaces.rules import IRule
 
 
 log = logging.getLogger('mailman.vette')

=== modified file 'mailman/chains/hold.py'
--- a/mailman/chains/hold.py    2009-01-01 22:16:51 +0000
+++ b/mailman/chains/hold.py    2009-01-04 05:22:08 +0000
@@ -37,7 +37,7 @@
 from mailman.app.replybot import autorespond_to_sender, can_acknowledge
 from mailman.chains.base import TerminalChainBase
 from mailman.config import config
-from mailman.interfaces import IPendable
+from mailman.interfaces.pending import IPendable
 
 
 log = logging.getLogger('mailman.vette')

=== modified file 'mailman/commands/echo.py'
--- a/mailman/commands/echo.py  2009-01-01 22:16:51 +0000
+++ b/mailman/commands/echo.py  2009-01-04 05:22:08 +0000
@@ -26,7 +26,7 @@
 from zope.interface import implements
 
 from mailman.i18n import _
-from mailman.interfaces import ContinueProcessing, IEmailCommand
+from mailman.interfaces.command import ContinueProcessing, IEmailCommand
 
 
 SPACE = ' '

=== modified file 'mailman/commands/end.py'
--- a/mailman/commands/end.py   2009-01-01 22:16:51 +0000
+++ b/mailman/commands/end.py   2009-01-04 05:22:08 +0000
@@ -27,7 +27,7 @@
 from zope.interface import implements
 
 from mailman.i18n import _
-from mailman.interfaces import ContinueProcessing, IEmailCommand
+from mailman.interfaces.command import ContinueProcessing, IEmailCommand
 
 
 

=== modified file 'mailman/commands/join.py'
--- a/mailman/commands/join.py  2009-01-01 22:16:51 +0000
+++ b/mailman/commands/join.py  2009-01-04 05:22:08 +0000
@@ -31,8 +31,8 @@
 from mailman.Utils import MakeRandomPassword
 from mailman.config import config
 from mailman.i18n import _
-from mailman.interfaces import (
-    ContinueProcessing, DeliveryMode, IEmailCommand)
+from mailman.interfaces.command import ContinueProcessing, IEmailCommand
+from mailman.interfaces.member import DeliveryMode
 from mailman.interfaces.registrar import IRegistrar
 
 

=== modified file 'mailman/constants.py'
--- a/mailman/constants.py      2009-01-01 22:16:51 +0000
+++ b/mailman/constants.py      2009-01-04 05:22:08 +0000
@@ -22,9 +22,11 @@
     ]
 
 
-from mailman.interfaces import DeliveryMode, DeliveryStatus, IPreferences
 from zope.interface import implements
 
+from mailman.interfaces.member import DeliveryMode, DeliveryStatus
+from mailman.interfaces.preferences import IPreferences
+
 
 
 class SystemDefaultPreferences(object):

=== modified file 'mailman/core/chains.py'
--- a/mailman/core/chains.py    2009-01-01 22:16:51 +0000
+++ b/mailman/core/chains.py    2009-01-04 05:22:08 +0000
@@ -31,7 +31,7 @@
 from mailman.chains.hold import HoldChain
 from mailman.chains.reject import RejectChain
 from mailman.config import config
-from mailman.interfaces import LinkAction
+from mailman.interfaces.chain import LinkAction
 
 
 

=== modified file 'mailman/core/initialize.py'
--- a/mailman/core/initialize.py        2009-01-03 10:13:41 +0000
+++ b/mailman/core/initialize.py        2009-01-04 05:22:08 +0000
@@ -33,7 +33,7 @@
 import mailman.core.logging
 
 from mailman.core.plugins import get_plugin
-from mailman.interfaces import IDatabase
+from mailman.interfaces.database import IDatabase
 
 
 

=== modified file 'mailman/core/pipelines.py'
--- a/mailman/core/pipelines.py 2009-01-01 22:16:51 +0000
+++ b/mailman/core/pipelines.py 2009-01-04 05:22:08 +0000
@@ -30,7 +30,8 @@
 from mailman.config import config
 from mailman.core.plugins import get_plugins
 from mailman.i18n import _
-from mailman.interfaces import IHandler, IPipeline
+from mailman.interfaces.handler import IHandler
+from mailman.interfaces.pipeline import IPipeline
 
 
 

=== modified file 'mailman/core/rules.py'
--- a/mailman/core/rules.py     2009-01-01 22:16:51 +0000
+++ b/mailman/core/rules.py     2009-01-04 05:22:08 +0000
@@ -28,7 +28,7 @@
 
 from mailman.config import config
 from mailman.core.plugins import get_plugins
-from mailman.interfaces import IRule
+from mailman.interfaces.rules import IRule
 
 
 

=== modified file 'mailman/core/styles.py'
--- a/mailman/core/styles.py    2009-01-03 10:13:41 +0000
+++ b/mailman/core/styles.py    2009-01-04 05:22:08 +0000
@@ -36,9 +36,10 @@
 from mailman.config import config
 from mailman.core.plugins import get_plugins
 from mailman.i18n import _
-from mailman.interfaces import (
-    Action, DuplicateStyleError, IStyle, IStyleManager, NewsModeration,
-    Personalization)
+from mailman.interfaces import Action, NewsModeration
+from mailman.interfaces.mailinglist import Personalization
+from mailman.interfaces.styles import (
+    DuplicateStyleError, IStyle, IStyleManager)
 
 
 

=== modified file 'mailman/database/address.py'
--- a/mailman/database/address.py       2009-01-01 22:16:51 +0000
+++ b/mailman/database/address.py       2009-01-04 05:22:08 +0000
@@ -29,7 +29,8 @@
 from mailman.database.member import Member
 from mailman.database.model import Model
 from mailman.database.preferences import Preferences
-from mailman.interfaces import AlreadySubscribedError, IAddress
+from mailman.interfaces.member import AlreadySubscribedError
+from mailman.interfaces.address import IAddress
 
 
 

=== modified file 'mailman/database/listmanager.py'
--- a/mailman/database/listmanager.py   2009-01-01 22:16:51 +0000
+++ b/mailman/database/listmanager.py   2009-01-04 05:22:08 +0000
@@ -24,7 +24,7 @@
 from mailman.Utils import split_listname, fqdn_listname
 from mailman.config import config
 from mailman.database.mailinglist import MailingList
-from mailman.interfaces import IListManager, ListAlreadyExistsError
+from mailman.interfaces.listmanager import IListManager, ListAlreadyExistsError
 
 
 

=== modified file 'mailman/database/mailinglist.py'
--- a/mailman/database/mailinglist.py   2009-01-03 10:13:41 +0000
+++ b/mailman/database/mailinglist.py   2009-01-04 05:22:08 +0000
@@ -28,7 +28,7 @@
 from mailman.database import roster
 from mailman.database.model import Model
 from mailman.database.types import Enum
-from mailman.interfaces import IMailingList, Personalization
+from mailman.interfaces.mailinglist import IMailingList, Personalization
 
 
 SPACE = ' '

=== modified file 'mailman/database/member.py'
--- a/mailman/database/member.py        2009-01-01 22:16:51 +0000
+++ b/mailman/database/member.py        2009-01-04 05:22:08 +0000
@@ -23,7 +23,8 @@
 from mailman.constants import SystemDefaultPreferences
 from mailman.database.model import Model
 from mailman.database.types import Enum
-from mailman.interfaces import IMember, IPreferences
+from mailman.interfaces.member import IMember
+from mailman.interfaces.preferences import IPreferences
 
 
 

=== modified file 'mailman/database/message.py'
--- a/mailman/database/message.py       2009-01-01 22:16:51 +0000
+++ b/mailman/database/message.py       2009-01-04 05:22:08 +0000
@@ -20,7 +20,7 @@
 
 from mailman.config import config
 from mailman.database.model import Model
-from mailman.interfaces import IMessage
+from mailman.interfaces.messages import IMessage
 
 
 

=== modified file 'mailman/database/messagestore.py'
--- a/mailman/database/messagestore.py  2009-01-01 22:16:51 +0000
+++ b/mailman/database/messagestore.py  2009-01-04 05:22:08 +0000
@@ -31,7 +31,7 @@
 from mailman import Utils
 from mailman.config import config
 from mailman.database.message import Message
-from mailman.interfaces import IMessageStore
+from mailman.interfaces.messages import IMessageStore
 
 # It could be very bad if you have already stored files and you change this
 # value.  We'd need a script to reshuffle and resplit.

=== modified file 'mailman/database/pending.py'
--- a/mailman/database/pending.py       2009-01-01 22:16:51 +0000
+++ b/mailman/database/pending.py       2009-01-04 05:22:08 +0000
@@ -30,7 +30,7 @@
 from mailman import Defaults
 from mailman.config import config
 from mailman.database.model import Model
-from mailman.interfaces import (
+from mailman.interfaces.pending import (
     IPendable, IPended, IPendedKeyValue, IPendings)
 
 

=== modified file 'mailman/database/preferences.py'
--- a/mailman/database/preferences.py   2009-01-01 22:16:51 +0000
+++ b/mailman/database/preferences.py   2009-01-04 05:22:08 +0000
@@ -20,7 +20,7 @@
 
 from mailman.database.model import Model
 from mailman.database.types import Enum
-from mailman.interfaces import IPreferences
+from mailman.interfaces.preferences import IPreferences
 
 
 

=== modified file 'mailman/database/requests.py'
--- a/mailman/database/requests.py      2009-01-01 22:16:51 +0000
+++ b/mailman/database/requests.py      2009-01-04 05:22:08 +0000
@@ -17,6 +17,12 @@
 
 """Implementations of the IRequests and IListRequests interfaces."""
 
+__metaclass__ = type
+__all__ = [
+    'Requests',
+    ]
+
+
 from datetime import timedelta
 from storm.locals import *
 from zope.interface import implements
@@ -24,13 +30,8 @@
 from mailman.config import config
 from mailman.database.model import Model
 from mailman.database.types import Enum
-from mailman.interfaces import IListRequests, IPendable, IRequests, RequestType
-
-
-__metaclass__ = type
-__all__ = [
-    'Requests',
-    ]
+from mailman.interfaces.pending import IPendable
+from mailman.interfaces.requests import IListRequests, IRequests, RequestType
 
 
 

=== modified file 'mailman/database/roster.py'
--- a/mailman/database/roster.py        2009-01-01 22:16:51 +0000
+++ b/mailman/database/roster.py        2009-01-04 05:22:08 +0000
@@ -42,7 +42,8 @@
 from mailman.constants import SystemDefaultPreferences
 from mailman.database.address import Address
 from mailman.database.member import Member
-from mailman.interfaces import DeliveryMode, IRoster, MemberRole
+from mailman.interfaces.member import DeliveryMode, MemberRole
+from mailman.interfaces.roster import IRoster
 
 
 

=== modified file 'mailman/database/user.py'
--- a/mailman/database/user.py  2009-01-01 22:16:51 +0000
+++ b/mailman/database/user.py  2009-01-04 05:22:08 +0000
@@ -24,8 +24,9 @@
 from mailman.database.address import Address
 from mailman.database.preferences import Preferences
 from mailman.database.roster import Memberships
-from mailman.interfaces import (
-    AddressAlreadyLinkedError, AddressNotLinkedError, IUser)
+from mailman.interfaces.address import (
+    AddressAlreadyLinkedError, AddressNotLinkedError)
+from mailman.interfaces.user import IUser
 
 
 

=== modified file 'mailman/database/usermanager.py'
--- a/mailman/database/usermanager.py   2009-01-01 22:16:51 +0000
+++ b/mailman/database/usermanager.py   2009-01-04 05:22:08 +0000
@@ -25,7 +25,8 @@
 from mailman.database.address import Address
 from mailman.database.preferences import Preferences
 from mailman.database.user import User
-from mailman.interfaces import ExistingAddressError, IUserManager
+from mailman.interfaces.address import ExistingAddressError
+from mailman.interfaces.usermanager import IUserManager
 
 
 

=== modified file 'mailman/docs/addresses.txt'
--- a/mailman/docs/addresses.txt        2008-12-23 04:26:58 +0000
+++ b/mailman/docs/addresses.txt        2009-01-04 05:22:08 +0000
@@ -149,7 +149,7 @@
     >>> address_5 = usermgr.create_address(
     ...     u'[email protected]', u'Elly Person')
     >>> mlist = config.db.list_manager.create(u'[email protected]')
-    >>> from mailman.interfaces import MemberRole
+    >>> from mailman.interfaces.member import MemberRole
     >>> address_5.subscribe(mlist, MemberRole.owner)
     <Member: Elly Person <[email protected]> on
              [email protected] as MemberRole.owner>

=== modified file 'mailman/docs/chains.txt'
--- a/mailman/docs/chains.txt   2009-01-03 10:13:41 +0000
+++ b/mailman/docs/chains.txt   2009-01-04 05:22:08 +0000
@@ -15,7 +15,7 @@
 The Discard chain simply throws the message away.
 
     >>> from zope.interface.verify import verifyObject
-    >>> from mailman.interfaces import IChain
+    >>> from mailman.interfaces.chain import IChain
     >>> chain = config.chains['discard']
     >>> verifyObject(IChain, chain)
     True

=== modified file 'mailman/docs/languages.txt'
--- a/mailman/docs/languages.txt        2008-02-27 06:26:18 +0000
+++ b/mailman/docs/languages.txt        2009-01-04 05:22:08 +0000
@@ -6,7 +6,7 @@
 running Mailman instance.
 
     >>> from zope.interface.verify import verifyObject
-    >>> from mailman.interfaces import ILanguageManager
+    >>> from mailman.interfaces.languages import ILanguageManager
     >>> from mailman.languages import LanguageManager
     >>> mgr = LanguageManager()
     >>> verifyObject(ILanguageManager, mgr)

=== modified file 'mailman/docs/lifecycle.txt'
--- a/mailman/docs/lifecycle.txt        2009-01-01 22:07:06 +0000
+++ b/mailman/docs/lifecycle.txt        2009-01-04 05:22:08 +0000
@@ -45,7 +45,7 @@
 Start by registering a test style.
 
     >>> from zope.interface import implements
-    >>> from mailman.interfaces import IStyle
+    >>> from mailman.interfaces.styles import IStyle
     >>> class TestStyle(object):
     ...     implements(IStyle)
     ...     name = 'test'

=== modified file 'mailman/docs/listmanager.txt'
--- a/mailman/docs/listmanager.txt      2008-12-23 04:26:58 +0000
+++ b/mailman/docs/listmanager.txt      2009-01-04 05:22:08 +0000
@@ -6,7 +6,7 @@
 configuration variable MANAGERS_INIT_FUNCTION.  The instance is accessible
 on the global config object.
 
-    >>> from mailman.interfaces import IListManager
+    >>> from mailman.interfaces.listmanager import IListManager
     >>> listmgr = config.db.list_manager
     >>> IListManager.providedBy(listmgr)
     True
@@ -17,7 +17,7 @@
 
 Creating the list returns the newly created IMailList object.
 
-    >>> from mailman.interfaces import IMailingList
+    >>> from mailman.interfaces.mailinglist import IMailingList
     >>> mlist = listmgr.create(u'[email protected]')
     >>> IMailingList.providedBy(mlist)
     True

=== modified file 'mailman/docs/membership.txt'
--- a/mailman/docs/membership.txt       2008-12-23 04:26:58 +0000
+++ b/mailman/docs/membership.txt       2009-01-04 05:22:08 +0000
@@ -72,7 +72,7 @@
 We can add Anne as an owner of the mailing list, by creating a member role for
 her.
 
-    >>> from mailman.interfaces import MemberRole
+    >>> from mailman.interfaces.member import MemberRole
     >>> address_1 = list(user_1.addresses)[0]
     >>> address_1.address
     u'[email protected]'

=== modified file 'mailman/docs/pending.txt'
--- a/mailman/docs/pending.txt  2008-12-23 04:26:58 +0000
+++ b/mailman/docs/pending.txt  2009-01-04 05:22:08 +0000
@@ -12,7 +12,7 @@
 In order to pend an event, you first need a pending database, which is
 available by adapting the list manager.
 
-    >>> from mailman.interfaces import IPendings
+    >>> from mailman.interfaces.pending import IPendings
     >>> pendingdb = config.db.pendings
     >>> verifyObject(IPendings, pendingdb)
     True
@@ -20,7 +20,7 @@
 The pending database can add any IPendable to the database, returning a token
 that can be used in urls and such.
 
-    >>> from mailman.interfaces import IPendable
+    >>> from mailman.interfaces.pending import IPendable
     >>> class SimplePendable(dict):
     ...     implements(IPendable)
     >>> subscription = SimplePendable(

=== modified file 'mailman/docs/registration.txt'
--- a/mailman/docs/registration.txt     2008-12-29 00:14:04 +0000
+++ b/mailman/docs/registration.txt     2009-01-04 05:22:08 +0000
@@ -8,7 +8,7 @@
 will send them any list traffic.
 
     >>> from mailman.app.registrar import Registrar
-    >>> from mailman.interfaces import IRegistrar
+    >>> from mailman.interfaces.registrar import IRegistrar
 
 The IUserManager manages users, but it does so at a fairly low level.
 Specifically, it does not handle verifications, email address syntax validity
@@ -319,7 +319,7 @@
 that doesn't match a registration even, you will get None.  However, the
 pending even matched with that token will still be removed.
 
-    >>> from mailman.interfaces import IPendable
+    >>> from mailman.interfaces.pending import IPendable
     >>> from zope.interface import implements
 
     >>> class SimplePendable(dict):

=== modified file 'mailman/docs/requests.txt'
--- a/mailman/docs/requests.txt 2009-01-03 10:13:41 +0000
+++ b/mailman/docs/requests.txt 2009-01-04 05:22:08 +0000
@@ -34,7 +34,7 @@
 A set of requests are always related to a particular mailing list, so given a
 mailing list you need to get its requests object.
 
-    >>> from mailman.interfaces import IListRequests, IRequests
+    >>> from mailman.interfaces.requests import IListRequests, IRequests
     >>> from zope.interface.verify import verifyObject
     >>> verifyObject(IRequests, config.db.requests)
     True
@@ -61,7 +61,7 @@
 of associated data.  The request database assigns no semantics to the held
 data, except for the request type.  Here we hold some simple bits of data.
 
-    >>> from mailman.interfaces import RequestType
+    >>> from mailman.interfaces.requests import RequestType
     >>> id_1 = requests.hold_request(RequestType.held_message,   u'hold_1')
     >>> id_2 = requests.hold_request(RequestType.subscription,   u'hold_2')
     >>> id_3 = requests.hold_request(RequestType.unsubscription, u'hold_3')
@@ -402,7 +402,7 @@
 name, their password (possibly hashed), what kind of delivery option they are
 chosing and their preferred language.
 
-    >>> from mailman.interfaces import DeliveryMode
+    >>> from mailman.interfaces.member import DeliveryMode
     >>> mlist.admin_immed_notify = False
     >>> id_3 = moderator.hold_subscription(mlist,
     ...     u'[email protected]', u'Ben Person',
@@ -674,7 +674,7 @@
 unsubscription holds can send the list's moderators an immediate notification.
 
     >>> mlist.admin_immed_notify = False
-    >>> from mailman.interfaces import MemberRole
+    >>> from mailman.interfaces.member import MemberRole
     >>> user_1 = config.db.user_manager.create_user(u'[email protected]')
     >>> address_1 = list(user_1.addresses)[0]
     >>> address_1.subscribe(mlist, MemberRole.member)

=== modified file 'mailman/docs/styles.txt'
--- a/mailman/docs/styles.txt   2009-01-01 22:07:06 +0000
+++ b/mailman/docs/styles.txt   2009-01-04 05:22:08 +0000
@@ -61,7 +61,7 @@
 New styles must implement the IStyle interface.
 
     >>> from zope.interface import implements
-    >>> from mailman.interfaces import IStyle
+    >>> from mailman.interfaces.styles import IStyle
     >>> class TestStyle(object):
     ...     implements(IStyle)
     ...     name = 'test'

=== modified file 'mailman/docs/usermanager.txt'
--- a/mailman/docs/usermanager.txt      2008-12-23 04:26:58 +0000
+++ b/mailman/docs/usermanager.txt      2009-01-04 05:22:08 +0000
@@ -6,7 +6,7 @@
 variable MANAGERS_INIT_FUNCTION.  The instance is accessible on the global
 config object.
 
-    >>> from mailman.interfaces import IUserManager
+    >>> from mailman.interfaces.usermanager import IUserManager
     >>> from zope.interface.verify import verifyObject
     >>> usermgr = config.db.user_manager
     >>> verifyObject(IUserManager, usermgr)
@@ -21,7 +21,7 @@
 time.  This user will have an empty string as their real name, but will not
 have a password.
 
-    >>> from mailman.interfaces import IUser
+    >>> from mailman.interfaces.user import IUser
     >>> user = usermgr.create_user()
     >>> verifyObject(IUser, user)
     True

=== modified file 'mailman/docs/users.txt'
--- a/mailman/docs/users.txt    2008-12-23 04:26:58 +0000
+++ b/mailman/docs/users.txt    2009-01-04 05:22:08 +0000
@@ -122,7 +122,7 @@
 
 Users have preferences, but these preferences have no default settings.
 
-    >>> from mailman.interfaces import IPreferences
+    >>> from mailman.interfaces.preferences import IPreferences
     >>> show_prefs(user_1.preferences)
     acknowledge_posts    : None
     preferred_language   : None
@@ -164,7 +164,7 @@
     >>> mlist_1 = create_list(u'[email protected]')
     >>> mlist_2 = create_list(u'[email protected]')
     >>> mlist_3 = create_list(u'[email protected]')
-    >>> from mailman.interfaces import MemberRole
+    >>> from mailman.interfaces.member import MemberRole
 
     >>> com.subscribe(mlist_1, MemberRole.member)
     <Member: Zoe Person <[email protected]> on [email protected] as
@@ -178,7 +178,7 @@
         MemberRole.moderator>
 
     >>> memberships = user_1.memberships
-    >>> from mailman.interfaces import IRoster
+    >>> from mailman.interfaces.roster import IRoster
     >>> from zope.interface.verify import verifyObject
     >>> verifyObject(IRoster, memberships)
     True

=== modified file 'mailman/i18n.py'
--- a/mailman/i18n.py   2009-01-01 22:16:51 +0000
+++ b/mailman/i18n.py   2009-01-04 05:22:08 +0000
@@ -15,6 +15,18 @@
 # You should have received a copy of the GNU General Public License along with
 # GNU Mailman.  If not, see <http://www.gnu.org/licenses/>.
 
+"""Internationalization support."""
+
+__metaclass__ = type
+__all__ = [
+    '_',
+    'get_translation',
+    'set_language',
+    'set_translation',
+    'using_language',
+    ]
+
+
 import os
 import sys
 import time

=== modified file 'mailman/interfaces/__init__.py'
--- a/mailman/interfaces/__init__.py    2009-01-01 22:16:51 +0000
+++ b/mailman/interfaces/__init__.py    2009-01-04 05:22:08 +0000
@@ -15,48 +15,14 @@
 # You should have received a copy of the GNU General Public License along with
 # GNU Mailman.  If not, see <http://www.gnu.org/licenses/>.
 
-import os
-import sys
-
-from munepy import Enum
-from zope.interface import implementedBy
-from zope.interface.interfaces import IInterface
-
+__metaclass__ = type
 __all__ = [
     'Action',
     'NewsModeration',
     ]
 
 
-
-def _populate():
-    import mailman.interfaces
-    iface_mod = sys.modules['mailman.interfaces']
-    # Expose interfaces defined in sub-modules into the top-level package
-    for filename in os.listdir(os.path.dirname(iface_mod.__file__)):
-        base, ext = os.path.splitext(filename)
-        if ext <> '.py':
-            continue
-        modname = 'mailman.interfaces.' + base
-        __import__(modname)
-        module = sys.modules[modname]
-        for name in dir(module):
-            obj = getattr(module, name)
-            try:
-                is_enum = issubclass(obj, Enum)
-            except TypeError:
-                is_enum = False
-            is_interface = IInterface.providedBy(obj)
-            try:
-                is_exception = issubclass(obj, Exception)
-            except TypeError:
-                is_exception = False
-            if is_interface or is_exception or is_enum:
-                setattr(iface_mod, name, obj)
-                __all__.append(name)
-
-
-_populate()
+from munepy import Enum
 
 
 

=== modified file 'mailman/languages.py'
--- a/mailman/languages.py      2009-01-01 22:16:51 +0000
+++ b/mailman/languages.py      2009-01-04 05:22:08 +0000
@@ -18,7 +18,7 @@
 """Language manager."""
 
 from zope.interface import implements
-from mailman.interfaces import ILanguageManager
+from mailman.interfaces.languages import ILanguageManager
 
 
 

=== modified file 'mailman/pipeline/__init__.py'
--- a/mailman/pipeline/__init__.py      2009-01-01 22:16:51 +0000
+++ b/mailman/pipeline/__init__.py      2009-01-04 05:22:08 +0000
@@ -18,13 +18,15 @@
 """The built in set of pipeline handlers."""
 
 __metaclass__ = type
-__all__ = ['initialize']
+__all__ = [
+    'initialize',
+    ]
 
 
 import os
 import sys
 
-from mailman.interfaces import IHandler
+from mailman.interfaces.handler import IHandler
 
 
 

=== modified file 'mailman/pipeline/acknowledge.py'
--- a/mailman/pipeline/acknowledge.py   2009-01-01 22:16:51 +0000
+++ b/mailman/pipeline/acknowledge.py   2009-01-04 05:22:08 +0000
@@ -30,7 +30,7 @@
 from mailman import Utils
 from mailman.config import config
 from mailman.i18n import _
-from mailman.interfaces import IHandler
+from mailman.interfaces.handler import IHandler
 
 
 

=== modified file 'mailman/pipeline/after_delivery.py'
--- a/mailman/pipeline/after_delivery.py        2009-01-01 22:16:51 +0000
+++ b/mailman/pipeline/after_delivery.py        2009-01-04 05:22:08 +0000
@@ -18,7 +18,9 @@
 """Perform some bookkeeping after a successful post."""
 
 __metaclass__ = type
-__all__ = ['AfterDelivery']
+__all__ = [
+    'AfterDelivery',
+    ]
 
 
 import datetime
@@ -26,7 +28,7 @@
 from zope.interface import implements
 
 from mailman.i18n import _
-from mailman.interfaces import IHandler
+from mailman.interfaces.handler import IHandler
 
 
 

=== modified file 'mailman/pipeline/avoid_duplicates.py'
--- a/mailman/pipeline/avoid_duplicates.py      2009-01-01 22:16:51 +0000
+++ b/mailman/pipeline/avoid_duplicates.py      2009-01-04 05:22:08 +0000
@@ -32,7 +32,7 @@
 
 from mailman.config import config
 from mailman.i18n import _
-from mailman.interfaces import IHandler
+from mailman.interfaces.handler import IHandler
 
 
 COMMASPACE = ', '

=== modified file 'mailman/pipeline/calculate_recipients.py'
--- a/mailman/pipeline/calculate_recipients.py  2009-01-01 22:16:51 +0000
+++ b/mailman/pipeline/calculate_recipients.py  2009-01-04 05:22:08 +0000
@@ -33,7 +33,8 @@
 from mailman.config import config
 from mailman.core import errors
 from mailman.i18n import _
-from mailman.interfaces import DeliveryStatus, IHandler
+from mailman.interfaces.handler import IHandler
+from mailman.interfaces.member import DeliveryStatus
 
 
 

=== modified file 'mailman/pipeline/cleanse.py'
--- a/mailman/pipeline/cleanse.py       2009-01-01 22:16:51 +0000
+++ b/mailman/pipeline/cleanse.py       2009-01-04 05:22:08 +0000
@@ -27,7 +27,7 @@
 from zope.interface import implements
 
 from mailman.i18n import _
-from mailman.interfaces import IHandler
+from mailman.interfaces.handler import IHandler
 from mailman.pipeline.cook_headers import uheader
 
 

=== modified file 'mailman/pipeline/cleanse_dkim.py'
--- a/mailman/pipeline/cleanse_dkim.py  2009-01-01 22:16:51 +0000
+++ b/mailman/pipeline/cleanse_dkim.py  2009-01-04 05:22:08 +0000
@@ -33,7 +33,7 @@
 
 from mailman import Defaults
 from mailman.i18n import _
-from mailman.interfaces import IHandler
+from mailman.interfaces.handler import IHandler
 
 
 

=== modified file 'mailman/pipeline/cook_headers.py'
--- a/mailman/pipeline/cook_headers.py  2009-01-03 10:13:41 +0000
+++ b/mailman/pipeline/cook_headers.py  2009-01-04 05:22:08 +0000
@@ -35,7 +35,8 @@
 from mailman.config import config
 from mailman.core.plugins import get_plugins
 from mailman.i18n import _
-from mailman.interfaces import IHandler, Personalization, ReplyToMunging
+from mailman.interfaces.handler import IHandler
+from mailman.interfaces.mailinglist import Personalization, ReplyToMunging
 from mailman.version import VERSION
 
 

=== modified file 'mailman/pipeline/decorate.py'
--- a/mailman/pipeline/decorate.py      2009-01-03 10:13:41 +0000
+++ b/mailman/pipeline/decorate.py      2009-01-04 05:22:08 +0000
@@ -33,7 +33,7 @@
 from mailman.Message import Message
 from mailman.config import config
 from mailman.i18n import _
-from mailman.interfaces import IHandler
+from mailman.interfaces.handler import IHandler
 
 
 log = logging.getLogger('mailman.error')

=== modified file 'mailman/pipeline/docs/acknowledge.txt'
--- a/mailman/pipeline/docs/acknowledge.txt     2009-01-03 10:13:41 +0000
+++ b/mailman/pipeline/docs/acknowledge.txt     2009-01-04 05:22:08 +0000
@@ -21,7 +21,7 @@
 Subscribe a user to the mailing list.
 
     >>> usermgr = config.db.user_manager
-    >>> from mailman.interfaces import MemberRole
+    >>> from mailman.interfaces.member import MemberRole
     >>> user_1 = usermgr.create_user(u'[email protected]')
     >>> address_1 = list(user_1.addresses)[0]
     >>> address_1.subscribe(mlist, MemberRole.member)

=== modified file 'mailman/pipeline/docs/avoid-duplicates.txt'
--- a/mailman/pipeline/docs/avoid-duplicates.txt        2008-12-23 04:26:58 
+0000
+++ b/mailman/pipeline/docs/avoid-duplicates.txt        2009-01-04 05:22:08 
+0000
@@ -11,7 +11,7 @@
 
 Create some members we're going to use.
 
-    >>> from mailman.interfaces import MemberRole
+    >>> from mailman.interfaces.member import MemberRole
     >>> address_a = config.db.user_manager.create_address(
     ...     u'[email protected]')
     >>> address_b = config.db.user_manager.create_address(

=== modified file 'mailman/pipeline/docs/calc-recips.txt'
--- a/mailman/pipeline/docs/calc-recips.txt     2008-12-23 04:26:58 +0000
+++ b/mailman/pipeline/docs/calc-recips.txt     2009-01-04 05:22:08 +0000
@@ -21,7 +21,7 @@
 
 ...then subscribe these addresses to the mailing list as members...
 
-    >>> from mailman.interfaces import MemberRole
+    >>> from mailman.interfaces.member import MemberRole
     >>> member_a = address_a.subscribe(mlist, MemberRole.member)
     >>> member_b = address_b.subscribe(mlist, MemberRole.member)
     >>> member_c = address_c.subscribe(mlist, MemberRole.member)

=== modified file 'mailman/pipeline/docs/cook-headers.txt'
--- a/mailman/pipeline/docs/cook-headers.txt    2009-01-03 10:13:41 +0000
+++ b/mailman/pipeline/docs/cook-headers.txt    2009-01-04 05:22:08 +0000
@@ -300,7 +300,8 @@
 address of the recipient.  The list's posting address will be added to one of
 the recipient headers so that users will be able to reply back to the list.
 
-    >>> from mailman.interfaces import Personalization, ReplyToMunging
+    >>> from mailman.interfaces.mailinglist import (
+    ...     Personalization, ReplyToMunging)
     >>> mlist.personalize = Personalization.full
     >>> mlist.reply_goes_to_list = ReplyToMunging.no_munging
     >>> msg = message_from_string("""\

=== modified file 'mailman/pipeline/docs/file-recips.txt'
--- a/mailman/pipeline/docs/file-recips.txt     2008-12-23 04:26:58 +0000
+++ b/mailman/pipeline/docs/file-recips.txt     2009-01-04 05:22:08 +0000
@@ -78,7 +78,7 @@
 their address is in the include file, the sender's address is /not/ included
 in the recipients list.
 
-    >>> from mailman.interfaces import MemberRole
+    >>> from mailman.interfaces.member import MemberRole
     >>> address_1 = config.db.user_manager.create_address(
     ...     u'[email protected]')
     >>> address_1.subscribe(mlist, MemberRole.member)

=== modified file 'mailman/pipeline/docs/reply-to.txt'
--- a/mailman/pipeline/docs/reply-to.txt        2008-12-23 04:26:58 +0000
+++ b/mailman/pipeline/docs/reply-to.txt        2009-01-04 05:22:08 +0000
@@ -36,7 +36,7 @@
 list's posting address.  If there's no Reply-To header in the original
 message, the list's posting address simply gets inserted.
 
-    >>> from mailman.interfaces import ReplyToMunging
+    >>> from mailman.interfaces.mailinglist import ReplyToMunging
     >>> mlist.reply_goes_to_list = ReplyToMunging.point_to_list
     >>> mlist.preferred_language = u'en'
     >>> mlist.description = u''

=== modified file 'mailman/pipeline/docs/to-outgoing.txt'
--- a/mailman/pipeline/docs/to-outgoing.txt     2008-12-26 14:04:33 +0000
+++ b/mailman/pipeline/docs/to-outgoing.txt     2009-01-04 05:22:08 +0000
@@ -68,7 +68,7 @@
     >>> from mailman import Defaults
     >>> verp_personalized_delivieries = Defaults.VERP_PERSONALIZED_DELIVERIES
     >>> Defaults.VERP_PERSONALIZED_DELIVERIES = True
-    >>> from mailman.interfaces import Personalization
+    >>> from mailman.interfaces.mailinglist import Personalization
     >>> mlist.personalize = Personalization.individual
     >>> msgdata = dict(foo=1, bar=2)
     >>> handler.process(mlist, msg, msgdata)

=== modified file 'mailman/pipeline/file_recipients.py'
--- a/mailman/pipeline/file_recipients.py       2009-01-01 22:16:51 +0000
+++ b/mailman/pipeline/file_recipients.py       2009-01-04 05:22:08 +0000
@@ -29,7 +29,7 @@
 from zope.interface import implements
 
 from mailman.i18n import _
-from mailman.interfaces import IHandler
+from mailman.interfaces.handler import IHandler
 
 
 

=== modified file 'mailman/pipeline/mime_delete.py'
--- a/mailman/pipeline/mime_delete.py   2009-01-01 22:16:51 +0000
+++ b/mailman/pipeline/mime_delete.py   2009-01-04 05:22:08 +0000
@@ -42,7 +42,7 @@
 from mailman.config import config
 from mailman.core import errors
 from mailman.i18n import _
-from mailman.interfaces import IHandler
+from mailman.interfaces.handler import IHandler
 from mailman.queue import Switchboard
 from mailman.version import VERSION
 

=== modified file 'mailman/pipeline/replybot.py'
--- a/mailman/pipeline/replybot.py      2009-01-01 22:16:51 +0000
+++ b/mailman/pipeline/replybot.py      2009-01-04 05:22:08 +0000
@@ -31,7 +31,7 @@
 from mailman import Message
 from mailman import Utils
 from mailman.i18n import _
-from mailman.interfaces import IHandler
+from mailman.interfaces.handler import IHandler
 
 
 log = logging.getLogger('mailman.error')

=== modified file 'mailman/pipeline/scrubber.py'
--- a/mailman/pipeline/scrubber.py      2009-01-01 22:16:51 +0000
+++ b/mailman/pipeline/scrubber.py      2009-01-04 05:22:08 +0000
@@ -44,7 +44,7 @@
 from mailman.core.errors import DiscardMessage
 from mailman.core.plugins import get_plugin
 from mailman.i18n import _
-from mailman.interfaces import IHandler
+from mailman.interfaces.handler import IHandler
 
 
 # Path characters for common platforms

=== modified file 'mailman/pipeline/smtp_direct.py'
--- a/mailman/pipeline/smtp_direct.py   2009-01-03 10:47:41 +0000
+++ b/mailman/pipeline/smtp_direct.py   2009-01-04 05:22:08 +0000
@@ -50,7 +50,8 @@
 from mailman.config import config
 from mailman.core import errors
 from mailman.i18n import _
-from mailman.interfaces import IHandler, Personalization
+from mailman.interfaces.handler import IHandler
+from mailman.interfaces.mailinglist import Personalization
 
 
 DOT = '.'

=== modified file 'mailman/pipeline/tagger.py'
--- a/mailman/pipeline/tagger.py        2009-01-01 22:16:51 +0000
+++ b/mailman/pipeline/tagger.py        2009-01-04 05:22:08 +0000
@@ -30,7 +30,7 @@
 from zope.interface import implements
 
 from mailman.i18n import _
-from mailman.interfaces import IHandler
+from mailman.interfaces.handler import IHandler
 
 
 OR = '|'

=== modified file 'mailman/pipeline/to_archive.py'
--- a/mailman/pipeline/to_archive.py    2009-01-01 22:16:51 +0000
+++ b/mailman/pipeline/to_archive.py    2009-01-04 05:22:08 +0000
@@ -18,14 +18,16 @@
 """Add the message to the archives."""
 
 __metaclass__ = type
-__all__ = ['ToArchive']
+__all__ = [
+    'ToArchive',
+    ]
 
 
 from zope.interface import implements
 
 from mailman.config import config
 from mailman.i18n import _
-from mailman.interfaces import IHandler
+from mailman.interfaces.handler import IHandler
 
 
 

=== modified file 'mailman/pipeline/to_digest.py'
--- a/mailman/pipeline/to_digest.py     2009-01-01 22:16:51 +0000
+++ b/mailman/pipeline/to_digest.py     2009-01-04 05:22:08 +0000
@@ -56,7 +56,8 @@
 from mailman.Mailbox import Mailbox
 from mailman.config import config
 from mailman.core import errors
-from mailman.interfaces import DeliveryMode, DeliveryStatus, IHandler
+from mailman.interfaces.handler import IHandler
+from mailman.interfaces.member import DeliveryMode, DeliveryStatus
 from mailman.pipeline.decorate import decorate
 from mailman.pipeline.scrubber import process as scrubber
 

=== modified file 'mailman/pipeline/to_outgoing.py'
--- a/mailman/pipeline/to_outgoing.py   2009-01-01 22:16:51 +0000
+++ b/mailman/pipeline/to_outgoing.py   2009-01-04 05:22:08 +0000
@@ -31,7 +31,8 @@
 from mailman import Defaults
 from mailman.config import config
 from mailman.i18n import _
-from mailman.interfaces import IHandler, Personalization
+from mailman.interfaces.handler import IHandler
+from mailman.interfaces.mailinglist import Personalization
 
 
 

=== modified file 'mailman/pipeline/to_usenet.py'
--- a/mailman/pipeline/to_usenet.py     2009-01-01 22:16:51 +0000
+++ b/mailman/pipeline/to_usenet.py     2009-01-04 05:22:08 +0000
@@ -27,7 +27,7 @@
 
 from mailman.config import config
 from mailman.i18n import _
-from mailman.interfaces import IHandler
+from mailman.interfaces.handler import IHandler
 
 COMMASPACE = ', '
 

=== modified file 'mailman/queue/command.py'
--- a/mailman/queue/command.py  2009-01-01 22:16:51 +0000
+++ b/mailman/queue/command.py  2009-01-04 05:22:08 +0000
@@ -46,7 +46,7 @@
 from mailman.app.replybot import autorespond_to_sender
 from mailman.config import config
 from mailman.i18n import _
-from mailman.interfaces import ContinueProcessing, IEmailResults
+from mailman.interfaces.command import ContinueProcessing, IEmailResults
 from mailman.queue import Runner
 
 NL = '\n'

=== modified file 'mailman/queue/docs/incoming.txt'
--- a/mailman/queue/docs/incoming.txt   2009-01-03 10:13:41 +0000
+++ b/mailman/queue/docs/incoming.txt   2009-01-04 05:22:08 +0000
@@ -111,7 +111,7 @@
 new chain and set it as the mailing list's start chain.
 
     >>> from mailman.chains.base import Chain, Link
-    >>> from mailman.interfaces import LinkAction
+    >>> from mailman.interfaces.chain import LinkAction
     >>> truth_rule = config.rules['truth']
     >>> discard_chain = config.chains['discard']
     >>> test_chain = Chain('always-discard', u'Testing discards')

=== modified file 'mailman/queue/docs/outgoing.txt'
--- a/mailman/queue/docs/outgoing.txt   2008-12-26 14:04:33 +0000
+++ b/mailman/queue/docs/outgoing.txt   2009-01-04 05:22:08 +0000
@@ -15,7 +15,7 @@
     >>> mlist = create_list(u'[email protected]')
 
     >>> from mailman.app.membership import add_member
-    >>> from mailman.interfaces import DeliveryMode
+    >>> from mailman.interfaces.member import DeliveryMode
     >>> add_member(mlist, u'[email protected]', u'Anne Person',
     ...            u'password', DeliveryMode.regular, u'en')
     >>> add_member(mlist, u'[email protected]', u'Bart Person',
@@ -26,7 +26,7 @@
 By setting the mailing list to personalize messages, each recipient will get a
 unique copy of the message, with certain headers tailored for that recipient.
 
-    >>> from mailman.interfaces import Personalization
+    >>> from mailman.interfaces.mailinglist import Personalization
     >>> mlist.personalize = Personalization.individual
     >>> commit()
 

=== modified file 'mailman/rules/__init__.py'
--- a/mailman/rules/__init__.py 2009-01-01 22:16:51 +0000
+++ b/mailman/rules/__init__.py 2009-01-04 05:22:08 +0000
@@ -18,13 +18,15 @@
 """The built in rule set."""
 
 __metaclass__ = type
-__all__ = ['initialize']
+__all__ = [
+    'initialize',
+    ]
 
 
 import os
 import sys
 
-from mailman.interfaces import IRule
+from mailman.interfaces.rules import IRule
 
 
 

=== modified file 'mailman/rules/administrivia.py'
--- a/mailman/rules/administrivia.py    2009-01-01 22:16:51 +0000
+++ b/mailman/rules/administrivia.py    2009-01-04 05:22:08 +0000
@@ -28,7 +28,7 @@
 
 from mailman.config import config
 from mailman.i18n import _
-from mailman.interfaces import IRule
+from mailman.interfaces.rules import IRule
 
 
 # The list of email commands we search for in the Subject header and payload.

=== modified file 'mailman/rules/any.py'
--- a/mailman/rules/any.py      2009-01-01 22:16:51 +0000
+++ b/mailman/rules/any.py      2009-01-04 05:22:08 +0000
@@ -24,7 +24,7 @@
 from zope.interface import implements
 
 from mailman.i18n import _
-from mailman.interfaces import IRule
+from mailman.interfaces.rules import IRule
 
 
 

=== modified file 'mailman/rules/approved.py'
--- a/mailman/rules/approved.py 2009-01-01 22:16:51 +0000
+++ b/mailman/rules/approved.py 2009-01-04 05:22:08 +0000
@@ -17,8 +17,10 @@
 
 """Look for moderator pre-approval."""
 
-__all__ = ['Approved']
 __metaclass__ = type
+__all__ = [
+    'Approved',
+    ]
 
 
 import re
@@ -26,7 +28,7 @@
 from zope.interface import implements
 
 from mailman.i18n import _
-from mailman.interfaces import IRule
+from mailman.interfaces.rules import IRule
 
 
 EMPTYSTRING = u''

=== modified file 'mailman/rules/docs/moderation.txt'
--- a/mailman/rules/docs/moderation.txt 2008-12-23 04:26:58 +0000
+++ b/mailman/rules/docs/moderation.txt 2009-01-04 05:22:08 +0000
@@ -28,7 +28,7 @@
     >>> user = config.db.user_manager.create_user(
     ...     u'[email protected]', u'Anne Person')
     >>> address = list(user.addresses)[0]
-    >>> from mailman.interfaces import MemberRole
+    >>> from mailman.interfaces.member import MemberRole
     >>> member = address.subscribe(mlist, MemberRole.member)
     >>> member.is_moderated
     False

=== modified file 'mailman/rules/docs/rules.txt'
--- a/mailman/rules/docs/rules.txt      2008-12-23 04:26:58 +0000
+++ b/mailman/rules/docs/rules.txt      2009-01-04 05:22:08 +0000
@@ -13,7 +13,7 @@
 names to rule objects.
 
     >>> from zope.interface.verify import verifyObject
-    >>> from mailman.interfaces import IRule
+    >>> from mailman.interfaces.rules import IRule
     >>> for rule_name in sorted(config.rules):
     ...     rule = config.rules[rule_name]
     ...     print rule_name, verifyObject(IRule, rule)

=== modified file 'mailman/rules/emergency.py'
--- a/mailman/rules/emergency.py        2009-01-01 22:16:51 +0000
+++ b/mailman/rules/emergency.py        2009-01-04 05:22:08 +0000
@@ -24,7 +24,7 @@
 from zope.interface import implements
 
 from mailman.i18n import _
-from mailman.interfaces import IRule
+from mailman.interfaces.rules import IRule
 
 
 

=== modified file 'mailman/rules/implicit_dest.py'
--- a/mailman/rules/implicit_dest.py    2009-01-01 22:16:51 +0000
+++ b/mailman/rules/implicit_dest.py    2009-01-04 05:22:08 +0000
@@ -26,7 +26,7 @@
 from zope.interface import implements
 
 from mailman.i18n import _
-from mailman.interfaces import IRule
+from mailman.interfaces.rules import IRule
 
 
 

=== modified file 'mailman/rules/loop.py'
--- a/mailman/rules/loop.py     2009-01-01 22:16:51 +0000
+++ b/mailman/rules/loop.py     2009-01-04 05:22:08 +0000
@@ -24,7 +24,7 @@
 from zope.interface import implements
 
 from mailman.i18n import _
-from mailman.interfaces import IRule
+from mailman.interfaces.rules import IRule
 
 
 

=== modified file 'mailman/rules/max_recipients.py'
--- a/mailman/rules/max_recipients.py   2009-01-01 22:16:51 +0000
+++ b/mailman/rules/max_recipients.py   2009-01-04 05:22:08 +0000
@@ -25,7 +25,7 @@
 from zope.interface import implements
 
 from mailman.i18n import _
-from mailman.interfaces import IRule
+from mailman.interfaces.rules import IRule
 
 
 

=== modified file 'mailman/rules/max_size.py'
--- a/mailman/rules/max_size.py 2009-01-01 22:16:51 +0000
+++ b/mailman/rules/max_size.py 2009-01-04 05:22:08 +0000
@@ -24,7 +24,7 @@
 from zope.interface import implements
 
 from mailman.i18n import _
-from mailman.interfaces import IRule
+from mailman.interfaces.rules import IRule
 
 
 

=== modified file 'mailman/rules/moderation.py'
--- a/mailman/rules/moderation.py       2009-01-01 22:16:51 +0000
+++ b/mailman/rules/moderation.py       2009-01-04 05:22:08 +0000
@@ -27,7 +27,7 @@
 from zope.interface import implements
 
 from mailman.i18n import _
-from mailman.interfaces import IRule
+from mailman.interfaces.rules import IRule
 
 
 

=== modified file 'mailman/rules/news_moderation.py'
--- a/mailman/rules/news_moderation.py  2009-01-01 22:16:51 +0000
+++ b/mailman/rules/news_moderation.py  2009-01-04 05:22:08 +0000
@@ -24,7 +24,8 @@
 from zope.interface import implements
 
 from mailman.i18n import _
-from mailman.interfaces import IRule, NewsModeration
+from mailman.interfaces import NewsModeration
+from mailman.interfaces.rules import IRule
 
 
 

=== modified file 'mailman/rules/no_subject.py'
--- a/mailman/rules/no_subject.py       2009-01-01 22:16:51 +0000
+++ b/mailman/rules/no_subject.py       2009-01-04 05:22:08 +0000
@@ -24,7 +24,7 @@
 from zope.interface import implements
 
 from mailman.i18n import _
-from mailman.interfaces import IRule
+from mailman.interfaces.rules import IRule
 
 
 

=== modified file 'mailman/rules/suspicious.py'
--- a/mailman/rules/suspicious.py       2009-01-01 22:16:51 +0000
+++ b/mailman/rules/suspicious.py       2009-01-04 05:22:08 +0000
@@ -27,7 +27,7 @@
 from zope.interface import implements
 
 from mailman.i18n import _
-from mailman.interfaces import IRule
+from mailman.interfaces.rules import IRule
 
 
 

=== modified file 'mailman/rules/truth.py'
--- a/mailman/rules/truth.py    2009-01-01 22:16:51 +0000
+++ b/mailman/rules/truth.py    2009-01-04 05:22:08 +0000
@@ -24,7 +24,7 @@
 from zope.interface import implements
 
 from mailman.i18n import _
-from mailman.interfaces import IRule
+from mailman.interfaces.rules import IRule
 
 
 



--
Primary development focus
https://code.launchpad.net/~mailman-coders/mailman/3.0

You are receiving this branch notification because you are subscribed to it.
_______________________________________________
Mailman-checkins mailing list
[email protected]
Unsubscribe: 
http://mail.python.org/mailman/options/mailman-checkins/archive%40jab.org

Reply via email to