summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
| * | Make a copy before first usage of mgr.clear()Piotr Kasprzyk2014-04-161-4/+4
|/ /
* | * Fixed a crash in the REST server when searching for nonmembers viaBarry Warsaw2014-04-156-65/+251
| | | | | | | | | | | | | | | | ``/find`` which we've never seen before, because those members only have an address record, not a user record. This requires a small change in the API where the JSON response's ``address`` key now contains the URL to the address resource, the new ``email`` key contains the email address as a string, and the ``user`` key is optional.
* | * Use ``setuptools`` instead of ``distribute``, since the latter is defunct.Barry Warsaw2014-04-153-545/+5
|\ \
| * | * Use ``setuptools`` instead of ``distribute``, since the latter is defunct.Barry Warsaw2014-04-153-545/+5
| | |
* | | Add bug number.Barry Warsaw2014-04-151-1/+1
|/ /
* | Documentation updates from Stephen Turnbull.Barry Warsaw2014-04-153-8/+118
|\ \
| * | Improve documentation.Stephen J. Turnbull2014-03-293-7/+117
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - ArchiveUIin5.rst: Add warning and pointer to "Development Setup Guide". - ArchiveUIin5.rst: Update the HyperKitty repos to FedoraHosted. - MTA.rst: Add some hints on Sendmail from Gary Algier. - START.rst: Add a section Documentation to point to hosted prebuilt documentation at PythonHosted, ReadTheDocs, and FedoraHosted. - START.rst: Update the quick start procedure to account for common stumbling blocks, including existing obsolete zope.interface and missing sphinx_build command.
* | | Remove a few redundant checks.Barry Warsaw2014-04-152-8/+0
| | |
* | | * Addresses can be added to existing users, including display names, via theBarry Warsaw2014-04-146-2/+215
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | REST API. [Florian Fuchs] Also, email addresses are validated when they are added via the IUserManager interface. They are still also validated when subscribing to a mailing list, but that is redundant.
| * | | Add an email address to an existing user via the REST API.Barry Warsaw2014-04-145-1/+212
|/| | |
| * | | Posting an invalid email address string to the user/addresses endpoint Florian Fuchs2014-04-142-2/+17
| | | | | | | | | | | | | | | | now returns a 400 status code
| * | | Instantiating an Address model now validates the email stringFlorian Fuchs2014-04-142-1/+49
| | | |
| * | | * Added an API endpoint to POST new email addresses to a user resource.Florian Fuchs2014-04-133-0/+87
| |/ / | | | | | | | | | * Updated docs.
* | | * Greatly improve the fidelity of the Mailman 2.1 list importer functionalityBarry Warsaw2014-04-1413-47/+1118
|\ \ \ | |/ / |/| | | | | | | | | | | (i.e. ``mailman import21``). [Aurélien Bompard]. * Fixed a typo in the IMailingList interface.
| * | IUserManager.create_address() is a better API to create unlinked addresses.Barry Warsaw2014-04-141-29/+5
| | |
| * | Trunk mergeBarry Warsaw2014-04-14331-486/+1580
| |\ \ | |/ / |/| |
* | | * Fix IntegrityError (against PostgreSQL) when deleting a list with contentBarry Warsaw2014-03-153-0/+19
| | | | | | | | | | | | filters. Given by Aurélien Bompard. (LP: #1117174)
* | | * Fix non-member moderation rule to prefer a member sender if both membersBarry Warsaw2014-03-153-0/+85
| | | | | | | | | | | | | | | and non-members are in the message's sender list. Given by Aurélien Bompard. (LP: #1291452)
* | | - Configuration.style_configs(): Removed unused code.Barry Warsaw2014-03-023-11/+44
| | | | | | | | | | | | | | | - mailman.cfg: Removed unused section. - Improve the config.py test coverage to 100%.
* | | * Module coding style consistency.Barry Warsaw2014-03-025-20/+56
| | | | | | | | | | | | | | | | | | | | | * handle_SubscriptionEvent(): We're always guaranteed to get a language from a member, since lookup falls back ultimately to the system preferences. So this method can be simplified. * Bump up code coverage for several modules.
* | | - Clean up and simplify remove_list()Barry Warsaw2014-03-023-22/+20
| | | | | | | | | | | | - Boost test coverage of lifecycle.py to 100%
* | | Fix the default.Barry Warsaw2014-01-061-2/+2
| | |
* | | Several internal improvements:Barry Warsaw2014-01-0620-83/+290
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * New events: - ConfirmationNeededEvent is triggered when a pendable requiring confirmation is created. This allows us to define an event handler for this event which sends the user notification. - SubscriptionEvent is triggered when a member is added to a mailing list. This lets us define an event handler which sends the welcome message. * send_welcome_message() now takes a member parameter instead of an address, which lets us directly access the member's delivery mode and user display name (if the member has a user, which it might not in some cases). * Use the list id in the pendable record instead of the list name for robustness (the latter can change but the former is permanent). * Test more registration conditions. * In the bin/runner command line switch handling, default `verbose` to None instead of False. This makes it work better with nose's -E switch (log to stderr). * In call_api(), if a POST, PUT, or PATCH method is used and data is None, encode the empty dictionary; seems like the behavior of urlencode() has changed, so this is safer. * Fix style and pyflakes warnings.
* | | Bump copyright years.Barry Warsaw2014-01-01319-321/+321
| | |
* | | Fix a couple of intermittent test problems.Barry Warsaw2013-12-012-0/+3
| | |
* | | * Add support for the Exim 4 MTA. Contributed by Stephen Turnbull.Barry Warsaw2013-11-304-10/+186
|\ \ \
| * | | New modules config.exim4 and mta.exim4 support the Exim4 MTA.Stephen J. Turnbull2013-09-253-10/+185
| | | | | | | | | | | | | | | | Documentation added to docs/MTA.rst (with some stylistic changes to existing text.
* | | | NEWS.Barry Warsaw2013-11-271-0/+1
| | | |
* | | | Merge branch contributed by Joanna Skrzeszewska.Barry Warsaw2013-11-2724-22/+571
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Mailing lists can now individually enable or disable any archiver available site-wide. Contributed by Joanna Skrzeszewska. (LP: #1158040) Also: - IArchivers (i.e. system-wide archivers) now have an is_enabled attribute. - config.archivers now returns *all* archivers, including those that are disabled site-wide. This way, iterating over the list-specific archivers returns everything. - In the ini-file schema, make the default archiver class empty, otherwise the Prototype archiver is always enabled. - Added a `listarchiver` table to support list-specific archivers.
| * | | | Archived-At header calculation must observe list archivers.Barry Warsaw2013-11-271-3/+7
| | | | |
| * | | | Add lists/<list-id>/archivers as the resource end-point.Barry Warsaw2013-11-274-53/+190
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We won't set archivers in the list's configuration. Add doctests and unittests for archivers.
| * | | | More fixes.Barry Warsaw2013-11-263-1/+10
| | | | |
| * | | | Checkpointing.Barry Warsaw2013-11-2519-93/+373
| | | | |
| * | | | Joanna's branchBarry Warsaw2013-10-275-19/+137
| |\ \ \ \
| | * | | | Unit tests for enabling/disabling archivers.Joanna Skrzeszewska2013-09-181-0/+26
| | | | | |
| | * | | | Changes for enabling/disabling archivers.Joanna Skrzeszewska2013-09-084-19/+111
| | |/ / /
* | / / / Do a better job of pattern matching for the nose2 -P plugin switch.Barry Warsaw2013-11-271-3/+7
|/ / / /
| | * | Aurélien Bompard's import-from-2.1 branch, with cleanup and fixes.Barry Warsaw2014-04-1414-27/+1138
| |/| | |/| | |
| | * | Minor pyflakes fixesAurélien Bompard2013-10-222-4/+3
| | | |
| | * | Merge from the main branchAurélien Bompard2013-10-228-115/+140
| | |\ \
| | * | | Text templates should be in UTF-8Aurélien Bompard2013-10-213-3/+31
| | | | |
| | * | | Handle acceptable_aliases being a list in the pickleAurélien Bompard2013-10-152-1/+17
| | | | |
| | * | | Better handling of mixed case email addressesAurélien Bompard2013-10-112-12/+65
| | | | |
| | * | | Handle 'local-part-only' acceptable aliasesAurélien Bompard2013-10-112-2/+22
| | | | |
| | * | | Don't change the mail_host when importingAurélien Bompard2013-10-112-4/+4
| | | | |
| | * | | Use the full language code in the configuration hintAurélien Bompard2013-10-112-6/+4
| | | | |
| | * | | Deal with non-ascii bans and aliasesAurélien Bompard2013-10-092-20/+34
| | | | |
| | * | | Make sure the imported preferred_language exists, and work around Python ↵Aurélien Bompard2013-10-083-5/+76
| | | | | | | | | | | | | | | | | | | | issue 9666
| | * | | Some more unicode checks when importingAurélien Bompard2013-10-082-9/+39
| | | | |
| | * | | Content filter must be removed on list deletionAurélien Bompard2013-10-032-0/+17
| | | | |