RT 3.2.3 now available

RT 3.2.3 is now available for download. This maintenance release
contains numerous bugfixes and represents a longer delay between
releases in a stable series than I’d like. It’s been a learning
experience to manage multiple stable branches of RT with a small team
and would have been completely impossible without the help of svk, a
version control system that adds advanced merging tools to the
subversion system it uses as a backend.[1]

You can download RT 3.2.3 at:


MD5 sums for this release:

dddba8129495917d4b9c7f2244525584 rt-3.2.3.tar.gz
ce2fd9c5a1d9cfed8833407d139a3fd7 rt-3.2.3.tar.gz.sig

[1] You can find out more about svk at http://svk.elixus.org

Release notes:


RT-Ticket: 6219 - Rebuilt RT::Tickets’ watcher search logic to only use one join to the users/groups table so as to create joins that can be computed in finite time. Theoretically, this makes watcher searching less powerful. In practice, it makes watcher searching a lot more possible.

Refactored RT’s core attachment processing logic to be a bit less baroque and to use new convenience methods. ths should prevent some mail header display strangeness folks were seeing.

RT-Ticket: 6118 - The “RT_System” internal user had a last-updated-by id of “0”, which wasn’t a user

Updated Attachment import code to take database-specific lob encoding into account

RT-Ticket: 6327 - Users who had “DeleteTicket” but not “ModifyTicket” could not delete tickets.

This is introduced because “Ticket::SetStatus” checks the ACL but forgets to tell “Ticket::_Set” NOT to check (which does check again, but only against the ‘ModifyTicket’ right, and thus denies the change). Thanks to Ruediger Riediger

Removed a spurious =>, Thanks to Todd Chapman

Refactoring to use the API to determine if a ticket is being closed, rather than looking at a hardcoded status. – Stephen Quinney

Backporting a fix for creating/deleting attributes from RT 3.4.
(Also, to make this go, we require SearchBuilder 1.19)

RT-Ticket: 6239 - Applied patch from Rudolph Pereira to allow email plugins to change ticket ID

Bandaid fix: RT doesn’t currently do the right thing with mime-encoded headers We should be preserving them encoded until after parsing is completed and THEN undo the mime-encoding.

Ticket_Overlay and Transaction_Overlay still had “ClassAccessible” methods, rather than the current “OverlayAccessible” style

Additional fixes for display of unlimited search results

Log::Dispatch wants ->warning, not ->warn.

RT-Ticket: 6230 - New “batch transactions” core from Ruslan. This update makes it much easier to use stock conditions for bulk updates

RT-Ticket: 6197 - Removed a comment from the PostgreSQL schema files, as some versions of postgres fail to parse it well.

RT-Ticket: 6163 - Ruslan provided patches to improve perfomrance and maintainability of the TicketSQL parser

RT-Ticket: 6174 - Additional bullet-proofing for a number of email-address handling regexps

RT-Ticket: 6160 - Refactored how we add links on ticket creation so that “ModifyTicket” rights aren’t checked on ticket creation.


RT-Ticket: 6286 - Searching on Ticket data and Transaction content caused horribly pessimal searches.

RT-Ticket: 6443 - Ticket Searches on AdminCc would fail on non-mysql databases due to a case error

If we can’t load a user by email address, make sure we can’t load that user by name before returning an error

RT-Ticket: 6378 - Added a flag to allow tools to use the RT API to search for deleted tickets. (Ruslan)


Polish Translation from Piotr Sliwa

New French translation from robitail@iro.umontreal.ca

New Czech translation from Jan Okrouhl?\195?\131?\194?\189

RT-Ticket: 6270 - Localized the “Status” field in the selfservice UI

REST Interface

RT-Ticket: 6338 - Force UTF8 content type on replies from RT’s REST interface (Thanks to Dirk Pape)

REST UI for listing tickets was missing a newline, resulting in a malformed response


Fixed a case where catastrophic failure of the logging infrastructure on initial login could result in a failing login attempt ending up iwth a valid remote session. – Reported by Tom Yu

Web UI

Refactored ColumnMap to remove use of a deprecated API

Multiple fixes to ticket search result display

RT-Ticket: 6272 - When updating comments and signature in the Administrative UI, RT won’t introduce extra newlines anymore. (Todd Chapman)

RT-Ticket: 6276 - Now honor the RT::MaxInlineBody configuration variable. Also, the Content-Disposition header. We no longer display long attachments inline if they were marked as attachments.

RT-Ticket: 6264 - Fix the “ShowAttachments” component to deal gracefully, even if called without a precached set of attachments. From Rolf Grossmann.

Sending Email

RT-Ticket: 4624 - Provide more control over how autogenerated mail gets sent out via RT.

RT-Ticket: 6121 - Fixed the name of the template used to notify non-privilged users when their password is changed

RT-Ticket: 5959 - RT was sending 8-bit mail without setting the relevant content-tranfer-encoding header.

Web UI

RT-Ticket: 6242 - There were a couple of bugs in the bulk update page that broke ticket linking. (Among other things, the custom fields update functionality was completely broken. It’s been disabled pending a new implementation)

RT-Ticket: 6061 - Web interface “Bulk update” was clobbering ticket status of updated tickets.

RT-Ticket: 6148 - When using the “Jumbo” update, modify ticket basics after recording ticket updates, so that the update doesn’t modify ticket status.

Improved “stickiness” of queries.

Next/Prev navigation should be more consistently available now.

Most recent query should be available more consistently.

RT-Ticket: 6081 - Fixed tsv (spreadsheet output) to not include “->MemberEmailAddressesAsString” in header.

RT-Ticket: 6336 - The attribute “align” in COLUMN_MAP wasn’t usable, because it could not be used for a complete column, so I added a /ALIGN:… section in CollectionAsTable/ParseFormat and use it in Row. There also was a minor error to be corrected, since the old variant of ParseFormat did not allow more than one /ANYTHING:… to be use (in my example /TITLE:…/ALIGN:…) --Dirk Pape

Custom Fields

Fixes to allow setting “FreeformSingle” custom fields to an empty value.

RT-Ticket: 6162 - If CustomFieldValues is called with a field name that is not valid for that queue all custom field values for that ticket are returned. I would expect that no custom field values should be returned.

RT-Ticket: 6165 - When you edited an ‘Enter Multiple Values’ custom field all values were displayed on one line and saved as one entry.

RT-Ticket: 6166 - FreeformMultiple CFS are created using HTML textarea, so only one value is returned from the browser. RT 3.x currently treats as a single value and stores all values in one CF with embedded newlines. This patch fixes it so they are treated as separate CF values. -Todd

RT-Ticket: 4919 - Applied a patch from fw@deneb.enyo.de to give a better example for address canonicalization

Fixed the MaxAttachmentSize variable name in comments. Thanks to Graham Dunn

RT-Announce mailing list

So my patch to fix bulk update of CFs wasn’t useable? It works well for us.

What are you looking for?


So my patch to fix bulk update of CFs wasn’t useable? It works well for us.

What are you looking for?

Something that better fits with the style of the rest of the UI. The
patch was functional but clunky.