summaryrefslogtreecommitdiff
path: root/src/mailman/model (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* Use contextlib.suppress() where appropriate.Barry Warsaw2016-04-301-5/+2
|
* Restore the fix for PostgreSQL.Barry Warsaw2016-04-291-2/+2
|
* Restore a test from !151 which only fails on PostgreSQL.Barry Warsaw2016-04-292-2/+46
| | | | | | 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.
* Tweaks and clean up.Barry Warsaw2016-04-292-1/+34
| | | | | | | | * 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.
* Sort the held requests.Aurélien Bompard2016-04-281-1/+2
|
* Tweak for landing.Barry Warsaw2016-04-252-43/+60
| | | | | | * Add NEWS. * Add more comments. * Minor changes to test code style.
* Cover two more corner casesAurélien Bompard2016-04-261-0/+43
|
* Fix difference between iter and count in find_membersAurélien Bompard2016-04-262-11/+36
| | | | | | | In `SubscriptionService._find_members()`, only select preferred addresses. Fixes #227
* Add NEWS, tweak an interface, and rewrite a unit test.Barry Warsaw2016-04-183-128/+186
|
* Extend ISubscriptionService interface.Harshit Bansal2016-04-183-0/+203
| | | | | | Add documentation. Extend ISubscriptionService interface.
* __iter__() must sort just like mailing_lists property.Barry Warsaw2016-04-131-1/+2
|
* Don't use `flake8: noqa`.Barry Warsaw2016-04-011-1/+1
| | | | | | | 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.
* Allow fall backs for moderation actions.Barry Warsaw2016-04-011-1/+1
| | | | | | | | | 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
* Make sure users are returned in a predictable orderAurélien Bompard2016-03-311-1/+1
|
* Members and nonmembers moderation action fallbackAurélien Bompard2016-03-313-17/+37
| | | | | | | | 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
* Add member unsubscription testAditya2016-03-301-0/+9
|
* Tweak the import rules checker.Barry Warsaw2016-03-275-5/+5
| | | | Fix the last few violations of the import rules.
* Import order flake8 plugin.Barry Warsaw2016-03-273-3/+3
| | | | Fix lots of import order errors discovered by the new plugin.
* Clean up the model and languages directories.Barry Warsaw2016-03-2538-354/+176
|
* First massive round of cleanups.Barry Warsaw2016-03-2310-68/+42
| | | | | | | | * 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.
* Close #208Barry Warsaw2016-03-201-2/+2
| | | | Don't let crashes in IArchiver plugins break handlers or runners.
* Fix cross-posting held on more than one list.Barry Warsaw2016-03-082-4/+21
| | | | | | | | | | | 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.
* Last cleanups.Barry Warsaw2016-02-292-51/+42
| | | | | | | | | * 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.
* Revert "Rename the HeaderMatch.chain column to action"Aurélien Bompard2016-02-292-14/+13
| | | | This reverts commit 703fc135dfcd496a704562ddc263aa0f4f828de9.
* Review suggestions: improve unit testsAurélien Bompard2016-02-292-24/+43
|
* Review suggestions: rename the new index column to positionAurélien Bompard2016-02-292-59/+59
|
* Use a better way to delete from a collectionAurélien Bompard2016-02-291-3/+2
|
* Rename the HeaderMatch.chain column to actionAurélien Bompard2016-02-292-13/+14
| | | | It makes it clearer what values are valid, and allows validation.
* Use a property for HeaderMatch.indexAurélien Bompard2016-02-292-16/+53
| | | | | Moving header matches up and down the stack is more transparent that way.
* The order of a mailing list's header matches is significantAurélien Bompard2016-02-292-41/+264
| | | | | | | 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.
* Prevent moderation of messages held for a different list.Barry Warsaw2016-02-072-1/+8
| | | | Closes: #161
* Fix membership query for preferred addresses.Barry Warsaw2016-02-062-2/+34
| | | | | | | 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)
* Add a set_preferred() helper.Barry Warsaw2016-02-065-37/+17
| | | | | This refactors the setting of a user's preferred address to the first in their list of linked addresses.
* Super duper.Barry Warsaw2016-01-266-8/+8
| | | | | * Python 3-ify super() calls. * Remove a bunch of obsolete exception classes.
* Boost coverage.Barry Warsaw2016-01-251-1/+18
| | | | Also, ignore `raise AssertionError` lines globally.
* Branch tweaks:Barry Warsaw2016-01-141-4/+12
| | | | | | | | - Fix an interface description. - Fix a copyright year. - Fix quote styles. - Tweak a test. - Add a test.
* Delete bans when their associated list is deletedAurélien Bompard2016-01-143-2/+50
| | | | Also add indexes on the Ban fields that are filtered on.
* Add indexes on the MailingList tableAurélien Bompard2016-01-141-3/+3
| | | | | Ensure that list_id is unique, and add indexes on two commonly filtered-on fields: list_name and mail_host.
* Add NEWS and tweak.Barry Warsaw2016-01-131-1/+1
|
* Allow fuzz search for members in SubscriptionServiceAurélien Bompard2016-01-132-4/+28
|
* Expose the ban list on the REST APIAurélien Bompard2016-01-131-0/+5
|
* Several optimizations:Barry Warsaw2016-01-1111-80/+64
| | | | | | | | | | | | * 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.
* Boost coverage.Barry Warsaw2016-01-091-5/+3
|
* Boost coverage.Barry Warsaw2016-01-081-1/+1
|
* Refactor some tests and documentation.Barry Warsaw2016-01-073-5/+473
| | | | | | Increase coverage. Add ISubscriptionService.find_member() as per discussion.
* A little bit more refactoring, just to keep things cleaner.Barry Warsaw2016-01-061-2/+4
|
* Complete the layer violation fixes by moving the SubscriptionService class toBarry Warsaw2016-01-061-0/+131
| | | | the mailman.model package.
* Return SQL queries in IListRequests.of_typeAurélien Bompard2016-01-061-3/+1
|
* Happy New Year.Barry Warsaw2016-01-0235-35/+35
|
* More coverage.Barry Warsaw2015-12-293-2/+12
|