news.rst 13.8 KB
Newer Older
1 2 3
================
News / Changelog
================
Florian Fuchs's avatar
Florian Fuchs committed
4

5
The Postorius Django app provides a web user interface to
Florian Fuchs's avatar
Florian Fuchs committed
6
access GNU Mailman.
Florian Fuchs's avatar
Florian Fuchs committed
7

8
Postorius is free software: you can redistribute it and/or
Florian Fuchs's avatar
Florian Fuchs committed
9 10 11
modify it under the terms of the GNU Lesser General Public License as
published by the Free Software Foundation, version 3 of the License.

12
Postorius is distributed in the hope that it will be useful,
Florian Fuchs's avatar
Florian Fuchs committed
13 14 15 16 17
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser
General Public License for more details.

You should have received a copy of the GNU Lesser General Public License
18
along with Postorius. If not, see <http://www.gnu.org/licenses/>.
Florian Fuchs's avatar
Florian Fuchs committed
19 20


21 22 23 24 25 26 27
1.3.4
=====

(2020-XX-XX)

* Update the default Site when creating a domain to match the domain if it is
  ``example.com``. (Closes #427)
Abhilash Raj's avatar
Abhilash Raj committed
28 29
* Add the ability to subscribe via Primary Address instead of specific
  address. (See !516)
30 31
* Fix a bug where the user's display name would be ignore when
  subscribing. (Closes #429)
32
* Display a user's name in the pending subscription request list. (Closes #430)
33 34
* Set a user's preferrred_address in Core if it isn't already set and the user
  has a Primary Address that is verified.
35 36 37
* Use the new APIs in Core to get the count of held messages and pending
  subscriptions to improve peroformance of settings page for list
  owners. (Fixes #417)
38 39
* Show held message is local time of the User. (Closes #434)

40

Abhilash Raj's avatar
Abhilash Raj committed
41

42 43
1.3.3
=====
Abhilash Raj's avatar
Abhilash Raj committed
44

Abhilash Raj's avatar
Abhilash Raj committed
45
(2020-06-01)
Abhilash Raj's avatar
Abhilash Raj committed
46

47 48
* Expose additional list settings.  (See !483)
* Correct description of Digest Frequency.  (Closes #395)
49
* Added links to Reply-To munging articles.  (Closes #401)
50 51
* Fix "Show Headers" button to show the held message headers in the
  held message popup. (Closes #407)
Abhilash Raj's avatar
Abhilash Raj committed
52
* Fix the held message popup structure and increase the max width of the popup
53 54 55
  to be 800px(modal-lg) for larger screens. (Closes #405)
* Fix FILTER_VHOST = True option to try to find the email host corresponding
  to the requesting web host.  (Closes #394)
56
* Allow specifying a reason when rejecting a held message. (Closes #412)
57
* Allow users to set their preferred language in their preferences. (Closes #413)
58
* Add support to ban addresses for the entire Mailman installation. (Closes #357)
59 60 61
* Un-handled ``HTTPError`` exception raised from MailmanClient now results in an
  error page and proper logging instead of mysterious ``KeyError`` in logs.
  (Closes #341)
62 63
* Change List settings navigation to be vertical instead of horizontal. (See
  !509)
64 65
* Move bounce processing settings into a new vertical tab for better
  visibility.
66 67
* Add URL to edit the Web host for each domain in Domain Index page. Also, show
  the ``SITE_ID`` for each webhost. (Closes #426)
68

Abhilash Raj's avatar
Abhilash Raj committed
69

Abhilash Raj's avatar
Abhilash Raj committed
70 71 72
1.3.2
=====

Abhilash Raj's avatar
Abhilash Raj committed
73
(2020-01-12)
Abhilash Raj's avatar
Abhilash Raj committed
74

75
* Do not show pagination, when user is authenticated. (Closes #387)
Abhilash Raj's avatar
Abhilash Raj committed
76
* Drop support for Django 1.11.
77 78
* Add support to choose options for ``pre_confirm``, ``pre_approve`` and
  ``pre_verify`` when mass subscribing. (Fixes #203)
Abhilash Raj's avatar
Abhilash Raj committed
79

Abhilash Raj's avatar
Abhilash Raj committed
80 81 82
1.3.1
=====

Abhilash Raj's avatar
Abhilash Raj committed
83
(2019-12-08)
Abhilash Raj's avatar
Abhilash Raj committed
84

85 86 87 88
* Show templates' file names in selection list where admins can pick
  individual templates for customization. (See !425)
* Make template short names more prominent on all email templates related
  views. (See !425)
89
* Bind object attributes to local variables in {% blocktrans %} (See !439)
90
* Set the initial style in new list form as the default style. (Closes #310)
91 92
* Fix a bug where logged in users's index page view would cap the total number
  of lists for a role to 50. (Closes #335)
93 94
* Fix a bug where handling non-existent held message can raise 500
  exception. (Closes #349)
95 96
* Emit appropriate signals when Domain and MailingList is updated. (Closes
  #385)
97
* Do not strip leading whitespaces in Email Templates. (Closes #301)
98
* Hold date for held messages are now displayed correctly. (Closes #312)
Abhilash Raj's avatar
Abhilash Raj committed
99
* Add support for Python 3.8.
Abhilash Raj's avatar
Abhilash Raj committed
100
* Add support for Django 3.0.
Abhilash Raj's avatar
Abhilash Raj committed
101

Abhilash Raj's avatar
Abhilash Raj committed
102
1.3.0
Abhilash Raj's avatar
Abhilash Raj committed
103
=====
Abhilash Raj's avatar
Abhilash Raj committed
104

Abhilash Raj's avatar
Abhilash Raj committed
105
(2019-09-04)
Abhilash Raj's avatar
Abhilash Raj committed
106

Abhilash Raj's avatar
Abhilash Raj committed
107 108
* Fix a string substitution bug which would cause un-substituted raw string to
  be exposed as notification to admin. (Closes #327)
109 110
* Add support for ``FILTER_VHOST`` option to filter MalingLists based on
  ``HOST`` header of incoming request. (Closes #330)
111
* List Summary page now renders List info as markdown. (Closes #244)
112 113
* Moderation action for held message's sender can now be set from held
  message's view.(Closes #127)
114 115
* Add a 'Ban' button to list of subscription requests to help administrators
  against spams. (Closes #339)
116 117 118 119
* Added support for Django 2.2.
* ``pytest`` will be used to run tests instead of default Django's test runner.
* Remove ``vcrpy`` and use fixtures to start and stop Mailman's REST API to
  test against, without having to record tapes to be replayed.
120 121
* Corrected display message in 'recieve_list_copy' option in global mailman
  preferences of mailman settings. (Closes #351)
122
* Allow setting a MailingList's Preferred Language. (Closes #303)
Abhilash Raj's avatar
Abhilash Raj committed
123 124
* Allow a empty templates as a workaround for missing settings to skip
  email decoration. (Closes #331)
125 126
* Expose ``digest_volume_frequency``, ``digest_send_periodict`` and
  ``digests_enabled`` settings for MailingLists.
127
* Add a badge with count of held messages and pending subscription requests
Mark Sapiro's avatar
Mark Sapiro committed
128
  for moderator approval. (Closes #308)
129
* Add support to add, view and remove domain owners.
130
* Allow setting the visibility options for MailingList's member list.
131
* Make page titles localizable.
Abhilash Raj's avatar
Abhilash Raj committed
132

133

134 135
1.2.4
=====
Abhilash Raj's avatar
Abhilash Raj committed
136
(2019-02-09)
137 138 139 140 141

* Add support for ``explicit_header_only`` in list settings.
  (See !369)


142 143
1.2.3
=====
Abhilash Raj's avatar
Abhilash Raj committed
144
(2019-01-19)
145

146 147
* Expose ``max_num_recipients`` in list settings.  (Closes #297)
* Add support for Non-member management in Postorius.  (Closes #265)
Mark Sapiro's avatar
Mark Sapiro committed
148
* ``Members`` tab in Mailing List settings page is now called ``Users``.
149 150 151
  (Closes #309)
* Show pending subscription requests are only pending for Moderator.
  (Closes #314)
152

153

Abhilash Raj's avatar
Abhilash Raj committed
154 155
1.2.2
=====
Abhilash Raj's avatar
Abhilash Raj committed
156
(2018-08-30)
157

Abhilash Raj's avatar
Abhilash Raj committed
158 159 160
* Add support for Python 3.7 with Django 2.0+
* Index page only shows related lists for signed-in users with option to
  filter based on role.
161
* Expose respond_to_post_requests in Postorius. (Closes #223)
Abhilash Raj's avatar
Abhilash Raj committed
162 163


Mark Sapiro's avatar
Mark Sapiro committed
164 165 166 167 168 169
1.2.1
=====
(2018-07-11)

* A Django migration was missing from version 1.2.0.  This is now added.

Abhilash Raj's avatar
Python3  
Abhilash Raj committed
170 171
1.2
===
Abhilash Raj's avatar
Abhilash Raj committed
172 173
(2018-07-10)

Abhilash Raj's avatar
Python3  
Abhilash Raj committed
174
* Postorius now runs only on Python 3.4+ and supports Django 1.8 and 1.11+
175
* Added the ability to set and edit ``alias_domain`` to the ``domains`` forms.
Abhilash Raj's avatar
Abhilash Raj committed
176 177 178 179 180 181
* List Create form now allows selecting the ``style``. A ``style`` is how a new
  mailing list is configured.
* Minimum supported Mailman Core version is now 3.2.0. This is because the
  ``styles`` attribute for MailingList resource is exposed in 3.2, which
  contains all the default ``styles`` supported by Core and their human readable
  description.
182 183
* Account subscription page now lists all the memberships with their respective
  roles. This avoids repeated API calls for the way data was displayed
184
  before.  (Closes #205)
185 186 187 188 189 190 191 192 193 194 195 196 197
* Postorius now supports only Django 1.11+.
* Duplicate MailingList names doesn't return a 500 error page and instead adds
  an error to the New MailingList  form. (Fixes #237)
* Pending subscription requests page is now paginated. (See !298)
* Add owners/moderators form now allows specifying a Display Name, along with
  their email. (Fixes #254)
* Members views now show total number of members at the top. (See !315)
* Fixed a bug where GET on views that only expect a POST would cause 500 server
  errors instead of 405 method not allowed. (Fixes #185)
* Member preferences form can now be saved without having to change all the
  fields. (Fixes #178)
* Fixed a bug where the 'Delete' button to remove list owners didn't work due to
  wrong URL being rendered in the templates. (Fixes #274)
198 199
* Require Explicit Destination is added to the Message Acceptance form.
  (Closes #277)
200 201 202 203 204 205 206 207
* Delete Domain page now shows some extra warning information about all the
  mailing lists that would be deleted after deleting the Domain. (See !250)
* Superusers can now view Mailman Core's current version and REST API version
  being used under 'System Information' menu in the top navigation bar. (See !325)
* Fixed a bug where 500 error template wouldn't render properly due to missing
  context variables in views that render that templates (See !334)
* Postorius now allows adding and editing templates for email headers, footers
  and some of the automatic responses sent out by Mailman. (See !327)
Abhilash Raj's avatar
Python3  
Abhilash Raj committed
208

209 210 211 212 213
1.1.2
=====
(2017-12-27)

* Added a new ``reset_passwords`` command that resets _all_ user's passwords
214 215
  inside of Core. This password is different from the one Postorius
  maintains. The Postorius password is the one used for logging users in.
216 217 218
* Postorius now sets the 'Display Name' of the user in Core correctly. This
  fixes a security vulnerability where user's display_name would be set as their
  Core's password.
219

220

221 222 223 224
1.1.1
=====
(2017-11-17)

225 226 227 228
* Improved testing and internal bug fixes.
* Preserve formatting of Mailing List description in the summary view.
* Site's Name isn't capitalized anymore in the navigation bar.
* html5shiv and response.js libraries are now included, instead of loading from a CDN.
229

230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245
1.1.0 -- "Welcome to This World"
================================
(2017-05-26)

* Added DMARC mitigation settings
* Switch to Allauth auth library
* Preference page improvements
* Moderation page improvements
* Django support up to Django 1.11
* Added form to edit header matches
* Domain edit form improvements
* All pipelines recognized in alter messages form
* Use django-mailman3 to share common code with HyperKitty
* Various bug fixes, code cleanup, and performance improvements


Simon Hanna's avatar
Simon Hanna committed
246 247 248 249 250 251 252
1.0.3
=====
(2016-02-03)

* Fix security issue


Florian Fuchs's avatar
Florian Fuchs committed
253 254 255 256 257 258 259
1.0.2
=====
(2015-11-14)

* Bug fix release


260 261 262 263 264
1.0.1
=====
(2015-04-28)

* Help texts Small visual alignment fix; removed unnecessary links to
265
  separate help pages.
266 267
* Import fix in fieldset_forms module (Django1.6 only)

Florian Fuchs's avatar
Florian Fuchs committed
268

Florian Fuchs's avatar
Florian Fuchs committed
269 270 271
1.0.0 -- "Frizzle Fry"
======================
(2015-04-17)
272 273

* French translation. Provided by Guillaume Libersat
274
* Addedd an improved test harness using WebTest. Contributed by Aurélien Bompard.
275 276
* Show error message in login view. Contributed by Aurélien Bompard (LP: 1094829).
* Fix adding the a list owner on list creation. Contributed by Aurélien Bompard (LP: 1175967).
277
* Fix untranslatable template strings. Contributed by Sumana Harihareswara (LP: 1157947).
278
* Fix wrong labels in metrics template. Contributed by Sumana Harihareswara (LP: 1409033).
279
* URLs now contain the list-id instead of the fqdn_listname. Contributed by Abhilash Raj (LP: 1201150).
280
* Fix small bug moderator/owner forms on list members page. Contributed by Pranjal Yadav (LP: 1308219).
281
* Fix broken translation string on the login page. Contributed by Pranjal Yadav.
282
* Show held message details in a modal window. Contributed by Abhilash Raj (LP: 1004049).
283
* Rework of internal testing
284
* Mozilla Persona integration: switch from django-social-auto to django-browserid: Contributed by Abhilash Raj.
285
* Fix manage.py mmclient command for non-IPython shells. Contributed by Ankush Sharma (LP: 1428169).
Simon Hanna's avatar
Simon Hanna committed
286
* Added archiver options: Site-wide enabled archivers can not be enabled
287
  on a per-list basis through the web UI.
Florian Fuchs's avatar
Florian Fuchs committed
288
* Added functionality to choose or switch subscription addresses. Contributed by Abhilash Raj.
Simon Hanna's avatar
Simon Hanna committed
289 290
* Added subscription moderation, pre_verification/_confirmation.
* Several style changes.
291

292

Florian Fuchs's avatar
Florian Fuchs committed
293 294
1.0 beta 1 -- "Year of the Parrot"
==================================
Florian Fuchs's avatar
Florian Fuchs committed
295
(2014-04-22)
296 297

* fixed pip install (missing MANIFEST) (LP: 1307624). Contributed by Aurélien Bompard
Florian Fuchs's avatar
Florian Fuchs committed
298 299 300 301
* list owners: edit member preferences
* users: add multiple email addresses
* list info: show only subscribe or unsubscribe button. Contributed by Bhargav Golla
* remove members/owners/moderator. Contributed by Abhilash Raj
302 303


Florian Fuchs's avatar
Florian Fuchs committed
304 305 306
1.0 alpha 2 -- "Is It Luck?"
============================
(2014-03-15)
307 308

* dev setup fix for Django 1.4 contributed by Rohan Jain
309
* missing csrf tokens in templates contributed by Richard Wackerbarth (LP: 996658)
310
* moderation: fixed typo in success message call
311
* installation documentation for Apache/mod_wsgi
Florian Fuchs's avatar
Florian Fuchs committed
312
* moved project files to separate branch
313
* show error message if connection to Mailman API fails
314 315 316
* added list members view
* added developer documentation
* added test helper utils
317
* all code now conform to PEP8
318
* themes: removed obsolete MAILMAN_THEME settings from templates, contexts, file structure; contributed by Richard Wackerbarth (LP: 1043258)
319
* added access control for list owners and moderators
Mark Sapiro's avatar
Mark Sapiro committed
320
* added a mailmanclient shell to use as a ``manage.py`` command (``python manage.py mmclient``)
321
* use "url from future" template tag in all templates. Contributed by Richard Wackerbarth.
322
* added "new user" form. Contributed by George Chatzisofroniou.
323 324 325 326
* added user subscription page
* added decorator to allow login via http basic auth (to allow non-browser clients to use API views)
* added api view for list index
* several changes regarding style and navigation structure
Florian Fuchs's avatar
Florian Fuchs committed
327 328 329 330
* updated to jQuery 1.8. Contributed by Richard Wackerbarth.
* added a favicon. Contributed by Richard Wackerbarth.
* renamed some menu items. Contributed by Richard Wackerbarth.
* changed static file inclusion. Contributed by Richard Wackerbarth.
331
* added delete domain feature.
332
* url conf refactoring. Contributed by Richard Wackerbarth.
Florian Fuchs's avatar
Florian Fuchs committed
333
* added user deletion feature. Contributed by Varun Sharma.
Florian Fuchs's avatar
Florian Fuchs committed
334

335 336


Florian Fuchs's avatar
Florian Fuchs committed
337 338 339 340 341 342
1.0 alpha 1 -- "Space Farm"
===========================
(2012-03-23)

Many thanks go out to Anna Senarclens de Grancy and Benedict Stein for
developing the initial versions of this Django app during the Google Summer of
Florian Fuchs's avatar
Florian Fuchs committed
343
Code 2010 and 2011.
Florian Fuchs's avatar
Florian Fuchs committed
344 345 346 347 348 349 350 351 352 353 354 355 356 357

* add/remove/edit mailing lists
* edit list settings
* show all mailing lists on server
* subscribe/unsubscribe/mass subscribe mailing lists
* add/remove domains
* show basic list info and metrics
* login using django user account or using BrowserID
* show basic user profile
* accept/discard/reject/defer messages
* Implementation of Django Messages contributed by Benedict Stein (LP: #920084)
* Dependency check in setup.py contributed by Daniel Mizyrycki
* Proper processing of acceptable aliases in list settings form contributed by
  Daniel Mizyrycki