| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| | |
|
| | |
|
| |
|
|
|
|
| |
For now, *deliberately* cause the test to fail. I want to prove this
correctly addresses the issue on the GL CI. Once I've done that, I'll
restore the patch and approve the new MR.
|
| |
|
|
|
|
|
|
| |
* Add NEWS entry.
* De-duplicate emails in the sequence passed to the model's
ISubscriptionService.unsubscribe_members() method.
* Modify the semantics of the DELETE method to return a mapping of
addresses to boolean status.
|
| | |
|
| |
|
|
|
|
| |
* Add NEWS.
* Add more comments.
* Minor changes to test code style.
|
| | |
|
| |
|
|
|
|
|
| |
In `SubscriptionService._find_members()`, only select preferred
addresses.
Fixes #227
|
| | |
|
| |
|
|
|
|
| |
Add documentation.
Extend ISubscriptionService interface.
|
| | |
|
| |
|
|
|
|
|
| |
This suppresses all errors in the file. Use `noqa`, although pep8
doesn't honor this for all errors.
There may be a plugin which helps.
|
| |
|
|
|
|
|
|
|
| |
The `moderation_action` for members and nonmember can now be ``None``
which signals falling back to the appropriate list default action,
e.g. `default_member_action` and `default_nonmember_action`. Given by
Aurélien Bompard.
Closes #189
|
| | |
|
| |
|
|
|
|
|
|
| |
Members and nonmember's moderation action should be None by default, and
in that case the moderation rule should fallback to the mailing list's
default action.
Fixes: #189
|
| | |
|
| |
|
|
| |
Fix the last few violations of the import rules.
|
| |
|
|
| |
Fix lots of import order errors discovered by the new plugin.
|
| | |
|
| |
|
|
|
|
|
|
| |
* Get rid of explicit __all__ settings and use the @public decorator.
* Get rid of ^L's
* Use expected_count argument for get_queue_messages()
* Various code modernizations.
* Other minor changes to make flake8 happy.
|
| |
|
|
| |
Don't let crashes in IArchiver plugins break handlers or runners.
|
| |
|
|
|
|
|
|
|
|
|
| |
Closes #176
Also:
* IMessageStore no longer raises a ValueError if the Message-ID already
exists in the store; it just returns None.
* The internal handle_message() function no longer takes a `preserve`
argument, since messages are never removed from the IMessageStore.
|
| |
|
|
|
|
|
|
|
| |
* Remove an unused import.
* Opportunistically remove ^Ls
* Add a missing interface attribute.
* Fix up some docstrings.
* Rename a parameter in an interface for clarity.
* Random code style cleanups.
|
| |
|
|
| |
This reverts commit 703fc135dfcd496a704562ddc263aa0f4f828de9.
|
| | |
|
| | |
|
| | |
|
| |
|
|
| |
It makes it clearer what values are valid, and allows validation.
|
| |
|
|
|
| |
Moving header matches up and down the stack is more transparent that
way.
|
| |
|
|
|
|
|
| |
Add a numerical index property to HeaderMatch objects, and change the
HeaderMatchSet manager to take the order into account.
Items can now be inserted and removed by index.
|
| |
|
|
| |
Closes: #161
|
| |
|
|
|
|
|
| |
When multiple users are subscribed to a mailing list via their preferred
address, too many results are returned from a membership query,
resulting in an assertion error. Reported by Darrell Kresge.
(Closes: #190)
|
| |
|
|
|
| |
This refactors the setting of a user's preferred address to the first in
their list of linked addresses.
|
| |
|
|
|
| |
* Python 3-ify super() calls.
* Remove a bunch of obsolete exception classes.
|
| |
|
|
| |
Also, ignore `raise AssertionError` lines globally.
|
| |
|
|
|
|
|
|
| |
- Fix an interface description.
- Fix a copyright year.
- Fix quote styles.
- Tweak a test.
- Add a test.
|
| |
|
|
| |
Also add indexes on the Ban fields that are filtered on.
|
| |
|
|
|
| |
Ensure that list_id is unique, and add indexes on two commonly
filtered-on fields: list_name and mail_host.
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
* Use `yield from` wherever appropriate.
* Use SA's .one_or_none() where appropriate.
- Fix a bug in MailingList.pass_extensions.
- Use ValueError in other places for consistency.
- Remove unreached/nonsense code.
- Simplify the SubscriptionService.find_member() and .find_members()
implementations.
- Boost coverage.
|
| | |
|
| | |
|
| |
|
|
|
|
| |
Increase coverage.
Add ISubscriptionService.find_member() as per discussion.
|
| | |
|
| |
|
|
| |
the mailman.model package.
|
| | |
|
| | |
|
| | |
|