| Commit message (Collapse) | Author | Age | Files | Lines |
| | |
|
| | |
|
| |
|
|
|
| |
- Also introduce IWorkflow, ISubscriptionWorkflow,
IUnsubscriptionWorkflow.
|
| | |
|
| |
|
|
| |
Closes #214
|
| | |
|
| | |
|
| |\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Don't show the disabled archivers in the REST API
Previously, system-disabled archivers were shown in the REST API. As a result it was possible to enable them without a validation error, but they would stay disabled on the next API GET call (their actual activation status depends on the list-specific *and* the system-wide status).
Because one can't add a configuration overlay to the running REST server
in testing mode, the prototype archiver was disabled in the testing
configuration. This is where most of the changes in this commit come
from.
See merge request !87
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | |
| |
| |
| | |
NEWS.
|
| | |
| |
| |
| | |
See !161
|
| | |
| |
| |
| |
| |
| | |
This allows the filtering to be done at the database level. It also
makes list pagination much more efficient, since the slicing is done at
the database level too.
|
| | |
| |
| |
| | |
* Rebased, cleaned up, and test improvement.
|
| | | |
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This merges the SubscriptionManager and UnsubscriptionManager into a
single SubscriptionManager implementation that handles both register()
and unregister(). This allows us to use direct class-based adaptation
instead of the more clunky getAdapter() API. We can also eliminate the
funky _get_workflow() implementation detail.
This has a couple of side-effects. .confirm() must lookup the token in
the pendings database and pull out the pending type, dispatching to the
proper class depending on the type, or raising a LookupError if the
token is None or there is no pendable associated with the given token.
This feels like an acceptable trade-off.
However, this *also* means that IWorkflowStateManager must lose its
'name' argument in its methods. That's because we won't actually know
the name until its too late. Honestly, the name wasn't providing much
value anyway (it was always the subclass's name), so losing that seems
fine too. The complication here is that the name was a primary key in
the 'workflowstate' table, so we need to add its removal in the database
migration.
|
| | | |
|
| | | |
|
| |/ |
|
| |
|
|
| |
Given by Abhilash Raj.
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
| |
The new template system is introduced for API 3.1. See
``src/mailman/rest/docs/templates.rst`` for details.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
| |
* 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.
|
| |
|
|
|
|
|
|
| |
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 lots of import order errors discovered by the new plugin.
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
| |
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.
|
| | |
|