Jesse,<br><br>What is " ** Summary rows" under per-user options?<br><br>Also, deleting custom field values (not object custom field values) is not working for me under 3.7 HEAD with SQLite.<br><br>Thanks!<br><br>
<div class="gmail_quote">2008/3/6 Jesse Vincent <<a href="mailto:jesse@bestpractical.com">jesse@bestpractical.com</a>>:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Ruslan has rolled the tarball for the first Beta release of RT 3.8. The changelog appears below.<br>
<br>
Most of the infrastructure-level changes we expect to make for RT 3.8 have been rolled in. Right now, we're fixing bugs, cleaning things up and starting to integrate a number of RT extensions into the core release.<br>
<br>
RT 3.7.80 isn't recommended for production use, but feedback is appreciated.<br>
<br>
Best,<br>
Jesse<br>
<br>
<br>
Config:<br>
* IMPORTANT: New way to defined hash and array options using Set()<br>
function, old style "@XXX = (...) unless @XXX;" may result in bugs higly<br>
undesireble, read also UPGRADING<br>
* New RT::Config class to interact with configs, load additional files and<br>
access metadata<br>
* new API to get and set config options<br>
* old read access is backward comaptible<br>
* now we search for configs in local/etc<br>
* added base code to allow users to change vairous options via the web UI,<br>
there is already some per user options available and more will be added<br>
later.<br>
<br>
General UI:<br>
* Messages forwarding from ticket history to external persons.<br>
* Per-user options:<br>
** UI layout<br>
** hight of message boxes<br>
** Date/Time display format<br>
** Summary rows<br>
* Show user entry using /Elements/ShowUser component so it's easier<br>
to customize and make things consistent everywhere in the UI<br>
** switch to Mail::Address for formatting, so result would be a correct<br>
email string to copy and paste into other places.<br>
** show as "Real Name" <email@address> (login) by default<br>
** drop some parts if those are duplications<br>
* Allow to add/delete users to/from groups right from user's admin pages<br>
* Add a 404 page to RT<br>
<br>
Tickets:<br>
* Users may choose order of transactions in tickets' history<br>
* new link that allow users to download attachmentes<br>
with MIME headers<br>
* add Forward action<br>
* Inline any size of text if $MaxInlineBody option is undefined or 0<br>
* on ticket create if status not equal to new and started date<br>
is not defined then we set it to now to be consistent with<br>
logic in SetStatus<br>
<br>
Date/Time:<br>
* new config option $DateTimeFormat<br>
* multiple output formats, available as per-user option<br>
* better support for timezones, available as per-user option<br>
* many new tests of the RT::Date API<br>
* fix time units handling, '1/8' didn't work<br>
<br>
Custom fields:<br>
* Run-time generated custom field values.<br>
* New type of CustomFields with autocompletion<br>
* Pattern column is now longer as some regular expressions<br>
can be really lenght.<br>
* Admin UI: allow to search disabled fields<br>
* Admin UI: type selector save states between calls<br>
* Fix a bug in CustomField->Create where assigned Queue is not properly<br>
associated with the newly created CF<br>
* merged duplicated CF handling code<br>
<br>
Query Builder:<br>
* Fixed "is not linked to ticket #N" search<br>
* Added the following TicketSQL fields: Linked, LinkedTo and LinkedFrom.<br>
No integration into web UI, however these mainly required in scrips<br>
and/or custom code.<br>
* Allow __WebPath__,__WebBaseURL__ and __WebURL__ in format strings<br>
* Embedable Query Builder.<br>
* html/Search/Elements/ConditionRow - component that outputs one criteria<br>
row, so it's possible to disable some options or add new one.<br>
* Generic TicketSQL parser, so we have it in one place instead<br>
of several places.<br>
* Many fixes in corner cases of building query tree<br>
<br>
Scrips:<br>
* New conditions: CloseTicket and ReopenTicket<br>
* Stage field didn't work during creation of a scrip in the WebUI<br>
* Fix scrips in TransactionBatch stage<br>
* Run scrips on both ends of a link by default<br>
<br>
Shredder:<br>
* The shredder is in core with new features. Read UPGRADING.<br>
* New option 'no_tickets' in RT::Shredder::Plugin::Users<br>
* Several ways to dump deleted objects<br>
* add support for %t template in file names<br>
* Allow user to download dump via browser right after deletion<br>
* ::Plugin::Tickets<br>
** replace old search options with 'query' so you can use TicketSQL<br>
** add 'with_linked' option<br>
** add 'apply_query_to_linked' option<br>
<br>
GnuPG integration:<br>
* verification, decryption, signing and encrypting<br>
* per queue options<br>
* transparent support of keyservers<br>
* re-verifivation after importing public key<br>
* integration with gpg-agent to avoid passphraseless keys or<br>
passphrases in the config<br>
* per user private keys<br>
* read also `perldoc lib/RT/Crypt/GnuPG.pm`<br>
<br>
Extending RT and local customization:<br>
* Generilized listing of collections, /Elements/CollectionList is<br>
a replacement for TicketList that add similar features we could use<br>
for tickets for other collections, like Queues, Users, Scrips, etc.<br>
So it's possible to use the following things:<br>
** display formats<br>
** paging<br>
** sorting<br>
** column maps<br>
* Several error messages we send to users converted into templates.<br>
* Make clicky feature (read docs/extending_clickable_links.pod).<br>
* It's possible pass any set of arguments into templates.<br>
* Generic API to send emails related to tickets and not.<br>
* New generic UI widgets for selects, input and booleans.<br>
* Column maps are availble for all objects.<br>
* Generic support of __key.{subkey}__ in format strings.<br>
* Support of __CheckBox.{Name}__ and __RadioButton.{Name}__<br>
<br>
3.7+ extensions:<br>
* Tickets advisory locking<br>
* Tickets aging<br>
<br>
Sessions handling:<br>
* RT::Interface::Web::Session - generic object to handle all<br>
session backends.<br>
* new AutoLogoff system-wide option<br>
* new sbin/rt-clean-sessions script to cleanup unused sessions<br>
<br>
Database:<br>
* IMPORTANT: MySQL has new schema for versions higher or equal to 4.1.0<br>
* Pattern column for custom fields is now longer as some regular expressions<br>
can be really lenghty.<br>
* New indexes that proved its effectivness<br>
<br>
rt-setup-database<br>
* Complete rewrite.<br>
* All functions have been moved into RT::Handle class, so it's possible to<br>
use features of this util from custom code<br>
* It's possible to define different schemas for different versions of<br>
the same RDBMS. Read also UPGRADING.mysql<br>
* print information about DB we're going to act on<br>
* allow users and/or extension to override DB properties via ENV<br>
* Many extensions to format of data files:<br>
** allow to defin @Initial/@Final list of sub references<br>
** allow to create groups and add them as members to other groups<br>
** allow to add users into groups<br>
** allow to create scrips on multiple queues at once<br>
** enable custom fields by default<br>
** allow to define ACLs for CFs<br>
** allow to apply a CF to queue(s) instead of global<br>
<br>
rt-mailgate<br>
* don't die when --url is not specified, but print error and exit,<br>
user is not interested in information about line of the code.<br>
* add value of $ENV{EXTENSION} to message header<br>
in the 'X-RT-Mail-Extension' field. And pass through non standard<br>
--extension values in this field too.<br>
* better errors handling<br>
<br>
Performance and memory footprint:<br>
* Constant memory usage in rt-mailgate.<br>
* Lower memory footprint when images are proccessed by mason.<br>
* don't copy text in EncodeUTF8<br>
* /Elements/Callback has been replaced with $m->callback call.<br>
The element still works, but issue a warning. New function is<br>
much faster then calling a component.<br>
* add CallbackOnce option, to allow run callbacks only once<br>
* init html scrubber object only once<br>
* run column map component only once for the first<br>
row of the collection<br>
* Record::LoadByCols: don't create local copy of arguments unles<br>
DB is case sensetive even if it's sensetive create only one<br>
copy and change inplace<br>
* Replaced in many places repeated heavy calls in one block<br>
with one call<br>
* run callbacks and output text once per paragraph<br>
instead of per line, speed up displaying of tickets greatly<br>
with many text parts<br>
* Pass IDs of objects where it's possible instead of other unique<br>
fields to hit chache more often and/or avoid request to DB<br>
<br>
HTML cleanups, XHTML compatibility, layout chnages:<br>
* many missing closing tags have been returned to its place<br>
* added quotes around attributes for all tags<br>
* closed tags br, img and input tags with ' />' syntax<br>
* downcase tags and attributes names<br>
<br>
Java Script:<br>
* deleted duplicate .js files<br>
* new classes management utilities<br>
* reviewed visibility utilities, now we use CSS to hide/show things instead<br>
playing games with DOM what is wrong<br>
* Set/clear all checkboxes features now work for one group. In previouse<br>
versions it's been applied to all checkboxes on the page.<br>
<br>
Other changes and code cleanups:<br>
* Deprecated API have been dropped.<br>
* don't return empty strings instead of undef so NULL can be<br>
distinguished from empty strings<br>
* Cleand up a lot of errorless uninit warnings<br>
* no more perl 5.6.x compatible code<br>
* converted all named functions in mason components into<br>
anon functions, as the former is incorrect and may result<br>
in problems when different components define the same function<br>
* never call 'exit', because it may hide errors<br>
* log errors and rollback transactions only when it's possible<br>
* RT::Transaction: refactored rights checks into CurrentUserCanSee<br>
* fixed and reworked sending email via SMTP server<br>
* don't add empty $args{'Body'} to MIME as ->make_singlepart method doesn't<br>
catch this case and we create useless empty attachments and too nested<br>
entities. Now we do the right thing in all cases: text body, file upload,<br>
body+upload or none of those at all.<br>
* add support for $LogStackTraces = 'error' and other levels,<br>
so it possible to log stack traces only starting from some<br>
level<br>
* log stacktraces into syslog too as many users use default<br>
setup which doesn't log to file and for production uses syslog<br>
is prefered.<br>
<br>
Test suite:<br>
* Reworked test suite, no more tests inlined in the code<br>
and other improvements.<br>
* initial parallel test support for RT::Test.<br>
* test syntax of comps with a mason compiler<br>
<br>
<br>
<br>_______________________________________________<br>
List info: <a href="http://lists.bestpractical.com/cgi-bin/mailman/listinfo/rt-devel" target="_blank">http://lists.bestpractical.com/cgi-bin/mailman/listinfo/rt-devel</a><br>
<br></blockquote></div><br>