| Commit message (Collapse) | Author | Age | Files | Lines |
| | |
|
| | |
|
| | |
|
| |
|
|
|
| |
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.
|
| |/
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
-------------
* `[passlib]path` configuration variable renamed to `[passlib]configuration`.
* Postfix-specific configurations in the `[mta]` section are moved to a
separate file, named by the `[mta]configuration` variable.
* In the new `postfix.cfg` file, `postfix_map_cmd` is renamed to
`postmap_command`.
Also:
* More Python 2.7-isms, use assertMultiLineEqual() directly.
* Added external_configuration() and load_external() to mailman.config.config
* ConfigLayer does a blanket set of [postfix]postmap_command so subtests
generally won't have to.
|
| |
|
|
|
|
|
|
| |
of an email address.
* Rectify an omission in the copyright assignees.
* Of course, don't use PostgreSQL by default in the test suite.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The default hash is `sha512_crypt`.
* Events renamed and moved:
* `mailman.chains.accept.AcceptNotification`
* `mailman.chains.base.ChainNotification`
* `mailman.chains.discard.DiscardNotification`
* `mailman.chains.hold.HoldNotification`
* `mailman.chains.owner.OwnerNotification`
* `mailman.chains.reject.RejectNotification`
changed to (respectively):
* `mailman.interfaces.chains.AcceptEvent`
* `mailman.interfaces.chains.ChainEvent`
* `mailman.interfaces.chains.DiscardEvent`
* `mailman.interfaces.chains.HoldEvent`
* `mailman.interfaces.chains.AcceptOwnerEvent`
* `mailman.interfaces.chains.RejectEvent`
* A `ConfigurationUpdatedEvent` is triggered when the system-wide global
configuration stack is pushed or popped.
* With the switch to `passlib`_, `[passwords]password_scheme` has been
removed. Instead use `[passwords]path` to specify where to find the
`passlib.cfg` file. See the comments in `schema.cfg` for details.
|
| | |
|