6780
by Barry Warsaw
* Updated NEWS.txt for 3.0a3. |
1 |
================================================
|
6461
by bwarsaw
reorganize READMEs and other documentation. more still to do. |
2 |
Mailman - The GNU Mailing List Management System
|
6780
by Barry Warsaw
* Updated NEWS.txt for 3.0a3. |
3 |
================================================
|
4 |
||
7078
by Barry Warsaw
* Schema migrations have been implemented. |
5 |
Copyright (C) 1998-2012 by the Free Software Foundation, Inc. |
6461
by bwarsaw
reorganize READMEs and other documentation. more still to do. |
6 |
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA |
7 |
||
8 |
Here is a history of user visible changes to Mailman. |
|
9 |
||
6889
by Barry Warsaw
A bit of clean up. |
10 |
|
7133
by Barry Warsaw
Beta 2 of course. |
11 |
3.0 beta 2 -- "Freeze"
|
7132
by Barry Warsaw
Architecture |
12 |
======================
|
13 |
(20XX-XX-XX) |
|
14 |
||
15 |
Architecture
|
|
16 |
------------
|
|
17 |
* Internally, all datetimes are kept in the UTC timezone, however because of
|
|
18 |
LP: #280708, they are stored in the database in naive format. |
|
19 |
* `received_time` is now added to the message metadata by the LMTP runner |
|
20 |
instead of by `Switchboard.enqueue()`. This latter no longer depends on
|
|
21 |
`received_time` in the metadata.
|
|
22 |
* The `ArchiveRunner` no longer acquires a lock before it calls the |
|
23 |
individual archiver implementations, since not all of them need a lock. If |
|
24 |
they do, the implementations must acquire said lock themselves. |
|
7139.1.1
by Barry Warsaw
* The `news` runner and queue has been renamed to the more accurate `nntp`. |
25 |
* The `news` runner and queue has been renamed to the more accurate `nntp`. |
7139.1.2
by Barry Warsaw
More tests, though still not 100% coverage. |
26 |
The runner has also been ported to Mailman 3 (LP: #967409). Beta testers |
27 |
can can safely remove `$var_dir/queue/news`.
|
|
7132
by Barry Warsaw
Architecture |
28 |
|
29 |
Configuration
|
|
30 |
-------------
|
|
31 |
* New configuration variables `clobber_date` and `clobber_skew` supported in |
|
32 |
every `[archiver.<name>]` section. These are used to determine under what
|
|
33 |
circumstances a message destined for a specific archiver should have its |
|
7134
by Barry Warsaw
Add bug tag |
34 |
`Date:` header clobbered. (LP: #963612)
|
7139.1.4
by Barry Warsaw
The port of NNTPRunner to Mailman 3 is complete. |
35 |
* Configuration schema variable changes:
|
36 |
[nntp]username -> [nntp]user |
|
37 |
[nntp]port (added) |
|
7132
by Barry Warsaw
Architecture |
38 |
|
7138
by Barry Warsaw
* Some additional documentation on related components such as Postorius and |
39 |
Documentation
|
40 |
-------------
|
|
41 |
* Some additional documentation on related components such as Postorius and
|
|
42 |
hyperkitty have been added, given by Stephen J Turnbull. |
|
43 |
||
7132
by Barry Warsaw
Architecture |
44 |
|
7056
by Barry Warsaw
Bump version numbers |
45 |
3.0 beta 1 -- "The Twilight Zone"
|
46 |
=================================
|
|
7128
by Barry Warsaw
Prepping for 3.0b1. |
47 |
(2012-03-23) |
7056
by Barry Warsaw
Bump version numbers |
48 |
|
7062
by Barry Warsaw
* Implement the style manager as a utility instead of an attribute hanging |
49 |
Architecture
|
50 |
------------
|
|
7078
by Barry Warsaw
* Schema migrations have been implemented. |
51 |
* Schema migrations have been implemented.
|
7062
by Barry Warsaw
* Implement the style manager as a utility instead of an attribute hanging |
52 |
* Implement the style manager as a utility instead of an attribute hanging
|
53 |
off the `mailman.config.config` object.
|
|
7060
by Barry Warsaw
PostgreSQL support contributed by Stephen A. Goss, with refactoring and test |
54 |
* PostgreSQL support contributed by Stephen A. Goss. (LP: #860159)
|
7066
by Barry Warsaw
* Stop adding the X-BeenThere header. |
55 |
* Separate out the RFC 2369 header adding handler.
|
56 |
* Dynamically calculate the `List-Id` header instead of storing it in the |
|
57 |
database. This means it cannot be changed. |
|
7090
by Barry Warsaw
* Major redesign of the template search system, fixing LP: #788309. $var_dir |
58 |
* Major redesign of the template search system, fixing LP: #788309. $var_dir
|
59 |
is now used when search for all template overrides, site, domain, or |
|
60 |
mailing list. The in-tree English templates are used only as a last |
|
61 |
fallback. |
|
7091
by Barry Warsaw
* Support downloading templates by URI, including mailman:// URIs. This is |
62 |
* Support downloading templates by URI, including mailman:// URIs. This is
|
7097
by Barry Warsaw
Template indirection now also in effect for regular and digest headers and |
63 |
used in welcome and goodbye messages, as well as regular and digest headers |
64 |
and footers, and supports both language and mailing list specifications. |
|
65 |
E.g. mailman:///test@example.com/it/welcome.txt |
|
7099
by Barry Warsaw
Update NEWS |
66 |
* $user_password is no longer supported as a placeholder in headers and
|
67 |
footers. |
|
7103
by Barry Warsaw
* Mailing lists get multiple chains and pipelines. For example, normal |
68 |
* Mailing lists get multiple chains and pipelines. For example, normal
|
69 |
postings go through the `posting_chain` while messages to owners to through
|
|
70 |
`owners_chain`. The default `built-in` chain is renamed to |
|
71 |
`default-posting-chain` while the `built-in` pipeline is renamed |
|
72 |
`default-posting-pipeline`.
|
|
7106
by Barry Warsaw
* The experimental `maildir` runner is removed. Use LMTP. |
73 |
* The experimental `maildir` runner is removed. Use LMTP. |
7111
by Barry Warsaw
* The LMTP server now requires that the incoming message have a `Message-ID`, |
74 |
* The LMTP server now requires that the incoming message have a `Message-ID`, |
75 |
otherwise it rejects the message with a 550 error. Also, the LMTP server |
|
76 |
adds the `X-Message-ID-Hash` header automatically. The `inject` cli |
|
77 |
command will also add the `X-Message-ID-Hash` header, but it will craft a
|
|
78 |
`Message-ID` header first if one is missing from the injected text. Also,
|
|
79 |
`inject` will always set the correct value for the `original_size` |
|
80 |
attribute on the message object, instead of trusting a possibly incorrect |
|
81 |
value if it's already set. The individual `IArchiver` implementations no
|
|
82 |
longer set the `X-Message-ID-Hash` header.
|
|
7113.1.1
by Barry Warsaw
* The Prototype archiver now stores its files in maildir format inside of |
83 |
* The Prototype archiver now stores its files in maildir format inside of
|
84 |
`$var_dir/archives/prototype`, given by Toshio Kuratomi.
|
|
7123
by Barry Warsaw
Merge the Pipermail eradication branch. The scrubber is also removed. |
85 |
* Improved "8 mile high" document distilled by Stephen J Turnbull from the
|
7122
by Barry Warsaw
* Improved "8 mile high" document distilled by Stephen Turnbull from the |
86 |
Pycon 2012 Mailman 3 sprint. Also improvements to the Sphinx build given |
87 |
by Andrea Crotti. |
|
7112.2.2
by Barry Warsaw
* Pipermail has been eradicated. |
88 |
* Pipermail has been eradicated.
|
89 |
* Configuration variable `[mailman]filtered_messages_are_preservable` |
|
90 |
controls whether messages which have their top-level `Content-Type`
|
|
91 |
filtered out can be preserved in the `bad` queue by list owners.
|
|
92 |
* Configuration section `[scrubber]` removed, as is the scrubber handler. |
|
93 |
This handler was essentially incompatible with Mailman 3 since it required |
|
94 |
coordination with Pipermail to store attachments on disk. |
|
7091
by Barry Warsaw
* Support downloading templates by URI, including mailman:// URIs. This is |
95 |
|
96 |
Database
|
|
97 |
--------
|
|
98 |
* Schema changes:
|
|
7097
by Barry Warsaw
Template indirection now also in effect for regular and digest headers and |
99 |
- welcome_msg -> welcome_message_uri
|
100 |
- goodbye_msg -> goodbye_message_uri
|
|
7091
by Barry Warsaw
* Support downloading templates by URI, including mailman:// URIs. This is |
101 |
- send_welcome_msg -> send_welcome_message
|
102 |
- send_goodbye_msg -> send_goodbye_message
|
|
7097
by Barry Warsaw
Template indirection now also in effect for regular and digest headers and |
103 |
- msg_header -> header_uri
|
104 |
- msg_footer -> footer_uri
|
|
105 |
- digest_header -> digest_header_uri
|
|
106 |
- digest_footer -> digest_footer_uri
|
|
7103
by Barry Warsaw
* Mailing lists get multiple chains and pipelines. For example, normal |
107 |
- start_chain -> posting_chain
|
108 |
- pipeline -> posting_pipeline
|
|
7118.1.1
by Barry Warsaw
Schema change. After discussion at Pycon, we decided to change "real_name" to |
109 |
- real_name -> display_name (mailinglist, user, address)
|
7112.2.2
by Barry Warsaw
* Pipermail has been eradicated. |
110 |
* Schema additions:
|
111 |
- mailinglist.filter_action
|
|
7125.1.2
by Barry Warsaw
Add a simple owner processing chain. |
112 |
- mailinglist.owner_chain
|
113 |
- mailinglist.owner_pipeline
|
|
7060
by Barry Warsaw
PostgreSQL support contributed by Stephen A. Goss, with refactoring and test |
114 |
|
7076
by Barry Warsaw
* Held messages can now be moderated through the REST API. Mailing list |
115 |
REST
|
116 |
----
|
|
117 |
* Held messages can now be moderated through the REST API. Mailing list
|
|
118 |
resources now accept a `held` path component. GETing this returns all held
|
|
119 |
messages for the mailing list. POSTing to a specific request id under this |
|
120 |
url can dispose of the message using `Action` enums.
|
|
7120
by Barry Warsaw
* Mailing list resources now have a `member_count` attribute which gives the |
121 |
* Mailing list resources now have a `member_count` attribute which gives the |
122 |
number of subscribed members. Given by Toshio Kuratomi. |
|
7076
by Barry Warsaw
* Held messages can now be moderated through the REST API. Mailing list |
123 |
|
7070
by Barry Warsaw
A faster implementation of SubscriptionService.get_members(). |
124 |
Interfaces
|
125 |
----------
|
|
126 |
* Add property `IUserManager.members` to return all `IMembers` in the system. |
|
7075
by Barry Warsaw
* `IMailTransportAgentAliases` now explicitly accepts duck-typed arguments. |
127 |
* Add property `IListmanager.name_components` which returns 2-tuples for |
7073
by Barry Warsaw
* Add property `IListmanager.name_compoments` which returns 2-tuples for |
128 |
every mailing list as (list_name, mail_host). |
7074
by Barry Warsaw
* Remove previously deprecated `IListManager.get_mailing_lists()`. |
129 |
* Remove previously deprecated `IListManager.get_mailing_lists()`. |
7075
by Barry Warsaw
* `IMailTransportAgentAliases` now explicitly accepts duck-typed arguments. |
130 |
* `IMailTransportAgentAliases` now explicitly accepts duck-typed arguments. |
7076
by Barry Warsaw
* Held messages can now be moderated through the REST API. Mailing list |
131 |
* `IRequests` interface is removed. Now just use adaptation from |
132 |
`IListRequests` directly (which takes an `IMailingList` object). |
|
133 |
* `handle_message()` now allows for `Action.hold` which is synonymous with |
|
134 |
`Action.defer` (since the message is already being held).
|
|
135 |
* `IListRequests.get_request()` now takes an optional `request_type` |
|
136 |
argument to narrow the search for the given request. |
|
7091
by Barry Warsaw
* Support downloading templates by URI, including mailman:// URIs. This is |
137 |
* New `ITemplateLoader` utility. |
7096
by Barry Warsaw
Fix welcome_message_uri to do the placeholder interpolations guaranteed in the |
138 |
* `ILanguageManager.add()` returns the `ILanguage` object just created. |
7097
by Barry Warsaw
Template indirection now also in effect for regular and digest headers and |
139 |
* `IMailinglist.decorators` removed; it was unused |
7118.1.1
by Barry Warsaw
Schema change. After discussion at Pycon, we decided to change "real_name" to |
140 |
* `IMailingList.real_name` -> `IMailingList.display_name` |
141 |
* `IUser.real_name` -> `IUser.display_name` |
|
142 |
* `IAddress.real_name` -> `IAddress.display_name` |
|
7121
by Barry Warsaw
* Add property `IRoster.member_count`. |
143 |
* Add property `IRoster.member_count`. |
7070
by Barry Warsaw
A faster implementation of SubscriptionService.get_members(). |
144 |
|
7066.1.1
by Barry Warsaw
* `bin/mailman shell` is an alias for `withlist`. |
145 |
Commands
|
146 |
--------
|
|
7107
by Barry Warsaw
* IPython support in `bin/mailman shell` contributed by Andrea Crotti. |
147 |
* IPython support in `bin/mailman shell` contributed by Andrea Crotti. |
148 |
(LP: #949926). |
|
7080
by Barry Warsaw
* The `mailman.cfg` configuration file will now automatically be detected if |
149 |
* The `mailman.cfg` configuration file will now automatically be detected if |
150 |
it exists in an `etc` directory which is a sibling of argv0.
|
|
7066.1.1
by Barry Warsaw
* `bin/mailman shell` is an alias for `withlist`. |
151 |
* `bin/mailman shell` is an alias for `withlist`. |
7079
by Barry Warsaw
* The `confirm` email command now properly handles `Re:`-like prefixes, even |
152 |
* The `confirm` email command now properly handles `Re:`-like prefixes, even |
153 |
if they contain non-ASCII characters. (LP: #685261) |
|
7085
by Barry Warsaw
* The `join` email command no longer accepts an `address=` argument. Its |
154 |
* The `join` email command no longer accepts an `address=` argument. Its |
155 |
`digest=` argument now accepts the following values: `no` (for regular |
|
7086
by Barry Warsaw
print functions! |
156 |
delivery), `mime`, or `plain`. |
7089
by Barry Warsaw
* Added a `help` email command. |
157 |
* Added a `help` email command. |
7094
by Barry Warsaw
* A welcome message is sent when the user confirms their subscription via |
158 |
* A welcome message is sent when the user confirms their subscription via
|
159 |
email. |
|
7110
by Barry Warsaw
* Global ``-C`` option now accepts an absolute path to the configuration |
160 |
* Global ``-C`` option now accepts an absolute path to the configuration |
161 |
file. Given by Andrea Crotti. (LP: #953707) |
|
7066.1.1
by Barry Warsaw
* `bin/mailman shell` is an alias for `withlist`. |
162 |
|
7061
by Barry Warsaw
* Fixed KeyError in retry runner, contributed by Stephen A. Goss. |
163 |
Bug fixes
|
164 |
---------
|
|
7117
by Barry Warsaw
* Subscription disabled probe warning notification messages are now sent |
165 |
* Subscription disabled probe warning notification messages are now sent
|
166 |
without a `Precedence:` header. Given by Mark Sapiro. (LP: #808821)
|
|
7061
by Barry Warsaw
* Fixed KeyError in retry runner, contributed by Stephen A. Goss. |
167 |
* Fixed KeyError in retry runner, contributed by Stephen A. Goss.
|
168 |
(LP: #872391) |
|
7062
by Barry Warsaw
* Implement the style manager as a utility instead of an attribute hanging |
169 |
* Fixed bogus use of `bounce_processing` attribute (should have been |
170 |
`process_bounces`, with thanks to Vincent Fretin. (LP: #876774)
|
|
7109
by Barry Warsaw
Typo |
171 |
* Fix `test_moderation` for timezones east of UTC+0000, given by blacktav. |
7108
by Barry Warsaw
* Fix `test_moderation` for timezones East of UTC+0000, given by blacktav. |
172 |
(LP: #890675) |
7061
by Barry Warsaw
* Fixed KeyError in retry runner, contributed by Stephen A. Goss. |
173 |
|
7056
by Barry Warsaw
Bump version numbers |
174 |
|
6999
by Barry Warsaw
* Fix styleguide (given by Mark Sapiro). |
175 |
3.0 alpha 8 -- "Where's My Thing?"
|
176 |
==================================
|
|
7053
by Barry Warsaw
Version number bump for 3.0.0a8 release. |
177 |
(2011-09-23) |
6999
by Barry Warsaw
* Fix styleguide (given by Mark Sapiro). |
178 |
|
7021
by Barry Warsaw
NEWS file updates |
179 |
Architecture
|
180 |
------------
|
|
7027.1.1
by Barry Warsaw
Factor out bounce detection to flufl.bounce. |
181 |
* Factor out bounce detection to `flufl.bounce`. |
7021
by Barry Warsaw
NEWS file updates |
182 |
* Unrecognized bounces can now also be forwarded to the site owner.
|
183 |
* mailman.qrunner log is renamed to mailman.runner
|
|
184 |
* master-qrunner.lck -> master.lck
|
|
185 |
* master-qrunner.pid -> master.pid
|
|
7037
by Barry Warsaw
* Four new events are created, and notifications are sent during mailing list |
186 |
* Four new events are created, and notifications are sent during mailing list
|
187 |
lifecycle changes: |
|
188 |
- ListCreatingEvent - sent before the mailing list is created
|
|
189 |
- ListCreatedEvent - sent after the mailing list is created
|
|
190 |
- ListDeletingEvent - sent before the mailing list is deleted
|
|
191 |
- ListDeletedEvent - sent after the mailing list is deleted
|
|
7048
by Barry Warsaw
* Four new events are created, and notifications are sent during domain |
192 |
* Four new events are created, and notifications are sent during domain
|
193 |
lifecycle changes: |
|
194 |
- DomainCreatingEvent - sent before the domain is created
|
|
195 |
- DomainCreatedEvent - sent after the domain is created
|
|
196 |
- DomainDeletingEvent - sent before the domain is deleted
|
|
197 |
- DomainDeletedEvent - sent after the domain is deleted
|
|
198 |
* Using the above events, when a domain is deleted, associated mailing lists
|
|
199 |
are deleted. (LP: #837526) |
|
7040
by Barry Warsaw
Rename IDomain.email_host to .mail_host for consistency. Similarly in the |
200 |
* IDomain.email_host -> .mail_host (LP: #831660)
|
7043
by Barry Warsaw
* User and Member ids are now proper UUIDs. The UUIDs are pended as unicodes, |
201 |
* User and Member ids are now proper UUIDs.
|
7052
by Barry Warsaw
Improved the way flufl.enum.Enums are stored in the database. Now, they |
202 |
* Improved the way enums are stored in the database, so that they are more
|
203 |
explicitly expressed in the code, and more database efficient. |
|
7021
by Barry Warsaw
NEWS file updates |
204 |
|
7026
by Barry Warsaw
* The IMailingList attribute ``host_name`` has been renamed to ``mail_host`` |
205 |
REST
|
206 |
----
|
|
7051
by Barry Warsaw
* Preferences for addresses, users, and members can be accessed, changed, and |
207 |
* Preferences for addresses, users, and members can be accessed, changed, and
|
208 |
deleted through the REST interface. Hierarchical, combined preferences for |
|
209 |
members, and system preferences can be read through the REST interface. |
|
210 |
(LP: #821438) |
|
7026
by Barry Warsaw
* The IMailingList attribute ``host_name`` has been renamed to ``mail_host`` |
211 |
* The IMailingList attribute ``host_name`` has been renamed to ``mail_host`` |
212 |
for consistency. This changes the REST API for mailing list |
|
213 |
resources. (LP: #787599) |
|
7031
by Barry Warsaw
* New REST resource http://.../members/find can be POSTed to in order to find |
214 |
* New REST resource http://.../members/find can be POSTed to in order to find
|
7037
by Barry Warsaw
* Four new events are created, and notifications are sent during mailing list |
215 |
member records. Optional arguments are `subscriber` (email address to
|
216 |
search for), `fqdn_listname`, and `role` (i.e. MemberRole). (LP: #799612) |
|
7047
by Barry Warsaw
* You can now query or change a member's `delivery_mode` attribute through |
217 |
* You can now query or change a member's `delivery_mode` attribute through |
218 |
the REST API (LP: #833132). Given by Stephen A. Goss. |
|
7044
by Barry Warsaw
* New REST resource http://.../<domain>/lists can be GETed in order to find |
219 |
* New REST resource http://.../<domain>/lists can be GETed in order to find
|
220 |
all the mailing lists in a specific domain (LP: #829765). Given by |
|
221 |
Stephen A. Goss. |
|
7032
by Barry Warsaw
Fixed broken API for getting a membership via role and email from a mailing |
222 |
* Fixed /lists/<fqdn_listname>/<role>/<email> (LP: #825570)
|
7033
by Barry Warsaw
Remove role plurals from /lists/<fqdn_listname/rosters/<role> |
223 |
* Remove role plurals from /lists/<fqdn_listname/rosters/<role>
|
7034
by Barry Warsaw
* Fixed incorrect error code for /members/<bogus> (LP: #821020). Given by |
224 |
* Fixed incorrect error code for /members/<bogus> (LP: #821020). Given by
|
225 |
Stephen A. Goss. |
|
7035
by Barry Warsaw
* DELETE users via the REST API. (LP: #820660) |
226 |
* DELETE users via the REST API. (LP: #820660)
|
7043
by Barry Warsaw
* User and Member ids are now proper UUIDs. The UUIDs are pended as unicodes, |
227 |
* Moderators and owners can be added via REST (LP: #834130). Given by
|
228 |
Stephen A. Goss. |
|
7045
by Barry Warsaw
* Getting the roster or configuration of a nonexistent list did not give a |
229 |
* Getting the roster or configuration of a nonexistent list did not give a
|
230 |
404 error (LP: #837676). Given by Stephen A. Goss. |
|
7046
by Barry Warsaw
* PATCHing an invalid attribute on a member did not give a 400 error |
231 |
* PATCHing an invalid attribute on a member did not give a 400 error
|
232 |
(LP: #833376). Given by Stephen A. Goss. |
|
7050
by Barry Warsaw
* Getting the memberships for a non-existent address did not give a 404 error |
233 |
* Getting the memberships for a non-existent address did not give a 404 error
|
234 |
(LP: #848103). Given by Stephen A. Goss. |
|
7026
by Barry Warsaw
* The IMailingList attribute ``host_name`` has been renamed to ``mail_host`` |
235 |
|
7021
by Barry Warsaw
NEWS file updates |
236 |
Commands
|
237 |
--------
|
|
7058
by Barry Warsaw
* `bin/mailman start --force` option is fixed. (LP: #869317) |
238 |
* `bin/qrunner` is renamed to `bin/runner`. |
239 |
* `bin/mailman aliases` gains `-f` and `-s` options. |
|
7021
by Barry Warsaw
NEWS file updates |
240 |
* `bin/mailman create` no longer allows a list to be created with bogus owner |
241 |
addresses. (LP: #778687) |
|
7058
by Barry Warsaw
* `bin/mailman start --force` option is fixed. (LP: #869317) |
242 |
* `bin/mailman start --force` option is fixed. (LP: #869317) |
7021
by Barry Warsaw
NEWS file updates |
243 |
|
7018
by Barry Warsaw
Update COPYING file to GPLv3. (LP: #790994) |
244 |
Documentation
|
245 |
-------------
|
|
246 |
* Update the COPYING file to contain the GPLv3. (LP: #790994)
|
|
7021
by Barry Warsaw
NEWS file updates |
247 |
* Major terminology change: ban the terms "queue runners" and "qrunners" since
|
248 |
not all runners manage queue directories. Just call them "runners". Also, |
|
249 |
the master is now just called "the master runner". |
|
7018
by Barry Warsaw
Update COPYING file to GPLv3. (LP: #790994) |
250 |
|
7005
by Barry Warsaw
NEWS |
251 |
Testing
|
252 |
-------
|
|
253 |
* New configuration variable in [devmode] section, called `wait` which sets |
|
254 |
the timeout value used in the test suite for starting up subprocesses. |
|
7036
by Barry Warsaw
* Handle SIGTERM in the REST server so that the test suite always shuts down |
255 |
* Handle SIGTERM in the REST server so that the test suite always shuts down
|
256 |
correctly. (LP: #770328) |
|
7005
by Barry Warsaw
NEWS |
257 |
|
7043
by Barry Warsaw
* User and Member ids are now proper UUIDs. The UUIDs are pended as unicodes, |
258 |
Other bugs and changes
|
259 |
----------------------
|
|
7038
by Barry Warsaw
* Moderating a message with Action.accept now sends the message. (LP: #827697) |
260 |
* Moderating a message with Action.accept now sends the message. (LP: #827697)
|
7041
by Barry Warsaw
* Fix AttributeError triggered by i18n call in autorespond_to_sender() |
261 |
* Fix AttributeError triggered by i18n call in autorespond_to_sender()
|
262 |
(LP: #827060) |
|
7042
by Barry Warsaw
* Local timezone in X-Mailman-Approved-At caused test failure. (LP: #832404) |
263 |
* Local timezone in X-Mailman-Approved-At caused test failure. (LP: #832404)
|
7043
by Barry Warsaw
* User and Member ids are now proper UUIDs. The UUIDs are pended as unicodes, |
264 |
* InvalidEmailAddressError no longer repr()'s its value.
|
7049
by Barry Warsaw
* Rewrote a test for compatibility between Python 2.6 and 2.7. (LP: #833208) |
265 |
* Rewrote a test for compatibility between Python 2.6 and 2.7. (LP: #833208)
|
7059
by Barry Warsaw
* Fixed Postfix alias file generation when more than one mailing list |
266 |
* Fixed Postfix alias file generation when more than one mailing list
|
267 |
exists. (LP: #874929). Given by Vincent Fretin. |
|
7038
by Barry Warsaw
* Moderating a message with Action.accept now sends the message. (LP: #827697) |
268 |
|
6999
by Barry Warsaw
* Fix styleguide (given by Mark Sapiro). |
269 |
|
6953
by Barry Warsaw
Post release version bump. |
270 |
3.0 alpha 7 -- "Mission"
|
271 |
========================
|
|
6997
by Barry Warsaw
Let's release 3.0.0a7 (Mission) today! |
272 |
(2011-04-29) |
6953
by Barry Warsaw
Post release version bump. |
273 |
|
6973
by Barry Warsaw
Catch up on news for 3.0.0a7. |
274 |
Architecture
|
275 |
------------
|
|
6993
by Barry Warsaw
Update NEWS.txt. |
276 |
* Significant updates to the subscription model. Members can now subscribe
|
277 |
with a preferred address, and changes to that will be immediately reflected |
|
278 |
in mailing list subscriptions. Users who subscribe with an explicit |
|
279 |
address can easily change to a different address, as long as that address |
|
280 |
is verified. (LP: #643949) |
|
281 |
* IUsers and IMembers are now assigned a unique, random, immutable id.
|
|
282 |
* IUsers now have created_on and .preferred_address properties.
|
|
283 |
* IMembers now have a .user attribute for easy access to the subscribed user.
|
|
284 |
* When created with add_member(), passwords are always stored encrypted.
|
|
6973
by Barry Warsaw
Catch up on news for 3.0.0a7. |
285 |
* In all interfaces, "email" refers to the textual email address while
|
286 |
"address" refers to the `IAddress` object.
|
|
287 |
* mailman.chains.base.Chain no longer self registers.
|
|
288 |
* New member and nonmember moderation rules and chains. This effectively
|
|
289 |
ports moderation rules from Mailman 2 and replaces attributes such as |
|
290 |
member_moderation_action, default_member_moderation, and |
|
291 |
generic_nonmember_action. Now, nonmembers exist as subscriptions on a |
|
292 |
mailing list and members have a moderation_action attribute which describes |
|
293 |
the disposition for postings from that address. |
|
294 |
* Member.is_moderated was removed because of the above change.
|
|
295 |
* default_member_action and default_nonmember_action were added to mailing
|
|
296 |
lists. |
|
297 |
* All sender addresses are registered (unverified) with the user manager by
|
|
298 |
the incoming queue runner. This way, nonmember moderation rules will |
|
299 |
always have an IAddress that they can subscribe to the list (as |
|
300 |
MemberRole.nonmember). |
|
301 |
* Support for SMTP AUTH added via smtp_user and smtp_pass configuration
|
|
302 |
variables in the [mta] section. (LP: #490044) |
|
6993
by Barry Warsaw
Update NEWS.txt. |
303 |
* IEmailValidator interface for pluggable validation of email addresses.
|
304 |
* .subscribe() is moved from the IAddress to the IMailingList
|
|
305 |
* IAddresses get their registered_on attribute set when the object is created.
|
|
306 |
||
307 |
Configuration
|
|
308 |
-------------
|
|
309 |
* [devmode] section gets a new 'testing' variable.
|
|
310 |
* Added password_scheme and password_length settings for defining the
|
|
311 |
default password encryption scheme. |
|
312 |
* creator_pw_file and site_pw_file are removed.
|
|
6973
by Barry Warsaw
Catch up on news for 3.0.0a7. |
313 |
|
314 |
Commands
|
|
315 |
--------
|
|
316 |
* 'bin/mailman start' does a better job of producing an error when Mailman is
|
|
317 |
already running. |
|
318 |
* 'bin/mailman status' added for providing command line status on the master
|
|
319 |
queue runner watcher process. |
|
320 |
* 'bin/mailman info' now prints the REST root url and credentials.
|
|
6993
by Barry Warsaw
Update NEWS.txt. |
321 |
* mmsitepass removed; there is no more site password.
|
6954
by Barry Warsaw
Fix typo in scan_message(). (LP: #645897) |
322 |
|
6957
by Barry Warsaw
Add Basic Auth support to the REST API, given by Jimmy Bergman, with style |
323 |
REST
|
324 |
----
|
|
6973
by Barry Warsaw
Catch up on news for 3.0.0a7. |
325 |
* Add Basic Auth support for REST API security. (Jimmy Bergman)
|
326 |
* Include the fqdn_listname and email address in the member JSON
|
|
327 |
representation. |
|
328 |
* Added reply_goes_to_list, send_welcome_msg, welcome_msg,
|
|
329 |
default_member_moderation to the mailing list's writable attributes in the |
|
330 |
REST service. (Jimmy Bergman) |
|
6993
by Barry Warsaw
Update NEWS.txt. |
331 |
* Expose the new membership model to the REST API. Canonical member resource
|
332 |
URLs are now much shorter and live in their own top-level namespace instead |
|
333 |
of within the mailing list's namespace. |
|
334 |
* /addresses/<email>/memberships gets all the memberships for a given email
|
|
335 |
address. |
|
336 |
* /users is a new top-level URL under which user information can be
|
|
337 |
accessed. Posting to this creates new users. |
|
338 |
* Users can subscribe to mailing lists through the REST API.
|
|
339 |
* Domains can be deleted via the REST API.
|
|
340 |
* PUT and PATCH to a list configuration now returns a 204 (No Content).
|
|
6957
by Barry Warsaw
Add Basic Auth support to the REST API, given by Jimmy Bergman, with style |
341 |
|
6959
by Barry Warsaw
Support Python 2.7. (LP: 667472) |
342 |
Build
|
343 |
-----
|
|
344 |
* Support Python 2.7. (LP: #667472)
|
|
6973
by Barry Warsaw
Catch up on news for 3.0.0a7. |
345 |
* Disable site-packages in buildout.cfg because of LP: #659231.
|
346 |
* Don't include eggs/ or parts/ in the source tarball. (LP: #656946)
|
|
347 |
* flufl.lock is now required instead of locknix.
|
|
348 |
||
349 |
Bugs fixed
|
|
350 |
----------
|
|
351 |
* Typo in scan_message(). (LP: #645897)
|
|
6974.1.3
by Barry Warsaw
Fixed a typo in add_member() which prevented subscribing an email address that |
352 |
* Typo in add_member(). (LP: #710182) (Florian Fuchs)
|
6995
by Barry Warsaw
Add NEWS entry. |
353 |
* Re-enable bounce detectors. (LP: #756943)
|
6993
by Barry Warsaw
Update NEWS.txt. |
354 |
* Clean up many pyflakes problems; ditching pylint.
|
6959
by Barry Warsaw
Support Python 2.7. (LP: 667472) |
355 |
|
6953
by Barry Warsaw
Post release version bump. |
356 |
|
6877
by Barry Warsaw
Prep for 3.0a6. |
357 |
3.0 alpha 6 -- "Cut to the Chase"
|
358 |
=================================
|
|
6952
by Barry Warsaw
* Allow X-Approved and X-Approve headers, equivalent to Approved and |
359 |
(2010-09-20) |
6877
by Barry Warsaw
Prep for 3.0a6. |
360 |
|
6883
by Barry Warsaw
The functionality of 'bin/list_members' has been moved to 'bin/mailman |
361 |
Commands
|
362 |
--------
|
|
363 |
* The functionality of 'bin/list_members' has been moved to
|
|
6937
by Barry Warsaw
Update NEWS for 3.0a6 |
364 |
'bin/mailman members'. |
365 |
* 'bin/mailman info' -v/--verbose output displays the file system
|
|
6887
by Barry Warsaw
More news. |
366 |
layout paths Mailman is currently configured to use. |
6883
by Barry Warsaw
The functionality of 'bin/list_members' has been moved to 'bin/mailman |
367 |
|
6886
by Barry Warsaw
News |
368 |
Configuration
|
369 |
-------------
|
|
370 |
* You can now configure the paths Mailman uses for queue files, lock files,
|
|
371 |
data files, etc. via the configuration file. Define a file system 'layout' |
|
372 |
and then select that layout in the [mailman] section. Default layouts |
|
373 |
include 'local' for putting everything in /var/tmp/mailman, 'dev' for local |
|
374 |
development, and 'fhs' for Filesystem Hierarchy Standard 2.3 (LP #490144). |
|
375 |
* Queue file directories now live in $var_dir/queues.
|
|
376 |
||
6937
by Barry Warsaw
Update NEWS for 3.0a6 |
377 |
REST
|
378 |
----
|
|
379 |
* lazr.restful has been replaced by restish as the REST publishing technology
|
|
380 |
used by Mailman. |
|
381 |
* New REST API for getting all the members of a roster for a specific mailing
|
|
382 |
list. |
|
383 |
* New REST API for getting and setting a mailing list's configuration. GET
|
|
384 |
and PUT are supported to retrieve the current configuration, and set all |
|
385 |
the list's writable attributes in one request. PATCH is supported to |
|
386 |
partially update a mailing list's configuration. Individual options can be |
|
387 |
set and retrieved by using subpaths. |
|
388 |
* Subscribing an already subscribed member via REST now returns a 409 HTTP
|
|
389 |
error. LP: #552917 |
|
390 |
* Fixed a bug when deleting a list via the REST API. LP: #601899
|
|
391 |
||
392 |
Architecture
|
|
393 |
------------
|
|
394 |
* X-BeenThere header is removed.
|
|
395 |
* Mailman no longer touches the Sender or Errors-To headers.
|
|
396 |
* Chain actions can now fire Zope events in their _process()
|
|
397 |
implementations. |
|
398 |
* Environment variable $MAILMAN_VAR_DIR can be used to control the var/
|
|
399 |
directory for Mailman's runtime files. New environment variable |
|
400 |
$MAILMAN_UNDER_MASTER_CONTROL is used instead of the qrunner's --subproc/-s |
|
401 |
option. |
|
402 |
||
403 |
Miscellaneous
|
|
6939
by Barry Warsaw
Doc fixes |
404 |
-------------
|
6952
by Barry Warsaw
* Allow X-Approved and X-Approve headers, equivalent to Approved and |
405 |
* Allow X-Approved and X-Approve headers, equivalent to Approved and
|
406 |
Approve. LP: #557750 |
|
6937
by Barry Warsaw
Update NEWS for 3.0a6 |
407 |
* Various test failure fixes. LP: #543618, LP: #544477
|
408 |
* List-Post header is retained in MIME digest messages. LP: #526143
|
|
409 |
* Importing from a Mailman 2.1.x list is partially supported.
|
|
410 |
||
6877
by Barry Warsaw
Prep for 3.0a6. |
411 |
|
6832
by Barry Warsaw
Bump to version 3.0a5 |
412 |
3.0 alpha 5 -- "Distant Early Warning"
|
413 |
======================================
|
|
6876
by Barry Warsaw
update |
414 |
(2010-01-18) |
6871
by Barry Warsaw
Update the NEWS file for 3.0a5. |
415 |
|
416 |
REST
|
|
417 |
----
|
|
418 |
* Add REST API for subscription services. You can now:
|
|
6872
by Barry Warsaw
Fix some markup. |
419 |
|
420 |
- list all members in all mailing lists
|
|
421 |
- subscribe (and possibly register) an address to a mailing list
|
|
422 |
- unsubscribe an address from mailing list
|
|
6856
by Barry Warsaw
Update NEWS file. |
423 |
|
424 |
Commands
|
|
425 |
--------
|
|
426 |
* 'bin/dumpdb' is now 'bin/mailman qfile'
|
|
427 |
* 'bin/unshunt' is now 'bin/mailman unshunt'
|
|
428 |
* Mailman now properly handles the '-join', '-leave', and '-confirm' email
|
|
429 |
commands and sub-addresses. '-subscribe' and '-unsubscribe' are aliases |
|
430 |
for '-join' and '-leave' respectively. |
|
431 |
||
432 |
Configuration
|
|
433 |
-------------
|
|
434 |
* devmode settings now live in their own [devmode] section.
|
|
435 |
* Mailman now searches for a configuration file using this search order. The
|
|
436 |
first file that exists is used. |
|
6872
by Barry Warsaw
Fix some markup. |
437 |
|
438 |
- -C config command line argument
|
|
439 |
- $MAILMAN_CONFIG_FILE environment variable
|
|
440 |
- ./mailman.cfg
|
|
441 |
- ~/.mailman.cfg
|
|
442 |
- /etc/mailman.cfg
|
|
6856
by Barry Warsaw
Update NEWS file. |
443 |
|
6832
by Barry Warsaw
Bump to version 3.0a5 |
444 |
|
6783
by Barry Warsaw
Post-release bump of version number. |
445 |
3.0 alpha 4 -- "Vital Signs"
|
446 |
============================
|
|
6824
by Barry Warsaw
Update NEWS.txt for 3.0a4. |
447 |
(2009-11-28) |
448 |
||
449 |
Commands
|
|
450 |
--------
|
|
451 |
* 'bin/inject' is now 'bin/mailman inject', with some changes
|
|
452 |
* 'bin/mailmanctl' is now 'bin/mailman start|stop|reopen|restart'
|
|
453 |
* 'bin/mailman version' is added (output same as 'bin/mailman --version')
|
|
454 |
* 'bin/mailman members' command line arguments have changed. It also
|
|
455 |
now ignores blank lines and lines that start with #. It also no longer |
|
456 |
quits when it sees an address that's already subscribed. |
|
457 |
* 'bin/withlist' is now 'bin/mailman withlist', and its command line
|
|
458 |
arguments have changed. |
|
459 |
* 'bin/mailman lists' command line arguments have changed.
|
|
460 |
* 'bin/genaliases' is now 'bin/mailman aliases'
|
|
461 |
||
462 |
Architecture
|
|
463 |
------------
|
|
464 |
* A near complete rewrite of the low-level SMTP delivery machinery. This
|
|
465 |
greatly improves readability, testability, reuse and extensibility. Almost |
|
466 |
all the old functionality has been retained. The smtp_direct.py handler is |
|
467 |
gone. |
|
468 |
* Refactor model objects into the mailman.model subpackage.
|
|
469 |
* Refactor most of the i18n infrastructure into a separate flufl.i18n package.
|
|
470 |
* Switch from setuptools to distribute.
|
|
471 |
* Remove the dependency on setuptools_bzr
|
|
472 |
* Do not create the .mo files during setup.
|
|
473 |
||
474 |
Configuration
|
|
475 |
-------------
|
|
476 |
* All log files now have a '.log' suffix by default.
|
|
477 |
* The substitution placeholders in the verp_format configuration variable
|
|
478 |
have been renamed. |
|
479 |
* Add a devmode configuration variable that changes some basic behavior.
|
|
480 |
Most importantly, it allows you to set a low-level SMTP recipient for all |
|
481 |
mail for testing purposes. See also devmode_recipient. |
|
6783
by Barry Warsaw
Post-release bump of version number. |
482 |
|
483 |
||
6660
by Barry Warsaw
Bump version. |
484 |
3.0 alpha 3 -- "Working Man"
|
6780
by Barry Warsaw
* Updated NEWS.txt for 3.0a3. |
485 |
============================
|
6782
by Barry Warsaw
News |
486 |
(2009-08-21) |
6780
by Barry Warsaw
* Updated NEWS.txt for 3.0a3. |
487 |
|
488 |
Configuration
|
|
489 |
-------------
|
|
490 |
* Configuration is now done through lazr.config. Defaults.py is
|
|
491 |
dead. lazr.config files are essentially hierarchical ini files. |
|
492 |
* Domains are now stored in the database instead of in the configuration file.
|
|
493 |
* pre- and post- initialization hooks are now available to plugins. Specify
|
|
494 |
additional hooks to run in the configuration file. |
|
495 |
* Add the environment variable $MAILMAN_CONFIG_FILE which overrides the -C
|
|
496 |
command line option. |
|
497 |
* Make LMTP more compliant with Postfix docs (Patrick Koetter)
|
|
498 |
* Added a NullMTA for mail servers like Exim which just work automatically.
|
|
499 |
||
500 |
Architecture
|
|
501 |
------------
|
|
502 |
* 'bin/mailman' is a new super-command for managing Mailman from the command
|
|
503 |
line. Some older bin scripts have been converted, with more to come. |
|
504 |
* Mailman now has an administrative REST interface which can be used to get
|
|
505 |
information from and manage Mailman remotely. |
|
506 |
* Back port of Mailman 2.1's limit on .bak file restoration. After 3
|
|
507 |
restores, the file is moved to the bad queue, with a .psv extension. (Mark |
|
508 |
Sapiro) |
|
509 |
* Digest creation is moved into a new queue runner so it doesn't block main
|
|
510 |
message processing. |
|
511 |
||
512 |
Other changes
|
|
513 |
-------------
|
|
514 |
* bin/make_instance is no longer necessary, and removed
|
|
515 |
* The debug log is turned up to info by default to reduce log file spam.
|
|
516 |
||
517 |
Building and installation
|
|
518 |
-------------------------
|
|
519 |
* All doc tests can now be turned into documentation, via Sphinx. Just run
|
|
520 |
bin/docs after bin/buildout. |
|
6663
by Barry Warsaw
Update NEWS |
521 |
|
6660
by Barry Warsaw
Bump version. |
522 |
|
6630
by Barry Warsaw
Bump the version number |
523 |
3.0 alpha 2 -- "Grand Designs"
|
6780
by Barry Warsaw
* Updated NEWS.txt for 3.0a3. |
524 |
==============================
|
6660
by Barry Warsaw
Bump version. |
525 |
(03-Jan-2009) |
6630
by Barry Warsaw
Bump the version number |
526 |
|
6780
by Barry Warsaw
* Updated NEWS.txt for 3.0a3. |
527 |
Licensing
|
528 |
---------
|
|
529 |
||
530 |
* Mailman 3 is now licensed under the GPLv3.
|
|
531 |
||
532 |
Bug fixes
|
|
533 |
---------
|
|
534 |
||
535 |
* Changed bin/arch to attempt to open the mbox before wiping the old
|
|
536 |
archive. Launchpad bug #280418. |
|
537 |
||
538 |
* Added digest.mbox and pending.pck to the 'list' files checked by
|
|
539 |
check_perms. Launchpad bug #284802. |
|
540 |
||
541 |
Architecture
|
|
542 |
------------
|
|
543 |
||
544 |
* Converted to using zope.testing as the test infrastructure. Use bin/test
|
|
545 |
now to run the full test suite. |
|
546 |
<http://pypi.python.org/pypi/zope.testing/3.7.1> |
|
547 |
* Partially converted to using lazr.config as the new configuration
|
|
548 |
regime. Not everything has been converted yet, so some manual editing |
|
549 |
of mailman/Defaults.py is required. This will be rectified in future |
|
550 |
versions. <http://launchpad.net/lazr.config> |
|
551 |
* All web-related stuff is moved to its own directory, effectively moving
|
|
552 |
it out of the way for now. |
|
553 |
* The email command infrastructure has been reworked to play more nicely
|
|
554 |
with the plug-in architecture. Not all commands have yet been |
|
555 |
converted. |
|
556 |
||
557 |
Other changes
|
|
558 |
-------------
|
|
559 |
||
560 |
* The LMTP server now properly calculates the message's original size.
|
|
561 |
* For command line scripts, -C names the configuration file to use. For
|
|
562 |
convenient testing, if -C is not given, then the environment variable |
|
563 |
MAILMAN_CONFIG_FILE is consulted. |
|
564 |
* Support added for a local MHonArc archiver, as well as archiving
|
|
565 |
automatically in the remote Mail-Archive.com service. |
|
566 |
* The permalink proposal for supporting RFC 5064 has been adopted.
|
|
567 |
* Mailing lists no longer have a .web_page_url attribute; this is taken from
|
|
568 |
the mailing list's domain's base_url attribute. |
|
569 |
* Incoming MTA selection is now taken from the config file instead of
|
|
570 |
plugins. An MTA for Postfix+LMTP is added. bin/genaliases works again. |
|
571 |
* If a message has no Message-ID, the stock archivers will return None for
|
|
572 |
the permalink now instead of raising an assertion. |
|
573 |
* IArchiver no longer has an is_enabled property; this is taken from the
|
|
574 |
configuration file now. |
|
575 |
||
576 |
Installation
|
|
577 |
------------
|
|
578 |
||
579 |
* Python 2.6 is the minimal requirement.
|
|
580 |
* Converted to using zc.buildout as the build infrastructure. See
|
|
581 |
docs/ALPHA.txt for details. |
|
582 |
<http://pypi.python.org/pypi/zc.buildout/1.1.1> |
|
6651
by Barry Warsaw
* Update NEWS.txt and ALPHA.txt |
583 |
|
6630
by Barry Warsaw
Bump the version number |
584 |
|
6581.1.27
by Barry Warsaw
Fleshed out the doctest for the new incoming queue runner. |
585 |
3.0 alpha 1 -- "Leave That Thing Alone"
|
6780
by Barry Warsaw
* Updated NEWS.txt for 3.0a3. |
586 |
=======================================
|
6630
by Barry Warsaw
Bump the version number |
587 |
(08-Apr-2008) |
6461
by bwarsaw
reorganize READMEs and other documentation. more still to do. |
588 |
|
6780
by Barry Warsaw
* Updated NEWS.txt for 3.0a3. |
589 |
User visible changes
|
590 |
--------------------
|
|
591 |
||
592 |
* So called 'new style' subject prefixing is the default now, and the only
|
|
593 |
option. When a list's subject prefix is added, it's always done so before |
|
594 |
any Re: tag, not after. E.g. '[My List] Re: The subject'. |
|
595 |
* RFC 2369 headers List-Subscribe and List-Unsubscribe now use the preferred
|
|
596 |
-join and -leave addresses instead of the -request address with a subject |
|
597 |
value. |
|
598 |
||
599 |
Configuration
|
|
600 |
-------------
|
|
601 |
||
602 |
* There is no more separate configure; make; make install step. Mailman 3.0
|
|
603 |
is a setuptools package. |
|
604 |
* Mailman can now be configured via a 'mailman.cfg' file which lives in
|
|
605 |
$VAR_PREFIX/etc. This is used to separate the configuration from the |
|
606 |
source directory. Alternative configuration files can be specified via |
|
607 |
-C/--config for most command line scripts. mailman.cfg contains Python |
|
608 |
code. mm_cfg.py is no more. You do not need to import Defaults.py in |
|
609 |
etc/mailman.cfg. You should still consult Defaults.py for the list of site |
|
610 |
configuration variables available to you. |
|
611 |
||
612 |
See the etc/mailman.cfg.sample file. |
|
613 |
* PUBLIC_ARCHIVE_URL and DEFAULT_SUBJECT_PREFIX now takes $-string
|
|
614 |
substitutions instead of %-string substitutions. See documentation in |
|
615 |
Defaults.py.in for details. |
|
616 |
* Message headers and footers now only accept $-string substitutions;
|
|
617 |
%-strings are no longer supported. The substitution variable |
|
618 |
'_internal_name' has been removed; use $list_name or $real_name |
|
619 |
instead. The substitution variable $fqdn_listname has been added. |
|
620 |
DEFAULT_MSG_FOOTER in Defaults.py.in has been updated accordingly. |
|
621 |
* The KNOWN_SPAMMERS global variable is replaced with HEADER_MATCHES. The
|
|
622 |
mailing list's header_filter_rules variable is replaced with header_matches |
|
623 |
which has the same semantics as HEADER_MATCHES, but is list-specific. |
|
624 |
* DEFAULT_MAIL_COMMANDS_MAX_LINES -> EMAIL_COMMANDS_MAX_LINES
|
|
625 |
* All SMTP_LOG_* templates use $-strings and all consistently write the
|
|
626 |
Message-ID as the first item in the log entry. |
|
627 |
* DELIVERY_MODULE now names a handler, not a module (yes, this is a
|
|
628 |
misnomer, but it will likely change again before the final release). |
|
629 |
||
630 |
Architecture
|
|
631 |
------------
|
|
632 |
||
633 |
* Internally, all strings are Unicodes.
|
|
634 |
* Implementation of a chain-of-rules based approach for deciding whether a
|
|
635 |
message should initially be accepted, held for approval, rejected/bounced, |
|
636 |
or discarded. This replaces most of the disposition handlers in the |
|
637 |
pipeline. The IncomingRunner now only processes message through the rule |
|
638 |
chains, and once accepted, places the message in a new queue processed by |
|
639 |
the PipelineRunner. |
|
640 |
* Substantially reworked the entire queue runner process management,
|
|
641 |
including mailmanctl, a new master script, and the qrunners. This should |
|
642 |
be much more robust and reliable now. |
|
643 |
* The Storm ORM is used for data storage, with the SQLite backend as the
|
|
644 |
default relational database. |
|
645 |
* Zope interfaces are used to describe the major components.
|
|
646 |
* Users are now stored in a unified database, and shared across all mailing
|
|
647 |
lists. |
|
648 |
* Mailman's web interface is now WSGI compliant. WSGI is a Python standard
|
|
649 |
(PEP 333) allowing web applications to be (more) easily integrated with any |
|
650 |
number of existing Python web application frameworks. For more information |
|
651 |
see: |
|
652 |
||
653 |
http://www.wsgi.org/wsgi |
|
654 |
http://www.python.org/dev/peps/pep-0333/ |
|
655 |
||
656 |
Mailman can still be run as a traditional CGI program of course. |
|
657 |
* Mailman now provides an LMTP server for more efficient integration with
|
|
658 |
supporting mail servers (e.g. Postfix, Sendmail). The Local Mail Transport |
|
659 |
Protocol is defined in RFC 2033: |
|
660 |
||
661 |
http://www.faqs.org/rfcs/rfc2033.html |
|
662 |
* Virtual domains are now fully supported in that mailing lists of the same
|
|
663 |
name can exist in more than one domain. This is accomplished by renaming |
|
664 |
the lists/ and archives/ subdirectories after the list's posting address. |
|
665 |
For example, data for list foo in example.com and list foo in example.org |
|
666 |
will be stored in lists/foo@example.com and lists/foo@example.org. |
|
667 |
||
668 |
For Postfix or manual MTA users, you will need to regenerate your mail |
|
669 |
aliases. Use bin/genaliases. |
|
670 |
||
671 |
VIRTUAL_HOST_OVERVIEW has been removed, effectively Mailman now operates |
|
672 |
as if it were always enabled. If your site has more than one domain, |
|
673 |
you must configure all domains by using add_domain() in your |
|
674 |
etc/mailman.cfg flie (see below -- add_virtual() has been removed). |
|
675 |
* If you had customizations based on Site.py, you will need to re-implement
|
|
676 |
them. Site.py has been removed. |
|
677 |
* The site list is no more. You can remove your 'mailman' site list unless
|
|
678 |
you want to retain it for other purposes, but it is no longer used (or |
|
679 |
required) by Mailman. You should set NO_REPLY_ADDRESS to an address that |
|
680 |
throws away replies, and you should set SITE_OWNER_ADDRESS to an email |
|
681 |
address that reaches the person ultimately responsible for the Mailman |
|
682 |
installation. The MAILMAN_SITE_LIST variable has been removed. |
|
683 |
* qrunners no longer restart on SIGINT; SIGUSR1 is used for that now.
|
|
684 |
||
685 |
Internationalization Big Changes
|
|
686 |
--------------------------------
|
|
687 |
||
688 |
* Translators should work only on messages/<lang>/LC_MESSAGES/mailman.po.
|
|
689 |
Templates files are generated from mailman.po during the build process. |
|
690 |
||
691 |
New Features
|
|
692 |
------------
|
|
693 |
||
694 |
* Confirmed member change of address is logged in the 'subscribe' log, and if
|
|
695 |
admin_notify_mchanges is true, a notice is sent to the list owner using a |
|
696 |
new adminaddrchgack.txt template. |
|
697 |
* There is a new list attribute 'subscribe_auto_approval' which is a list of
|
|
698 |
email addresses and regular expressions matching email addresses whose |
|
699 |
subscriptions are exempt from admin approval. RFE 403066. |
|
700 |
||
701 |
Command line scripts
|
|
702 |
--------------------
|
|
703 |
||
704 |
* Most scripts have grown a -C/--config flag to allow you to specify a
|
|
705 |
different configuration file. Without this, the default etc/mailman.cfg |
|
706 |
file will be used. |
|
707 |
* the -V/--virtual-host-overview switch in list_lists has been removed, while
|
|
708 |
-d/--domain and -f/--full have been added. |
|
709 |
* bin/newlist is renamed bin/create_list and bin/rmlist is renamed
|
|
710 |
bin/remove_list. Both take fully-qualified list names now (i.e. the list's |
|
711 |
posting address), but also accept short names, in which case the default |
|
712 |
domain is used. newlist's -u/--urlhost and -e/--emailhost switches have |
|
713 |
been removed. The domain that the list is being added to must already |
|
714 |
exist. |
|
715 |
* Backport the ability to specify additional footer interpolation variables
|
|
716 |
by the message metadata 'decoration-data' key. |
|
717 |
||
718 |
Bug fixes and other patches
|
|
719 |
---------------------------
|
|
720 |
||
721 |
* Removal of DomainKey/DKIM signatures is now controlled by Defaults.py
|
|
722 |
mm_cfg.py variable REMOVE_DKIM_HEADERS (default = No). |
|
723 |
* Queue runner processing is improved to log and preserve for analysis in the
|
|
724 |
shunt queue certain bad queue entries that were previously logged but lost. |
|
725 |
Also, entries are preserved when an attempt to shunt throws an exception |
|
726 |
(1656289). |
|
727 |
* The processing of Topics regular expressions has changed. Previously the
|
|
728 |
Topics regexp was compiled in verbose mode but not documented as such which |
|
729 |
caused some confusion. Also, the documentation indicated that topic |
|
730 |
keywords could be entered one per line, but these entries were not handled |
|
731 |
properly. Topics regexps are now compiled in non-verbose mode and multi- |
|
732 |
line entries are 'ored'. Existing Topics regexps will be converted when |
|
733 |
the list is updated so they will continue to work. |
|
734 |
* The List-Help, List-Subscribe, and List-Unsubscribe headers were
|
|
735 |
incorrectly suppressed in messages that Mailman sends directly to users. |
|
736 |
* The 'adminapproved' metadata key is renamed 'moderator_approved'.
|