rt-5.0.1
RT 5.0.1 -- 2021-01-29
We're pleased to announce the general availability RT 5.0.1.
The list of changes included with this release is below. This is
mostly a bugfix release but it also includes some additional
improvements that were not ready in time for the previous release.
https://download.bestpractical.com/pub/rt/release/rt-5.0.1.tar.gz
https://download.bestpractical.com/pub/rt/release/rt-5.0.1.tar.gz.asc
SHA-256 sums
6c181cc592c48a2cba8b8df1d45fda0938d70f84ceeba1afc436f16a6090f556 rt-5.0.1.tar.gz
4b7a40a648e2e82575bcfa9d289b4b87129d3a437d0f0161666595cc8a373907 rt-5.0.1.tar.gz.asc
General Updates and Fixes
- Don't display a dropdown in transaction history header if it is empty
- Fix width/max-width for .width-md/.max-width-md
- Switch to the correct *width-lg for existing *width-md elements
- Add the OwnerNameEdit column as an option in the format dropdown in the query builder
- Fix alignment for ticket creation on the group summary page
- Fix radio/checkbox inputs for "click" panel behavior of inline edit
- Preserve message quoting levels when converting HTML to plain text on comment/reply
- In the lifecycle editor, confirm the actions config array value exists
- Fix dark theme pagenum background color overlap
- Fix dark theme action-private color in RichText editor
- Show group tickets on self service closed tickets page
- Restore Total Time Worked to previous position on Ticket Display page
- Search group itself for SelfService "My group's tickets"
- Fix the input name to delete group members on group admin page
- On date selectors, fix the wrongly quoted date input id
- Add RT::Extension::FormattedTransaction to core
- Update HTML in transaction display to remove table-based layout
- Set diff text style rules more specifically
- In ticket search results, don't generate inline editing HTML if inline edit is disabled
- Fix TimeUnits overlap for dark-theme
- Fix dropdown toggle for dark-theme
- Add ability to serve a custom dashboard as the SelfService home page
- Fix datepicker icons for dark-theme
- Add UI for editing and displaying the SortOrder associated with an article
- Fix colors for selectionbox for dark-theme
- Fix bootstrap tooltip colors for dark-theme
- Fix dropzone colors for dark-theme
- Fix EditConfig tab and active colors for dark-theme
- Fix a:visited color change for dark-theme
- Tweak error widget styles to improve display in elevator themes
- Widen input box in Find a user portlet on RT at a Glance
- Use ticket update page layout for "Update ticket" portlet on jumbo page
- Align "Time to display" in footer
- Fix upload file type custom fields in inline edit forms
- Add "CustomFieldView" column type for view-only custom field values in search results
- Fix an error loading the SavedSearches component on the RT at a glance page
- Center comment/reply messagebox on bulk update
- Replace cf hints with tooltips on bulk update
- Fix padding for custom field inputs on bulk update
- In lifecycle editor, update mapping form submission parsing to handle '-' in lifecycle name
- Add new article portlets to the available self service components
- Add Top and Newest Articles portlets for self service
- Add a Home menu item to self service to mirror regular RT
- Display article content in a titlebox container
- Reduce the min-width of self service article list
- Fix naming mismatch preventing system txn/asset/chart saved searches from being added to dashboards
- Order articles in SelfServiceTopArticles by SortOrder
- Fix col layout for transaction custom field values
- On approval ticket display, switch to div to not create illegal nested links
- Make pagination with many linked tickets in linked queue portlet work
- Fix overlap of wrapped long values in forms
- Remove extra, unmatched closing div on Login/Logout pages
- Handle multipart attached emails when TreatAttachedEmailAsFiles is enabled
REST2 API
- Add basic article/class endpoints to REST2
- Add REST2 support for fetching attachment details with selected fields
- Attachment content is now base64 encoded when returned
- Abstract code to process file uploads to avoid duplication for REST2
- In REST2, handle lazy-created custom role groups that don't exist
- Add support for merging tickets in REST2
- Support take/untake/steal for tickets in REST2
- Accept an array of link params on record create for linking multiple tickets
- Add support for updating record links
- Allow attachments to be added when a ticket is created (thanks gibus and puck!)
Administration
- On the RT Portal admin page, set parent height to make iframe take up the whole height
- On user admin page, fix user data link overlap for dark-theme
- 'use' REST2 in web handler as PSGIWrap needs it for the web installer
- Make GnuPG file extensions more easily configurable
- Add .gpg file extension support to RT::Crypt::GnuPG
- Bump DBD::Pg to 3.8.0+
- Allow updating a lifecycle from an invalid value to a valid option on queue admin pages
- Add ShowEditLifecycleConfig option to disable lifecycle admin pages
- Obfuscate passphrase in %SMIME, %GnuPG and %GnuPGOptions on system config page
- In the rt-munge-attachments utility, allow header and content munging to be disabled by flags
- Allow specifying of transactions for rt-munge-attachments to munge
- Make inputs wider on scrip create/modify pages
- Center content on scrip create/modify pages
- Add SelfServiceShowArticleSearch configuration option
- Display TreatAttachedEmailAsFiles as boolean in web UI
- Add option to disable password prompt when creating tokens
- Mark config items containing regexp immutable
- Use JSON format for array/hash items in system config edit web UI
- Find full path for processing acl files on upgrade to work with newer perls
Internals
- Refactor code so we can add history endpoints to new classes more easily
- Avoid permission check to get CF type in CustomFieldValueIsEmpty
- Avoid permission check to get CF CanonicalizeClass
- Confirm the queue default value in %ServiceAgreements is a hash before using it as one
- Extract PriorityAsString config mapping in a method
- Accept string priority values in SetPriority
- Convert to absolute path before executing initialdata files
- In lifecycle mappings, move 'MaybeRedirectForResults' code after mapping updates
- Cache custom field values in mason to improve performance of inline edit
- Allow class-level rights to show self service articles
- Switch to Obfuscate callback for $DatabasePassword/$LDAPPassword configs
- Remove special handling of password like core variables on configuration page
- Fix uninitialized warnings for empty nested dependency
- In ShowCustomFieldCustomGroupings, accept arg for inline edit form action URL
- Drop useless queue parameter in loc call that doesn't have placeholders
- Fall back to "RT::Ticket" item for extended classes in %InlineEditPanelBehavior
- Respect extra query params to build page menus for all search pages
- Check "ShowArticle" right beforehand to get accurate number of articles
Documentation
- Document new FileExtensions config option for GnuPG
- Add missing mapping to lifecycle docs example
- Update existing lifecycle docs screenshots
- Update screenshots in docs with 5.0 versions.
- Fix the image path for subscriptions in feeds doc
- Update README link to backups doc
- Add support for linking POD in subdirectories for README/UPGRADING docs
- Fix MimeType in REST2 doc example
- Move asset examples to their own section in docs
- Update lifecycle docs for lifecycle UI
- Fix asset search endpoint in doc examples
- Fix rt-setup-fulltext-index --dry-run flag docs
- Update instructions for lifecycle mapping page to mention assets
- Document steps to fix home pages with saved search errors
- Document time zone dependencies in MariaDB for charts
- Document switch to JSON instead of Perl for System Configuration editor
- Document the options for modifying links via REST2
- Add take, untake, steal endpoints to docs
- Add documentation for using attachments via REST2
Testing and Developer
- Don't clean gpg stuff if tests are skipped
- Skip gpg homedir creation if tests are going to be skipped
- Add REST2 tests for articles/classes
- Add callback for modifying the group query on self service tickets page
- Add tests to delete group members from web UI
- Add test for the formatted transaction output.
- Add callback to modify CSS files loaded in header
- Test setting lifecycle from an invalid value to default on queue admin page
- Test ticket custom field updates with names containing spaces in REST2
- Fix BeforeMessageBox callback location on Bulk Update page
- Make sure $user always exists to simplify Obfuscate callback a bit
- Test tickets with custom roles applied later
- Add tests for the lifecycle Mappings.html page
- Fix typo in lifecycle_mappings test
- Make admin_queue_lifecycle.t happy when RT_TEST_DEVEL is not enabled
- Update dashboard tests for the format change of system saved searches
- Add tests for system non-ticket saved searches in dashboards
- Add tests for system non-ticket saved searches in MyRT
- Update unit test for JSON entry of hashes/arrays rather than Perl
- Test ticket merge in REST2
- Test ticket steal/take/untake in REST2
- Add REST2 tests for ticket link updates
- Test custom field uploads on ticket create for REST2
- Skip "links" html formatter tests if it's actually "elinks"
- Add AfterQueueAddresses callback for queue admin page
A complete changelog is available from git by running:
git log rt-5.0.0..rt-5.0.1
or visiting
rt-5.0.0...rt-5.0.1