Changelog History
Page 1
-
v5.0.0 Changes
July 16, 2020RT 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 -
v5.0.0.beta2
June 16, 2020 -
v5.0.0.beta1
May 20, 2020 -
v5.0.0.alpha1
February 14, 2020 -
v4.6.0
December 03, 2018 -
v4.6.0-pre1
December 03, 2018 -
v4.4.4beta2
February 01, 2019 -
v4.4.4.beta2
February 01, 2019 -
v4.4.4.beta1
January 11, 2019 -
v4.4.3 Changes
June 26, 2018RT 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