| Commit message (Collapse) | Author | Age | Files | Lines |
| | |
|
| |
|
|
|
| |
The new template system is introduced for API 3.1. See
``src/mailman/rest/docs/templates.rst`` for details.
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
| |
To do this, we have to handle random test ordering, since tox explicitly sets
PYTHONHASHSEED. That's a good thing for the future Python 3 port.
Removed `mailman conf -t/--sort`; now the output is always sorted.
RFC 2369 headers are now sorted before being added.
etag repr dicts are sorted using pprint.pformat().
|
| |
|
|
|
|
|
|
| |
reflect this.
Also, mock out sys.stderr on some tests so that their nose2 output is quieter.
A few other minor coding style consistencies.
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- When doing individual deliveries, insert a 'member' key into the copy of the
metadata dictionary for this recipient's delivery. This will contain the
IMember of the recipient, if the recipient is a member of the mailing list.
There will still be a 'recipient' key which will contain just the email
address to deliver the message to.
- Remove $user_password from header/footer placeholders.
- Remove the 'personalize' key from the metadata dictionary and change
decorate.process() to search only for the 'member' key. No need for both of
them and the 'member' key contains more information. Plus, it allows us to
do a more efficient member query in the delivery module some time in the
future.
- Move some of the LMTP log messages from mailman.runner to mailman.smtp.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
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
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
both encrypted according to a scheme, and a bytes object.
add_member(): Use encrypt_password().
cli_members: Give the user a default, user-friendly password. Of course, this
will be encrypted so it can't be retrieved, but it can be reset.
Passwords are stored as bytes objects, not unicode now.
ConfigLayer: Set the default test password scheme to cleartext.
General test repair.
|
| | |
|
| |
|
|
|
| |
Added smtp_user and smtp_pass options to the [mta] section to support logging
into the SMTP server. All the underlying support is in Python's smtplib.
|
| | |
|
| |
|
|
|
| |
setting these based on RFC 5322, and modern MTAs no longer need us to do so
for proper bounce processing.
|
| |
|
|
| |
* Fix some tests.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
The only thing it does currently is force the recipients in the low level
connection code to a hard-coded address.
Also:
* Fix the inject command's --filename/-f argument
* Make inject's LISTNAME required
* When inject reads from stdin, capture C-c and print a nicer message
* Extend the members command so that blank lines and lines starting with # are
ignored.
* members command should not fail when an address is already subscribed. Just
warn and continue.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
| |
s/recips/recipients/
|
| | |
|
| |
|
|
| |
Rename the substitution variables in verp_format.
|
| |
|
|
| |
Sadly, punting on tests for this for now.
|
| |
|
|
| |
between temporary and permanent failures. That will happen at a higher level.
|
| |
|
|
|
|
|
|
|
| |
SMTP.sendmail().
Handle SMTPRecipientsRefused just like smtp_direct.py.
Hack the test mail server to be able to generate failures. SMTP responses
must be bytes (don't forget we're using unicode literals).
|
| | |
|
| |
|
|
| |
Hook it up to the Connection class.
|
| | |
|
| |
|
|
| |
Add IMailTransportAgentDelivery and begin to flesh out the doctest.
|
| |
|
|
| |
of sessions per connection (or at least 10 <wink>).
|
| | |
|
| | |
|
|
|
of session start and end events in the server.
|