RT 6.0.1 -- 2025-08-05
We're pleased to announce the general availability RT 6.0.1.
This release primarily supports running the newly released RTIR 6.0.1.
Some new features and bug fixes are also included. A detailed list of
changes is provided below.
The new version is available here:
https://download.bestpractical.com/pub/rt/release/rt-6.0.1.tar.gz
SHA-256 sums
716650ddcb5fc5e87a6422bd341c70e56f28b276e9df0d2402ff1aa24b6dd260 rt-6.0.1.tar.gz
c9be232e8b8ffc7b3ad3f0edae018a07c69ab04315c8dc8f72c9b1c97a49d621 rt-6.0.1.tar.gz.asc
General User UI
- Move inactive loading spinners to bottom of DOM to prevent blocking
clickable elements - Fix multiple value handling in TomSelect inputs when splitting on delimiters
- Improve visual consistency by applying Bootstrap styling to radio button
columns - Fix "Reset" radio button functionality for select configurations on the
config edit page - Convert CKEditor toolbar configuration to extended format for easier
customization - Default to the current class for existing articles instead of system default
- Exclude 'id' field from NOT NULL validation checks in user autocomplete
on PostgreSQL to prevent invalid integer syntax errors - Exclude 'id' field from NOT NULL validation checks in group autocomplete
on PostgreSQL to prevent invalid integer syntax errors - Preserve Description field content when changing queues on ticket
create/update pages - Remove duplicate div.row.mt-2 wrapper for Sign/Encrypt inputs
- Fix duplicated mt-2 CSS class for radio inputs in Boolean widget
- Improve visual consistency in dark mode by fixing prefix/suffix border
colors for input groups - Fix default reference links on ticket clone by using proper double-space
delimiter - Render all default values in TomSelect user autocomplete inputs instead of
only the first value - Automatically reveal history widget before jumping to anchor elements
within it to support unread messages - Fix "Jump to Unread" functionality in ShowHistory "click" mode
- Add clickable links from pending dependency status text to search results
- Migrate GnuPG key select inputs to use RT 6 styling
- Add support for Dates widget on ticket update page
- Update copy button for conditions and actions to use boosted links
- Remove duplicated saved search widgets on dashboard content page
- Fix visual styling of inline edit links by removing trailing spaces
- Support updating Description field on ticket Jumbo page
- Replace deprecated ShowSummary widget in SelfService Asset Display
- Add "g r" keyboard shortcut to reload main container
- Avoid using
tags when quoting text content
- Preserve multiple spaces when rendering plain content instead of collapsing
- Remove extra newline when quoting content with CKEditor 5
- Support reverting in-use page layouts to their config file version
Administration
- Fix DefaultDashboard attribute dependency handling now that Dashboards are
in a separate table in the database - Remove duplicate Asset entries from shredder objects list that caused
errors using Shredder in the web UI - Prevent modification of $ChromePath and $SendmailPath configuration options
in the web UI for security reasons - Display ChromePath and SendmailPath as read-only text inputs instead of
textareas on configuration edit page - Refactor configuration edit page stringify logic to simplify value handling
- Fix display of current DefaultQueue value when configured using queue name
instead of ID - Show queue names instead of IDs on configuration pages and in update
messages for better readability - Improve visual alignment of reset checkboxes with their labels on
configuration edit page - Skip unnecessary PageLayoutMapping configuration updates when creating
queues with default layouts - Expand TicketSQL to support additional queue fields for searching
- Fix ShowSummary template compilation errors and add deprecation test
- Migrate old saved search and dashboard rights to new standardized names
- Set LastUpdated field only when updates succeed and values actually change
- Document the LastUpdated behavior change for ticket updates
- Document the MessageBoxRichTextInitArguments configuration change for
CKEditor toolbar customization - Merge extension config meta with existing meta
- Show a message when a page layout tries to use a CustomFieldGrouping and it
can't be found - Refresh the lifecycle cache after admin page changes to show the updated
lifecycle
Extensions and RTIR Support
- Provide a clean interface for SavedSearch options management
- Allow extensions to add custom SavedSearch options
- Make HTMX query arguments available via callback for dynamic requests
- Add support for absolute paths in dashboard components (e.g.,
"/RTIR/Elements/QueueSummary") - Enable email squelching for selected roles during ticket creation
- Support merging arrays in PageLayoutMapping configuration to allow
extensions to add custom mappings - Support merging arrays in CustomFieldGroupings configuration for
extensions - Add callbacks to modify cached object items for constituency-specific
filtering - Support hiding attachments in Message widgets for multi-ticket creation
forms - Add BeforeCreate callback parameter for validation failure handling
- Set dynamic form actions based on request path for extension-specific
endpoints - Add BeforeShowWidgets/AfterShowWidgets callbacks for ticket creation page
customization - Use general arguments to set default values from cloned tickets for
better compatibility - Use loose SubmitTicket check on ticket create page to support multiple
submit button scenarios - Support input name prefixes for multi-ticket creation scenarios
- Support customizing message titles, people sections, and submit labels
on ticket creation - Support keeping default status values that are normally excluded due to
permissions - Allow limiting displayed groupings in Asset CustomFieldCustomGroupings
widget - Add missing WebPath for modify scheduled process functionality (thanks Zack!)
- Support limiting CustomFieldGroupings on Asset and Ticket creation pages
- Expand ticket display check to cover additional display pages
- Support refreshing process articles on ticket display pages
- Add support for absolute paths in /Views/Ticket/ endpoints
- Add BeforeActionList callback on Create page for ticket locking
functionality - Add BeforeAbort callback for TSV export customization
Internals
- Switch code formatting to use Perl::Critic's --perl-best-practices
configuration - Adopt "not cuddled else" code style for improved visual distinction between
blocks - Bypass ACL cache when validating owner permissions during queue changes to
ensure accurate permission checking - Migrate body ID attribute to .main-container element with support for
customized CSS classes - Clean up temporary debug code from development
- Register event handlers only for newly added DOM elements to avoid multiple
registrations - Migrate history loading to HTMX-powered system with boosted link support
- Update quote selection mechanism to be compatible with HTMX request
handling - Prevent Pragma headers from being set on cached HTTP responses
- Cache /Helpers/UserInfo endpoint for improved performance
- Avoid rebuilding top menu unnecessarily on main-container changes
- Add support for import/export of @configuration in JSON serializer
- Ensure window.RT object exists in footer to prevent JavaScript errors
- Convert more RT elements to use Labelled Value
Testing
- Confirm that all shredder plugin pages load correctly
- Update ticket_status test code for DOM changes in RT 6
- Update mechanize test content to support input name prefixes
- Add comprehensive test coverage for owner updates during queue changes
- Add test showing incorrect class selection for new articles
- Add test showing user autocomplete errors with 'id' return parameter
- Add article autocomplete test with return=id parameter to verify
functionality - Add test coverage for group autocomplete endpoint functionality
- Add test showing group simple search errors with 'id' return parameter
- Add test coverage for Configurations export/import functionality
- Add Selenium tests for multiple requestors on ticket creation
- Add test coverage for PageLayoutMapping updates during queue creation
- Add test coverage for quote selection functionality on ticket update
- Add Selenium test for SelfService Asset Display page
- Add test with custom fields in page layout mapping to verify functionality
- Confirm that page layout custom fields are applied before checking values
Complete Changelog
A complete changelog is available from git by running:
git log rt-6.0.0..rt-6.0.1
Or on the web at:
rt-6.0.0...rt-6.0.1