Assets 1.0 released

We are very happy to announce the first version ofRT::Extension::Assets, an asset tracking extension for RT 4.2.1 and above. The extension leverages RT's custom field architecture, making it a very flexible platform for tracking whatever type of asset data you need to record. It also comes with some roles and rights to allow you to assign assets and manage access permissions. For more information, give the tutorial a read.

Share this post:

Assets, release candidate 2

After feedback from users, and a couple minor bugfixes found in the first release candidate, we're happy to announce the second release candidate of our Assets extension. Barring any further complications, we expect an official release next week.

Share this post:

RT public training in London

Our first training for 2014 will take place in London, England on March 19-20.As we like to keep class sizes relatively intimate, register soon or we may not be able to guarantee you a seat. If you can't make London, we will have upcoming trainings this year in Dallas, Texas and Boston, Massachusetts. Please let us know at training@bestpractical.com if you're interested in these other trainings, or if you have a suggestion for where we should hold one.

This training will introduce you to the new features in RT 4.2 as part of a comprehensive overview of RT. Whether you're an old hand at RT or a recent convert, you'll have a good understanding of all of RT's features and functionality by the end of the session.

The first day starts off with a tour of RT's web interface and continues with a detailed exploration and explanation of RT's functionality, aimed at non-programmer RT administrators. We'll walk through setting up a common helpdesk configuration, from rights management, constructing workflows and notifications, and the basics of Lifecycles.

The second day of training picks up with server-side RT administration and dives into what you need to safely customize and extend RT. We'll cover upgrading and deploying RT, database tuning, advanced Lifecycle configurations, writing tools with RT's API, building an extension, and demonstrate how to extensibly alter the web UI and internal functions.

It goes without saying that you'll get the most out of training if you attend both days of the course, but we've designed the material so that you can step out after the first day with a dramatically improved understanding of how to use RT or show up on the second day and get quickly up to speed on how to make RT do your bidding.

For both days, the cost is USD $1,495. Single days are USD $995. Each class includes training materials, a continental breakfast, and snacks (lunch is not provided).

If you'd like to pay with Visa, MasterCard or Discover, please visit Best Practical's online store. Unfortunately we are unable to accept American Express or PayPal. If you'd prefer to pay with a purchase order, please email us at training@bestpractical.com. Be sure to include:

  • If you want to attend both days or a single day
  • Full names and email addresses of attendees

Please contact us at training@bestpractical.com for discounted pricing if you are from an academic institution or if you'd like to send more than 3 people.

Share this post:

Release candidate of Assets for RT

Best Practical is very happy to announce the first release candidate of RT::Extension::Assets, an asset tracking extension for RT. The extension leverages RT's custom field architecture, making it a very flexible platform for tracking whatever type of asset data you need to record. It also comes with some roles and rights to allow you to assign assets and manage access permissions.

As you might expect, the extension integrates with RT to allow you to easily link RT tickets to the assets they refer to. Is a user submitting a ticket for a laptop problem? Go to the user's User Summary page, find the laptop assigned to them, and create a ticket. Now you can see all the information you need about the laptop while troubleshooting the issue.

Tracking a service request for a server with a vendor? Locate the server to find out if it's still under warranty and find the details to provide to support. Then you can open a ticket in RT to track the service request from your side.

To help make it easier to try things out, we've put together a simple tutorial that walks through a few use cases. This should get you something up and running quickly so you can experiment. We've included a few custom fields with the tutorial to demonstrate how it might work. You can then add on as many as you need to track your asset data.

If you decide it's a good fit, we've built a CSV importer as a general purpose helper to pull in data from other systems. Whether you're tracking things in a spreadsheet or can export from some other tool, it's a quick way to get your data into RT.

We'd like to acknowledge Reed College, who collaborated with us on this extension and funded the development. They are currently running the extension in their production environment, so they were not only the major contributor, but they are also the currently the primary testers.

And that's where you come in. This is the first RC and we'd like to get to an official release as soon as possible. If you've been eagerly waiting for this extension or are pleasantly surprised to learn about it, we need you to try it out and let us know if you run into any issues. Note that it requires RT 4.2.1 or later to run. We know you'll likely have feature requests as you start to use it, but right now we'd like to focus on bugs and issues. You can report them at assets-bugs@bestpractical.com or even send pull requests via github.

Share this post:

Security vulnerability in RT 4.2

Versions of RT between 4.2.0 and 4.2.2 (inclusive) are vulnerable to adenial-of-service attack via the email gateway; any installation which accepts mail from untrusted sources is vulnerable, regardless of the permissions configuration inside RT. This vulnerability is assigned CVE-2014-1474.

This vulnerability is caused by poor parsing performance in the Email::Address::List module, which RT depends on. We recommend that affected users upgrade their version of Email::Address::List to v0.02 or above, which resolves the issue.

After extracting the contents, the module can be installed by running:

perl Makefile.PL
make
make install

The first step should be sure to use the same perl that RT runs using. If you are unsure, the first line of /opt/rt4/sbin/standalone_httpd should contain the full path to the relevant perl binary. The last step will likely need to be run with root permissions. After this process, you should restart your webserver.

If you need help resolving this issue locally, we will provide discounted pricing for single-incident support; please contact us at sales@bestpractical.com for more information.

Share this post:

RT 4.2.2 released

We are pleased to announce that RT 4.2.2 is now available.This release is primarily a bugfix release; of particular note is that it contains schema changes for MySQL. Though the changes are limited, it is especially important to take, and verify you can recover from, a database backup prior to upgrading.

Also notable is that this release fixes a bug in 4.2.0 and 4.2.1 where failures of the HTML-to-text conversion would silently cause mail to fail to be sent. When using the rich text editor, RT will also now quote the the HTML parts of email, and not simply their text equivalents.

Other changes include:

Documentation

  • Wording fixes in Shredder
  • Clean up examples in Lifecycles documentation
  • Document additional indexes that increase performance of Shredder
  • Replace a suggested GnuPG option with one which is not deprecated
  • Note that errors reported from the GnuPG infrastructure may be caused by GnuPG not being configured, but having been automatically enabled.

Database

  • Ensure that even disabled scrips get the same id-to-name change that other scrips got during the 4.0 → 4.2 upgrade.
  • On MySQL, alter the character set of all columns used to store email addresses to UTF-8
  • Ensure that invalid byte sequences that may have snuck into the database previously (on earlier versions on MySQL, for instance) are not blindly interpreted as UTF-8 when retrieved from the database. As a result, invalid bytes will be returned from the API as the four characters "\xHH", where HH is the hexadecimal encoding of the byte.
  • Ensure that all data containing non-ASCII is quoted-printable encoded for PostgreSQL, instead of merely all data not claiming to be text/plain
  • Additional warnings prevention on Oracle; tests now pass cleanly
  • Allow fully-automated database upgrades using --upgrade-from and --upgrade-to options to rt-setup-database
  • Clean out any remaining traces of RTFM that lingered in custom fields and custom field values that were disabled at the time of the previous upgrade step.
  • Bullet-proof a 3.8 → 4.0 upgrade step for Scrips with no Condition

Serializer/importer

  • Install rt-serializer and rt-importer into sbin/
  • Ensure that incremental upgrade steps only run on incremental serializations, not all exports
  • Fix a runtime error in the incremental upgrade path to 4.2
  • Ensure that inflated Users and Groups are created with the same id as their Principal
  • Disable in-memory record caching when serializing and importing to improve performance
  • Only search non-Disabled custom fields when looking up BasedOn in initialdata files
  • Set up logging properly; warnings are now displayed during serialization and importing

Email

  • Don't die if HTML → text conversion throws an error, which would silently prevent outgoing mail from being sent. Instead, fall back to just sending text/html with no text/plain
  • Replying to an HTML mail with the rich text editor will now quote the HTML part, not the equivalent text version.
  • Set a transfer encoding on outgoing dashboards; this resolves issues with long lines when using the Sendmail MTA.
  • Cope with mangled and overly-quoted recipient headers occasionally generated by Outlook.

General user UI

  • Stop localizing custom field names, for consistency
  • Show a useful error on "show outgoing mail" if the user has no rights to see the page, rather than displaying an empty page.
  • Adjust UI to not block header on "show outgoing email" page
  • Hide the Take and Steal menu items if you already own the ticket, closing a regression in 4.2.0 and above.
  • Autocompletion custom fields now properly autocomplete when placed in custom field groupings
  • Improve rendering on Internet Explorer 6
  • Fix cascaded custom fields on Internet Explorer 8 and below.
  • Fix third-level cascading custom fields, broken in 4.2.1
  • Minor rendering bugs with Charts placed on homepages and dashboards
  • Whitelist "show outgoing email" and chart results from CSRF protection
  • RT 4.0.7 introduced a performance regression when building ticket searches that query Links; switch back to a much better-indexed query.
  • Fix "Clone ticket" functionality with Select-multiple custom fields.
  • Show the queue ID for the current queue in the ticket edit page, even if the user does not have SeeQueue; this prevents the user from accidentally changing the queue.
  • Respect custom field groupings on user preferences page

Query Builder

  • Warnings avoidance for searches with more than 1000 results.
  • Allow IS NULL to search for dates which are unset
  • Properly quote CF names containing non-ASCII characters in query builder, broken since 4.2.0
  • Add "UpdatedBy" TicketSQL limit

Admin

  • Correct a package load order problem which prevented the web installer from working since 4.2.0
  • Report the correct setting name in rt-validate-aliases
  • Fix real-time updating of Theme CSS on Internet Explorer 8 and below
  • Fix a minor display bug in the CF Admin pages, where the queue number instead of queue name would be displayed in requests shortly after server startup.
  • Add "Extra Info" as a possible field for "More About Requestor"

REST

  • Allow searching for users, queues, and groups in REST
  • Prevent a server error when attempting to guess content-type in the REST interface.

Development

  • Allow running tests with an explicit set of plugins enabled.
  • Custom Action and Condition packages (as supplied by extensions; these are not the text entry boxes in the UI) are now loaded at server startup time, to catch compile-time errors in such classes early as well as reducing RT's memory footprint on mod_perl. Previously, these errors would have logged errors only when their Scrip failed to fire. This restores the behavior found in RT 3.8, which was mistakenly removed in RT 4.0.0.
  • Additional callbacks, including in charts, and on ticket reply pages
  • Remove an unused Makefile target

A complete changelog is available from git.

Share this post:

RT 4.0.19 released

We are pleased to announce RT4.0.19 is now available. This release is primarily a bugfix release; of particular note is that it contains schema changes for MySQL, the first notable such in the 4.0 series. Though the changes are limited, it is especially important to take, and verify you can recover from, a database backup prior to upgrading.

Other changes of note:

Documentation

  • Add documentation for rt-crontool
  • Clean up examples in Lifecycles documentation
  • Document additional indexes that increase performance of Shredder
  • Replace a suggested GnuPG option with one which is not deprecated
  • Note that errors reported from the GnuPG infrastructure may be caused by GnuPG not being configured, but having been automatically enabled.

Database

  • On MySQL, alter the character set of all columns used to store email addresses to UTF-8
  • Ensure that invalid byte sequences that may have snuck into the database previously (on earlier versions on MySQL, for instance) are not blindly interpreted as UTF-8 when retrieved from the database. As a result, invalid bytes will be returned from the API as the four characters "\xHH", where HH is the hexadecimal encoding of the byte.
  • Ensure that all data containing non-ASCII is quoted-printable encoded for PostgreSQL, instead of merely all data not claiming to be text/plain
  • Additional warnings prevention on Oracle; tests now pass cleanly
  • Allow fully-automated database upgrades using --upgrade-from and --upgrade-to options to rt-setup-database
  • Clean out any remaining traces of RTFM that lingered in custom fields and custom field values that were disabled at the time of the previous upgrade step.
  • Bullet-proof a 3.8 → 4.0 upgrade step for Scrips with no Condition

Email

  • Set a transfer encoding on outgoing dashboards; this resolves issues with long lines when using the Sendmail MTA.
  • Cope with mangled and overly-quoted recipient headers occasionally generated by Outlook.

General user UI

  • When using the back button to return to a reply page with the rich text editor, contents will no longer be doubly HTML-encoded
  • Improve rendering on Internet Explorer 6
  • Fix cascaded custom fields on Internet Explorer 8 and below.
  • Support cascaded selects for all Select render types (dropdown, select box, radio buttons, checkboxes)
  • Minor rendering bugs with Charts placed on homepages and dashboards
  • Add "mark as seen" functionality to SelfService ticket display pages
  • Link the ModifyPeople page when the user has Watch or WatchAsAdminCc
  • Whitelist "show outgoing email" and chart results from CSRF protection
  • RT 4.0.7 introduced a performance regression when building ticket searches that query Links; switch back to a much better-indexed query.
  • Fix "Clone ticket" functionality with Select-multiple custom fields.
  • Show the queue ID for the current queue in the ticket edit page, even if the user does not have SeeQueue; this prevents the user from accidentally changing the queue.

Query Builder

  • Support CF.Foo in addition to CF.{Foo} and '__CF.{Foo}__' in format strings. This follows the trend of allowing brace-less forms whenever possible.
  • Ensure that format strings from the Query Builder escape quotes correctly, and correctly parse existing formats with quotes.
  • Autocomplete CF values for custom fields of type "Autocomplete" in the Query Builder.
  • Warnings avoidance for searches with more than 1000 results.

Admin

  • Fix real-time updating of Theme CSS on Internet Explorer 8 and below
  • Fix a minor display bug in the CF Admin pages, where the queue number instead of queue name would be displayed in requests shortly after server startup.
  • Add "Extra Info" as a possible field for "More About Requestor"

iCal

  • Ensure that iCal dates are formatted with a leading space on the first nine days of each month, for correctness.
  • Show iCal dates (when omitting times) in the user's timezone, not UTC

REST

  • Prevent a server error when attempting to guess content-type in the REST interface.

Development

  • Custom Action and Condition packages (as supplied by extensions; these are not the text entry boxes in the UI) are now loaded at server startup time, to catch compile-time errors in such classes early as well as reducing RT's memory footprint on mod_perl. Previously, these errors would have logged errors only when their Scrip failed to fire. This restores the behavior found in RT 3.8, which was mistakenly removed in RT 4.0.0.
  • rt-dump-metadata has slightly more documentation and options
  • Additional callbacks, including in charts, and on ticket reply pages
  • Show customized rights under their appropriate categories
  • Remove an unused Makefile target
  • Ensure that RT::Template->Create returns (result,message) and not simply result

A complete changelog is available from git.

Share this post:

End of Life for RT 3.8

As previously announced, with the release of RT 4.2, Best Practical will shortly cease support for the 3.8 series of Request Tracker -- specifically, on March 31st, 2014. The RT 3.8 series was first released in July 2008 and has received only critical bug and security fixes since 2011. We will continue to provide critical bug or security fixes until March 31st, 2014 if any are required.

Please see our release policy for our general policy on the lifespan of RT's releases.

Share this post:

RT 4.2 Series Upgrade & Support Promotion

Happy New Year from all of us at Best Practical! With the release of the 4.2 series of Request Tracker, we are offering generous discounts on upgrades and ongoing support plans. This is a limited time offer, so drop our sales team mail today for additional details.

For all of our loyal users who have been running the 3.8 series, we've talked our sales team into providing very generous discounts on upgrades to RT 4.2. Please contact sales@bestpractical for additional details.

Share this post: