summaryrefslogtreecommitdiff
path: root/src/mailman/styles
Commit message (Collapse)AuthorAgeFilesLines
* PR288 vettedBarry Warsaw2017-08-291-7/+1
|
* Provide a better way to avoid instantiating some componentsBarry Warsaw2017-06-171-8/+2
|
* Bump copyright years.Barry Warsaw2017-01-044-4/+4
|
* Simplified the various list settings and remamed several things.Mark Sapiro2016-12-261-6/+3
|
* Merged from master.Mark Sapiro2016-12-093-3/+3
|\
| * Use `atpublic` for @public instead of internal copy.Barry Warsaw2016-11-293-3/+3
| |
* | DMARC mitigations, part 1a.Mark Sapiro2016-10-311-1/+9
|/
* Change default unsubscription_policy to SubscriptionPolicy.confirmMark Sapiro2016-10-261-1/+1
|
* CheckpointingBarry Warsaw2016-09-011-1/+1
|
* Intermediate CommitAbhilash Raj2016-09-011-0/+1
|
* New template system. Closes #249Barry Warsaw2016-07-161-10/+0
| | | | | The new template system is introduced for API 3.1. See ``src/mailman/rest/docs/templates.rst`` for details.
* Clean up the styles directory.Barry Warsaw2016-03-254-42/+17
|
* Happy New Year.Barry Warsaw2016-01-024-4/+4
|
* Digests improvements:Barry Warsaw2015-12-191-2/+1
| | | | | | | * digestable -> digests_enabled * nondigestable: removed * Exposed digests_enabled, digest_send_periodic, digest_volume_frequency in REST.
* Resurrect Barry's subpolicy branch (lp:~barry/mailman/subpolicy)Aurélien Bompard2015-03-201-1/+3
|
* Bump copyright years.Barry Warsaw2015-01-044-4/+4
|
* Remove huge amounts of now unnecessary file boilerplate.Barry Warsaw2014-12-224-23/+7
|
* PostgreSQL support by Abhilash, cleaned by Barry.Barry Warsaw2014-09-271-6/+2
|\
| * Add support for postgresqlAbhilash Raj2014-09-251-2/+2
|/ | | | | | | | | * revert changes in message_id_has encoding by barry * Change message_id_hash column to LargeBinary (from previously mistaken one i.e.unicode) * add missing import in database/types.py * fix a bug in database/Model.py, transaction has no method abort(), instead it is rollback()
* Use print functions consistently through, and update all __future__ imports toBarry Warsaw2014-04-281-9/+9
| | | | | | | | reflect this. Also, mock out sys.stderr on some tests so that their nose2 output is quieter. A few other minor coding style consistencies.
* Bump copyright years.Barry Warsaw2014-01-014-4/+4
|
* Bump copyright years.Barry Warsaw2013-01-014-4/+4
|
* * The default list style is renamed to `legacy-default` and a newBarry Warsaw2012-12-303-181/+316
| | | | | | | | `legacy-announce` style is added. This is similar to the `legacy-default` except set up for announce-only lists. Also, major refactoring of the default style into (hopefully) smaller composable units.
* Remove mailinglist.admin_member_chunksize.Barry Warsaw2012-12-301-1/+0
|
* Remove mailinglist.private_roster.Barry Warsaw2012-12-301-1/+0
|
* Remove unused columns mailinglist.subscribe_policy,Barry Warsaw2012-12-301-3/+0
| | | | mailinglist.unsubscribe_policy, mailinglist.subscribe_auto_approval.
* Remove mailinglist.send_reminders column too.Barry Warsaw2012-12-301-1/+0
|
* * The column `mailinglist.new_member_options` was unused, and has beenBarry Warsaw2012-12-301-1/+0
| | | | removed.
* Revert the addition of the mailinglist.style_name column, as well as theBarry Warsaw2012-12-292-17/+10
| | | | | | | | | | | | IMailingList.style_name attribute. The problem is, there's nothing to guarantee that only one style will get run, and there's no sense in keeping track of the last style applied. Also: * Remove ListManager.create()'s setting of .personalize and .display_name. These should be left to the styles. (There's no reason why only these two would be set here.) * Fix some typos.
* LP: #975692 phase 1Barry Warsaw2012-12-283-131/+101
| | | | | | | | | | | | | | | | | * Rework list style management. No more style priorities or matching.. Now, you name a style explicitly to apply and that's it. * create_list() now takes a `style` argument. * config file now names both a default style to use, and a set of paths to scan for IStyle instances. (This could be a model for other plugins.) * added IMailingList.style_name to record the last style applied, but this is going to be removed in subsequent revisions. Also: * Move find_components() and scan_module() from app/finder.py to utilities/modules.py * Cleaned up lifecycle.rst for better documentation. Some tests moved to test_lifecycle.py. * Remove some unnecessary test tearDown() code.
* * Python 2.7 is not required. Python 2.6 is no longer officially supported.Barry Warsaw2012-10-311-18/+6
| | | | | The code base is now also `python2.7 -3` clean, although there are still some warnings in 3rd party dependencies. LP: #1073506
* * The link between members and the mailing lists they are subscribed to, isBarry Warsaw2012-09-041-1/+0
| | | | | | | | | | | | | | | now via the RFC 2369 `list_id` instead of the fqdn listname (i.e. posting address). This is because while the posting address can change if the mailing list is moved to a new server, the list id is fixed. (LP: #1024509) + IListManager.get_by_list_id() added. + IListManager.list_ids added. + IMailingList.list_id added. + Several internal APIs that accepted fqdn list names now require list ids, e.g. ISubscriptionService.join() and .find_members(). + IMember.list_id attribute added; .mailing_list is now an alias that retrieves and returns the IMailingList. - list_id added (LP: #1024509)
* A few fixes for schema migration on PostgreSQL.Barry Warsaw2012-08-201-1/+0
| | | | | | | | | - migration.rst needs special cleanup since the Version table is no longer wiped by the test machinery. This only caused failures when running the migration.rst test multiple times, and only on PostgreSQL. - Complete the removal of archive_volume_frequency and generic_nonmember_action for PostgreSQL. - Remove setting archive_volume_frequency in the default style.
* * Removed obsolete `IMailingList` attribute `generic_nonmember_action.Barry Warsaw2012-08-191-1/+0
| | | | (LP: #975696)
* * Fix residual references to the old `IMailingList` archive variables.Barry Warsaw2012-08-181-2/+2
| | | | (LP: #1031393)
* Working for SQLite:Barry Warsaw2012-07-251-1/+1
| | | | | | include_list_post_header -> allow_list_posts Also add a bunch more migration tests.
* trunk mergeBarry Warsaw2012-07-064-14/+21
|\
| * More consistency in the way post-configuration changes are processed. LessBarry Warsaw2012-07-021-0/+9
| | | | | | | | | | | | | | | | | | | | magic in the _post_process() method, more ConfigurationUpdatedEvents. More centralization of event initialization. Added property Configuration.language_configs. Instead of initializing events in initialize_2(), initialize them in initialize_1() and do it before the configuration is loaded.
| * False rather than 0Barry Warsaw2012-05-091-1/+1
| |
| * General code cleanup.Barry Warsaw2012-04-254-13/+11
| | | | | | | | | | | | | | | | - Add explicit dependency on zope.event in setup.py. - Use Python 3 compatible syntax for specifying that a class implements an interface, i.e. the @implementer class decorator. - print_function futures. - Whitespace normalization.
* | - Rename the model attributes.Barry Warsaw2012-04-081-3/+3
|/ | | | - news_moderation -> newsgroup_moderation
* ArchitectureBarry Warsaw2012-03-261-6/+4
| | | | | | | | | | | | | | | | | | | ------------ * Internally, all datetimes are kept in the UTC timezone, however because of LP: #280708, they are stored in the database in naive format. * `received_time` is now added to the message metadata by the LMTP runner instead of by `Switchboard.enqueue()`. This latter no longer depends on `received_time` in the metadata. * The `ArchiveRunner` no longer acquires a lock before it calls the individual archiver implementations, since not all of them need a lock. If they do, the implementations must acquire said lock themselves. Configuration ------------- * New configuration variables `clobber_date` and `clobber_skew` supported in every `[archiver.<name>]` section. These are used to determine under what circumstances a message destined for a specific archiver should have its `Date:` header clobbered.
* Add the OwnerPipeline, with tests, and rename some things for consistency.Barry Warsaw2012-03-231-0/+5
|
* Merge the Pipermail eradication branch. The scrubber is also removed.Barry Warsaw2012-03-171-1/+2
|\ | | | | | | | | | | | | | | | | | | | | | | * Configuration variable `[mailman]filtered_messages_are_preservable` controls whether messages which have their top-level `Content-Type` filtered out can be preserved in the `bad` queue by list owners. * Configuration section `[scrubber]` removed, as is the scrubber handler. This handler was essentially incompatible with Mailman 3 since it required coordination with Pipermail to store attachments on disk. * Schema additions: - mailinglist.filter_action
| * * Pipermail has been eradicated.Barry Warsaw2012-03-161-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | * Configuration variable `[mailman]filtered_messages_are_preservable` controls whether messages which have their top-level `Content-Type` filtered out can be preserved in the `bad` queue by list owners. * Configuration section `[scrubber]` removed, as is the scrubber handler. This handler was essentially incompatible with Mailman 3 since it required coordination with Pipermail to store attachments on disk. * Schema additions: - mailinglist.filter_action
* | Schema change. After discussion at Pycon, we decided to change "real_name" toBarry Warsaw2012-03-151-2/+2
|/ | | | | | | | | | | "display_name" across the board. * `IMailingList.real_name` -> `IMailingList.display_name` * `IUser.real_name` -> `IUser.display_name` * `IAddress.real_name` -> `IAddress.display_name` * Schema changes: - real_name -> display_name (mailinglist, user, address)
* Clean up of style test code, along with refactoring of corner cases toBarry Warsaw2012-03-124-0/+237
| | | | unittests where they belong.
* * Mailing lists get multiple chains and pipelines. For example, normalBarry Warsaw2012-03-071-4/+5
| | | | | | | | | | | postings go through the `posting_chain` while messages to owners to through `owners_chain`. The default `built-in` chain is renamed to `default-posting-chain` while the `built-in` pipeline is renamed `default-posting-pipeline`. * Schema changes: - start_chain -> posting_chain - pipeline -> posting_pipeline
* Template indirection now also in effect for regular and digest headers andBarry Warsaw2012-03-041-14/+5
| | | | | | | | | | | | footers, using the same semantics and algorithm as for welcome and goodbye messages. Additional schema changes: - msg_header -> header_uri - msg_footer -> footer_uri - digest_header -> digest_header_uri - digest_footer -> digest_footer_uri
* * A welcome message is sent when the user confirms their subscription viaBarry Warsaw2012-03-041-1/+1
| | | | | | | | | | email. Also: - The user's Full Name is included on the To line of a welcome message. - Clean up some tests. - The welcome_message_uri for lists using the default style is set to mailman:///welcome.txt so a welcome message is sent by default.