RT 3.8.8 RC2 availabled for testing


Release candidate for RT 3.8.7 is now available. You can
download it from:


SHA1 sums

80c7c670efb58a457e97cf5c13dbe65eb5b481f0 rt-3.8.8rc2.tar.gz
bd54ebbb691dc0e46453565d0979e39d33e6a24e rt-3.8.8rc2.tar.gz.sig

This is a release with plenty of new features, cleanups and bugfixes.
I’m even not sure what to highlight, so here go all noticable changes:


  • Charts improvements

    • ChartFont option is now hash with font per language.
    • Two default fonts are shipped with RT to cover most
      supported languages.
    • Table next to chart image now contains links to tickets
      matching this particular row.
    • Added “hourly” groupping.
    • Timezones support, but protected with config option.
    • Better scaling of Y axis.
    • X axis labes are now vertical if there is no enough
  • RTAddressRegexp option improvements

    • No default value anymore.
    • If value is not set then check queues table.
    • Complain into logs if value is not set.
    • On create/update/people pages check emails users
      enter and deny RT’s addresses.
  • Admin UI improvements

    • more pages in the Admin UI are switched to generic
      code to list objects (like tickets in search results)
    • display formats for these objects are now configurable
      in the config (%AdminSearchResultFormat)
    • More columns in column maps for objects other than
    • Improved display of the “About this RT” page.
    • ‘Plugin Mason Component Path Order’ on the “About this
      RT” page.
  • Custom fields ordering and application improvements

    • Queue specific custom fields now can be placed above
      global, below or even in the middle. Order of global
      custom fields stays the same in all queues, but a custom
      field that is applied to particular queues can be placed
      differently in each queue.
    • Make it possible to apply a CF globally from 'Applies To’
    • Don’t allow to apply a CF globally and to queues at
      the same time. When CF is applied globally it is
      unapplied from particular queues first.
  • RSS feeds without credentials (auth string)

  • Introduced a config option to prevent adding the
    RT-Originator header in outgoing mails.

  • New MessageBoxIncludeSignature* options

  • LogoutRefresh config option to control how long to wait
    before going back to login

  • New config option for AttachmentUnits

  • New config option for AlwaysDownloadAttachments

  • Require the current password to change password

  • Improved LinkValueTo and returned back functionality

    • if LinkValueTo starts with CustomField then don’t
      escape it, but make sure it’s not a JS link
    • escape links using HTML escaping
    • don’t wrap into with empty href if link is empty
  • Added DefaultMailPrecedence and DefaultErrorMailPrecedence
    config options

  • Squelch watchers on update. This makes doing silent
    Updates possible

  • New web handler: bin/fastcgi_server

  • Refactored Elements/ShowUser so it’s easy to add custom
    formats. Several performance improvements in this code.

  • MERGE_CACHE to cache information about merged tickets and
    lower logs and DB impact on re-checks

  • Made NotifyActor into a User Preference

  • If the MIME entity has header X-RT-Squelch, do not send
    the mail

  • Improved print layouts

  • Serve images in js and css dirs as static files,
    so browsers cache them

  • Link each relation label to a search for such tickets

  • added HasAttribute and HasNoAttribute to the TicketSQL

  • New faster and less memory hungry TicketsMaps - First, Prev,
    Next and Last links when you view tickets from the current
    search. Size is now limitted by a new config option. Floating
    window is used to build the links.


  • Updated doc/Security with more modern security tips
  • Made the plaintext mono feature work in IE.
  • Better timezone handling in Tools/Reports/ResolvedByDates.html
  • Make sure we don’t serve files outside RT’s paths
  • Additional checks to make sure that credentials
    are sent to RT on Login
  • Moved CustomField column map from tickets’ to generic
  • Make height, width, href and alt of the logo configurable
  • Load as much as possible when a web-handler with forks
    is used, this increase memory sharing accross processes
  • A link provided for approvals templates to whoever worked
    the approval
  • Global WebRequestPath and WebRequestPathDir
    column map entries
  • Process custom fields in ModifyDates.html
  • Handle Ccs and AdminCcs of the queue in SkipNotification
  • Sort callbacks within a root only, respect plugins
  • Add some wording to the check boxes on the reply pages
  • Reduce whitespace on bottom of boxes as was earlier
  • Use smaller margin for reminders display to save space
  • Use a reasonable length for scrip descriptions
  • Removed a lie about RT CLI still being “unsupported”
  • User friendlier errors handling thown by Calendar::Simple
  • Splitted some CSS from themes into base/xxx.css
  • Googleish search was making incorrect assumptions
    about RT::User and RT::Group’s Load function
    returning a boolean not a list. This was throwing
    (harmless, but ugly) errors.
  • Don’t apply order on collections if sorting is not
  • Removed the “URL” parameter to ‘Logout’ as it had no
    legitimate use.


  • properly use AND/OR when content is searched and
    DontSearchFileAttachments option is enabled
  • Make sure Merge only possible when user has Modify
    right on both tickets
  • Fixes for UseSQLForACLChecks option, it was possible
    to construct a query and see tickets an user has no
    right to see. Lots of tests have been added to make
    sure it wouldn’t happen again.
  • SQL used for ACL checks has been refactored to get
    more effective queries. Especially when list of
    potential owners is built for the query builder.
  • Unified API for tables with disabled column and
    fixes when ->Count could return bigger value
    when some CFs are disabled.
  • I18N was transcoding attachments to UTF-8 one line
    at a time. This doesn’t work at all for UTF-16 and
    probably other encodings.
  • Fixed encoding problem when loading a dump file
    produced by rt-dump-database.
  • Closing
  • was missing in PreviewScrips comp
  • Fixed config loading when Fcntl module or other exporting
    symbols is loaded. Load was failing with “Not a SCALAR
    reference” error.
  • Returned back effective SQL when searching by CFs with
    = or != operator
  • Fixed error on login when user make mistake in password
    and he entered character out of ascii range.
  • Honor a user’s MessageBoxRichTextHeight setting
  • Fixed query builder behaviour with NULLs and ‘’ (empty values)
  • Fixed potential information loose on incorrect GnuPG mails
  • Fixed display-all-rows in Dashboards
  • Fixed JS escaping issues
  • Set context object in OCFV::CustomFieldObj
  • Sessions ended up in /tmp/ in some cases
  • Fixed safe_run_child when code dies between fork and exec,
    deals with “mysql server has gone away” error
  • fix Jumbo reloading and losing message content
  • Stop infinte looping when you have global custom
    fields and no Queue restriction
  • Fixed sorting of custom fields in Results.tsv
  • Set of fixes for unicode characters in emails
    and tests covering these changes
  • Don’t create handles we don’t need, we can hit limit
  • Prevent servers using GnuPG from running out of filehandles


  • AboutThisUser in ShowPeople box
  • Between the GnuPG and message rows
  • AfterSubject
  • Before and After CustomFields
  • Before and After TransactionCustomFields
  • AfterAddress in PreviewScrips
  • At the top of ticket summary columns
  • For adding links for attachment downloads
  • At the bottom of the logout box
  • Pass more information to the FormStart callback
    in Ticket/Update.html
  • AfterMessageBox on ticket create page
  • ShowTransaction/AfterAnchor
  • In EditDates and ShowDates
  • Pass a reference to the signature in MessageBox’s callback
  • For inserting text after the transaction’s description
  • AfterUpdateType in Jumbo.html and Update.html

Best regards, Ruslan.

HI All,

I just installed the RC2 against a brand new Oracle 10gR2 database and
found that there are problems with DBD::Oracle
More specific 1.22 I think works since I have that on my new production
box but 1.23 certainly doesn’t. 1.24(a) which is the most current on
CPAN does work well.
Problem that one encounters with 1.23 is that the insert into the USERS
table fails with an obsure error about problems with the LOB data. And
that is one of the things fixed in 1.24(a)

Is it possible for make fixdeps to check against the bad 1.23? or to
require atleast 1.24?