Request Tracker v5.0.0 Release Notes
Release Date: 2020-07-16 // over 4 years ago-
RT 5.0.0 -- 2020-07-17
We're pleased to announce the general availability of RT 5.0.0. This
๐ release introduces a major update of the web UI as RT now uses
the popular open source Bootstrap front-end toolkit. This brings
๐ฑ to RT a modern, responsive layout with all of the power and familiar
๐ features of RT. Details on this and other changes and new features
are below.You can get the new version here:
๐ https://download.bestpractical.com/pub/rt/release/rt-5.0.0.tar.gz
๐ https://download.bestpractical.com/pub/rt/release/rt-5.0.0.tar.gz.ascSHA-256 sums
781ac6e21d8e1cf3514ddc6a71418cefde903df241d4e7011e75f90eb62a952e rt-5.0.0.tar.gz
f3fe75aca612cbd7904877fa2951be691f5451ef11b4048e7906700d42853975 rt-5.0.0.tar.gz.ascAlthough only noted in a few items in the list below, the Bootstrap
โก๏ธ update alone accounted for hundreds of commits and thousands of lines
โก๏ธ of code updates. We hope the update to a very popular web framework
will make it even easier for users to create (and share!) new
themes.๐ In addition to that major UI update, this release also contains many
other big new features including a new charting library, a graphical
โก๏ธ lifecycle builder, and new web access for admins to update RT's
๐ง many configuration options. This new version of RT contains changes
and improvements from over 1,500 git commits.๐ง We have also added configuration to run RT's 35,000+ tests using
๐ TravisCI, so you can now see our test runs from GitHub.๐ A list of changes included in this release is below.
๐ New features
- ๐ Convert to Bootstrap as base web design framework
- โ Remove table-based page layout and make design responsive
- Create new elevator-light and elevator-dark themes
- Convert many on-screen hints/help to tooltips
- โ Add Fontawesome and update all icons to svg
- ๐ Allow CustomDateRanges to be defined in configuration for
๐ use in ticket search results - ๐ Support BusinessHours times in CustomDateRanges
- ๐ Support default dates when not defined for CustomDateRanges
- โ Add linking support to groups
- ๐ New Group Summary page (similar to User Summary)
- โ Add group-scoped options for default ticket listings on
Self Service pages - ๐ New transaction query builder for searching transactions
- ๐ New asset query builder for searching assets, support for AssetSQL
- ๐ง RT configuration is now available to SuperUsers in the web interface
- ๐ CKEditor updated to 4.13, re-styled for new themes
- โก๏ธ Update chart UI to use chart.js
- โ Add CustomDateRanges and BusinessHours support to charts
- โ Add line charts to chart options
- Inline edit is now available on ticket display and in ticket
listings (search results, saved searches, etc.) - โ Add jGrowl for pop-up style result messages
- Ticket priority can now be set and managed using text priority
๐ง options like Low, Medium, High (configurable) - ๐ New graphical UI for building and editing lifecycles (workflow)
and lifecycle settings - ๐ LinkedQueuePortlets allows you to add a section to ticket display
with linked tickets from another queue
๐ป General user UI
- โ Add asset display menu actions to ShowAssets template
- Relabel 'Password' box on /Prefs/AboutMe to 'Access control'
- 0๏ธโฃ Default search result count display to on
- โ Add default value for Articles in Queues
- โ Add autocomplete for articles
- ๐จ Refactor ticket create and update to use new SelectArticle, merging
previous 3 form controls for articles to one - โก๏ธ Update article select to automatically show dropdown or autocomplete
box based on DropdownMenuLimit - โ Remove article hotlist configuration since all articles in a class
are available to associated queues - Queue can now be selected directly on the ticket create page and changed
before creating a ticket - Catalog can now be selected on the asset create page and changed
before creating an asset - ๐ป Re-designed listing and selection UI for RT at a glance edit page and
dashboard edit pages - ๐ New Selectize "bubbles" when entering users in Requestors, Cc, etc. on
โก๏ธ ticket create and update pages - โ Add configuration to hide custom roles from some pages like the ticket
create page, etc. - 0๏ธโฃ Select one value custom fields now default to Dropdown
- Content selected on ticket display is quoted on reply/comment
- โ Add unread message count as an option for unread messages on RT at a glance
- โก๏ธ Display current queue on ticket update page (reply/comment)
- โ Add Create Ticket option to Home menu so it is available when in assets, articles, etc.
- ๐ New page option to reverse transaction sort on current ticket while viewing
- Convert logos and images to svg
- โ Adding/deleting values for custom fields now uses ajax to update
in-page without a full page refresh - ๐ Move user-generated dashboards from the Home menu to Reports menu
- ๐ง Make Reports menu configurable, including removing default reports and
โ adding/removing dashboards (like previous functionality in Home) - ๐ Support for filtering by lifecycle in ticket query builder
- ๐ฑ Default mobile devices to full (now responsive) RT web UI. Mobile
โก๏ธ optimized UI still available by setting $ShowMobileSite - ๐ Fix table wrapping error in Ticket/Update.html
- Don't double-escape queue name in title generation stage
- โก๏ธ On ticket update, defer AJAX recipients update briefly to get form's latest status
- ๐ Improve UI of unread messages notification
- Omit groups in saved search privacy menu if user doesn't have rights
to save searches for that group - โก๏ธ Sync one time inputs back to checkboxes on ticket update page
- ๐ Support searches on NULL(unset) values on user/group admin pages
- Fill up cells of record's last row in search results
- โ Add a display only Owner column as an alternative to OwnerName
- ๐ Fix mobile home navigation for iOS
Extensions Added to Core
- RT::Extension::QuoteSelection
- RT::Extension::RightsInspector
- RT::Extension::ConfigInDatabase
- RT::Extension::CustomRole::Visibility
- RT::Extension::PriorityAsString
- ๐ฑ RT::Extension::AssetSQL
- RT::Extension::LifecycleUI
- RT::Extension::REST2
- RT::Authen::Token
Command-line
- ๐ Move perl dependencies to cpanfile
- โ Many improvements to information and output of rt-test-dependencies (make testdeps)
- โก๏ธ Many updates to module dependency lists, versions, etc.
- โ Add support for JSON-formatted initialdata
- ๐ Support assets and catalogs in initialdata
- ๐ Support ObjectCustomFieldValues in initialdata
- ๐ Support Articles in initialdata
- ๐ New rt-dump-initialdata script to export RT objects to initialdata files
- โ Add documentation for serializer/importer process
Internals
- Clear Subject header from auto-generated text email part
- ๐ป Respect AllowUserAutocompleteForUnprivileged for email inputs in self service UI
- ๐ฑ Convert summary page asset searches to use AssetSQL
- ๐ Multiple changes to RT query builder to allow for customization
in extensions (specifically RTIR) - Migrate owner autocomplete to the general autocomplete
- ๐ Support gpg 2.2 for email encryption
- ๐ Allow extensions to add custom field groupings to queue defaults
- ๐ Allow a Limit value to be passed to tickets autocomplete
- โ Add ExternalAuth support for attribute mappings to user CFs
- โ Add ExternalAuth support for coderefs in attr_map
- โ Add DisplayTotalTimeWorked to RT_Config.pm
- โ Add $QuoteWrapWidth option for wrap length when quoting on ticket reply
- Fix uninitialized warning in ticket searches with active and inactive items
- ๐ Use system user to get custom field objects to inspect in searches
- 0๏ธโฃ Set a default for $AttachmentListCount
- ๐ฒ Clarify external auth logging when users are not found
- 0๏ธโฃ Default lifecyle type to ticket on SelectStatus
- ๐ Move SignatureAboveQuote to Message box properties
- โ Add support for setting user CFs on create
- โ Add sort for external custom field values
- ๐ Fix removal of scrips when shredding queues
- ๐ Restore mistakenly translated quant function in German translation
- ๐ Handle subject tags prefixed with http:// by email clients
- โ Remove duplicated closing tag for attachment delete links
- Correctly handle custom field MaxValues
- โก๏ธ Update default rights check to false to correctly handle custom
role edit rights checks on tickets - โ Add multipart/form-data encoding to EditAboutMe form
- ๐ Fix removal of custom fields when shredding queues
- โ Remove search string including numbers in ticket autocomplete search on select
- โก๏ธ Update RecentlyViewedTickets to deal with shredded/merged tickets
- ๐ Fix bug that kept 11 tickets in the "recently visited" list instead of 10
- Filter queues by checking "CreateTicket" right on ticket create page
Database
- โฌ๏ธ Drop HotList column for Classes
- โก๏ธ Update to utf8mb4 charset on MySQL/MariaDB
- โก๏ธ Update id size to BigInt for some tables that get large in big RTs
Server Administration
- ๐ง Make RT logout link configurable
- โ Add %ThemeJSFiles config to serve different js for different themes
- โ Remove references to end-of-life versions and software
- Document a fix for perl module permissions problem
- โฌ๏ธ Avoid upgrade warning of "no such table: Configurations" before it's created
- ๐ฒ Document and log information on external HTML formatters
Developer
๐ Move RT menu building logic from Mason templates into Perl
library files๐จ Refactor asset menu logic into separate functions
๐ Deprecate RT::Article::LoadByInclude that was for old article selection UI
Pass ShowHints via a callback to provide a way to hide hints
Document additional plackup options via rt-server
โ Load Test::MockTime earlier to fully replace time functions in core
๐ Allow RT_HOST to be set via environment variable for testing
โ Add docker and travis configuration to run RT tests on TravisCI
โ Avoid running multiple rt-externalize-attachments simultaneously in tests
๐ New callbacks:
๐ /Search/Build.html BeforeDisplay
/Ticket/Forward.html AfterMessageBox
/Ticket/Forward.html Initial
/SelfService/Create.html Initial
/Elements/ShowTransactionAttachments ModifyContentA complete changelog is available from git by running:
๐ฒ git log rt-4.4.4..rt-5.0.0
or visiting
rt-4.4.4...rt-5.0.0
Previous changes from v4.4.3
-
RT 4.4.3 -- 2018-06-26
We're pleased to announce the general availability of RT 4.4.3. This
๐ release introduces several new features and also bugfixes.๐ https://download.bestpractical.com/pub/rt/release/rt-4.4.3.tar.gz
๐ https://download.bestpractical.com/pub/rt/release/rt-4.4.3.tar.gz.ascSHA-256 sums
738ab43cac902420b3525459e288515d51130d85810659f6c8a7e223c77dadb1 rt-4.4.3.tar.gz
29e0f9c44e30fb8bb2d23448f1930593aef28e4b3faf5bd22619f52e53229c4f rt-4.4.3.tar.gz.asc๐ป General user UI
- ๐ Show the Ticket's Subject when modifying the ticket.
- ๐ Re-format RT/Config.pm so the
# loc
comment parses correctly. - Sort saved searches alphabetically by name rather than by id.
- ๐ In Self Service, provide a path to remove attachments from the session
when they are deleted from dropzone by the user (I#32663). - ๐ Fix evaluation of set vs. unset custom fields on display for correct hiding.
- ๐ง Set dropzone attachment size based on RT's MaxAttachmentSize configuration.
- โ Add a configuration option TreatAttachedEmailAsFiles to treat attached email
๐ as a file attachment instead of parsing as regular email. - โช Restore email header parsing for items like email addresses when
TreatAttachedEmailAsFiles is not set. This was disabled in a previous
๐ version. - 0๏ธโฃ Respect default queue settings in Create linked ticket dropdown (I#32884).
- โก๏ธ More fixes for recipient checkboxes on update. This version removes previous
โก๏ธ problematic fixes and gives a visual indication (shading) when RT is updating
recipients in the background and checkboxes should not be changed (I#33027). - Provide a way to reset personal search preferences back to the RT system
0๏ธโฃ default (I#32854). - โ Add an Untake action to the Actions tab.
- โ Add active and inactive status to query builder.
- ๐ Re-add Queue to 'Order by' dropdown in Search Builder.
- ๐ Make admin searches for queue and group case insensitive making it easier to
find groups. - 0๏ธโฃ When editing ticket basics, always add valid default value to queue selection,
๐ taking into account SeeQueue rights. - Set dropzone parallelUploads to 1 to avoid losing attachments. Also
set parallelUploads when the dropzone object is created. - ๐ป Correct error messages on user rights for CF admin UI.
- In ticket history, respect ShowHeaders option from request for
ScrollShowHistory (I#32699). - ๐ Fix ExtraArgs of callback ExtraShowHistoryArguments in ScrollShowHistory.
- In the ticket history with scroll set, continue to get transactions until all
have been shown, even if a block has been hidden for some reason (rights, etc.). - โ Add PreferDropzone config/pref option for users. Dropzone is not accessible
to screen readers and this enables the previous attachments interface which
is accessible. - ๐ In the query builder, set operator to "IS" or "IS NOT" for NULL values.
๐ This fixes a regression from pre-4.4 RT behavior. - Don't create ticket if user clicks "Go" buttons of "Include Article".
- ๐ Fix CF name escape for asset search's spreadsheet download.
- ๐ Show the user in single member custom roles even if the user is
disabled (I#32949).
Administration
- Stop wrapping ShowUser in tags to avoid unnecessary nested links.
- When listing group members, sort by text-only representation of the
๐ user, not HTML (I#30771) - In the group admin page, stop pre-computing ShowUser.
- In shredder, check for both id and name mismatches when loading objects.
- โ Add a new rt-passwd command to make it easy to reset passwords on the
command-line. - ๐ Support custom roles in RT serializer/importer tools.
- ๐ Support catalogs and assets in RT serializer/importer tools.
- โก๏ธ Update RT's module dependencies for SSL (https) to align with updates
to the CPAN module ecosystem. - โ Add age, batchsize, and dry-run options to rt-externalize-attachments.
- Set proper HTTP Status codes on Abort.
- The value for converting the owner dropdown to an autocomplete textbox can
โก๏ธ now be updated in configuration with DropdownMenuLimit. - ๐ฏ Switch to Clone::clone to copy config structures in Obfuscate callbacks. This
๐ง restores support for REGEXP and CODE configuration on the System Configuration page. - ๐ง Provide a way to pass more options to Net::LDAP from LDAPImport configuration.
- Provide more debug output on connection failures in LDAPImport.
- ๐ฒ Store log messages until RT::Logger is initialized. This means messages logged
before the logger is available, like "Change of config option..." can now
๐ง respect the configured log level. - In shredder, check for both id and name mismatches when loading objects
- Retain scrip sort order in pagination links
Internals
- ๐ Cache OCFVs to improve performance searching for duplicates when adding
values. - โ Remove unused dependencies on File::Copy and Carp.
- On Oracle, return the empty string instead of undef for Subject when it
has no value on a ticket. - ๐ฑ When linking, load assets by id to confirm the asset exists. This makes
asset link handling consistent with ticket handling. - ๐ Various fixes for compatibility with perl 5.26.
- ๐ Support unicode characters in constant time comparison function
- ๐ Allow merge for tickets only, not other types like reminders (I#32700).
- Preload Encode with UTF-8 to avoid masking other errors (I#32648).
- ๐จ Process multiple links via the REST 1.0 interface.
- โ Add SLA field support on REST 1.0.
- ๐ Build table attributes for RT::Asset. This is needed to allow assets to work
properly with REST 2.0. - Avoid uninitialized value warnings with CustomField.
- Call DoAuth only if ExternalAuthPriority is not empty, allowing use of
ExternalAuthInfo without ExternalAuthPriority set. - 0๏ธโฃ Use "id asc" as the default sort order of GroupMembers for consistent ordering.
- ๐ Cache OCFVs to improve performance searching for duplicates on add.
- โ In CollectionAsTable, fix the uninitialized warning in case @order is empty.
- โก๏ธ In rt-validator, update link checking regex to match asset links.
- โ Remove trailing "/" from RT::URI::asset::LocalURIPrefix for consistency.
- โ Use RT::Logger for EmailInputEncodings config warnings.
- "Die" properly when receiving an invalid query via to FromSQL.
Developer
- Avoid using $id in /Ticket/Display.html so callbacks can modify id in ARGS.
- ๐ Pass the MIME entity to ParseTicketId in addition to subject.
- โ Remove a 'This is scary' comment from code that has been running fine for
over 10 years. - ๐ Improve warning tracking for automated tests.
- โ Add an Initial callback to Bulk.html.
- โ Don't fail externalauth/auth_config.t tests if Net::LDAP is missing.
- โ
Find an idle port for LDAP test server to avoid tests hanging when running
in parallel mode. - โ When testing, make sure DevelMode is on to catch compilation errors.
- โ Avoid uninitialized warnings of empty ticket subjects on Oracle.
- 0๏ธโฃ In the MessageBox template, default callback, pass $message by reference in
MessageRef, as the variable name implies. This will break previous use of
MessageRef as a scalar. - โ Add support for a NeverNotifyActor argument to Notify actions.
๐ Documentation
- ๐ Mention the RT-Attach-Message: yes header in template docs.
- ๐ Fix incorrect path in portlet documentation.
- ๐ In $ParseNewMessageForTicketCcs docs, mention the RT::Action::AutoAddWatchers
extension. - Document queue-level template overrides.
- โ Document using prove and RT_TEST_PARALLEL for tests.
- โฌ๏ธ Note in UPGRADING that RT::Extension::AdminConditionsAndActions is now in core.
- โ Remove unnecessary AUTHORS sections from docs.
- ๐ Update rt-static-docs documentation processing to fix broken links.
- โ Add MariaDB support to documentation and rt-setup-fulltext-index.
Internationalization
- ๐จ Many changes to refactor sections of RT's internationalization code.
A complete changelog is available from git by running:
๐ฒ git log rt-4.4.2..rt-4.4.3
or visiting
rt-4.4.2...rt-4.4.3