diff options
| author | Barry Warsaw | 2009-03-09 23:54:22 -0400 |
|---|---|---|
| committer | Barry Warsaw | 2009-03-09 23:54:22 -0400 |
| commit | dc18eb714de0f71535c259cc04226015813e8a0e (patch) | |
| tree | f6dced1cf9500198dc3fb4dfce933fca0841cc6f | |
| parent | 7717440e877660072fe1bd5f3771b0d110b5ff9b (diff) | |
| download | mailman-dc18eb714de0f71535c259cc04226015813e8a0e.tar.gz mailman-dc18eb714de0f71535c259cc04226015813e8a0e.tar.zst mailman-dc18eb714de0f71535c259cc04226015813e8a0e.zip | |
| -rw-r--r-- | setup.py | 1 | ||||
| -rw-r--r-- | src/mailman/core/rules.py | 17 | ||||
| -rw-r--r-- | src/mailman/pipeline/__init__.py | 2 | ||||
| -rw-r--r-- | src/mailman/rules/__init__.py | 6 |
4 files changed, 12 insertions, 14 deletions
@@ -86,7 +86,6 @@ case second `m'. Any other spelling is incorrect.""", include_package_data = True, entry_points = { 'console_scripts' : list(scripts), - 'mailman.rules' : 'default = mailman.rules:initialize', 'mailman.scrubber' : 'stock = mailman.archiving.pipermail:Pipermail', }, install_requires = [ diff --git a/src/mailman/core/rules.py b/src/mailman/core/rules.py index 83e24dfa2..82ae4c89b 100644 --- a/src/mailman/core/rules.py +++ b/src/mailman/core/rules.py @@ -28,19 +28,18 @@ __all__ = [ from zope.interface.verify import verifyObject from mailman.config import config -from mailman.core.plugins import get_plugins from mailman.interfaces.rules import IRule +from mailman.rules import builtin_rules def initialize(): """Find and register all rules in all plugins.""" # Find rules in plugins. - for rule_finder in get_plugins('mailman.rules'): - for rule_class in rule_finder(): - rule = rule_class() - verifyObject(IRule, rule) - assert rule.name not in config.rules, ( - 'Duplicate rule "{0}" found in {1}'.format( - rule.name, rule_finder)) - config.rules[rule.name] = rule + for rule_class in builtin_rules(): + rule = rule_class() + verifyObject(IRule, rule) + assert rule.name not in config.rules, ( + 'Duplicate rule "{0}" found in {1}'.format( + rule.name, rule_finder)) + config.rules[rule.name] = rule diff --git a/src/mailman/pipeline/__init__.py b/src/mailman/pipeline/__init__.py index a50025a44..97b3645a0 100644 --- a/src/mailman/pipeline/__init__.py +++ b/src/mailman/pipeline/__init__.py @@ -33,7 +33,7 @@ from mailman.interfaces.handler import IHandler def builtin_handlers(): - """Initialize the built-in handlers. + """Return the built-in handlers. Rules are auto-discovered by searching for IHandler implementations in all importable modules in this subpackage. diff --git a/src/mailman/rules/__init__.py b/src/mailman/rules/__init__.py index 6c7034772..ce2bd9a15 100644 --- a/src/mailman/rules/__init__.py +++ b/src/mailman/rules/__init__.py @@ -21,7 +21,7 @@ from __future__ import absolute_import, unicode_literals __metaclass__ = type __all__ = [ - 'initialize', + 'builtin_rules', ] @@ -32,8 +32,8 @@ from mailman.interfaces.rules import IRule -def initialize(): - """Initialize the built-in rules. +def builtin_rules(): + """Return the built-in rules. Rules are auto-discovered by searching for IRule implementations in all importable modules in this subpackage. |
