Changes between Version 2 and Version 3 of TracUpgrade


Ignore:
Timestamp:
12/07/15 15:40:17 (4 years ago)
Author:
trac
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • TracUpgrade

    v2 v3  
    11= アップグレードの説明 = #UpgradeInstructions 
    22[[TracGuideToc]] 
    3 [[PageOutline(2-3,,inline,unnumbered)]] 
     3[[PageOutline(2-4,,inline,unnumbered)]] 
    44 
    55== 一般的な手順 == #Instructions 
    66 
    7 通常、 Trac を新しいバージョンにアップグレードするときに、 7 ステップを踏まなければなりません:  
     7通常、 Trac を新しいバージョンにアップグレードするときに、 7 ステップを踏まなければなりません: 
    88 
    99=== 1. サーバーをオフラインにする === #Bringyourserveroff-line 
     
    2121}}} 
    2222 
    23 手動で (OS 特有でない) アップグレードをするのであれば、インストールを実行する前に起動中の Trac サーバを停止してください。 "ホット" アップグレードは問題を生じることが多いです。特に Windows では出来ないと考えてください ([http://trac.edgewall.org/ticket/7265 本家チケット 7265])。 
     23手動で (OS 特有でない) アップグレードをするのであれば、インストールを実行する前に起動中の Trac サーバを停止してください。 "ホット" アップグレードは問題を生じることが多いです。特に Windows では出来ないと考えてください ([trac:#7265 本家チケット 7265])。 
    2424 
    2525すでに存在する Trac のコードを削除するには、 Python の `lib/site-packages` ディレクトリから `trac` ディレクトリか、 Trac の .egg の古いバージョンを削除します。 
     
    3535=== 3. Trac Environment をアップグレードする === #UpgradetheTracEnvironment 
    3636 
    37 Environment のアップグレードは、マイナーバージョンアップに特別な注意書きがない限り、不要です。  
     37Environment のアップグレードは、マイナーバージョンアップに特別な注意書きがない限り、不要です。 
    3838 
    3939アップグレードした Trac がロードされると、アップグレードする必要があるインスタンスが表示されます。アップグレードはオートメーションされたスクリプトを手で実行します。これらのスクリプトでは [TracAdmin trac-admin] を使用します。 
     
    7474 
    7575=== 6. 特定の Trac バージョンでの特記事項 === #a6.StepsspecifictoagivenTracversion 
     76==== Trac 0.12 から Trac 1.0 にアップグレードする ==== #UpgradingfromTrac0.12toTrac1.0 
     77 
     78サブバージョンサポートの Trac コンポーネントはデフォルト状態では有効にならなくなりました。サブバージョンのサポートを有効にするためには、 `tracopt.versioncontrol.svn` コンポーネントを有効にしてください。例えば、 TracIni に以下のように記述してください: 
     79{{{ 
     80[components] 
     81tracopt.versioncontrol.svn.* = enabled 
     82}}} 
     83明示的にサブバージョンのコンポーネントを無効に設定していない場合は、この対応をとり、 TracIni を適切に変更してください。 
     84 
     85今回の自動アップグレードで添付ファイルが格納される場所が変わります。心配性な人は、アップグレードの前に `attachments` ディレクトリのバックアップを取りたいと思うかもしれません(本当に心配性な人は、すでに environment のフルコピーを取っているでしょうね)。 `attachments` ディレクトリに添付ファイル //以外// のファイルが格納されていると、新しいレイアウトへの移行の最後のステップで失敗してしまいます:何かファイルやフォルダが格納されていると、今バージョンから使用しない `attachments` ディレクトリを削除することができません。このエラーは無視してもかまいませんが、environment をクリーンアップするために、ファイル内容を確認し、別の場所へ移動させ、 `attachments` ディレクトリを手動で削除したほうがよいでしょう。添付ファイルは今バージョンから environment 配下の `files/attachments` ディレクトリ内に格納されます。 
     86 
     87 
    7688==== Trac 0.11 から Trac 0.12 にアップグレードする ==== #UpgradingfromTrac0.11toTrac0.12 
    7789 
     
    8092 
    8193===== SQLite v3.x ===== #SQLitev3.xrequired 
    82 SQLite v2.x のサポートは終了しました。もしいまだに Trac で SQLite v2.x のデータベースを使用しているようならば、まず最初に SQLite v3.x に変換する必要があります。詳細は [http://trac.edgewall.org/wiki/PySqlite#UpgradingSQLitefrom2.xto3.x] を参照して下さい。 
     94SQLite v2.x のサポートは終了しました。もしいまだに Trac で SQLite v2.x のデータベースを使用しているようならば、まず最初に SQLite v3.x に変換する必要があります。詳細は [trac:PySqlite#UpgradingSQLitefrom2.xto3.x] を参照して下さい。 
    8395 
    84 ===== [http://trac.edgewall.org/wiki/PySqlite PySqlite] 2 ===== #PySqlite2required 
    85 [http://trac.edgewall.org/wiki/PySqlite PySqlite] 1.1.x のサポートは終了しました。可能であれば、バージョン 2.5.5 以降のバージョンをインストールして下さい。 (下記 [#Tracdatabaseupgrade Trac データベースのアップグレード] を参照して下さい。) 
     96===== [trac:PySqlite PySqlite] 2 ===== #PySqlite2required 
     97[trac:PySqlite PySqlite] 1.1.x のサポートは終了しました。可能であれば、バージョン 2.5.5 以降のバージョンをインストールして下さい。 (下記 [#Tracdatabaseupgrade Trac データベースのアップグレード] を参照して下さい) 
    8698 
    8799===== 複数のリポジトリのサポート===== #MultipleRepositorySupport 
     
    92104===== Trac Environment とソースコードリポジトリの再同期 ===== #ResynchronizetheTracEnvironmentAgainsttheSourceCodeRepository 
    93105 
    94 Trac でソースコードをブラウズしているときに "[http://trac.edgewall.org/ticket/6120 リポジトリにチェンジセット ??? が存在しません]" のようなエラーが出る場合は、それぞれの [TracEnvironment Trac environment] のソースコードリポジトリと再同期をする必要があります。 
     106Trac でソースコードをブラウズしているときに "[trac:#6120 リポジトリにチェンジセット ??? が存在しません]" のようなエラーが出る場合は、それぞれの [TracEnvironment Trac environment] のソースコードリポジトリと再同期をする必要があります: 
    95107 
    96108{{{ 
     
    98110}}} 
    99111 
    100 ===== 向上したリポジトリの再同期 ===== #Improvedrepositorysynchronization  
     112===== 向上したリポジトリの再同期 ===== #Improvedrepositorysynchronization 
    101113複数のリポジトリをサポートするのに加えて、今では Trac と リポジトリの同期でより効果的な方法があります。 
    102114 
     
    106118 
    107119===== Authz のパーミッションチェック ===== #Authzpermissionchecking 
    108 authz のパーミッションチェックが粒度の細かいパーミッションポリシーとしてマイグレートされました。もし authz パーミッションを使用しているならば、 ( `[trac] authz_file` や `authz_module_name` を参照)、 `[trac] permission_policies` で定義するパーミッションポリシーの先頭に、 `AuthzSourcePolicy` を追加しなければなりません。また、グローバルのパーミッション設定から `BROWSER_VIEW`, `CHANGESET_VIEW`, `FILE_VIEW`, `LOG_VIEW` を削除しなければなりません (`trac-admin $ENV permission remove` コマンドまたは、管理パネルの "権限" から削除されます。) 
     120authz のパーミッションチェックが粒度の細かいパーミッションポリシーとしてマイグレートされました。もし authz パーミッションを使用しているならば、 ( `[trac] authz_file` や `authz_module_name` を参照)、 `[trac] permission_policies` で定義するパーミッションポリシーの先頭に、 `AuthzSourcePolicy` を追加しなければなりません。また、グローバルのパーミッション設定から `BROWSER_VIEW`, `CHANGESET_VIEW`, `FILE_VIEW`, `LOG_VIEW` を削除しなければなりません (`trac-admin $ENV permission remove` コマンドまたは、管理パネルの "権限" から削除されます)。 
    109121 
    110122==== マイクロ秒のタイムスタンプ ==== #Microsecondtimestamps 
     
    118130 
    119131===== Trac マクロプラグイン ===== #TracMacrosPlugins 
    120 [http://trac.edgewall.org/wiki/ClearSilver ClearSilver] と HDF が使用されなくなったことで、古いスタイルの Wiki マクロ は使用できなくなります。そのため Trac マクロを適応させる必要があるでしょう; 新しいスタイルのマクロに変更する必要があれば WikiMacros を参照してください。新しいスタイルにコンバートした後、配置するディレクトリは wiki-macros ではなく、 plugins を使用してください。 wiki-macros ディレクトリからマクロやプラグインを探すことはもうありません。 
     132[trac:ClearSilver] と HDF が使用されなくなったことで、古いスタイルの Wiki マクロ は使用できなくなります。そのため Trac マクロを適応させる必要があるでしょう。新しいスタイルのマクロに変更する必要があれば WikiMacros を参照してください。新しいスタイルにコンバートした後、配置するディレクトリは wiki-macros ではなく、 plugins を使用してください。 wiki-macros ディレクトリからマクロやプラグインを探すことはもうありません。 
    121133 
    122134===== FCGI/WSGI/CGI を使用する場合 ===== #ForFCGIWSGICGIusers 
     
    143155Trac は [TracEnvironment Environment] の `<env>/templates` フォルダ内、または [[TracIni#GlobalConfiguration| [inherit] templates_dir]] コンフィグに設定された共通のディレクトリ内にテンプレートのコピーを置くことによって、Genshi テンプレートのカスタマイズをサポートします。もしこの方法を採用している場合、テンプレートはおそらく今後も進化していくので、新しくリリースされた Trac (以前のバージョンでも) にアップグレードする際には、新しいテンプレートのコピーを手動で変更することが繰り返し必要になることに注意してください。diff は取っておいてください ;-) 
    144156 
    145 TracInterfaceCustomization を行うには、適切な `ITemplateStreamFilter` 変換を行うカスタムプラグインを書く方法が望ましいでしょう。この場合、通常 id の修正や CSS の `class` の変更を行わないため、変更が生じても影響をうけません。もし必要になるのであれば、[http://trac.edgewall.org/wiki/TracDev/ApiChanges TracDev/ApiChanges] ページにドキュメントが記載されるでしょう。 
     157TracInterfaceCustomization を行うには、適切な `ITemplateStreamFilter` 変換を行うカスタムプラグインを書く方法が望ましいでしょう。この場合、通常 id の修正や CSS の `class` の変更を行わないため、変更が生じても影響をうけません。もし必要になるのであれば、[trac:TracDev/ApiChanges TracDev/ApiChanges] ページにドキュメントが記載されるでしょう。 
    146158 
    147159=== !ZipImportError === #ZipImportError 
    148160 
    149161zip形式で圧縮されたパッケージの内部キャッシングにより、ディスク上でパッケージの内容が変わるたびに、メモリ内のzip インデックスは一致せず、回復不能な !ZipImportError が出ます。アップグレードをする前にメンテナンスのために予めサーバーを停止してください。 
    150 詳細については、 [http://trac.edgewall.org/ticket/7014 本家チケット 7014] を参照して下さい。 
     162詳細については、 [trac:#7014 本家チケット 7014] を参照して下さい。 
    151163 
    152164=== Wiki のアップグレード === #WikiUpgrade 
     
    155167=== Trac データベースのアップグレード === #Tracdatabaseupgrade 
    156168 
    157 既知の問題として、!PySqlite のいくつかのバージョン (2.5.2-2.5.4) では、 trac-admin upgrade スクリプトを使用してデータベースを更新することができません。このエラーを避けるために、 sqlite の python バインディングのバージョンをより新しいものかより古いバージョンを使用することを推奨します。詳細については、 [http://trac.edgewall.org/ticket/9434 本家チケット 9434] を参照して下さい。 
     169既知の問題として、!PySqlite のいくつかのバージョン (2.5.2-2.5.4) では、 trac-admin upgrade スクリプトを使用してデータベースを更新することができません。このエラーを避けるために、 sqlite の python バインディングのバージョンをより新しいものかより古いバージョンを使用することを推奨します。詳細については、 [trac:#9434 本家チケット 9434] を参照して下さい。 
    158170 
    159 === 複数プロジェクトのホストに関して === #parentdir  
     171=== 複数プロジェクトのホストに関して === #parentdir 
    160172複数のプロジェクトをホストした場合に、配下のプロジェクトのうち一つのプロジェクトで、プラグインの一つが動作していないとき、配下のすべてのプロジェクトではそのプラグインは動作していません。 
    161173 
     
    168180==== Windows と Python 2.6 ==== #WindowsandPython2.6 
    169181 
    170 もしあなたが、 !CollabNet の Subversion のパッケージを使用しているならばアンインストールする必要があるかもしれません。というのも、 [http://alagazam.net/ Alagazam] に気軽に使える Python バインディングがあるからです。 ([http://trac.edgewall.org/wiki/TracSubversion TracSubversion] 参照) いいニュースとして、調整なしに動作します。 
     182もしあなたが、 !CollabNet の Subversion のパッケージを使用しているならばアンインストールする必要があるかもしれません。というのも、 [http://alagazam.net/ Alagazam] に気軽に使える Python バインディングがあるからです。 ([trac:TracSubversion TracSubversion] 参照) いいニュースとして、調整なしに動作します。 
    171183 
    172184=== データベースの変更=== #ChangingDatabaseBackend 
    173185==== SQLite から PostgresSQL へ ==== #SQLitetoPostgreSQL 
    174186 
    175 [http://trac-hacks.org trac-hacks.org] の [http://trac-hacks.org/wiki/SqliteToPgScript sqlite2pg] は SQLite のデータベースを PostgreSQL に移行するためのサポートをするスクリプトです。  
     187[http://trac-hacks.org trac-hacks.org] の [http://trac-hacks.org/wiki/SqliteToPgScript sqlite2pg] は SQLite のデータベースを PostgreSQL に移行するためのサポートをするスクリプトです。 
    176188 
    177189=== より古いバージョンからのアップグレード === #OlderVersions