1
- I'm proud to release version 2.5.0b1 of the Roundup issue
1
+ I'm proud to release version 2.5.0 of the Roundup issue
2
2
tracker. This release is a bugfix and feature release, so
3
3
make sure to read `docs/upgrading.txt
4
4
<https://www.roundup-tracker.org/docs/upgrading.html>`_ to
@@ -7,7 +7,8 @@ bring your tracker up to date.
7
7
The 41 changes, as usual, include some new features and many
8
8
bug fixes.
9
9
10
- Version 2.5.0b1 does not support Python 2.
10
+ Version 2.5.0 does not support Python 2. The minimum Python
11
+ version is 3.7.
11
12
12
13
Note that you should run ``roundup-admin ... migrate`` to
13
14
update the database schema version. Do this before you use
@@ -24,54 +25,80 @@ You can install it with::
24
25
25
26
then unpack and test/install from the tarball.
26
27
27
- Among the notable improvements in 2.5.0 from the 2.4.0
28
- release are:
29
-
30
- * detect more errors in RPN search expressions. Return more
31
- useful error messages. Documented (advanced) RPN search expressions
32
- in the user guide.
33
-
34
- * change default password hash method to PBKDF2 with SHA512. You
35
- may need to reset password_pbkdf2_default_rounds to a lower
36
- value. See upgrading doc.
37
-
38
- * add filter function to Permission objects. This pushes some
39
- permission checks down to the SQL database and speeds up display of
40
- index pages.
41
-
42
- * fix crash bug on windows with Python 3.13
43
-
44
- * update doc on required REST headers. Also other docs updates.
45
-
46
- * detect error condition early when we can't respond with requested
47
- REST format response (e.g. xml is requested).
48
-
49
- * do not generate an error if a PUT REST request sets the user's
50
- address to the current value.
51
-
52
- * make ``roundup-gettext`` extract translatable strings from detectors
53
- and extensions.
54
-
55
- * improve security of session cookies by marking them with the magic
56
- ``__Secure__`` prefix.
57
-
58
- * make the rest endpoint return raw message or file content data. Use
59
- the ``binary_content`` endpoint and a suitable ``Accept``` header in
60
- the request.
61
-
62
- * add support for the ``defusedxml`` Python module to improve security when
63
- using XML.
64
-
65
- * add templating function: ``utils.set_http_response(integer)`` to set
66
- HTTP return code from your template.
67
-
68
- * add generation of native HTML date and number/integer inputs. See
69
- Upgrading for caveats this is disabled by default.
70
-
71
- * re-enable support for GPG/PGP signed emails. Requires installing
72
- from the test PyPi repository.
73
-
74
- * remove XHTML support simplifying the code base
28
+ Among the significant enhancements in version 2.5.0 compared to
29
+ the 2.4.0 release are:
30
+
31
+ The property/field advanced search expression feature has been
32
+ enhanced. The RPN search expression format was previously
33
+ undocumented. Search expressions are usually built using the
34
+ expression editor on the search page. They can be built manually
35
+ by modifying the search URL. However errors in expressions could
36
+ return results that didn't match the user's intent. This release
37
+ documents the RPN expression syntax, adds expression error
38
+ detection, and improves error reporting.
39
+
40
+ To boost security, Roundup updated the default hash method for
41
+ password storage. Now, we're using PBKDF2 with SHA512. Because of
42
+ this change, you should change (lower) the value of
43
+ password_pbkdf2_default_rounds in your tracker's config.ini. Check
44
+ the upgrading documentation for more info. (Note this may cause
45
+ longer authentication times, the upgrade doc describes how to
46
+ downgrade the hash method.)
47
+
48
+ For better security, Roundup's session token is now prefixed with
49
+ the magic ``__Secure__`` tag when using HTTPS. This adds to the
50
+ existing ``Secure`` property that comes with the session cookie.
51
+
52
+ Roundup verifies the user's authorization for the data fetched
53
+ from the database. A new optional ``filter`` argument has been
54
+ added to Permission objects. When the administrator supplies a
55
+ filter function, it can boosts performance with SQL server
56
+ databases. This function should provide selection criteria to
57
+ offload permission checks to the database. Consequently, less data
58
+ is retrieved from the database, leading to quicker display of
59
+ index pages with reduced CPU and network traffic.
60
+
61
+ Requsting binary data from a REST endpoint has been a
62
+ hassle. Since JSON can't handle binary data, images (and other
63
+ binary data) need to be encoded. This makes them significantly
64
+ larger. The workaround was to use a non-REST endpoint for fetching
65
+ non-text attachments. This update lets the REST endpoint return
66
+ raw message or file content data. You can utilize the
67
+ ``binary_content`` endpoint along with an appropriate ``Accept``
68
+ header (e.g. ``image/jpeg``) in your request.
69
+
70
+ The ``roundup-gettext`` tool has been enhanced to extract
71
+ translatable strings from detectors and extensions. This will
72
+ simplify the process of translating your trackers.
73
+
74
+ Other miscellaneous fixes include:
75
+
76
+ * Fixed a crash bug on Windows with Python 3.13.
77
+
78
+ * Updated documentation on required REST headers, along with other
79
+ documentation updates.
80
+
81
+ * Early detection of error conditions when we can't provide the
82
+ requested REST format response (like when XML is requested).
83
+
84
+ * An error is not generated if a PUT REST request sets the user's address
85
+ to its current value.
86
+
87
+ * Added support for the ``defusedxml`` Python module to enhance
88
+ security when using XML.
89
+
90
+ * Introduced a templating function:
91
+ ``utils.set_http_response(integer)`` to set the HTTP return code
92
+ directly from your template.
93
+
94
+ * Added the ability to generate native HTML date and
95
+ number/integer inputs. Check Upgrading for caveats, as this
96
+ feature is disabled by default.
97
+
98
+ * Re-enabled support for GPG/PGP signed emails, which requires
99
+ installation from the test PyPi repository.
100
+
101
+ * Removed XHTML support to simplify the code base.
75
102
76
103
The file CHANGES.txt has a detailed list of feature
77
104
additions and bug fixes for each release. The most recent
0 commit comments