The new Redmine version is packed with 200 improvements and bug fixes. In this post, I’ll give you an overview of what has changed.
User Interface Improvements
A lot of work went into improving Redmine’s user interface, with quite a few patches coming from the Planio team. My personal favorites are better support for High Resolution (a.k.a. Retina) displays with user avatars and embedded images (#24922, #24927) and the various improvements regarding the handling and display of attachments:
- Markup for images dragged into a text area holding wiki-formatted text is now generated automatically (#26071)
- All Attachment links lead to a preview page now and feature a trailing Download icon for direct download (#25988)
- The attachment list got a cleaner layout (#25988)
- Multiple attachments may be removed at once when editing the container object (#13072)
Another highlight is the search-as-you-type projects dropdown which replaces the old projects select box that wasn’t very helpful with a large number of projects.
Improved Issue Lists and Querying
For many users working with issues and issue lists is the most important thing in their use of Redmine, so it’s always great to see improvements in this area.
The issue list is now able to display issue attachments in the new Files column (#25515), and you may even filter the list for issues having an attachment whose name matches a given substring (#2783). Also, similar to the description, you can now display the Last Comment from the history of each issue.
You may now search for issues Updated by or Last updated by a specific user (#17720. The latter is also available as a display column now and matches only issues where the last update has been made by a given user, while the former will find any issues a given user has updated at any point in their history.
Filtering issues by target version got an upgrade as well - now it is possible to filter by version status (closed or not) and due date, #23215). In addition to that, version custom fields can now be used for issue queries (#21249).
Time Tracking Enhancements
Redmine’s time tracking feature is more visible now through it’s own menu tab, and it comes with quite a few improvements:
- Time entries may now be grouped by user or date, giving a better overview without the need for external tools like Excel (#16843)
- The state of the Spent Time query form may now be saved for future use in the same way it is already possible for issue queries (#14790)
- Administrators may choose to make the Issue and Comment fields on time log entries mandatory (#24577)
Your personal overview page can now be customized in place (#25297). The ability to embed issue lists powered by custom issue queries (#1565) makes this page much more useful in my opinion. Furthermore, the existing predefined issue lists (watched, assigned and reported issues) may now be sorted at will and changed in terms of which columns are displayed.
Under the Hood
Improved handling of user sessions allows you to stay logged in on several devices at the same time (#10840). This makes parallel use of Redmine e.g. on a smartphone much more convenient.
Redmine now runs fine with Ruby 2.4 (#25048) and it comes with quite a few performance enhancements in specific areas. Many translations were improved with the help of numerous patches provided by users.
The REST API was extended to allow modification of attachments (#22356) and in various places the data returned by API calls was completed / extended (#22795, #7506, #12181, #23566). There’s also a new API for adding files to a project (#19116).
In terms of attachment storage, the checksum algorithm used to determine attachment identity was upgraded to SHA256 (#25240), and attachments bearing an identical checksum are only stored on disk once, potentially saving a lot of disk space in situations where the same attachments get added multiple times (#25215). Both patches are a direct result of my work at Planio.
Redmine 3.4 is a release full of new features and improvements, and as such for sure worth upgrading to as soon as possible.
However, before you upgrade your production environment, be sure to test the new release together with any plugins you are using in a test environment.
If that sounds like an awful lot of work, check out my posts about Deploying and maintaining Redmine the right way and Deploying Redmine with Capistrano.