[Rt-devel] [Rt-announce] RT 3.4.5 finally available
Jesse Vincent
jesse at bestpractical.com
Thu Jan 12 11:03:18 EST 2006
I'm pleased to announce the immediate availability of RT 3.4.5, the
latest production release of the world's most popular[1] open source
ticketing system. This release's biggest feature is a massive performance
optimization of the internal "RT::User->WhoHaveRight" method, which
should greatly speed up page rendering anywhere there's an "Owner"
dropdown box. On top of that, there are the usual performance
optimizations, documentation improvements, bug fixes and small new
features.
You can download the new release from:
http://www.bestpractical.com/rt/download.html
Best,
Jesse
RT 3.4.5 Release Notes: (r3729-r4307)
Core
----
Updated dependencies to require SearchBuilder 1.35
Added a note to the README warning users to clean out the Mason cache on
upgrades (thanks to Ruslan Zakirov)
General code cleanup and commenting
Ticket #6986 If we didn't generate any SQL, don't pass it to FromSQL,
which will reset the dirty flag, and then SearchBuilder won't actually run
anything. Also added tests for this.
Made pulling data out of the database more Unicode-aware (thanks to Ruslan
Zakirov)
Prevented an infinite loop when removing a member from a group
Gave RSS feeds a default subject
Added information about where in the codebase the faulty caller was when
warning about deprecated module use
Reworked our algorithm for finding a fallback for transaction content to try
harder (reported by John Gedeon)
Improved performance when sending e-mail using sendmailpipe
MIME::Entity would bog down in certain cases because of its use of
IO::Scalar during stringification. MIME::Entity will be switching to
IO::ScalarArray, which will help, but RT was causing it to store into a
temporary string anyway, which was silly.
This change has MIME::Entity write directly to the pipe, which is a lot more
efficient. It seems to cut out ~33% of user time because we don't need to
have a temporary IO::Scalar thingy around. It will also reduce peak memory
usage.
(thanks to Robert Spier)
Backported from the 3.5-TESTING branch:
Fixed searching by owner's fields -- now owner is WATCHERFIELD instead of
ENUM
Added backward compatible variant for Owner so next searches should work
(Owner = '<id>', Owner != '<id>', Owner = '<name>', and
Owner != '<name>'; for other operators, or if subfield(subkey) is
specified, search works as for other watchers)
Fixed searches like "Cc.Name <> 'SomeBody'" -- it was skipping tickets
with an empty Cc list.
Got rid of some unint warnings
Updated the test suite for all corner cases
Fixed the ordering of attachments
Fixed attachment ordering when you ask for a transaction's attachments
(Postgres doesn't default to ordering by id, so we were getting the wrong
transaction content)
Significantly improved performance on Groups->WhoHaveRight (thanks to Ruslan
Zakirov)
Ticket #7128 Added option (off by default) to create two transactions when
a link is created, one on the source and one on the target. (If this is
enabled, scrips will run twice.) Also added lots of tests. (thanks to Todd
Chapman)
Ticket #7101 RT::Principal->HasRight shouldn't modify the EquivObjects
arrayref (thanks to Todd Chapman)
Ticket #6457 Fixed typo in Ticket_Overlay.pm (thanks to Todd Chapman)
Ticket #6458 Removed extra return argument from _AddLink in RT::Record
(thanks to Todd Chapman)
Fixed RT::Tickets to show changes without attachments when searching on
transaction date.
Web UI
------
Reworked subs defined in html/Search/Build.html to prevent clashes with subs
defined everywhere else
Ticket #6605, 7008 Removed an unused and deprecated code path in
html/Search/Elements/BuildFormatString
Ticket #7029 Applied missing limit for AdminCcs in
html/Approvals/Elements/PendingMyApproval (thanks to Todd Chapman)
Changed html/Elements/RT__Ticket/ColumnMap to link to the *other* end of the
link, not the one that is us
Ticket #7087 Fixed html/Elements/RT__Ticket/ColumnMap to display linked
tickets in the correct order
Made $RT::MaxInlineBody work properly in
html/Ticket/Elements/ShowTransactionAttachments
Added a default callback to html/User/Elements/Tabs
Eliminated "undefined" warnings:
html/Elements/Header (index.html passes in
$session{'home_refresh_interval'}, which can be null)
html/Ticket/Elements/ShowTransactionAttachments (GetHeader will return
undefined when the header doesn't exist, which is good, since that's
different from empty, but we need to check for that to avoid the warning.)
Fixed our HTML scrubber to allow <pre> tags in HTML (thanks to Akos Torok)
Ticket #7020 Made html/Elements/CollectionAsTable/Row actually make use of
'style' if it is provided (thanks to Kelly F. Hickel)
Ticket #6507 Standardized fonts to "Verdana, Arial, Helvetica, sans-serif"
(variant of patch from Maxime Henrion)
Fixed html/Elements/Callback to really hide hidden paths from callbacks
Updated html/Elements/QueryString to support arrayrefs, allowing us to handle
multiple arguments with the same name. This is consistent with the way
HTML::Mason handles arguments.
Added a 'MassageCustomFields' callback to html/Elements/ShowCustomFields and
html/Ticket/Elements/EditCustomFields to make it easier to hide away a custom
field on the ticket display and edit pages
Added a print stylesheet (thanks to Koos van den Hout)
Fixed some bogosity in html/Search/Build.html
Sending Email
-------------
Got rid of the "not a number" warning in RT::Action::SendEmail
Improved bounce handling (thanks to Abhijit Menon-Sen)
Ticket #7131 Fixed the $RT::rtname subject-matching regex to be case
insensitive (thanks to Phil Smith III for the catch)
Ticket #7010 Treat RT e-mail addresses as case-insensitive
Added a warning in the logs for subjectless e-mail messages
Custom Fields
-------------
Switched from ->CustomFields to ->TicketCustomFields in the tab-separated-value
view to stop using a deprecated API (thanks to T.J. Maciak)
Ticket #7067 If we can't find a custom field that the user is allowed to
see on a ticket, don't return any values (when specifying a custom field)
Fixed broken CustomFieldValues API
Ensured that custom fields keep correct fallback values (eg. if "add another
attachment" is clicked)
Changed the order custom field values are sorted in to SortOrder, then *Name*,
then id (thanks to Troy Davis)
Internationalization
--------------------
Updated German translation (thanks to Dirk Pape)
Updated Spanish translation (thanks to Carlos Velasco)
Updated Russian translation (thanks to Andrew Kornilov)
Updated Japanese translation (thanks to Daisuke Maki)
Updated French translation (thanks to Jerome Fenal)
Fixed headers in PO files to include the correct RT version number
Configuration
-------------
Updated configure script to check for an invalid character (-) in MySQL
database names and prevents RT from allowing a database name containing it to
be configured.
Ticket #7136 Fixed a problem with database setup on Oracle, which
prevented tables from being created with RT's database user
Regression Testing
------------------
Made minor general test suite improvements to catch bugs we've fixed
Ticket #7121 Made Web-based ACL tests honor RT::WebPath (thanks to Todd
Chapman)
Ticket #7122 Made mail gateway tests honor a changed $rtname (thanks to
Todd Chapman)
Ticket #6559 Added tests for loading a custom field from the wrong queue
(thanks to Todd Chapman)
[1] The statistic is completely made up. RT is downloaded by nearly 100
new IP addresses every day of the year and everywhere I turn, someone
new is running RT or wants to ask me questions about RT. Of course, that
may just be because of who I am.
--
_______________________________________________
RT-Announce mailing list
RT-Announce at lists.bestpractical.com
http://lists.bestpractical.com/cgi-bin/mailman/listinfo/rt-announce
More information about the Rt-devel
mailing list