Changes between Version 2 and Version 3 of TracUpgrade


Ignore:
Timestamp:
2009/12/25 16:22:01 (14 years ago)
Author:
trac
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • TracUpgrade

    v2 v3  
    1 = アップグレードの説明 = 
     1= アップグレードの説明 = #UpgradeInstructions 
    22[[TracGuideToc]] 
    33 
    4 Trac を新しいバージョンで使用する前に TracEnvironment をアップグレードしなければならない場合があります。このドキュメントでは TracEnvironment をアップグレードするのに必要な手順を説明します。 
     4[TracEnvironment Trac Environment] をアップグレードする前に Trac-0.11 が使用可能になっている必要があります。このドキュメントでは TracEnvironment をアップグレードするのに必要な手順を説明します。 
    55 
    6  '''Note''': ''特に指示がない限り、マイナーバージョンのリリース時には TracEnvironment のアップグレードは必要ありません。例えば、 0.8.0 で作成した (もしくはそれ以前のバージョンからアップグレードした) TracEnvironment を 0.8.4 (もしくは0.8.x) インストール時にアップグレードする必要はありません。'' 
     6特に指示がない限り、マイナーバージョンのリリース時には TracEnvironment のアップグレードは必要ありません。 
    77 
    8 == 一般的な手順 == 
     8== 一般的な手順 == #Instructions 
    99 
    1010通常、 Trac を新しいバージョンにアップグレードするときに、 4 ステップを踏まなければなりません: 
    1111 
    12 === Trac のコードを更新する === 
     12=== Trac のコードを更新する === #UpdatetheTracCode 
    1313 
    14 Trac の新しいバージョンを入手してください。オフィシャルリリースのパッケージをダウンロードするかもしくは [http://trac.edgewall.org/wiki/SubversionRepository Subversionリポジトリ] からチェックアウトして下さい。 
     14TracInstall または、あなたの OS に合った方法で新しいバージョンの Trac を取得してください。 
    1515 
    16 もし、メジャーバージョンのアップグレード (例えば 0.8 から 0.9) を行ったら、最初に現在インストールしている Trac のコードを削除することを ''特に'' 勧めます。 `trac` ディレクトリを Python の `lib/site-packages` ディレクトリから削除して下さい。 Trac の `cgi-bin`, `htdocs`, `templates` そして、 `wiki-default` ディレクトリも削除したいときは、通常 `share/trac` ディレクトリ以下に存在するでしょう。(正確なロケーションはプラットフォームに依存します) 
     16手で (OS 特有でない) アップグレードをするのであれば、インストールを実行する前に起動中の Trac サーバを停止してください。 "ホット" アップグレードは問題を生じることが多いです。特に Windows では出来ないと考えてください ([http://trac.edgewall.org/ticket/7265 #7265])。 
    1717 
    18 ソースコードを入手したら、以下のコマンドを実行して下さい。 
    19 {{{ 
    20 python setup.py install 
    21 }}} 
     18すでに存在する Trac のコードを削除するには、 Python の `lib/site-packages` ディレクトリから `trac` ディレクトリか、 Trac の .egg の古いバージョンを削除します。 
     19site-packages ディレクトリの位置は OS のシステム、および Python のインストールパスにより異なりますが、一般的には以下の位置にあります: 
     20 * Linux を使用している場合: /usr/lib/python2.X/site-packages 
     21 * Windows を使用している場合: C:\Python2.X\lib\site-packages 
     22 * MacOSX を使用している場合: /Library/Python/2.X/site-packages 
    2223 
    23 新しいバージョンをインストールするコマンドです。もし、 Windows インストーラバージョンをダウンロードしたならば、インストーラを実行するなどして下さい。 
     24また、 `share/trac` (正確な位置はプラットフォームに依存しますが一般的にはこの位置です。) ディレクトリ内の `cgi-bin`, `htdocs`, `templates`, `wiki-default` といったディレクトリを削除してもかまいません。 (訳注: 0.11 では、これらのディレクトリは `site-packages/trac` の配下に移動しています) 
    2425 
    25 === TracEnvironment をアップグレードする === 
     26このクリーンアップは必須ではありませんが、あとでトラブルシュートを行う場合の切り分けが容易になります。すでに使われていない前のリリースのコードやテンプレートを見るなどという時間の浪費をしたくないのであれば、削除しておく方が楽です。もちろん、ファイルを削除する前にバックアップを作成する方が良いでしょう。 
    2627 
    27 指示がない限り、メジャーバージョンをアップグレードする (例えば 0.8 から 0.9) ときは、データベーススキーマの変更と、おそらく [wiki:TracEnvironment TracEnvironment のディレクトリ] 構成の変更が生じます。幸運なことに Trac は自動アップデートのスクリプトを提供しているので、負担が軽減されるでしょう。これらのスクリプトは [wiki:TracAdmin trac-admin] を通して起動されます: 
     28webadmin plugin をインストールしていた場合は、アンインストールしてください。今や webadmin plugin は Trac コードベースの一部です。 
     29 
     30=== TracEnvironment をアップグレードする === #UpgradetheTracEnvironment 
     31 
     32アップグレードした Trac がロードされると、アップグレードする必要があるインスタンスが表示されます。アップグレードはオートメーションされたスクリプトを手で実行します。これらのスクリプトでは [TracAdmin trac-admin] を使用します。 
    2833{{{ 
    2934trac-admin /path/to/projenv upgrade 
     
    3237このコマンドはもし TracEnvironment がすでに最新の状態になっているときは、何もしません。 
    3338 
    34 Note: PostgreSQL データベースを使用している場合、このコマンドは「 Environment のバックアップは SQLite を使っているときしか出来ない」というメッセージを出力して失敗します。リポジトリとデータベースのバックアップは手動で行う必要があります。その後、アップグレードを行うために次のコマンドを実行してください: 
     39Note: PostgreSQL データベース (訳注: MySQL も) を使用している場合、このコマンドは「 Environment のバックアップは SQLite を使っているときしか出来ない」というメッセージを出力して失敗します。リポジトリとデータベースのバックアップは手動で行う必要があります。その後、アップグレードを行うために次のコマンドを実行してください: 
    3540{{{ 
    3641trac-admin /path/to/projenv upgrade --no-backup 
    3742}}} 
    3843 
    39 === Trac ドキュメントを更新する === 
     44カスタム CSS スタイルを使用していたり、 TracEnvironment の templates ディレクトリテンプレートを変更している場合、 Genshi のやり方にコンバートする必要があります。スタイルシートを使用し続けたい場合、 TracInterfaceCustomization#SiteAppearance の手順を読んでください。 
    4045 
    41 すべての [wiki:TracEnvironment Tracenvironment] インストールされたバージョンの Trac ドキュメントのコピーを含んでいます。新しくインストールした Trac のドキュメントと同期を取りたいでしょう。 [wiki:TracAdmin trac-admin] がドキュメントを更新するコマンドを提供しています: 
     46=== Trac ドキュメントを更新する === #UpdatetheTracDocumentation 
     47 
     48すべての [TracEnvironment Trac Environment] で、インストールされたバージョンの Trac ドキュメントのコピーを含んでいます。新しくインストールした Trac のドキュメントと同期を取りたいでしょう。 [TracAdmin trac-admin] がドキュメントを更新するコマンドを提供しています: 
    4249{{{ 
    4350trac-admin /path/to/projenv wiki upgrade 
    4451}}} 
    4552 
    46 当然このプロシージャはあなたの `WikiStart` ページをまったく変更せず、そのままに残しておきます。 
     53当然このプロシージャはあなたの `WikiStart` ページ (訳注: `InterMapText` も) をまったく変更せず、そのままに残しておきます。 
    4754 
    48 === Web サーバを再起動する === 
     55=== サイトテンプレート === #SiteTemplates 
     560.11 でテンプレートエンジンが変更されました。 TracInterfaceCustomization を参照してください。 
    4957 
    50 新しい Trac コードをリロードするために、 Web サーバを再起動する必要があります。 (古い [wiki:TracCgi CGI] プログラムを使用しているときは必要ありません。) 
     58=== Trac マクロプラグイン === #TracMacrosPlugins 
     59!ClearSilver と HDF が使用されなくなったことで、古いスタイルの Wiki マクロ は使用できなくなります。そのため Trac マクロを適応させる必要があるでしょう; 新しいスタイルのマクロに変更する必要があれば WikiMacros を参照してください。新しいスタイルにコンバートした後、配置するディレクトリは wiki-macros ではなく、 plugins を使用してください。 wiki-macros ディレクトリからマクロやプラグインを探すことはもうありません。 
    5160 
    52 == 特定のバージョン間のアップグレードについての付記 == 
     61=== CGI 利用者向けの注意 === #ForCGIusers 
    5362 
    54 以下のセクションでは Trac の特定のバージョンにアップグレードするときにやらなければならないことについて記述します。 
    55  
    56 == 0.9 から 0.10 へのアップグレード == 
    57  
    58 Wiki シンタックスでいくつかの変更があったため、いくつかのページでは期待通りに動かないことに気づくでしょう: 
    59  * バージョン 0.9 以前、画像ファイルへのリンクはページの中に組み込まれていました。 0.10 以降では、画像ファイルへのリンクは単なる画像ファイルへのリンクとなります。もし、そのページに画像ファイルを組み込みたいならば、 `[[Image]]` マクロを使用して下さい。 
    60  * wiki のリンクでスペース文字をエンコードするのに、 `%20` を使用しなくてもよくなりました。その代わり、スペースを含んでいる名前を括って下さい。 (例えば、`wiki:My%20page` の代わりに `wiki:"My page"` を使用することができます。) 
    61  
    62 いくつかの拡張機能がバージョンコントロールサブシステムに追加されました。特にスコープつきのリポジトリの対応が向上しました。 
    63 これらの機能をうまく利用するために、 '''`resync`''' 操作を [TracAdmin#対話モード trac-admin] で実行することを推奨します。 
    64  
    65 [TracAdmin trac-admin] の '''`initenv`''' コマンドの引数リストが変更になったことに注意して下さい: バージョンコントロールシステムの種類を設定するための新しい引数が追加されました。古い使用方法は以下の通りです: 
     63CGI で Trac を起動している場合、以下のコマンドを実行して trac.cgi ファイルを取得してください: 
    6664{{{ 
    67    initenv <projectname> <db> <repospath> <templatepath> 
    68 }}} 
    69 新しい使用方法ではこうなります: 
    70 {{{ 
    71    initenv <projectname> <db> <repostype> <repospath> <templatepath> 
    72 }}} 
    73 TracEnvironment を自動で生成するスクリプトを使用している場合は、アップデートする必要があります。もし、 Subversion を使用しているならば、 `<repostype>` 引数に `svn` を指定して下さい。 
    74  
    75 == 0.9.3 から 0.9.4 へのアップグレード == 
    76  
    77 レポートのクエリで `LIKE` 節での "%" や日付のフォーマットを使用すると落ちるというバグが Pysqlite 1.x に存在します。パーセント文字を使用するときは、もう一つパーセント文字を付けてエスケープする必要があります: "%%" 
    78  
    79 == 0.9.x から 0.9.3 以降へのアップグレード == 
    80  
    81 もし、プラグインを使用しているならば、それらをアップグレードする必要があるでしょう。詳細は http://trac.edgewall.org/milestone/0.9.3 を参照して下さい。 
    82  
    83 == 0.9-beta から 0.9 へのアップグレード == 
    84  
    85 静的リソース (CSS, javascript, 画像ファイル) のインクルードは機能しません。 trac.ini の `htdocs_location` を確認してください。 [wiki:TracModPython mod_python], [wiki:TracStandalone Tracd], [wiki:TracFastCgi FastCGI] を使用している場合、単にオプションを削除してください。 [wiki:TracCgi CGI] を使用している場合、 Trac の `htdocs` ディレクトリへの URL マップを修正しなければいけません (以前の記述を削除し、 [wiki:TracCgi#静的なリソースをマッピングする 静的なリソースをマッピングする])。オプションを削除した後でも問題が残っている場合、ファイル `trac/siteconfig.py` のパスを確認し、誤っていれば修正してください。 
    86  
    87 Trac 0.9 のベータリリースでプラグインを使用しているか、組み込みコンポーネントの無効化を行っていたら、 [wiki:TracIni trac.ini] でコンポーネントの無効化 / 有効化のルールを更新しなければならないかもしれません。特にグローバルにインストールされたプラグインは、現在では明示的に有効化する必要があります。詳しくは TracPlugins と TracIni を参照して下さい。 
    88  
    89 タイムラインでチケットの全ての更新を表示させたい ("チケットの詳細" オプション) 場合も、 [wiki:TracIni trac.ini] での明示的な有効化が必要です: 
    90  
    91 {{{ 
    92 [timeline] 
    93 ticket_show_details = true 
     65trac-admin /path/to/env deploy /deploy/directory/path 
    9466}}} 
    9567 
    96 == 0.8.x から 0.9 へのアップグレード == 
     68このコマンドでは、デプロイ用ディレクトリを作成します。デプロイ用ディレクトリには `cgi-bin` と `htdocs` の二つのサブディレクトリが含まれています。 Apache の `httpd.conf` を新しい `trac.cgi` と `htdocs` の場所に更新してください。 
    9769 
    98 [wiki:TracModPython mod_python] を使用している場合は Apache HTTPD の設定で mod_python ハンドラの名前を変更する必要があります: 
     70=== Web サーバを再起動する === #RestarttheWebServer 
     71[wiki:TracCgi CGI] 以外で起動している場合は、 Web サーバを再起動して、新しい Trac コードをリロードしてください。 
     72 
     73 
     74== 既知の問題 == #KnownIssues 
     75=== 複数プロジェクトのホストに関して === #parentdir 
     76複数のプロジェクトをホストした場合に、配下のプロジェクトのうち一つのプロジェクトで、プラグインの一つが動作していないとき、配下のすべてのプロジェクトではそのプラグインは動作していません。 
     77=== コアモジュールがロードされない === #somecoremoduleswontload 
     78Windows で Python 2.3 を使用している場合、最初にアンインストールを行わずにアップグレードすると時々発生します。 
     79いくつかのモジュールは、以前はキャピタライズされていましたが、小文字のみに変更されました (例えば、 trac/About.py が trac/about.py に変更されるなど)。以下のようなメッセージが Trac のログに出てくる場合: 
    9980{{{ 
    100    from: PythonHandler trac.ModPythonHandler 
    101    to:   PythonHandler trac.web.modpython_frontend 
     81ERROR: Skipping "trac.about = trac.about": (can't import "No module named about") 
    10282}}} 
     83`Lib/site-packages/trac` ディレクトリを削除してから、再インストールしてください。 
     84=== Wiki Upgrade === WikiUpgrade 
     85`trac-admin` はページを削除しません。バージョン 0.10 では存在し、バージョン 0.11 では存在しないページはそのまま残ります。 (0.11 開発中に存在した !TracWikiMacros など) 
    10386 
    104 [http://initd.org/tracker/pysqlite PySQLite] の 2.x がインストールされているなら、注意してください。今や Trac は SQLite 3.x のファイルフォーマットで 2.x のデータベースを開こうとします。 SQLite 2.8.x と 3.x のデータベースのフォーマットに互換性がありません。もしアップデート後に ''"file is encrypted or is not a database"'' といったエラーが出力されたら、データベースファイルを 3.x 形式に変換しなければなりません。 
     87== データベースの変更 == #ChangingDatabaseBackend 
     88=== SQLite から PostgreSQL へ === #SQLitetoPostgreSQL 
    10589 
    106 もし変換を行うならば、 SQLite の 2.8.x と 3.x の両方をインストールする必要があります (バージョンごとにファイル名が異なるので、同じシステム内に共存できます)。以下に示すコマンドを使用して下さい: 
     90[http://trac-hacks.org trac-hacks.org] の [http://trac-hacks.org/wiki/SqliteToPgScript sqlite2pg] は SQLite のデータベースを PostgreSQL に移行するためのサポートをするスクリプトです。  
     91 
     92== より古いバージョン == #OlderVersions 
     93 
     94さらに前のバージョンからのアップグレードについては [http://trac.edgewall.org/wiki/0.10/TracUpgrade 0.10/TracUpgrade] をまずは参照してください。 
     95 
     96Note: Trac 0.11 から Trac 0.10.4 や 0.10.5 にダウングレードするには、手作業が必要になります: 
    10797{{{ 
    108  $ mv trac.db trac2.db 
    109  $ sqlite trac2.db .dump | sqlite3 trac.db 
     98$ sqlite3 db/trac.db "update system set value=20 where name='database_version'" 
    11099}}} 
    111  
    112 Linux で複数のデータベースファイルを一度にアップグレードするために、以下のコマンドが使用できるでしょう。( {{{/var/trac}}} は実際に Trac をインストールしたパスに置き換えて下さい ): 
    113 {{{ 
    114  $ find /var/trac/ -iname "trac.db" | xargs -i bash -c "mv {} {}.2; sqlite {}.2 .dump | sqlite3 {};" 
    115 }}} 
    116  
    117 web サーバに trac.db への書き込み権限を忘れずに付けてください。 
    118  
    119 変換が成功した後、 `trac2.db` ファイルは削除することができます。 SQLite のアップグレードに関するより詳しい情報は [http://www.sqlite.org/version3.html] を参照して下さい。 
    120  
    121 == 0.7 から 0.8 へのアップグレード == 
    122  
    123 0.8 では追加のパーミッションを必要とする新しい機能が加わりました。 
    124 新規にインストールを行なった場合は、 anonymous に ROADMAP_VIEW と MILESTONE_VIEW パーミッションがデフォルトで与えられますが、 
    125 既存の trac をアップグレードしたときは、 
    126 これらのパーミッションを手動で与えなければなりません。: 
    127 {{{ 
    128  $ trac-admin /path/to/projectenv permission add anonymous MILESTONE_VIEW 
    129  $ trac-admin /path/to/projectenv permission add anonymous ROADMAP_VIEW 
    130 }}} 
     100(あとで再度、正常にアップグレードすることができます) 
    131101 
    132102-----