summaryrefslogtreecommitdiff
path: root/src/mailman/rules/docs
Commit message (Collapse)AuthorAgeFilesLines
* Rename metadata key for clarityBarry Warsaw2017-08-042-12/+12
|
* Convert to click for CLI optionsBarry Warsaw2017-07-221-1/+1
|
* Added a rule to discard messages with no valid sender address.Mark Sapiro2017-06-301-0/+1
|
* Implement caching suffix list with in-tree fallback.Barry Warsaw2017-01-011-63/+54
| | | | | | | | Also: * Change doctest cleanups to be an ExitStack. * Added [dmarc]cache_lifetime setting. * Cleanup pass through dmarc-mitigation.rst. * Be sure the cached org domain file is cleaned up when the world is reset.
* Fixed location of 'with' in a test.Mark Sapiro2016-12-311-7/+7
| | | | Removed unneeded 'as' clauses.
* Added test data for organizational domains and a mock to use it.Mark Sapiro2016-12-301-7/+13
| | | | Made a few test coverage tweaks.
* Simplified the various list settings and remamed several things.Mark Sapiro2016-12-262-15/+16
|
* Added mocking of DNS _dmarc lookups and modified test accordingly.Mark Sapiro2016-11-111-22/+34
|
* Refactored the dmarc rule reject and discard actions. The prior codeMark Sapiro2016-11-041-107/+16
| | | | did the reject and discard but didn't terminate the chain.
* Fixed a minor issue in handlers/dmarc.py revealed in testing.Mark Sapiro2016-11-031-5/+20
| | | | | Added tests. Tweaked some docs.
* Fixed replacement $listowner. -> ${listowner}.Mark Sapiro2016-11-011-1/+2
|
* DMARC mitigations, part 1a.Mark Sapiro2016-10-312-0/+211
|
* Prevent posting from banned addressesAurélien Bompard2016-10-271-0/+1
| | | | Fixes #283
* Reorganize the documentation for better accesibilityAbhilash Raj2016-08-211-0/+5
|
* Allow fall backs for moderation actions.Barry Warsaw2016-04-011-15/+26
| | | | | | | | | 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 nonmembers moderation action fallbackAurélien Bompard2016-03-311-8/+9
| | | | | | | | 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
* Revert "Rename the HeaderMatch.chain column to action"Aurélien Bompard2016-02-291-2/+1
| | | | This reverts commit 703fc135dfcd496a704562ddc263aa0f4f828de9.
* Rename the HeaderMatch.chain column to actionAurélien Bompard2016-02-291-1/+2
| | | | It makes it clearer what values are valid, and allows validation.
* The order of a mailing list's header matches is significantAurélien Bompard2016-02-291-4/+4
| | | | | | | 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.
* Make creating Link objects a more convenient.Barry Warsaw2016-01-251-2/+2
| | | | | | Link.__init__() can now take an IRule or the string naming a rule, which will be looked up in config.rules. Similarly, it can take an IChain or the name of a chain.
* Clean up pass through abompard's branch.Barry Warsaw2015-10-201-8/+8
|
* Use and interface for the set of header_matchesAurélien Bompard2015-10-201-7/+5
|
* Fix a code typo in the docsAurélien Bompard2015-10-201-1/+1
|
* Implement changes from the reviewAurélien Bompard2015-10-201-2/+31
|
* Adapt the code and the tests to the new HeaderMatch objectAurélien Bompard2015-10-201-1/+4
|
* Implement reasons for why a message is being held for moderator approval.Barry Warsaw2015-05-111-6/+9
| | | | | | | Given by Aurélien Bompard, tweaked by Barry Warsaw. Remove the inaccurate confirmation url and admindb urls from the substitution dictionaries for postauth.txt and posthold.txt, and the templates.
* Extended test helper subscribe() which takes an optional email address andBarry Warsaw2015-03-261-0/+7
| | | | returns the newly created member.
* Use print functions consistently through, and update all __future__ imports toBarry Warsaw2014-04-2812-31/+31
| | | | | | | | reflect this. Also, mock out sys.stderr on some tests so that their nose2 output is quieter. A few other minor coding style consistencies.
* * Use the ``enum34`` package instead of ``flufl.enum``.Barry Warsaw2013-08-271-1/+1
|\
| * Switch to PEP 435 enums from flufl.enums.Barry Warsaw2013-06-181-1/+1
| |
* | Add enough __init__.py files to make these docs directories discoverable.Barry Warsaw2013-08-261-0/+0
|/
* Get test suite completely working:Barry Warsaw2012-07-201-1/+1
| | | | | | | - migrations.rst needs to handle new standard migration - Add ResetHelper() to refactor out common migration test cooperation. - Handle temporary database. - Fix some attribute names.
* trunk mergeBarry Warsaw2012-07-202-7/+8
|\
| * * `passlib`_ is now used for all password hashing instead of flufl.password.Barry Warsaw2012-07-022-6/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The default hash is `sha512_crypt`. * Events renamed and moved: * `mailman.chains.accept.AcceptNotification` * `mailman.chains.base.ChainNotification` * `mailman.chains.discard.DiscardNotification` * `mailman.chains.hold.HoldNotification` * `mailman.chains.owner.OwnerNotification` * `mailman.chains.reject.RejectNotification` changed to (respectively): * `mailman.interfaces.chains.AcceptEvent` * `mailman.interfaces.chains.ChainEvent` * `mailman.interfaces.chains.DiscardEvent` * `mailman.interfaces.chains.HoldEvent` * `mailman.interfaces.chains.AcceptOwnerEvent` * `mailman.interfaces.chains.RejectEvent` * A `ConfigurationUpdatedEvent` is triggered when the system-wide global configuration stack is pushed or popped. * With the switch to `passlib`_, `[passwords]password_scheme` has been removed. Instead use `[passwords]path` to specify where to find the `passlib.cfg` file. See the comments in `schema.cfg` for details.
| * Replace flufl.password with passlib, albeit with a wrapper.Barry Warsaw2012-06-271-3/+2
| |
* | - Rename the model attributes.Barry Warsaw2012-04-081-3/+3
|/ | | | - news_moderation -> newsgroup_moderation
* * Header check specifications in the `mailman.cfg` file have changed quiteBarry Warsaw2012-04-061-85/+104
| | | | | | | | | | | | | | | | | | | | bit. The previous `[spam.header.foo]` sections have been removed. Instead, there's a new `[antispam]` section that contains a `header_checks` variable. This variable takes multiple lines of `Header: regexp` values, one per line. There is also a new `jump_chain` variable which names the chain to jump to should any of the header checks (including the list-specific, and programmatically added ones) match. * Fixed a typo when returning the configuration file's header match checks. (LP: #953497) Also: - Remove an unused method. - Improve test coverage for mailman/app/bounces.py - 100% test coverage for mailman/chains/headers.py - Various other minor code cleanup. - Fixed the 'any' rule, which was checking a bogus metadata dictionary key.
* * A mailing list's *moderator password* is no longer stored in the clear; itBarry Warsaw2012-04-041-214/+83
| | | | | | | | | | | is hashed with the currently selected scheme. Also: - Simplify and rewrite the approved.rst doctest. Now just document the good path, and only describe its functionality using the Approved: header, which is the recommended header. - Greatly expand the unittests for the approved rule.
* * Added a unit test for rules/approved.pyMark Sapiro2012-03-181-0/+0
| | | | * Renamed rules/docs/approve.py to approved.py for consistency.
* Finally, all doctests are named .rstBarry Warsaw2011-09-2314-0/+0
|
* Major terminology shift:Barry Warsaw2011-06-011-4/+4
| | | | | | | | | | | | | | | | | * Queue runners are now called just 'Runners' since several of them don't manage queue directories. * Ban the term 'qrunner' too. * The master queue runner watcher should now just be called the 'master' or the 'master runner'. * bin/qrunner -> bin/runner * mailman.qrunner log file -> mailman.runner * master-qrunner.lck -> master.lck * master-qrunner.pid -> master.pid Also: * Remove some obsolete files * Begin the .txt -> .rst renaming
* Split member and nonmember moderation.Barry Warsaw2011-01-024-95/+122
| | | | | | | | | | | | | | | | * member-moderation happens at the same place in the built-in chain that the previously named moderation rule happens. nonmember-moderation happens after all the other normal moderation rules. * Handle unsubscribed nonmember posts. Other changes: * Message.senders now filters out Nones and empty strings. * Various test cleanups and simplifications. * More `address` -> `email` fixes. * Give Link class a useful repr. * Fix a potential UnboundLocalError. * Various other small changes.
* Fairly significant change to the way member and nonmember moderation occurs.Barry Warsaw2010-12-292-43/+63
| | | | | | | | | | | | | | | | | | | | | | | | | Now, nonmembers are represented by a separate roster of IMembers, the latter which has grown a `moderation_action` enum. When that action is `defer`, then the normal processing rules apply. Anything else and the `moderation` chain is jumped to for a shortcut to moderation (which may include immediate acceptance). TODO: handle unregistered nonmembers. Details: * The member-moderation rule is renamed to just moderation, and handles both members and nonmembers (though the latter must currently be registered). * The moderation rule is moved up in the builtin chain. It is now checked after `approved`, `emergency`, and `loop`, but before the normal moderation checks. This means that nonmember postings will be (by default) held much earlier. * IMember.is_moderated is removed. * IMember.moderation_action is added. * IMailingList.default_member_moderation is removed. * IMailingList.default_member_action and IMailingList.default_nonmember_action are added. * MemberRole.nonmember is added.
* This is part 1 of the merge of Jimmy Bergman's branchBarry Warsaw2010-12-282-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | lp:~jimmy-sigint/mailman/restapi_additional_attributes Ostensibly, this adds support for a few additional attributes through the REST API: * default_member_moderation * generic_nonmember_action * member_moderation_action * reply_goes_to_list * send_welcome_msg * welcome_msg However, I had never previously fleshed out the conversion of default_member_moderation and member_moderation_action into the MM3 way of things. That is now done. Non-member moderation still needs to be done. Specific changes: * mailman.chains.base.Chain no longer self registers * The built-in chain gets a new link for checking 'member-moderation'. If this rule matches, it jumps to the 'member-moderation' chain, which checks member_moderation_action and returns a link that jumps to the appropriate terminal chain. * Chain initialization is done by the same auto-detection as rules, handlers, etc. The one tricky thing is that abstract base classes such as Chain and TerminalChainBase can't be instantiated. For now, there's an ugly special case to skip these. * default_member_moderation is now exposed in the IMailingList interface. * Member.is_moderated gets set in the constructor from the mailing list's default_member_moderation. * The 'moderation' rule is renamed 'member-moderation'. TODO: * Work out non-member moderation * Add member_moderation_action to IMailingList * Double check tests for reply_goes_to_list, send_welcome_msg, and welcome_msg
* * Allow X-Approved and X-Approve headers, equivalent to Approved andBarry Warsaw2010-09-201-5/+39
| | | | Approve. LP: #557750
* More documentation updates.Barry Warsaw2010-09-1514-67/+84
|
* So long X-BeenThere, and thanks for all the fish.Barry Warsaw2010-02-161-9/+9
|
* Cleanup.Barry Warsaw2009-11-0412-12/+0
|
* As before, replace config.db.requests and config.db.pendings with utilities.Barry Warsaw2009-08-261-2/+4
|
* Replace the message_store instance on the database with an IMessageStoreBarry Warsaw2009-08-261-1/+5
| | | | utility.