[Rt-commit] rt branch, 4.0.0-releng, updated. rt-3.9.7-1130-g3ddc46d

Kevin Falcone falcone at bestpractical.com
Wed Dec 29 13:46:12 EST 2010


The branch, 4.0.0-releng has been updated
       via  3ddc46da1ae017d6bb47a7ff702d4e9e63a65cdc (commit)
       via  ac8a17001655ef2129cb5b1537ca63853ca03dc5 (commit)
       via  8313863307753613e693260674d8e7d1e80ba4d1 (commit)
       via  972aeeafa58718aa88f8c62e71cae5a31bfc86e6 (commit)
      from  ba7b2d4b4420d576d3a3ba1ab39fe6b960be3b40 (commit)

Summary of changes:
 README             |   22 +---
 UPGRADING          |  327 ++--------------------------------------------------
 docs/UPGRADING-2.x |    3 +
 docs/UPGRADING-3.0 |   18 +++
 docs/UPGRADING-3.2 |    9 ++
 docs/UPGRADING-3.4 |   13 ++
 docs/UPGRADING-3.6 |   43 +++++++
 docs/UPGRADING-3.8 |  159 +++++++++++++++++++++++++
 docs/UPGRADING-4.0 |   76 ++++++++++++
 9 files changed, 335 insertions(+), 335 deletions(-)
 create mode 100644 docs/UPGRADING-2.x
 create mode 100644 docs/UPGRADING-3.0
 create mode 100644 docs/UPGRADING-3.2
 create mode 100644 docs/UPGRADING-3.4
 create mode 100644 docs/UPGRADING-3.6
 create mode 100644 docs/UPGRADING-3.8
 create mode 100644 docs/UPGRADING-4.0

- Log -----------------------------------------------------------------
commit 972aeeafa58718aa88f8c62e71cae5a31bfc86e6
Author: Kevin Falcone <falcone at bestpractical.com>
Date:   Wed Dec 29 13:20:32 2010 -0500

    Split UPGRADING up into version specific upgrading files
    
    Hopefully this makes the UPGRADING file less daunting
    (cherry picked from commit b3350f9a8cfa0ad44b6e6a07d06e7a3a71f6c8a9)

diff --git a/UPGRADING b/UPGRADING
index 9de47f6..2c7faee 100644
--- a/UPGRADING
+++ b/UPGRADING
@@ -1,326 +1,15 @@
-UPGRADING
-
-Detailed information about upgrading can be found in the README file.
-This document is intended to supplement the instructions in that file.
-
-Additional information about upgrading from specific versions of RT is
-contained below.
-
-*******
-WARNING
-*******
-
 Before making any changes to your database, always ensure that you have a 
 complete current backup. If you don't have a current backup, you could 
 accidentally damage your database and lose data or worse.
 
 If you are using MySQL, please read the instructions in UPGRADING.mysql as
-well.
-
-
-
-*******
-UPGRADING FROM RT 3.8.x and RTFM 2.1 or greater
-
-RT4 now includes an Articles functionality, merged from RTFM.
-You should not install and enable the RT::FM plugin separately on RT 4.
-If you have existing data in RTFM, you can use the etc/upgrade/upgrade-articles
-script to upgrade that data.
-
-When running normal upgrade scripts, RT will warn if it finds existing
-RTFM tables that contain data and point you to the upgrade-aricles script.
-
-This script should be run from your RT tarball.  It will immediately
-begin populating your new RT4 tables with data from RTFM.  If you have
-browsed in the RT4 UI and created new classes and articles, this script
-will fail spectacularly.  Do *not* run this except on a fresh upgrade of
-RT.
-
-You can run this as
-
-  etc/upgrade/upgrade-articles
-
-It will ouput a lot of data about what it is changing.  You should
-review this for errors.
-
-If you are running RTFM 2.0 with a release of RT, there isn't currently an upgrade
-script that can port RTFM's internal CustomField and Transaction data to RT4.
-
-*******
-UPGRADING FROM RT 3.8.x - Changes:
-
-The deprecated classes RT::Action::Generic, RT::Condition::Generic and RT::Search::Generic
-have been removed, but you shouldn't have been using them anyway. You should have been using
-RT::Action, RT::Condition and RT::Search, respectively.
-
-* The "Rights Delegation" and "Personal Groups" features have been removed.
-
-* Replace the following code in templates:
-
-    [{$Ticket->QueueObj->SubjectTag || $rtname} #{$Ticket->id}]
-
-with
-
-    { $Ticket->SubjectTag }
-
-* Unique names are now enforced for user defined groups.  New groups cannot be
-  created with a duplicate name and existing groups cannot be renamed to an
-  in-use name.  The admin interface will warn about existing groups with
-  duplicate names.  Although the groups will still function, some parts of the
-  interface (rights management, subgroup membership) may not work as expected
-  with duplicate names.  Running
-
-    /opt/rt4/sbin/rt-validator --check
-
-  will report duplicate group names, and running it with --resolve will fix
-  duplicates by appending the group id to the name.
-
-  Nota Bene: As a result of differing indexes in the schema files, Postgres and
-  SQLite RT databases have enforced group name uniqueness for many years at the
-  database level.
-
-*******
-UPGRADING FROM 3.8.8 and earlier - Changes:
-
-We've proved that it's possible to delete set of records
-from Transactions table without losing functionality. To delete
-record run the following script:
-
-    perl -I /opt/rt4/local/lib -I /opt/rt4/lib etc/upgrade/shrink_transactions_table.pl
-
-The default for $MessageBoxWrap is now SOFT and $MessageBoxWidth is now unset
-by default.  This means the message box will expand to fill all the available
-width.  $MessageBoxWrap is also overridable by the user now.  These changes
-accommodate the new default two column layout for ticket create and update
-pages.  You may turn this layout off by setting $UseSideBySideLayout to 0.  To
-retain the original behavior, set $MessageBoxWrap to HARD and $MessageBoxWidth
-to 72.
-
-UPGRADING FROM 3.8.7 and earlier - Changes:
-
-RT's ChartFont option has been changed from a string to a hash which
-lets you specify per-language fonts. RT now comes with a better default
-font for charts, too.
-
-You should either update your 'ChartFont' option to match the new format
-or consider trying the new default
-
-RT now gives you more precise control over the order in which custom fields
-are displayed.  This change requires some small changes to your currently saved
-custom field orders.
-
-RT will automatically clean up your existing custom fields when you run:
-
-
-  /opt/rt4/sbin/rt-setup-database --dba root --prompt-for-dba-password --action upgrade
-
-After that cleanup, you should make sure that custom fields are ordered in
-a way that you and your users find pleasing.
-
-UPGRADING FROM 3.8.6 and earlier - Changes:
-
-For MySQL and Oracle users:
-If you upgraded from a version of RT earlier than 3.7.81 you should
-already have a CachedGroupMembers3 index on your CachedGroupMembers table.
-If you did a clean install of RT somewhere in the 3.8 release series, you 
-most likely don't have this index.  You can add it manually with
-
-  CREATE INDEX CachedGroupMembers3 on CachedGroupMembers (MemberId, ImmediateParentId);
-
-UPGRADING FROM 3.8.5 and earlier - Changes:
-
-You can now forward an entire Ticket history (in addition to specific transactions)
-but this requires a new Template called forward ticket.  This template will be added
-when you run.
-
-/opt/rt4/sbin/rt-setup-database --dba root --prompt-for-dba-password --action upgrade
-
-Custom fields with categories can optionally be split out into
-hierarchical custom fields.  If you wish to convert your old
-category-based custom fields, run:
-
-    perl etc/upgrade/split-out-cf-categories
-
-It will prompt you for each custom field with categories that it
-finds, and the name of the custom field to create to store the
-categories.
-
-If you were using the LocalizedDateTime RT::Date formatter from code
-and passing a DateFormat or TimeFormat argument, you need to switch from 
-the strftime methods to the cldr methods (ie full_date_format becomes date_format_full)
-You may have done this from your RT_SiteConfig.pm by using
-Set($DateTimeFormat, { Format => 'LocalizedDateTime', DateFormat => 'medium_date_format' );
-
-UPGRADING FROM 3.8.3 and earlier - Changes:
-
-Arguments to the NotifyGroup Scrip Action need
-to be corrected in the database using 
-
-/opt/rt4/sbin/rt-setup-database --dba root --prompt-for-dba-password --action upgrade
-
-
-UPGRADING FROM 3.8.2 and earlier - Changes:
-
-New scrip condition 'On Reject'.
-
-UPGRADING FROM 3.8.1 and earlier - Changes:
-
-= Oracle configuration =
-
-$DatabaseName is used as SID, so RT can connect without environment variables
-or tnsnames.ora file. Because of this change your RT instance may loose ability
-to connect to your DB, you have to update options and restart your web server.
-Example configuration:
-
-    Set($DatabaseType, 'Oracle');
-    Set($DatabaseHost, '192.168.0.1');
-    # undefined port => will try both 1526 and 1521
-    Set($DatabasePort, undef);
-    # ORACLE SID
-    Set($DatabaseName, 'XE');
-    # user for RT in Oracle, RT's tables in his schema
-    Set($DatabaseUser, 'test');
-    # above user's password
-    Set($DatabasePassword, 'test');
-
-= Rights changes =
-
-Now, if you want any user to be able to access the Approvals tools (a.k.a.  the
-Approvals tab), you must grant that user the "ShowApprovalsTab" right.
-
-UPGRADING FROM 3.8.0 and earlier - Changes:
-
-Searches for bookmarked tickets have been reimplemented and syntax has
-been changed a little. Database upgrade script handles global 'Bookmarked Tickets'
-search only. New Ticket SQL "id = '__Bookmarked__'" is more flexible than
-old "__Bookmarks__". Old version is not valid Ticket SQL query, so people
-can not use it in the query builder and as well admins couldn't not edit
-format and other properties of the global saved search. Old version's been
-left for backwards compatibility.
-
-
-UPGRADING FROM 3.7.85 and earlier - Changes:
-
-We've proved that it's possible to delete pretty big set of records
-from CachedGroupMembers table without losing functionality. To delete
-record run the following script:
-
-    perl -I /opt/rt4/local/lib -I /opt/rt4/lib etc/upgrade/shrink_cgm_table.pl
-
-UPGRADING FROM 3.7.81 and earlier - Changes:
-
-RT::Extension::BrandedQueues has been integrated into core, so you MUST read
-upgrading instructions docs/queue_subject_tag.pod EVEN IF you have not used
-that extension.
-
-RT::Action::LinearEscalate extension has been integrated into core,
-so you MUST uninstall it before upgrading.
-
-RT::Extension::iCal has been integrated into core, so you MUST uninstall
-it before upgrading. In addition, you must run etc/upgrade/3.8-ical-extension
-script to convert old data.
-
-UPGRADING FROM 3.7.80 and earlier - Changes:
-
-Added indexes to CachedGroupMembers for MySQL and Oracle.
-If you have previously installed RTx-Shredder, you may already
-have these indexes.  You can see the indexes by looking at
-etc/upgrade/3.7.81/schema.*
-
-These indexes may take a very long time to create.
-
-UPGRADING FROM 3.6.X and earlier - Changes:
-
-There are a lot of changes all over the code, so it's highly recommended to
-use fresh directory and then reinstalling your customizations.
-
-New schema for mysql 4.1 and greater, read more in UPGRADING.mysql.
-
-Config format has been made stricter. All options MUST be set using Set
-function, no more "@XXX = (...) unless @XXX;". Use "Set(@XXX, ...);" instead.
-
-RTx::Shredder extension has been integrated into core and features have been
-added, so you MUST uninstall it before upgrading or use a fresh directory for
-installation.
-
-New interface for making links in text clickable and doing other replacements
-has been integrated into RT.
-Read more in `perldoc docs/extending_clickable_links.pod`.
-
-New feature that allow users to forward messages. There is a new option in
-the config ($ForwardFromUser), new rights and a template.
-
-New global templates with "Error: " prefix in the name to make it possible
-to configure error messages sent to users.
-
-Read about GnuPG integration in `perldoc docs/gnupg_integration.pod`.
-
-New scrip conditions 'On Close' and 'On Reopen'.
-
-UPGRADING FROM 3.5.7 and earlier - Changes:
-
-Scrips are now prepared and committed in order alphanumerically by description.
-This means that you can prepend a number (00, 07, 15, 24) to the beginning of
-each scrip's description, and they will run in that order.  Depending on your
-database, the old ordering may have been by scrip id number -- if that is the
-case, simply prepend the scrip id number to the beginning of its description.
-
-
-UPGRADING FROM 3.5.1 and earlier - Changes:
-
-The default for $RedistributeAutoGeneratedMessages has changed to
-'privileged', to make out-of-the-box installations more resistant
-to mail loops. If you rely on the old default of redistributing to
-all watchers, you'll need to set it explicitly now.
-
-
-UPGRADING FROM 3.3.14 and earlier - Changes:
-
-The "ModifyObjectCustomFieldValues" right name was too long. It's been changed to
-"ModifyCustomField"
-
-
-UPGRADING FROM 3.3.11 and earlier - Changes:
-
-= Rights Changes =
-
-Custom Fields now have an additional right "ModifyCustomField". 
-This right governs whether a user can modify an object's custom field values
-for a particular custom field. This includes adding, deleting and changing values.
-
-
-UPGRADING FROM 3.2 and earlier - Changes:
-
-= Rights changes =
-
-Now, if you want any user to be able to access the Admin tools (a.k.a. 
-the Configuration tab), you must grant that user the "ShowConfigTab" 
-right.  Making the user a privileged user is no longer sufficient.
-
-"SuperUser" users are no longer automatically added to the list of users who can own tickets in a queue. You now need to explicitly give them the "own tickets" right.
-
-
-
-UPGRADING FROM 3.0.x - Changes:
-
-= Installation =
-
-We recommend you move your existing /opt/rt4 tree completely out
-of the way before installing the new version of RT, to make sure
-that you don't inadvertently leave old files hanging around.
-
-= Rights changes =
-
-Now, if you want RT to automatically create new users upon ticket
-submission, you MUST grant 'Everyone' the right to create tickets.
-Granting this right only to "Unprivileged Users" is now insufficient.
-
-= Web server configuration
-
-The configuration for RT's web interface has changed.  Please refer to
-docs/web_deployment.pod for instructions.
-
-UPGRADING FROM 2.x:
+well to ensure that you do not lose data in your upgrade.
 
-See http://search.cpan.org/dist/RT-Extension-RT2toRT3/
+We have moved large upgrade changes and steps into
+docs/UPGRADING-version files which you should refer to for specific
+instructions.  If you are coming from 3.8.6 to 4.0.x you should review
+both the 3.8 and 4.0 file.  Similarly, if you were coming from 3.6.7,
+you would want to review 3.6, 3.8 and 4.0
 
+It is particularly important that you read the warnings at the top of
+UPGRADING-4.0 for some common issues.
diff --git a/docs/UPGRADING-2.x b/docs/UPGRADING-2.x
new file mode 100644
index 0000000..40f5fda
--- /dev/null
+++ b/docs/UPGRADING-2.x
@@ -0,0 +1,3 @@
+UPGRADING FROM 2.x:
+
+See http://search.cpan.org/dist/RT-Extension-RT2toRT3/
diff --git a/docs/UPGRADING-3.0 b/docs/UPGRADING-3.0
new file mode 100644
index 0000000..625ca4b
--- /dev/null
+++ b/docs/UPGRADING-3.0
@@ -0,0 +1,18 @@
+UPGRADING FROM 3.0.x - Changes:
+
+= Installation =
+
+We recommend you move your existing /opt/rt3 tree completely out
+of the way before installing the new version of RT, to make sure
+that you don't inadvertently leave old files hanging around.
+
+= Rights changes =
+
+Now, if you want RT to automatically create new users upon ticket
+submission, you MUST grant 'Everyone' the right to create tickets.
+Granting this right only to "Unprivileged Users" is now insufficient.
+
+= Web server configuration
+
+The configuration for RT's web interface has changed.  Please refer to
+docs/web_deployment.pod for instructions.
diff --git a/docs/UPGRADING-3.2 b/docs/UPGRADING-3.2
new file mode 100644
index 0000000..9510814
--- /dev/null
+++ b/docs/UPGRADING-3.2
@@ -0,0 +1,9 @@
+UPGRADING FROM 3.2 and earlier - Changes:
+
+= Rights changes =
+
+Now, if you want any user to be able to access the Admin tools (a.k.a. 
+the Configuration tab), you must grant that user the "ShowConfigTab" 
+right.  Making the user a privileged user is no longer sufficient.
+
+"SuperUser" users are no longer automatically added to the list of users who can own tickets in a queue. You now need to explicitly give them the "own tickets" right.
diff --git a/docs/UPGRADING-3.4 b/docs/UPGRADING-3.4
new file mode 100644
index 0000000..5e5ca7b
--- /dev/null
+++ b/docs/UPGRADING-3.4
@@ -0,0 +1,13 @@
+UPGRADING FROM 3.3.14 and earlier - Changes:
+
+The "ModifyObjectCustomFieldValues" right name was too long. It's been changed to
+"ModifyCustomField"
+
+
+UPGRADING FROM 3.3.11 and earlier - Changes:
+
+= Rights Changes =
+
+Custom Fields now have an additional right "ModifyCustomField". 
+This right governs whether a user can modify an object's custom field values
+for a particular custom field. This includes adding, deleting and changing values.
diff --git a/docs/UPGRADING-3.6 b/docs/UPGRADING-3.6
new file mode 100644
index 0000000..15c7346
--- /dev/null
+++ b/docs/UPGRADING-3.6
@@ -0,0 +1,43 @@
+UPGRADING FROM 3.6.X and earlier - Changes:
+
+There are a lot of changes all over the code, so it's highly recommended to
+use fresh directory and then reinstalling your customizations.
+
+New schema for mysql 4.1 and greater, read more in UPGRADING.mysql.
+
+Config format has been made stricter. All options MUST be set using Set
+function, no more "@XXX = (...) unless @XXX;". Use "Set(@XXX, ...);" instead.
+
+RTx::Shredder extension has been integrated into core and features have been
+added, so you MUST uninstall it before upgrading or use a fresh directory for
+installation.
+
+New interface for making links in text clickable and doing other replacements
+has been integrated into RT.
+Read more in `perldoc docs/extending_clickable_links.pod`.
+
+New feature that allow users to forward messages. There is a new option in
+the config ($ForwardFromUser), new rights and a template.
+
+New global templates with "Error: " prefix in the name to make it possible
+to configure error messages sent to users.
+
+Read about GnuPG integration in `perldoc docs/gnupg_integration.pod`.
+
+New scrip conditions 'On Close' and 'On Reopen'.
+
+UPGRADING FROM 3.5.7 and earlier - Changes:
+
+Scrips are now prepared and committed in order alphanumerically by description.
+This means that you can prepend a number (00, 07, 15, 24) to the beginning of
+each scrip's description, and they will run in that order.  Depending on your
+database, the old ordering may have been by scrip id number -- if that is the
+case, simply prepend the scrip id number to the beginning of its description.
+
+
+UPGRADING FROM 3.5.1 and earlier - Changes:
+
+The default for $RedistributeAutoGeneratedMessages has changed to
+'privileged', to make out-of-the-box installations more resistant
+to mail loops. If you rely on the old default of redistributing to
+all watchers, you'll need to set it explicitly now.
diff --git a/docs/UPGRADING-3.8 b/docs/UPGRADING-3.8
new file mode 100644
index 0000000..9a8b69e
--- /dev/null
+++ b/docs/UPGRADING-3.8
@@ -0,0 +1,149 @@
+UPGRADING FROM 3.8.8 and earlier - Changes:
+
+We've proved that it's possible to delete set of records
+from Transactions table without losing functionality. To delete
+record run the following script:
+
+    perl -I /opt/rt4/local/lib -I /opt/rt4/lib etc/upgrade/shrink_transactions_table.pl
+
+The default for $MessageBoxWrap is now SOFT and $MessageBoxWidth is now unset
+by default.  This means the message box will expand to fill all the available
+width.  $MessageBoxWrap is also overridable by the user now.  These changes
+accommodate the new default two column layout for ticket create and update
+pages.  You may turn this layout off by setting $UseSideBySideLayout to 0.  To
+retain the original behavior, set $MessageBoxWrap to HARD and $MessageBoxWidth
+to 72.
+
+UPGRADING FROM 3.8.7 and earlier - Changes:
+
+RT's ChartFont option has been changed from a string to a hash which
+lets you specify per-language fonts. RT now comes with a better default
+font for charts, too.
+
+You should either update your 'ChartFont' option to match the new format
+or consider trying the new default
+
+RT now gives you more precise control over the order in which custom fields
+are displayed.  This change requires some small changes to your currently saved
+custom field orders.
+
+RT will automatically clean up your existing custom fields when you run:
+
+
+  /opt/rt4/sbin/rt-setup-database --dba root --prompt-for-dba-password --action upgrade
+
+After that cleanup, you should make sure that custom fields are ordered in
+a way that you and your users find pleasing.
+
+UPGRADING FROM 3.8.6 and earlier - Changes:
+
+For MySQL and Oracle users:
+If you upgraded from a version of RT earlier than 3.7.81 you should
+already have a CachedGroupMembers3 index on your CachedGroupMembers table.
+If you did a clean install of RT somewhere in the 3.8 release series, you 
+most likely don't have this index.  You can add it manually with
+
+  CREATE INDEX CachedGroupMembers3 on CachedGroupMembers (MemberId, ImmediateParentId);
+
+UPGRADING FROM 3.8.5 and earlier - Changes:
+
+You can now forward an entire Ticket history (in addition to specific transactions)
+but this requires a new Template called forward ticket.  This template will be added
+when you run.
+
+/opt/rt4/sbin/rt-setup-database --dba root --prompt-for-dba-password --action upgrade
+
+Custom fields with categories can optionally be split out into
+hierarchical custom fields.  If you wish to convert your old
+category-based custom fields, run:
+
+    perl etc/upgrade/split-out-cf-categories
+
+It will prompt you for each custom field with categories that it
+finds, and the name of the custom field to create to store the
+categories.
+
+If you were using the LocalizedDateTime RT::Date formatter from code
+and passing a DateFormat or TimeFormat argument, you need to switch from 
+the strftime methods to the cldr methods (ie full_date_format becomes date_format_full)
+You may have done this from your RT_SiteConfig.pm by using
+Set($DateTimeFormat, { Format => 'LocalizedDateTime', DateFormat => 'medium_date_format' );
+
+UPGRADING FROM 3.8.3 and earlier - Changes:
+
+Arguments to the NotifyGroup Scrip Action need
+to be corrected in the database using 
+
+/opt/rt4/sbin/rt-setup-database --dba root --prompt-for-dba-password --action upgrade
+
+
+UPGRADING FROM 3.8.2 and earlier - Changes:
+
+New scrip condition 'On Reject'.
+
+UPGRADING FROM 3.8.1 and earlier - Changes:
+
+= Oracle configuration =
+
+$DatabaseName is used as SID, so RT can connect without environment variables
+or tnsnames.ora file. Because of this change your RT instance may loose ability
+to connect to your DB, you have to update options and restart your web server.
+Example configuration:
+
+    Set($DatabaseType, 'Oracle');
+    Set($DatabaseHost, '192.168.0.1');
+    # undefined port => will try both 1526 and 1521
+    Set($DatabasePort, undef);
+    # ORACLE SID
+    Set($DatabaseName, 'XE');
+    # user for RT in Oracle, RT's tables in his schema
+    Set($DatabaseUser, 'test');
+    # above user's password
+    Set($DatabasePassword, 'test');
+
+= Rights changes =
+
+Now, if you want any user to be able to access the Approvals tools (a.k.a.  the
+Approvals tab), you must grant that user the "ShowApprovalsTab" right.
+
+UPGRADING FROM 3.8.0 and earlier - Changes:
+
+Searches for bookmarked tickets have been reimplemented and syntax has
+been changed a little. Database upgrade script handles global 'Bookmarked Tickets'
+search only. New Ticket SQL "id = '__Bookmarked__'" is more flexible than
+old "__Bookmarks__". Old version is not valid Ticket SQL query, so people
+can not use it in the query builder and as well admins couldn't not edit
+format and other properties of the global saved search. Old version's been
+left for backwards compatibility.
+
+UPGRADING FROM 3.7.85 and earlier - Changes:
+
+We've proved that it's possible to delete pretty big set of records
+from CachedGroupMembers table without losing functionality. To delete
+record run the following script:
+
+    perl -I /opt/rt4/local/lib -I /opt/rt4/lib etc/upgrade/shrink_cgm_table.pl
+
+UPGRADING FROM 3.7.81 and earlier - Changes:
+
+RT::Extension::BrandedQueues has been integrated into core, so you MUST read
+upgrading instructions docs/queue_subject_tag.pod EVEN IF you have not used
+that extension.
+
+RT::Action::LinearEscalate extension has been integrated into core,
+so you MUST uninstall it before upgrading.
+
+RT::Extension::iCal has been integrated into core, so you MUST uninstall
+it before upgrading. In addition, you must run etc/upgrade/3.8-ical-extension
+script to convert old data.
+
+UPGRADING FROM 3.7.80 and earlier - Changes:
+
+Added indexes to CachedGroupMembers for MySQL and Oracle.
+If you have previously installed RTx-Shredder, you may already
+have these indexes.  You can see the indexes by looking at
+etc/upgrade/3.7.81/schema.*
+
+These indexes may take a very long time to create.
+
+
diff --git a/docs/UPGRADING-4.0 b/docs/UPGRADING-4.0
new file mode 100644
index 0000000..b72a584
--- /dev/null
+++ b/docs/UPGRADING-4.0
@@ -0,0 +1,58 @@
+UPGRADING FROM RT 3.8.x and RTFM 2.1 or greater
+
+RT4 now includes an Articles functionality, merged from RTFM.
+You should not install and enable the RT::FM plugin separately on RT 4.
+If you have existing data in RTFM, you can use the etc/upgrade/upgrade-articles
+script to upgrade that data.
+
+When running normal upgrade scripts, RT will warn if it finds existing
+RTFM tables that contain data and point you to the upgrade-aricles script.
+
+This script should be run from your RT tarball.  It will immediately
+begin populating your new RT4 tables with data from RTFM.  If you have
+browsed in the RT4 UI and created new classes and articles, this script
+will fail spectacularly.  Do *not* run this except on a fresh upgrade of
+RT.
+
+You can run this as
+
+  etc/upgrade/upgrade-articles
+
+It will ouput a lot of data about what it is changing.  You should
+review this for errors.
+
+If you are running RTFM 2.0 with a release of RT, there isn't currently an upgrade
+script that can port RTFM's internal CustomField and Transaction data to RT4.
+
+*******
+The deprecated classes RT::Action::Generic, RT::Condition::Generic and RT::Search::Generic
+have been removed, but you shouldn't have been using them anyway. You should have been using
+RT::Action, RT::Condition and RT::Search, respectively.
+
+* The "Rights Delegation" and "Personal Groups" features have been removed.
+
+* Replace the following code in templates:
+
+    [{$Ticket->QueueObj->SubjectTag || $rtname} #{$Ticket->id}]
+
+with
+
+    { $Ticket->SubjectTag }
+
+* Unique names are now enforced for user defined groups.  New groups cannot be
+  created with a duplicate name and existing groups cannot be renamed to an
+  in-use name.  The admin interface will warn about existing groups with
+  duplicate names.  Although the groups will still function, some parts of the
+  interface (rights management, subgroup membership) may not work as expected
+  with duplicate names.  Running
+
+    /opt/rt4/sbin/rt-validator --check
+
+  will report duplicate group names, and running it with --resolve will fix
+  duplicates by appending the group id to the name.
+
+  Nota Bene: As a result of differing indexes in the schema files, Postgres and
+  SQLite RT databases have enforced group name uniqueness for many years at the
+  database level.
+
+*******

commit 8313863307753613e693260674d8e7d1e80ba4d1
Author: Kevin Falcone <falcone at bestpractical.com>
Date:   Wed Dec 29 13:38:44 2010 -0500

    port forward some notes from 3.8
    (cherry picked from commit 0b8ff30428fd099bea992896f1af6e13f4e6b57c)

diff --git a/docs/UPGRADING-3.8 b/docs/UPGRADING-3.8
index 9a8b69e..d2bb751 100644
--- a/docs/UPGRADING-3.8
+++ b/docs/UPGRADING-3.8
@@ -2,10 +2,13 @@ UPGRADING FROM 3.8.8 and earlier - Changes:
 
 We've proved that it's possible to delete set of records
 from Transactions table without losing functionality. To delete
-record run the following script:
+records run the following script:
 
     perl -I /opt/rt4/local/lib -I /opt/rt4/lib etc/upgrade/shrink_transactions_table.pl
 
+If you chose not to run the shrink_cgm_table.pl script when you upgraded to 3.8,
+you should read more about it below and run it at this point.
+
 The default for $MessageBoxWrap is now SOFT and $MessageBoxWidth is now unset
 by default.  This means the message box will expand to fill all the available
 width.  $MessageBoxWrap is also overridable by the user now.  These changes
@@ -120,10 +123,17 @@ UPGRADING FROM 3.7.85 and earlier - Changes:
 
 We've proved that it's possible to delete pretty big set of records
 from CachedGroupMembers table without losing functionality. To delete
-record run the following script:
+record run the following script.  If you don't run this, you may
+occasionally see problems where RT miscounts users, particularly in the
+chart functionality.
 
     perl -I /opt/rt4/local/lib -I /opt/rt4/lib etc/upgrade/shrink_cgm_table.pl
 
+After you run this, you'll have significantly reduced the number of
+records in your CachedGroupMembers table and may need to tell your
+database to refresh indexes/statistics.  Please consult your DBA for
+specific instructions for your database.
+
 UPGRADING FROM 3.7.81 and earlier - Changes:
 
 RT::Extension::BrandedQueues has been integrated into core, so you MUST read

commit ac8a17001655ef2129cb5b1537ca63853ca03dc5
Author: Kevin Falcone <falcone at bestpractical.com>
Date:   Wed Dec 29 13:40:05 2010 -0500

    Flag some common problems folks will encounter
    (cherry picked from commit bd4d927529345f7a666ff4cc0125f8c2005dc2fe)

diff --git a/docs/UPGRADING-4.0 b/docs/UPGRADING-4.0
index b72a584..e6b67fe 100644
--- a/docs/UPGRADING-4.0
+++ b/docs/UPGRADING-4.0
@@ -1,3 +1,21 @@
+Common Issues
+
+RT now defaults to a database name of rt4 and an installation root of /opt/rt4
+
+If you are upgrading, you will likely want to specify that your database
+is still named rt3 (or import a backup of your database as rt4 so that
+can feel more confident making the upgrade).
+
+If you choose to force RT to install into /opt/rt4 you will encounter
+issues because we've removed the _Overlay files (such as
+Ticket_Overlay.pm).  You will need to manually remove these files after
+the upgrade or RT will fail.
+
+RT has also removed the files and scripts used in previous releases in your web
+server configuration.  You need to review docs/web_deployment.pod for current
+instructions
+
+*******
 UPGRADING FROM RT 3.8.x and RTFM 2.1 or greater
 
 RT4 now includes an Articles functionality, merged from RTFM.

commit 3ddc46da1ae017d6bb47a7ff702d4e9e63a65cdc
Author: Kevin Falcone <falcone at bestpractical.com>
Date:   Wed Dec 29 13:41:42 2010 -0500

    a few minor cleanups to README, it wants more
    (cherry picked from commit 514c9e1b3d058a30ce3f09319bb31a55b7392f47)

diff --git a/README b/README
index b87a856..8191ab0 100644
--- a/README
+++ b/README
@@ -50,11 +50,6 @@ o   Various and sundry perl modules
 GENERAL INSTALLATION
 --------------------
 
-This is a rough guide to installing RT. For more detail, you'll
-want to read a more comprehensive installation guide at:
-
-    http://wiki.bestpractical.com/index.cgi?InstallationGuides
-
 1   Unpack this distribution other than where you want to install RT
 
      To do this cleanly, run the following command:
@@ -72,10 +67,11 @@ want to read a more comprehensive installation guide at:
     default install directory in /opt/rt4 does not work under SELinux's
     default configuration.
 
-    If you're upgrading RT then it is worth reading the UPGRADING document at
+    If you're upgrading RT plrease review the UPGRADING document at
     this point. Some extensions you are using may have been integrated into the
-    core. Use a new, clean directory when you're upgrading to a new major
-    release (for example from 3.6.x to 3.8.x).
+    core or there may be extra upgrade scripts to run. Use a new, clean
+    directory when you're upgrading to a new major release (for example
+    from 3.6.x to 3.8.x or to 4.0.x).
 
 3   Make sure that RT has everything it needs to run.
 
@@ -99,7 +95,7 @@ want to read a more comprehensive installation guide at:
      It might sometimes be necessary to run "make fixdeps" several times
      to install all necessary perl modules.
 
-6   If this is a new installation:
+6   If this is a new installation (not an upgrade):
 
      As a user with permission to install RT in your chosen directory, type:
 
@@ -168,9 +164,7 @@ want to read a more comprehensive installation guide at:
 
 8  If you're upgrading from RT 2.0:
 
-    Use the RT::Extension::RT2toRT3 module to upgrade to the current RT
-    release.  You can download it from CPAN here:
-    http://search.cpan.org/dist/RT-Extension-RT2toRT3/
+    Read more in UPGRADING and docs/UPGRADING-2.x
 
 9  Configure the web server, as described in docs/web_deployment.pod, and
    the email gateway, as described below.
@@ -204,10 +198,6 @@ want to read a more comprehensive installation guide at:
     optional step.
 
 
-
-
-
-
 SETTING UP THE MAIL GATEWAY
 ---------------------------
 

-----------------------------------------------------------------------


More information about the Rt-commit mailing list