Hello,
Release candidate for RT 3.8.7 is now available. You can
download it from:
http://download.bestpractical.com/pub/rt/devel/rt-3.8.8rc2.tar.gz
http://download.bestpractical.com/pub/rt/devel/rt-3.8.8rc2.tar.gz.sig
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:
NEW FEATURES AND MAJOR 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
space.
-
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
tickets. - Improved display of the “About this RT” page.
- ‘Plugin Mason Component Path Order’ on the “About this
RT” page.
- more pages in the Admin UI are switched to generic
-
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’
page. - 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.
- Queue specific custom fields now can be placed above
-
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
- if LinkValueTo starts with CustomField then don’t
-
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.
CLEANUPS AND SMALL IMPROVEMENTS
- 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
feature - Sort callbacks within a root only, respect plugins
order - 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
allowed - Removed the “URL” parameter to ‘Logout’ as it had no
legitimate use.
BUG FIXES
- 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
CALLBACKS
- 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.