RT 4.4.0 -- 2016-02-04
We're thrilled to announce the availability of RT 4.4.0! This is
the first release for the next major version of RT. The focus of
this release series is quality-of-life improvements for both users
When upgrading, please be sure to review the upgrading documentation
available in docs/UPGRADING-4.4, as there are a number of
backward-incompatible changes that come along with the new version
number. Upgrading documentation is also available at
A list of the major new features in RT 4.4.0 is included below. Many
of the new features are described and demoed in a series of
blog posts on http://blog.bestpractical.com/ with still more to come.
Finally, we'd like to invite you to attend our next training session in
Hamburg, Germany, which covers the new features in RT 4.4 as well as
RTIR and its next version. Visit http://bestpractical.com/training for
- Shawn M Moore, for Best Practical
* RT now includes the Assets extension for tracking your physical and
* Attachments can now be stored outside of the database either on disk, in
Dropbox, or on Amazon S3. Attachments can also be directly served from S3.
* SLA tracking is now part of core RT. You can define many different service
levels that take your business hours and holidays into account.
* External authentication and LDAP integration are now shipped as core RT
* RT now has support for custom roles, along the lines of Requestor, Owner,
Cc, and AdminCc. These roles can be single-member or multi-member.
Privileges can be assigned to members of custom roles, you can search based
on custom role membership, you can notify custom role members in
scrips, and so on.
* RT now has a modern file upload interface which allows you to select
multiple files in one fell swoop, drag and drop attachments onto RT, and
inline preview certain file types like images.
* We've added a "scroll" option for gradually loading in ticket history as
the user scrolls down, much like "infinite scroll". This considerably
improves perceived performance.
* Existing attachments on a ticket can be reused in subsequent replies,
so you don't have to upload them again.
* We now provide some basic Articles configuration for new deploys so that
you can start using the feature immediately.
* You can now break up your RT_SiteConfig.pm file into logically-related
chunks under the RT_SiteConfig.d/ directory.
* You can now specify default values at the queue level for certain ticket
fields, including custom fields.
* RT now warns you when you write the word "attach" (or "attached", etc)
but haven't provided any attachments yet, to avoid "sorry, I forgot this
attachment" followup mail.
* RT now understands many more types of "human" date strings.
* Users can now choose any subset of the seven weekdays to receive their
daily dashboard subscriptions.
* The query builder display format panel has seen several improvements;
most importantly adjusting the display columns no longer reloads the
* We've added a popout ticket timer for helping you track time inside RT.
The timer is associated with a ticket and will add the time to to it for
* RT now ships with keyboard shortcuts for primarily for navigating ticket
* We ship a (disabled-for-upgrades, enabled-for-new-deploys) scrip for
carrying over time worked to parent tickets. Similarly, we ship a scrip for
tracking time worked per user.
* We've added a way to quickly create new linked tickets in queues other than
the one that the current ticket is in.
* There's a new site-level config setting and user preference for hiding
unset fields on ticket display pages.
* Custom fields now have a customizable "entry hint" for helping users
understand what they should be entering as values.
* TicketSQL and the search builder now support Status = '__Active__' and
Status = '__Inactive__' type queries, so you no longer need to enumerate
all statuses like `Status = 'new' OR Status = 'open' OR Status = 'stalled'`
* The mailgate has been completely redesigned and modernized.
General user UI
* Improve and unify display of topactions (new ticket in, simple search,
article search, etc)
* Empty selection boxes no longer render 1px wide (#31316)
* Replace singular use of "Administrative Cc" with "AdminCc"
* Don't display "check box to delete" for every group on queue watcher page
* Don't render empty "Ticket #:" results in bulk update
* Improved the paging links in collection lists (#30374)
* IPv6 custom fields are rendered in their compressed representation
* Queue name on ticket display is now a link to a search for all active
tickets in that queue
* Search builder display format now properly supports "large" sizing
* Display more "show columns" in search builder
* Record transactions for queue changes
* Show queue ID if the user can't see the queue name
* New, modern bookmark star icons to better match ticket timer icon
* If there's a single pending ticket, just show the ticket number (#30692)
* Improve messaging for enabling and disabling custom fields
* Improve messaging for applying a custom field to a queue (#31128)
* Mention which principal and right was granted instead of simply saying
* Improve "user already has right" error
* Gray out "(no value)" for custom fields
* Hide "transaction has no content" entries from extract as article
* Improve CSRF whitelist (#31090)
* Make user preferences use label tags for better clickiness (#30953)
* Rename "Quicksearch" (the table of queues) to "QueueList" (#18514)
* When possible sort charts numerically rather than ascii-betically
* Self-service Cc field now allows for autocompleting multiple users
* IP custom field textboxes now wide enough for full IPv6 addresses (#24565)
* Move attachments to below messagebox on bulk update for consistency
* Stop rounding large numbers of hours worked into days
* Add a "chosen" UI for making long lists of select custom field values more
* Search builder now uses the "chosen" UI for selecting display columns
* Increase MaxInlineBody
* Improved management of mail recipients
* Stop cloning time fields when creating child tickets
* Improve datepicker usage for relative date strings
* Squelching now applies to all updates in the request, instead of only the
initial correspond/comment transaction.
* Sync scrip recipients with non-wysiwyg plaintext editor
* Fix for "0" values in bin/rt (#31290)
* rt-email-dashboards now has a --log option
* rt-crontool now allows multiple actions
* Improve structure of multipart mail
* Rights management pages now have gray callout for sections that have
* For new installs we now provide a General topic and Content CF for Articles
* Query log now supports Undup and ShowElem params
* Queues now have a sort order
* We no longer delete articles but instead just disable them to help maintain
* Allow ModifyTicket to change nobody to someone else, without OwnTicket
* Select CFs will now suppress "(no value)" option when it's invalid
* Add new ShowAssetsMenu right to manage visibility of Assets feature
* Use MiB rather than MB for attachment size config (GitHub #162)
* ReferrerComponents lets you fine-tune CSRF whitelist and blacklist
* The user shredder now supports a no_ticket_transactions option
* Avoid warnings if users don't have sufficient rights on reminders
* Fix decoding issues (#31155)
* Removed redundant Apache::DBI dependencies (#31210)
* Shred object custom fields when shredding a custom field
* Improve compat and docs for Apache 2.4
* Put temporary files for email parsing in /tmp
* Allow deep namespaces for ScripActions and Conditions
* Copy rt-ldapimport into install-tree sbin
* Avoid DateTime::Locale 1.00 and 1.01; earlier and later versions are OK
* Upgrade jQuery from 1.9.1 to 1.11.3
* Upgrade jQuery UI from 1.10.0 to 1.11.4
* Upgrade CKEditor from 4.0.1 to 4.5.3
* Removed many unused fields on tickets and users
* Added a Group->Label method for displaying groups in the UI
* Ticket Modify now processes watcher updates
* Support optional inclusion of RT-System and Nobody users in autocomplete
* Transactions now have a ColumnMap
* /User/Prefs.html became /Prefs/AboutMe.html for consistency (#14200)
* We now warn when you forget to undef $mech in tests, which can
cause spurious failures
* Additional callbacks
* Remove mostly-duplicate code for Rules which can never trigger
* We've written new documentation for the query builder, dashboards,
reporting, and other related features
* SLA cookbook
* Update documentation to expect that most installations will deploy
* Also remind users that they should set up backups in the README
* Clarify "otherwise your internal links may be broken" (#31117)
* Unify our documentation for upgrading cored extensions
* Switch example for Plugins in RT_Config from ExternalAuth to JSGantt
* Graphing now uses the localization engine in more places
* Update translations for: Basque, Bulgarian, Catalan, Simplified and
Traditional Chinese, Croatian, Czech, Danish, Dutch, Estonian, Finnish,
French, German, Greek, Hungarian, Icelandic, Indonesian, Italian, Japanese,
Latvian, Lithuanian, Norwegian (Bokmal and Nynorsk), Persian, Polish,
Portuguese, Russian, Serbian, Slovak, Slovenian, Spanish, Swedish, and
A complete changelog is available from git by running:
git log rt-4.2.12..rt-4.4.0