RT 4.0.14rc1 Available

RT 4.0.14rc1 is now available for testing.


SHA1 sums
307e9cc4d5350c5af49a72012a3c41c6493a2bb9 rt-4.0.14rc1.tar.gz
3109e9b78df1d0665b9f4e0d0addd21e068dc236 rt-4.0.14rc1.tar.gz.sig

This release is primarily a bugfix release. It also contains automated
tests for security vulnerabilities announced on 2012-10-25.


  • Ticket watcher searches that involve a large number of ORs will now
    use a much-improved SQL query, instead of the old many-join solution.
  • Do a better job wrapping text before quoting it in a reply.
  • Simple search now supports @example.com to search for tickets
    requested by users with email addresses ending in @example.com.
  • If our display parsing of an HTML attachment fails for known reasons,
    a better error message is provided, directing admins to contact us with
    a sample.
  • Tickets created via the REST interface can provide attachments.
  • Comments and Replies in the REST interface may include a Content-Type.
  • RT’s Quote recognition now triggers on > and ignores things like
    !,|,#,% etc. This should resolve a number of false positives.
  • RT is now compatible with perl 5.18.0.


  • Resolve several corner cases where RT’s database handle can be
    disconnected unexpectedly.
  • When a TicketSQL query fails, report that failure to the user rather
    than silently displaying an empty ticket list.
  • Display and add attachments to tickets in alphabetical rather than
    random order.
  • Ensure that LifeCycle statuses are compared case-insensitively.
  • Report Reminder creation/updates back to the user more consistently.
  • Ensure that Reminders are created in the reminder_on_open LifeCycle
  • The Bookmarks portlet is no longer unlimited and obeys standard
    homepage restrictions.
  • Display non-ticket links in search result formats.
  • RT::CurrentUser->Attributes now returns attributes for the relevant
    User, resolves a bug noticed in RT-Extension-MergeUsers.
  • Always filter empty OrderBy directives, which may come from old saved
    search preferences.
  • Uploaded attachments are now always marked Content-Disposition: attachment.
  • Allow Custom Field Values to change case.
  • The error message for Truncated Attachments is now marked text/plain
    rather than plain/text.
  • When bulk updating Tickets with Transaction Custom Fields, the
    list of Transaction Custom Fields is based on the Queues of the
    Tickets displayed, not the Queues of the Tickets updated in the
    previous update.


  • Clarify the cause of certain PostgreSQL full text indexing errors.
  • Remove an error preventing logging of an actual error related to
    problems storing sessions.
  • Clean the lock files used for file based sessions more aggressively.
  • SetOutgoingMailFrom will now accept an email address to be used
  • OverrideOutgoingMailFrom now falls back to the global
    CorrespondAddress if the Queue does not declare one.
  • rt-setup-database now prints the DatabasePort when describing the
    database it is modifying.
  • rt-setup-database tries to detect when it is being run from an invalid
    location or being given an invalid upgrade directory.
  • rt-setup-database detects an upgrade running on Pg 9.2 and directs the
    admin to install a newer DBD::Pg.
  • rt-email-digest no longer prints output when sending digests unless
    the --verbose flag is passed.


  • CleanSlate on collections more thoroughly resets the collection.
  • A new callback and better support for JS/CSS tweaking of our
    Autocompleter display formats.
  • New warning when an RT::URI::* resolver object cannot be created.
  • Extensions may use rt-setup-database --action upgrade --package
    extension to provide RT’s friendlier upgrade infrastructure.
  • Refactoring of TicketSQL parse to support TxnCF.{CFName} or
    QueueCF.{CFName} in the future.


  • Correct the example backup date command in backups.pod
  • MailCommand’s testfile argument is now documented.
  • Multiple cleanups to better support http://docs.bestpractical.com
  • RT::Classes and RT::Principals now default to honoring the Disabled flag.

A complete changelog is available from git by running:
git log rt-4.0.13…rt-4.0.14rc1
or visiting
Comparing rt-4.0.13...rt-4.0.14rc1 · bestpractical/rt · GitHub