Changes between Version 1 and Version 2 of TracUpgrade


Ignore:
Timestamp:
Jul 30, 2021, 7:41:27 AM (14 months ago)
Author:
trac
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • TracUpgrade

    v1 v2  
    1111Check whether your plugins are compatible with the version of Trac that you are upgrading to. Obsolete plugins listed in the [#VersionSpecificSteps version specific steps] below should be uninstalled or disabled.
    1212
    13 If you are upgrading to a minor release, plugin compatibility is usually not a concern because the Trac API is normally unchanged.
    14 
    15 If your plugins are installed from [https://trac-hacks.org trac-hacks.org] you can check compatibility by looking for a tag on the project page corresponding to a major release (e.g. `1.4`). If you are unsure, you'll want to contact the plugin author or ask on the [trac:MailingList MailingList].
     13If you are upgrading to a minor release, plugin compatibility is usually not a concern because the Trac API rarely changes, and major features are usually not introduced, for minor releases.
     14
     15If your plugins are installed from [https://trac-hacks.org trac-hacks.org] you can check compatibility by looking for a tag on the project page corresponding to a major release (e.g. `1.2`). If you are unsure, you'll want to contact the plugin author or ask on the [trac:MailingList MailingList].
    1616
    1717If you are running several Trac plugins it is good to test the upgrade and plugin functionality in a staging instance of your site before upgrading your production instance. Remember, plugin authors are responsible for Trac version compatibility and plugins can interact in unexpected ways. Your Trac instance may have a unique combination of plugins and therefore it's advised that you do some verification testing when making any changes to your site.
     
    2525=== 3. Update Trac and dependencies #UpdatetheTracCode
    2626
    27 The packages are available through several channels, as described in [trac:TracDownload]. If your Trac instance was installed through an operating system package manager, proceed with the standard steps that are appropriate for your operating system package manager. If it was installed through a Windows installer, uninstall the old Trac package before installing new Trac package.
     27The packages are available through several channels, as described in [trac:TracDownload]. If your Trac instance was installed through an operating system package manager or an installer on Windows, proceed with the standard steps that are appropriate for your operating system.
    2828
    2929If you are managing your Trac installation using command line tools, `pip` is the preferred tool to upgrade a Trac instance because it will uninstall the old version. The following command will upgrade your Trac installation using the package published to [https://pypi.python.org/pypi/Trac PyPI].
     
    3636
    3737{{{#!sh
    38 $ pip install --upgrade Trac==1.4.1
     38$ pip install --upgrade Trac==1.2.1
    3939}}}
    4040
     
    4343=== 4. Upgrade the Trac Environment #UpgradetheTracEnvironment
    4444
    45 Environment upgrades are not necessary for minor version releases unless otherwise noted.
    46 
    47 On starting your web server after upgrading Trac, a message will be displayed for projects that need to be upgraded and the projects will not be accessible until the upgrade is run.
     45Environment upgrades are not necessary for minor version releases unless otherwise noted. 
     46
     47On starting your web server after upgrading Trac, a message will be displayed for projects that need to be upgraded and the projects will not be accessible until the upgrade is run. 
    4848
    4949The upgrade is run using a [TracAdmin trac-admin] command:
     
    8585=== 7. Steps specific to a given Trac version #VersionSpecificSteps
    8686
    87 ==== Upgrading from Trac 1.4 to 1.5 #to1.5
    88 
    89 ===== Python 2.7 no longer supported
    90 
    91 Upgrade Python to 3.5 or later.
    92 
    9387==== Upgrading from Trac 1.2 to 1.4 #to1.4
    9488
     
    115109
    116110Content is now generated by using the Jinja2 template
    117 engine. You should verify that your plugins are
     111engine. You may want to verify that your plugins are
    118112compatible with this change.
    119 
    120 If you customized the Trac templates, or the `site.html`
     113(TODO: expand...)
     114
     115If you customized the Trac templates, or the `site.html`
    121116template, you'll need to adapt that as well.
    122 (TODO: expand...) See [#CustomizedTemplates]. Email [TracNotification#CustomizingContent notification templates] also need to
    123 be adapted.
     117(TODO: expand...) See [#CustomizedTemplates]
    124118
    125119===== New permission policies for Wiki and Ticket realms
    126120
    127 Since 1.3.2 there are new permission policies for the ticket and wiki systems. `DefaultTicketPolicy` allows an authenticated user with `TICKET_APPEND` or `TICKET_CHPROP` to modify the description of a ticket they reported. It also implements the pre-1.3.2 behavior of allowing users to edit their own ticket comments. [#Newpermissionspolicyforread-onlywikipages ReadonlyWikiPolicy], added in 1.1.2, is renamed to `DefaultWikiPolicy`. The new permission policies can be easily replaced with alternate implementations if the default behavior is not desired.
     121Since 1.3.2 there are new permission policies for the ticket and wiki systems. `DefaultTicketPolicy` allows an authenticated users with `TICKET_APPEND` or `TICKET_CHPROP` to modify the description of a ticket they reported. It also implements the pre-1.3.2 behavior of allowing users to edit their own ticket comments. [#Newpermissionspolicyforread-onlywikipages ReadonlyWikiPolicy], added in 1.1.2, is renamed to `DefaultWikiPolicy`. The new permission policies can be easily replaced with alternate implementations if the default behavior is not desired.
    128122
    129123If `[trac] permission_policy` has the default value `ReadonlyWikiPolicy, DefaultPermissionPolicy, LegacyAttachmentPolicy`, then `DefaultWikiPolicy, DefaultTicketPolicy` should be automatically appended to the list when upgrading the environment:
     
    144138Reports that display the error need to be modified to prefix the `description` column with the appropriate table name or alias. For example, if the `ticket` table is aliased as `t` (`ticket t` or `ticket AS t`), replace `description` with `t.description` if the report should use the ticket's `description` column.
    145139
    146 ===== Removed `<repostype>` and `<repospath>` arguments from `trac-admin` `initenv` command
     140===== Removed `<repostype>` and `<repospath>` arguments from TracAdmin `initenv` command
    147141
    148142The TracAdmin `initenv` command allowed the default repository to be specified using the third and fourth positional arguments of `initenv`:
    149 {{{#!sh
     143{{{
    150144initenv [<projectname> <db> [<repostype> <repospath>]]
    151145}}}
     
    165159* [https://trac-hacks.org/wiki/AttachmentNotifyPlugin AttachmentNotifyPlugin]: attachment notifications are sent in Trac 1.0.3 and later
    166160* [https://trac-hacks.org/wiki/DateFieldPlugin DateFieldPlugin]: see the **time** [TracTicketsCustomFields#AvailableFieldTypesandOptions custom field type]
    167 * [https://trac-hacks.org/wiki/FlexibleReporterNotificationPlugin FlexibleReporterNotificationPlugin]: [trac:CookBook/Notification/Subscriptions custom subscribers] can be implemented in the new extensible notification system
     161* [https://trac-hacks.org/wiki/FlexibleReporterNotificationPlugin FlexibleReporterNotificationPlugin]: [trac:CookBook/Notification/Subscriptions custom subscribers] can be implemented in the new extensible notification system 
    168162* [https://trac-hacks.org/wiki/GroupBasedRedirectionPlugin GroupBasedRedirectionPlugin]: the default handler can set as a user preference
    169163* [https://trac-hacks.org/wiki/GroupingAssignToPlugin GroupingAssignToPlugin]: groups and permissions can be used in the [TracWorkflow#BasicTicketWorkflowCustomization set_owner] workflow attribute
     
    191185If other permission policies are enabled, `trac.ini` will need to have `ReadonlyWikiPolicy` appended to the list of active `permission_policies`. See TracFineGrainedPermissions#ReadonlyWikiPolicy for additional details on the proper ordering.
    192186
    193 ===== Navigation Ordering Moved
    194 
    195 The mainnav and metanav configuration ordering have
    196 been moved from `[trac]` `mainnav` and `[trac]` `metanav` to the `[mainnav]` and `[metanav]` sections. The ordering is now specified using the `order` attribute as described in [TracNavigation#nav-order TracNavigation].
    197 
    198 The new configuration values will be written to trac.ini on upgrade, preserving the navigation order for the environment. You may need to edit trac.ini
    199 if you use a shared [TracIni#GlobalConfiguration global configuration].
    200 For example, if you wish to specify the navigation ordering for several environments in `global.ini`, you'll
    201 need to add the `[mainnav]` and `[metanav]` sections
    202 in that file and delete those sections from each
    203 environment's trac.ini.
    204 
    205187==== Upgrading from Trac 0.12 to Trac 1.0 #to1.0
    206188
     
    241223Prior to 1.0, the owner field of new tickets always defaulted to `[ticket] default_owner` when the value was not empty. If the value was empty, the owner field defaulted to to the Component's owner. In 1.0 and later, the `default_owner` must be set to `< default >` to make new tickets default to the Component's owner. This change allows the `default_owner` to be set to an empty value if no default owner is desired.
    242224
    243 ===== Behavior of `* -> *` workflow transition
    244 
    245 The workflow transition `* -> *` must have the operation
    246 `leave_status`. Due to a defect in Trac < 1.0.18
    247 `leave_status` was not required, so it may be necessary
    248 to add the operation when upgrading. The action will not
    249 display for a `* -> *` transition if the action does
    250 not have the `leave_status` operation.
    251 
    252225==== Upgrading from older versions of Trac #OlderVersions
    253226