RT: Request Tracker

RT 3.8.7 Release Notes

We are happy to announce that RT 3.8.7 is now available. You can
download it from:


SHA1 sums

9de5860c5c58d40c5f6914cdde807ecc66a68f20  rt-3.8.7.tar.gz
3088fb66f6ecbf57f04cd5aba3684645406c120f  rt-3.8.7.tar.gz.sig

This is primarily a bugfix release of RT.
Some important fixes are listed here:

* Stop old DateTime or DateTime::Locales from exploding in Preferences
* Move all JS for hierarchical CFs onto derivative field; remove DerivativeCFs method
  Fix bug on Oracle when selecting against a CLOB
* Call the method on the object, not the username string (Reported by Philip Shore)
  Fix error when using WebExternalAuth and setting user info
* When using WebExternalAuth don't issue a new session cookie on each request
  Fix lost attachments when using WebExternalAuth.  WebExternalAuthContinuous can be set back to 1
* Mention missing index that was only added to upgrade scripts
* fixes for PlainTextMono config option introduced in 3.8.6
* fixes for updating charts and dashboards
* delete links from Bulk Update

A more complete commit list is available below


 * We want to capture the results
   When Bulk Updating, indicate that a comment or correspondence has been recorded
 * adjust test level so failures reported in the right place
 * clean cought emails on END
 * move standalone related code into start_standalone_server
 * Fix URL used for CF of type autocomplete.
 * Remove dated comment
 * * show_customize -> ShowCustomize
 * detect browser lang in LocalizedDateTime in Date.pm too
 * in error message we were using static value, when it's dynamic
 * refactor StripContent: make it return empty string as long as the content does *not* have any *real* data, i.e. \S but without <br/> and &nbsp;
 * remove needless lines
 * url path fix in /Admin/Elements/ToolTabs
 * update Query str in Tabs in Chart.html
 * do *not* show the old saved search in /Search/Build.html if one loaded a saved search in /Search/Chart.html
 * use $ARGS{Query} instead of $Query because we may change $ARGS{Query} later in /Search/Chart.html
 * my %o = keys %$changes; is indeed wrong
 * refactor a little
 * make sure $PrimaryGroupBy is not undef in /Search/Elements/Chart
 * more saved chart search tests
 * only when SaveSearchLoad, we can update Query,ChartType,PrimaryGroupBy,etc.
 * we should save all the info when SavedSearchSave, not just Query
 * test PrimaryGroupBy and ChartStyle too in saved_search_chart.t
 * clean a bit: file input's value attr is useless
 * show Update botton when a dashboard contains deleted searches
 * tiny typo fix
 * DisplayName is translated string
 * better way to compare pane in @panes and @deleted in /Dashboards/Queries.html
 * use get_ok() so we do *not* need to test the status stuff for new added tests
 * erase the leading space in FormatType
 * tweak BulkLinks a bit
 * remove misleading comment
 * remove "use bytes;" in CreateTickets
 * Perltidy
 * Only set time values on clone if they are non-zero
 * check $container to see if $ARGS{\'SavedSearchLoad\'} can be loaded
 * we can't use @actions to store query's parse results: we should use another variable to do this
 * Feed ticket information to MakeClicky when we're clicky-fying attachments
   - Thanks to Salih Goenuellue at SWITCH
 * Pluck Ticket and Transaction out of %args sooner
 * Use spaces for indentation not tabs
 * More cleanup
 * Clean up some double-negative logic
 * Tidy
 * Fix warning message
 * sort of typo, ContentType was passed twice
 * Fix Postgres ACL script to work with usernames that need quoting
   (inspired by patch to RTFM)
 * Skip the richtext editor for android and iphone devices
 * we shouldn't escape selected="selected"
 * We should be using the same index on 4.0 and 4.1+
   Originally added in 5c5dec3a88eae44b227dff2dc87a54e5105ba233
 * Fix URL thanks to Jason A. Smith [rt3.fsck.com #14000]
 * there is no div around rtname anymore
 * Code indent
 * Remove a double negative to clarify logic slightly
 * Don't include these files in tarballs
   (cherry picked from commit 6dfb39e1075859e464656a25cf6a2af67fc7eb28)
 * add monospace font to .plain-text-white-space: .mono is merged to it
 * use err_headers_out instead of headers_out
 * RT was accidentally injecting too many newlines when rendering plaintext messages without <pre>.
 * Stop people with old DateTime or DateTime::Locales from exploding in Preferences
 * Move all JS for hierarchical CFs onto derivative field; remove DerivativeCFs method
 * Call the method on the object, not the username string (Reported by Philip Shore)
 * When using WebExternalAuth don't issue a new session cookie on each request
 * Mention missing index that was only added to upgrade scripts

 * Fixes rt3.fsck.com#13490 - confusing instructions for the mysql 4.1->5 upgrade commands

   Also fixes Debian Bug #550278
   Thanks to Marcus Better.
 * comment one confusing code
 * Slightly more clear --all explanation for rt-email-dashboards
 * Fix perldoc for Queue object

   * remove =testing that make perldoc stop just after it
   * add description like other RT objects
 * Fix shredder documentation typo
 * Documentation tweaks for new OutgoingMailFrom config
 * Add doc about @Plugins configuration variable.
 * We only have this index in the schema and upgrade scripts for mysql and oracle
   (cherry picked from commit 4f0d3e64378107be6bd40f377d3250f3031cfa9f)

 * Add a MassageDashboards callback for the dashboard homepage
 * Callback for massaging the dashboard tabs on the homepage and dashboards
 * refactor validation of transactions CFs on ticket update
 * Add a systemwide plugin directory at the request of the Debian RT maintainers
 * Fold hardcoded SelfService search format into a config option
 * make people can update saved chart search easily
 * we should try to decode uploaded template for offline
 * append plugin lib path to @INC if local lib path is *not* in @INC: see also ticket #13944
 * implement "Current Links" section in bulk update
 * If there is no ticket for outgoing mail, check a new configuration option for the From address
 * Document the Default key
 * Add CustomFieldValuesAsString method

   If you are using a multiple value custom field, FirstCustomFieldValue
   doesn't help because you actually want all the values.  This is a simple
   wrapper function to save you writing the map.
 * Add ability to skip QuickCreate ticket creation in the Initial callback
   (consistent with Ticket/Create.html and SelfService/Create.html)
 * allow to change page title via callback on Create
 * another place where title is used on Create
 * pass QueueObj into callback, we already loaded object
 * add simple search on Admin/Queues page
 * a callback in Elements/Logout
 * $SendTo argument in SimpleSearch widget

 * tiny url fix: we do *not* need 2 leading /
 * Avoid redefine warnings
 * Ignore t/tmp/
 * Begin a new test file for testing dashboard permissions
 * Refactor run_mailgate into run_and_capture
 * add t/web/offline_messages_utf8.t
 * minor changes in t/
 * refactor tests: new tmp dir, Cfg->Set updates file and more
   * new central tmp dir under t/tmp
   * tmp dir is not deleted on failures
   * centrall %tmp hash in RT::Test to hold names
     of files
   * set_config_wrapper that wraps RT->Config->Set calls and
     append changes into the test config file, so we can
     catch them in UI by restarting server
 * added t/web/ticket_update_without_content.t
 * add t/web/saved_search_chart.t
 * add t/web/command_line_with_unknown_field
 * add t/web/offline_utf8.t
 * add t/web/dashboard_with_deleted_saved_search.t
 * added t/web/search_bulk_update_links.t
 * add t/web/saved_search_permissions.t
 * Split on the same string we actually join on
 * refactor catching mails in tests

 * fixed a typo in fr.po. thanks, JeanBenoit++
 * [fsck.com #14092] Fixes a typo in the Norwegian Bokmal translation
 * Danish translation fix from jonasbn. [fsck.com #14132]
 * missing localization