summaryrefslogtreecommitdiff
path: root/src/mailman/pipeline/docs
Commit message (Collapse)AuthorAgeFilesLines
* Rename the src/mailman/pipeline directory to src/mailman/handlers since that'sBarry Warsaw2012-03-2319-3094/+0
| | | | how I think about them anyway.
* Merge the Pipermail eradication branch. The scrubber is also removed.Barry Warsaw2012-03-173-257/+3
|\ | | | | | | | | | | | | | | | | | | | | | | * 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-162-231/+1
| | | | | | | | | | | | | | | | | | | | | | | | * 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
| * Eradicate Pipermail. Everything but the scrubber test works. That will takeBarry Warsaw2012-03-151-26/+2
| | | | | | | | some new APIs I suspect.
* | Schema change. After discussion at Pycon, we decided to change "real_name" toBarry Warsaw2012-03-153-27/+23
|/ | | | | | | | | | | "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)
* * The LMTP server now requires that the incoming message have a `Message-ID`,Barry Warsaw2012-03-131-0/+1
| | | | | | | | | | | otherwise it rejects the message with a 550 error. Also, the LMTP server adds the `X-Message-ID-Hash` header automatically. The `inject` cli command will also add the `X-Message-ID-Hash` header, but it will craft a `Message-ID` header first if one is missing from the injected text. Also, `inject` will always set the correct value for the `original_size` attribute on the message object, instead of trusting a possibly incorrect value if it's already set. The individual `IArchiver` implementations no longer set the `X-Message-ID-Hash` header.
* Clean up a few documentation issues.Barry Warsaw2012-03-121-2/+1
|
* Template indirection now also in effect for regular and digest headers andBarry Warsaw2012-03-041-29/+79
| | | | | | | | | | | | 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
* * Stop adding the X-BeenThere header.Barry Warsaw2011-11-062-206/+233
| | | | | | | * Separate out the RFC 2369 header adding handler. * Dynamically calculate the `List-Id` header instead of storing it in the database. This means it cannot be changed. * Be sure to clean out any digest .mmdf files when the world is reset.
* Finally, all doctests are named .rstBarry Warsaw2011-09-2319-0/+0
|
* * The IMailingList attribute ``host_name`` has been renamed to ``mail_host``Barry Warsaw2011-06-161-2/+2
| | | | | for consistency. This changes the REST API for mailing list resources. (LP: #787599)
* Major terminology shift:Barry Warsaw2011-06-011-1/+1
| | | | | | | | | | | | | | | | | * 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
* * bounce_unrecognized_goes_to_list_owner -> forward_unrecognized_bounces_to Barry Warsaw2011-05-252-13/+23
| | | | | | | | | | | | * Add an additional option for unrecognized bounce disposition: send it to the site administrators. * Move maybe_forward() from src/mailman/queue/bounce.py to src/mailman/app/bounces.py, refactor and add tests. * Add a LogFileMark class to help with tests that want to check the output to a log file. * OwnerNotification gets a better signature. Instead of tomoderators, the last argument is a roster to send the notification to. If roster is None, then the notification goes to the site administrators.
* Refactor .subscribe() from IAddress to IMailingList.Barry Warsaw2011-04-164-11/+11
|
* Because it was just to damn confusing, rename IAddress.address toBarry Warsaw2011-01-012-16/+27
| | | | | | IAddress.email and IAddress.original_address to IAddress.original_email. From now on we'll use "address" to talk about the IAddress object and "email" to talk about the textual email address.
* * Allow X-Approved and X-Approve headers, equivalent to Approved andBarry Warsaw2010-09-201-7/+9
| | | | Approve. LP: #557750
* More documentation updatesBarry Warsaw2010-09-102-6/+8
|
* More documentation updatesBarry Warsaw2010-09-101-34/+38
|
* More documentation updatesBarry Warsaw2010-09-103-39/+55
|
* More doc fixes.Barry Warsaw2010-09-095-44/+54
|
* More documentation improvements.Barry Warsaw2010-09-097-61/+76
|
* Many documentation fixes for better Sphinx output.Barry Warsaw2010-09-081-3/+4
|
* So long X-BeenThere, and thanks for all the fish.Barry Warsaw2010-02-161-30/+0
|
* * Make IDomainManager a utility, since the config object is global.Barry Warsaw2009-12-081-2/+2
| | | | | | | | * Give IMailingList a .domain attribute which looks up the IDomain for its .host_name. This cleans up a lot of code. * Add a test for the 'confirm' email command. * Suppress blank lines in email command responses. * Make the IDomainCollection a utility.
* Revert the last changes. Calculate size where needed.Barry Warsaw2009-12-051-2/+0
|
* The delivery agent requires that the message object have a .original_sizeBarry Warsaw2009-12-041-0/+2
| | | | attribute. Add this for UserNotifications.
* Refactor VERP calculation so that it's now in the outgoing queue instead ofBarry Warsaw2009-11-271-144/+10
| | | | | | the to-outgoing handler. Putting it in the latter means that more delivery vectors can take advantages of the same mechanisms. to-outgoing is now really simple (but is it simple enough?).
* Cleanup.Barry Warsaw2009-11-0415-15/+0
|
* Move a module.Barry Warsaw2009-11-041-1/+1
|
* Fix all tests except outgoing.txt and common.txtBarry Warsaw2009-11-023-25/+5
|
* Add decorations.Barry Warsaw2009-11-014-13/+13
| | | | s/recips/recipients/
* recips -> recipientsBarry Warsaw2009-10-231-5/+5
|
* Remove the user_manager attribute from config.db and expose it as anBarry Warsaw2009-08-264-16/+28
| | | | IUserManager utility.
* Test updates and repair.xoBarry Warsaw2009-08-2114-34/+60
|
* De-u-literal-ify our doctests.Barry Warsaw2009-07-1818-184/+201
|
* Wow. Put domains into the database.Barry Warsaw2009-07-161-4/+4
| | | | | | | | Add an IDomainManager and a global domain manager which can be gotten by adapting the global config object. Add an IDomainCollection interface for exposing the domain manager onto the API.
* When cleaning up the artifacts of a list being deleted, be more careful forBarry Warsaw2009-05-271-2/+3
| | | | | | | | | | | | | | artifacts that don't exist. In that case, just skimp them rather than complain. Docstring style cleanup. Allow for doctest layer specification in the package's __init__.py, defaulting to SMTPLayer if not given. This is probably too coarse for long term use, but it works for now. Make sure pipelines.txt properly cleans up its digest; it must be flushed after clearing.
* There are some situations where the RFC 2919 List-ID header must be explicitlyBarry Warsaw2009-03-031-2/+35
| | | | | set. Make this possible by moving list_id to an attribute of the MailingList object instead of hard-coding its calculation in cook_headers.py.
* Convert content filter and acceptable aliases away from pickle types.Barry Warsaw2009-03-031-36/+39
| | | | | | | * Add an adapter from mailing lists to acceptable alias set. Use this instead of the old acceptable alias interface, which is not removed. * Add contentfilter table * Add a bunch of missing docstrings
* Major cleanup of the automatic response stuff.Barry Warsaw2009-02-191-42/+39
| | | | | | | | | inject_message() grows a keyword argument dictionary which gets merged into the message metadata. Move NODELTA into the autorespond interface as ALWAYS_REPLY. Convert the integer response values into the ResponseAction enum.
* Complete the porting of the autoresponse implementation, with no need of theBarry Warsaw2009-02-191-53/+173
| | | | | | old pickle attributes. Fix a typo in the datetime.py module.
* Much clean up of the language code, though more can be done. Factor out theBarry Warsaw2009-02-121-2/+3
| | | | | | | language manager stuff into a separate Language class, and be clearer in the APIs about whether we want a language code or a Language instance. The impetus to this was to get rid of Utils.GetCharSet(), which is done.
* Move mailman.Message to mailman.email.Message. Rename Message.get_sender() toBarry Warsaw2009-02-091-2/+2
| | | | | | | | | Message.sender (property) and Message.get_senders() to Message.senders (another property). The semantics of .sender is slightly different too; it no longer consults config.mailman.use_envelope_sender. Add absolute_import and unicode_literals to Utils.py, and clean up a few imports.
* Massive digester rework.Barry Warsaw2009-02-041-464/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This moves actual digest creation and sending into a new queue runner. That way, digest creation does not block the main incoming processor. Lots of code clean up and reorganization too, and many fixes. digest_last_sent_at: Make this a DateTime digest_size_threshold: Make this a Float digest_volume_frequency: Make this an Enum DigestFrequency: new enum Fix up IMailingList interface to reflect reality. In Runner base class, allow for msg.get_sender() to return a False value. If this happens (as it can with the empty marker messages used to signal the digester that there's work to do), just use the list's preferred language. Give the retry.py and incoming.py queue runner modules some proper epilogues. The EmptyingRunner (for testing) logs itself as the runner its wrapping. The digest file name now ends in .mmdf since that's the format we're using. Add 'create_list' to doctest globals. Add a Mailbox class to add support for the context manager protocol.
* Push the source directory into a 'src' subdirectory so that zc.buildout worksBarry Warsaw2009-01-2519-0/+3617
correctly regardless of how it's used.