| Commit message (Collapse) | Author | Age | Files | Lines |
| | |
|
| | |
|
| |
|
|
|
| |
- Adds an optional 'conriguration' option similar to the one in
[mta] which plugins can use to load their specific configs from.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Removes pre_hook, post_hook and ext_dir. With the latter being
unused. Warns on startup if the hooks are present in config.
- Adds IPlugin interface with pre_hook and post_hook methods.
- Adds 'class' config parameter to plugins, which can be set to
a class implementing the IPlugin interface, it will be
initialized once on Mailman's startup, then before the DB
setup the pre_hook will be run, after DB and other components
the post_hook will be run. Plugin instances are stored in the
config.plugins dict, with keys being their configuration section
names.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Adds the notion of a 'plugin'.
- A plugin has a package path and a flag specifying whether
it's enabled or not.
- Adds a find_pluggable_components function similar to the
find_components one. This one dynamically searches not only
the mailman package but all of plugins.
- e.g. find_pluggable_components('rules', IRule) finds
all IRule components in mailman.rules but also in
example_plugin.rules for plugin names example_plugin.
- Uses the find_pluggable_components function in place of
find_components when searching for Rules, Handlers, Chains,
EmailCommands, and Styles.
|
| | |
|
| | |
|
| |
|
|
|
| |
Added more documentation on config.mailman.listname_chars.
Made a couple of minor tweaks.
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
| |
Also:
* Change doctest cleanups to be an ExitStack.
* Added [dmarc]cache_lifetime setting.
* Cleanup pass through dmarc-mitigation.rst.
* Be sure the cached org domain file is cleaned up when the world is reset.
|
| | |
|
| | |
|
| |
|
|
|
|
|
| |
* Format and wrap a comment.
* Add a test for having two From: headers.
* use <alpha@example.com> as standard Message-ID
* Cover URLError case.
|
| | |
|
| |
|
|
|
| |
The new template system is introduced for API 3.1. See
``src/mailman/rest/docs/templates.rst`` for details.
|
| |
|
|
|
|
|
|
| |
``mailman shell`` now supports readline history if you set the
``[shell]history_file`` variable in mailman.cfg. Also, many useful
names are pre-populated in the namespace of the shell. (Closes: #228)
With test coverage.
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
| |
3.0 except that UUIDs are represented as hex strings instead of 128-bit
integers, since the latter are not compatible with all versions of
JavaScript.
|
| |
|
|
|
|
|
|
|
|
|
| |
Closes: #109
* Fix the traceback that occurred when trying to convert a `text/html`
subpart to plaintext via the `mimedel` handler. Now, a configuration
variable `[mailman]html_to_plain_text_command` in the `mailman.cfg` file
defines the command to use. It defaults to `lynx`. (Closes: #109)
See merge request !14
|
| |
|
|
| |
Aurélien Bompard.
|
| |\ |
|
| |/ |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
file's ``[paths.*]`` sections. A new ``[paths.here]`` section is added,
which puts the ``var_dir`` in ``$cwd``. It is made the default layout.
* You can now view the contents of, inject messages into, and delete messages
from the various queue directories via the ``<api>/queues`` resource.
Also:
inject_message() and inject_text() now return the filebase of the file
injected into the queue directory.
|
| |\ |
|
| | |\
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
--------
* The ORM layer, previously implemented with Storm, has been replaced by
SQLAlchemy, thanks to the fantastic work by Abhilash Raj and Aurélien
Bompard. Alembic is now used for all database schema migrations.
* The new logger `mailman.database` logs any errors at the database layer.
API
---
* Several changes to the internal API:
- `IListManager.mailing_lists` is guaranteed to be sorted in List-ID order.
- `IDomains.mailing_lists` is guaranteed to be sorted in List-ID order.
- Iteration over domains via the `IDomainManager` is guaranteed to be sorted
by `IDomain.mail_host` order.
- `ITemporaryDatabase` interface and all implementations are removed.
|
| | | | |
|
| | | |\ |
|
| | | | |\
| | | |/
| | |/| |
|
| | | | |
| | | |
| | | |
| | | | |
Alembic loggers.
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
* remove alembic.cfg, move contents to schema.cfg
* fix import errors in src/mailman/model/language.py
* add indexes
* change the previously wrong written tablename autoresponserecord
* change alembic_cfg to use schema.cfg instead of alembic.cfg
|
| | | | |\ |
|
| | | | |/
| | |/| |
|
| | | |/
| | |
| | |
| | | |
address tables
|
| | | |
| | |
| | |
| | |
| | | |
* Fix a couple of typos.
* Make the script_location and alembic_scripts a resource paths.
|
| | | |\ |
|
| | | | |
| | | |
| | | |
| | | | |
* add a new method in base database to stamp with latest alembic version
|
| | |/| |
| | |/ |
|
| | |/ |
|
| |/ |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
| |
`legacy-announce` style is added. This is similar to the `legacy-default`
except set up for announce-only lists.
Also, major refactoring of the default style into (hopefully) smaller
composable units.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Rework list style management. No more style priorities or matching.. Now,
you name a style explicitly to apply and that's it.
* create_list() now takes a `style` argument.
* config file now names both a default style to use, and a set of paths to
scan for IStyle instances. (This could be a model for other plugins.)
* added IMailingList.style_name to record the last style applied, but this is
going to be removed in subsequent revisions.
Also:
* Move find_components() and scan_module() from app/finder.py to
utilities/modules.py
* Cleaned up lifecycle.rst for better documentation. Some tests moved to
test_lifecycle.py.
* Remove some unnecessary test tearDown() code.
|
| |\
| |
| |
| |
| | |
into their own configuration files. Reworked by Barry to use the new external
configuration file support, and to make test suite succeed.
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
There's a new "configure" entry in the archiver's section, which can
point to an ini-compatible configuration file (ConfigParser is used) for
additional archiver-specific configuration.
The existing archiver config have been split off schema.cfg to their own
configuration files. These shipped files can be overridden by a conf
file of the same name in $ext_dir.
The ini-file loading method should be rather generic, in case we want
the same feature somewhere else.
|