summaryrefslogtreecommitdiff
path: root/src/mailman/app
Commit message (Collapse)AuthorAgeFilesLines
...
* Remove nonmember subscriptions if susbcribed as member.Aditya2016-05-311-0/+6
| | | | | | On subscribing an address as a member, we check if the related user is subscribed as a nonmember through any address. If yes, we remove the nonmember subscription.
* Use contextlib.suppress() where appropriate.Barry Warsaw2016-04-301-3/+2
|
* mailman subcommands commit transactionsBarry Warsaw2016-04-121-2/+1
| | | | | | Closes #223 Also: `mailman digests` has grown --verbose and -dry-run options.
* Use flake8-respect-noqa plugin and fix more complaints.Barry Warsaw2016-04-011-1/+1
|
* Don't use `flake8: noqa`.Barry Warsaw2016-04-014-6/+6
| | | | | | | 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.
* Import order flake8 plugin.Barry Warsaw2016-03-272-3/+3
| | | | Fix lots of import order errors discovered by the new plugin.
* Clean up the core directory.Barry Warsaw2016-03-241-1/+1
| | | | | | | mailman/core/errors.py is gone now. We had a duplicate base exception which now always comes from mailman/interfaces/errors.py. Obsolete/unused exceptions are remove. The other exceptions are moved to better locations.
* First massive round of cleanups.Barry Warsaw2016-03-2326-384/+182
| | | | | | | | * 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.
* Clean ups for merge.Barry Warsaw2016-03-232-52/+43
| | | | | | | | * Update some comments. * Slightly rewrite a conditional test. * Coding style fixes. * Add a convenience to get_queue_message(). * Add NEWS.
* Add test for checking the member display nameAditya2016-03-231-1/+87
|
* Assign the correct display name to the subscribed memberAditya2016-03-231-1/+7
|
* Closes #199Barry Warsaw2016-03-221-6/+8
| | | | | New subscription requests are rejected if there is already one pending. With thanks to Anirudh Dahiya. (Closes #199)
* Correct spacingAnirudh Dahiya2016-03-221-4/+4
|
* Incorporates suggested changesAnirudh Dahiya2016-03-221-1/+7
|
* Fix cross-posting held on more than one list.Barry Warsaw2016-03-083-59/+24
| | | | | | | | | | | 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.
* Allow List-ID in decoration template URIs.Barry Warsaw2016-02-271-11/+18
| | | | | | | | Closes #196 In mailman: URIs (e.g. IMailingList.header_uri and .footer_uri), you used to be able to only use fqdn-listnames. But since List-IDs are more stable, let's allow those too. Silently deprecate using the fqdn-listname.
* Add a set_preferred() helper.Barry Warsaw2016-02-061-7/+4
| | | | | This refactors the setting of a user's preferred address to the first in their list of linked addresses.
* Super duper.Barry Warsaw2016-01-261-2/+2
| | | | | * Python 3-ify super() calls. * Remove a bunch of obsolete exception classes.
* Boost coverage and remove dead code.Barry Warsaw2016-01-252-4/+11
|
* Boost coverage.Barry Warsaw2016-01-251-1/+1
| | | | Also, ignore `raise AssertionError` lines globally.
* Boost coverage.Barry Warsaw2016-01-081-0/+20
|
* Refactor some tests and documentation.Barry Warsaw2016-01-072-378/+2
| | | | | | Increase coverage. Add ISubscriptionService.find_member() as per discussion.
* Complete the layer violation fixes by moving the SubscriptionService class toBarry Warsaw2016-01-061-108/+1
| | | | the mailman.model package.
* Additional refactoring to use the QuerySequence wrapper, so that we can stillBarry Warsaw2016-01-062-10/+17
| | | | | | use len() and slicing on SQLAlchemy query results. We also don't need to list()-ify the results in the tests. This isn't perfect, but at least it doesn't introduce yet another layer violation.
* Make the members request pageableAurélien Bompard2016-01-063-10/+10
|
* Boost coverage.Barry Warsaw2016-01-031-1/+1
| | | | | | Use coverage.ini to ignore a few common idioms, so as to reduce code clutter. Invoke coverage slightly differently in the tox.ini.
* Happy New Year.Barry Warsaw2016-01-0226-26/+26
|
* More coverage.Barry Warsaw2015-12-291-0/+15
|
* Expose the "bump digest" and "send digest" functionality though the REST APIBarry Warsaw2015-12-221-1/+1
| | | | | | | via the ``<api>/lists/<list-id>/digest`` end-point. GETting this resource returns the ``next_digest_number`` and ``volume`` as the same values accessible through the list's configuraiton resource. POSTing to the resource with either ``send=True``, ``bump=True``, or both invokes the given action.
* Port bump-digests to MM3, via the `mailman digests` command.Barry Warsaw2015-12-221-3/+4
| | | | | Fix a buglet where if maybe_send_digest_now() was called before a digest has been prepared, a FileNotFoundError would be raised.
* Refactor bump_digest_number_and_volume() and maybe_send_digest_now() intoBarry Warsaw2015-12-222-0/+355
| | | | | | | | | their own module inside the mailman.app package. With the latter, remove the "all lists" functionality and require the mlist argument. We'll handle the "all lists" use case higher up the stack. Also, rename the send-digests handler digests since we'll next add the bump functionality.
* Move the data_paths.Barry Warsaw2015-12-201-2/+0
|
* Add a send-digests subcommand to send list digests right now.Barry Warsaw2015-12-202-13/+9
| | | | | | | | | | | | | | * Add a `mailman send-digests` subcommand which replaces the functionality of the MM2.1 senddigests.py cronjob. * Use mlist.data_path where appropriate instead of crafting it from config.LIST_DATA_DIR. This makes it more consistent to switch to using the list-id as the data subdirectory. * Refactor the to_digest handler so that we can implement maybe_send_digest_now() for the internal API. * Fix some typos in subcommand --help summaries.
* Make sure that Pendables always have a typeAurélien Bompard2015-12-165-4/+6
|
* Refactor the SubscriptionService.find_members method to be pure SQLAurélien Bompard2015-12-112-36/+227
| | | | | | | | | | Additional cleanups by Barry. Fix the SubscriptionService.find_members SQL query on PostgreSQL. Assert that an unsupported use case is actually unsupported. Various little clean ups.
* Handle deleting nonexistent messages from the message store. Closes: #167Aurélien Bompard2015-12-021-0/+9
|
* A little bit of code cleanup.Barry Warsaw2015-10-291-3/+3
|
* Neither archive messages nor digest messages get decorated.Barry Warsaw2015-09-131-8/+0
|
* Decorate bulk emails by defaultAurélien Bompard2015-09-081-0/+19
|
* According to RFC 2369, the URL should be between bracketsAurélien Bompard2015-06-301-1/+1
|
* * Messages now include a `Message-ID-Hash` as the replacement forBarry Warsaw2015-06-142-46/+47
| | | | | | `X-Message-ID-Hash` although the latter is still included for backward compatibility. Also be sure that all places which add the header use the same algorithm.
* Merge branch 'issue-75' into 'release-3.0'Barry Warsaw2015-06-022-1/+3
| | | | | | Issue #75 - Confirmation messages should not be `Precedence: bulk`. See merge request !15
* * The default languages from Mailman 2.1 have been ported over. Given byBarry Warsaw2015-05-071-2/+0
| | | | Aurélien Bompard.
* Remove old APIs handle_subscription() and hold_subscription().Barry Warsaw2015-05-023-212/+74
|
* Merge branch '1-admin-notify-mchanges' into 'release-3.0'Barry Warsaw2015-05-024-15/+61
| | | | | | | | Honor admin_notify_mchanges with subscription policy When the mailing list's `admin_notify_mchanges` is True, the list owners now get the subscription notification. (Closes: #1) See merge request !4
* Branch his ready.Barry Warsaw2015-04-173-13/+21
|
* Check pointing new subscription moderation REST API.Barry Warsaw2015-04-172-4/+6
|
* Checkpointing.Barry Warsaw2015-04-162-1/+18
|
* Clean up some templates; given by raj-abhilash1Barry Warsaw2015-04-161-12/+6
|\
| * fix tests for previous commitAbhilash Raj2015-04-162-8/+5
| |