TracLightning3.1.2beta1とhyperestraierプラグインの確認

TracLightning3.1.2beta2に気付かず、ダウンロード済みのTracLightning3.1.2beta1にhyperestraierプラグイン(勝手にtrac0.12対応版)を入れて動作の確認。問題ないみたい。

hyperesraierはバージョンが上がらないなぁって思っていたら、こちらのサイト様 ファイルサーバ検索システムを作る - めも日記 にhyperestraierの公式サイトでは公開されていないWindows版1.4.13がビルドされて、公開されていました。

しかも、 一部の日本語フォルダ名でインデックスが作成されない件、とその回避パッチ - めも日記 という問題もあるらしい。Tracでも同じ現象が起きるのか確認してないですが、公開いただいているhyperestraier 1.4.13に差し替えてテストしてみたいと思います。

あと、hyperestraierプラグインリポジトリの検索上限が10件になる件についても、以前にtag様から原因を教えていただいたので一緒にかこうっと。

Trac Lightning 3.1.1でチケットにある「コメントの追加」のオートプレビューに必要な権限は?

勘違いかもしれないんで、Trac LightningのSourceForgeに書く前に書いておきます。報告しまくりになっちゃうし。


Trac Lightning 3.1.1でチケットの「コメントの追加」にコメントを追記するとオートプレビューされるはずなのですが、これがされないんですよね。ブラウザの問題かな、と思って気にしてなかったのですが、TRAC_ADMIN権限を与えるとちゃんとプレビューされることに気づきました。


権限の問題?って気もしましたが、気になったので色々テストしました。権限を色々と与えてみましたが、特定できず。TICKET_ADMINがあってもダメっぽい。うーん。


Trac Lightningで自動的に作られるSample Projectのleaderユーザーでログインしてもプレビューされず。leaderにTRAC_ADMIN権限を与えるとちゃんとプレビューされます。edgewallの0.12デモサイトではanonymousでもプレビューされました。なんだろう。


しばらくしても不明ならSourceForgeに書くかなぁ。

(続き)Windows 2008 Server R2 / Windows 2008 Server にTrac Lightningをインストールしてみる

前回の「Windows 2008 Server R2 / Windows 2008 Server にTrac Lightningをインストールしてみる」で書きましたが、ログの書き出し先をWindowsイベントログに設定してもログが書き出されない件ですが、色々わかりましたので追記します。

Trac LightningのSourceForgeにて回避方法を教えていただきました。


チケット #25395: Windows 2008 Server でのTrac Lightningのイベントログ設定について - Trac Lightning - SourceForge.JP


Windows 2008 Serverについては、Microsoft Visual C++ 2008 SP1 再頒布可能パッケージ (x86)をインストールすれば問題を回避できるとのことでしたのでテストしたところ、正しくイベントログに書き出されるようになりました!


 一応、私もいろいろテストしていたのですが、Windows Updateを実施して以下の7件の修正プログラムのみ未適用な状態ではダメでしたが修正プログラム適用後にtrac-admin.exeでアップグレードすると「The Python Win32 extensions for NT (service, event logging) appear not to be available.」の表示がなくなり、イベントログにも記録されるようになりました。うーむ、難しい。

.NET Framework 3.5 SP1、Windows Vista SP2 x86 および Windows Server 2008 SP2 x86 用セキュリティ更新プログラム (KB2478660)
.NET Framework 3.5 SP1、Windows Vista SP2 x86 および Windows Server 2008 SP2 x86 用セキュリティ更新プログラム (KB2518866)
Microsoft .NET Framework 3.5 Service Pack 1 および .NET Framework 3.5 ファミリ更新プログラム (KB951847) x86
Microsoft .NET Framework 3.5 SP1 用セキュリティ更新プログラム、Windows Vista SP2 x86 および Windows Server 2008 SP2 x86 向け (KB979910)
Microsoft .NET Framework 3.5 SP1 用更新プログラム、Windows Vista SP2 x86 および Windows Server 2008 SP2 x86 向け (KB982525)
Microsoft .NET Framework 3.5 SP1 用更新プログラム、Windows Vista SP2 x86 および Windows Server 2008 SP2 x86 向け (KB982533)
Microsoft .NET Framework 3.5 SP1、Windows Vista SP2 x86 および Windows Server 2008 SP2 x86 用セキュリティ更新プログラム (KB2416470)

その後、Windows 2008 Server SP2(64bit)でもテストしましたが、Windows Updateをしたところ解消しました!Microsoft Visual C++ 2008 SP1 再頒布可能パッケージ はx64では問題解消せず。x86もインストールできるみたいなので、こちらだと問題が解消するのかも。未確認です。

R2はWindows Updateを実施してもダメっぽい。Microsoft Visual C++ 2008 SP1 再頒布可能パッケージ (x86)はR2向けはないようだし。時間があれば、またテストしてみます。

Windows 2008 Server R2 / Windows 2008 Server にTrac Lightningをインストールしてみる

Windows 2008 Serer R2から、64Bit版のみの提供に変わったわけですが、特に問題ないだろうと思ってTrac Lightning 3.1.1をインストール。特に問題なさそうで、再起動後に既存のTrac Lightning 2.x系のプロジェクトをアップグレードしたところ、以下のメッセージが表示されました。

d:\TracLight\bin>trac-admin.bat d:\TracLight\projects\trac\プロジェクト名 upgrade

d:\TracLight\bin>python.exe "D:\TracLight\python\Scripts\trac-admin-script.py" d:\TracLight\projects\trac\プロジェクト名 upgrade
The Python Win32 extensions for NT (service, event logging) appear not to be available.
Upgrade done.

You may want to upgrade the Trac documentation now by running:

trac-admin d:\TracLight\projects\trac\プロジェクト名 wiki upgrade

d:\TracLight\bin>

イベントビューアを見ると、

"D:\TracLight\python\lib\site-packages\win32\win32api.pyd" のアクティブ化コンテキストの生成に失敗しました。
従属アセンブリ Microsoft.VC90.CRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",
type="win32",version="9.0.21022.8" が見つかりませんでした。 詳細な診断を行うには sxstrace.exe を実行してください

というエラーもありました。うーむ、64bitの影響なのかなぁと思って、Windows 2008 Server SP2(32bit)にOSを入れ替えて試してみたけど、同じメッセージが。とりあえず、Trac Lightningは動作しているけど、ログの書き出し先をWindowsのイベントログに設定してもログが書き込まれない模様。


むー、検索してみると trac - Python Win32 Extensions not Available? - Stack Overflow という情報が見つかりました。リンクにあった情報を試しましたが、インストールできず。Vistaから発生するみたいですねぇ。困った。

新規プロジェクトの場合はどうなのか確認し忘れましたが、おそらく同じでしょう。

Trac LightningのSourceForgeで質問してみました。

チケット #25395: Windows 2008 Server でのTrac Lightningのイベントログ設定について - Trac Lightning - SourceForge.JP


追記
引き続き調べていると、Microsoft Visual C++ の再頒布可能パッケージの情報を発見。Microsoft Visual C++ 2010 再頒布可能パッケージはインストールしたけど、.NET Frameworkはインストールしてなかったので、試してみます。

Trac Lightning 3.1.1のちょっとした改造

ということで、前回書いた問題が解消したので、追記。


・チケットなどの日付の表示フォーマットを変えたい
コメントを頂きましたかぬさんが詳しく書いていただきました。0.12対応版チケットとカスタムクエリの日付表示フォーマットを変える - almost nearly dead
本当、ありがたいです。おかげで下記の問題も同じファイルの修正でいけそうだってわかりましたし。

・チケットの『チケットの変更』をクリックしないと、更新するためのフォームなどの画面が表示されない(折りたたまれている)

0.11以前のように最初から『チケットの変更』画面が出てるといいな、ということですね。ブラウザ(Sleipnir)の問題なのか、『チケットの変更』をクリックすると時々更新(F5押したときと同じ)されるんですよね。進捗率やチケットのステータスを変えようと思って、『チケットの変更』をクリックすると更新されちゃって、コメントの追加にせっかく書きかけていたものが消えちゃうといったことが何度もあって、さすがにどうにかしないとと思って調査。そもそも、クリックの回数も増えて面倒だしね。

 基本的には上記の日付の表示フォーマットを変えたいと同じ感じでいけるようでした。上記の対応でインストールフォルダ\projects\trac\プロジェクト名\templatesに保存したticket.htmlファイルの

});
$("#modify").parent().toggleClass("collapsed");
$(".trac-topnav a").click(function() { $("#modify").parent().removeClass("collapsed"); });

38行目にあるcollapsedを削除したら、やりたいことはできました。

});
$("#modify").parent().toggleClass("");
$(".trac-topnav a").click(function() { $("#modify").parent().removeClass("collapsed"); });

うまく動いているっぽいので問題ないと思うけど自信なし。

Trac Lightning 2.4系からTrac Lightning 3.1.1にアップグレード

使用中のTrac Lightning 3.0系にアップグレードする前に、Trac Lightning 3.1系がリリースされました。

前回のTrac Lightning 3.0.8にアップグレードする手順と同じ手順で3.1.1にアップグレードできました。まだ、2.4系のものも残ってるけど。

で、Trac 0.12系になっていろいろ変わってちょっと違和感が。設定で変えられるかもしれないので、調べみるかなぁ……。


・チケットの『チケットの変更』をクリックしないと、更新するためのフォームなどの画面が表示されない(折りたたまれている)
チケット上部にある『更新:↓』ってのをクリックすればページ下部まで移動してフォームなども表示されるんですけど、『更新:↓』の文字は小さいし、最初からチケットの更新画面は表示しておいて欲しいなぁ。

・チケットなどの日付の表示フォーマットを変えたい
チケットとカスタムクエリの日付表示フォーマットを変える(almost nearly dead様)などで、紹介されている設定をTrac 0.12系にも設定したい。0.12系ではちょっと変わったみたいなので、ファイルを調べてみないと……。

Trac Lightning 2.4系からTrac Lightning 3.0.8にアップグレード

TracTrac Lightningは非常に重宝しています。ホント感謝です!

そんなTrac Lightning を 2.4系からTrac Lightning 3.0系にアップグレードのテストをした際にSubversionでコミットするとエラーメッセージが表示される(でも、コミット出来てる)というのとrefsなどのコマンドが動作しない現象が発生したんですが、その解決策をSourceForge で tecnos_kaneda様に教えていただきました。超感謝です。そこで自宅のTracもバージョンアップしてみましたので画面を貼りまくります。


チケット #24143: Trac Lightning 2.x から移行したプロジェクトのpost-commit-hookエラーについて - Trac Lightning - SourceForge.JP
ちなみに、自宅のTracでも事前にこのエラーが発生するかどうかを確認し忘れました。ただ、対応手順から考えるとたぶん2.x系から3.0系にアップグレードする際には発生するんじゃないかなぁと思います。

 Trac Lightning のSourceForge でも「TracLightning2.xをお使いの場合で、特に不満がない場合はアップグレードをお勧めしません」って書いてありますが、チケットのコメントを修正する機能とタイムラインのソート機能などはかなり便利なのでどうしてもアップグレードしたかったので実施してみました。自宅のTracTrac Lightning 2.xから使い始めましたが、会社のTrac LightningはAll-In-One Tracからの移行しているので、その辺りも記憶を頼りに追記してみます。

 ということでこんな感じで実施。プロジェクト名は Home 、 インストールフォルダは D:\TracLight です。



1.スタート メニューから「プログラム」-「Trac」-「バックアップ」をクリックして、現行のTracのバックアップをします。
バックアップが完了したら、インストールフォルダ配下にbackupフォルダがありますので、デスクトップにコピーします。

ちなみに、All-In-One TracからTrac Lightningに移行している場合は、認証がBASIC認証になっていると思います。このバックアップではBASIC認証用のファイルがバックアップされないと思いますので、認証用のファイル(htpasswd)は手動で現行のTracフォルダ(デフォルトはC:\TracLight)配下のprojectsからデスクトップのbackupフォルダにコピーします。

2.「コントロールパネル」の「プログラムの追加と削除」から「Trac Lightning」を選択してアンインストールします。

3.インストール時に指定した現行のTracのインストールフォルダを削除します。(デフォルトはC:\TracLight)

4.Trac Lightning Wiki - SourceForge.JPからTrac Lightningの3.0系最新版を感謝しつつダウンロードします。インストールフォルダは2.x系と同じにします。(デフォルトはC:\TracLight)

5.インストールが進んでいきます。

6.インストールが完了すると再起動の確認画面が表示されますので、再起動を行います。

7.デスクトップに待避したbackupフォルダから「svnauthz」「trac.htdigest」をTracのインストールフォルダ配下のprojectsに上書きコピーします。

All-In-One TracからTrac Lightningに移行している場合は、「htpasswd」ファイルも一緒にコピーします。

8.デスクトップに待避したbackup\svnフォルダから移行したいプロジェクトのフォルダをTracのインストールフォルダ配下のprojects\svnフォルダにコピーします。この時にSampleProjectは移行しないようにして下さい。

複数プロジェクトがある場合は、それらのプロジェクトのフォルダもコピーします。

9.デスクトップに待避したbackup\tracフォルダから移行したいプロジェクトのフォルダをTracのインストールフォルダ配下のprojects\tracフォルダにコピーします。この時にSampleProjectは移行しないようにして下さい。

複数プロジェクトがある場合は、それらのプロジェクトのフォルダもコピーします。

10.スタート メニューから「プログラム」-「Trac」-「コマンドプロンプト」をクリックします。
trac-admin.bat インストールフォルダ\projects\trac\プロジェクト名 upgrade と入力して、実行します。

複数プロジェクトがある場合は、すべてのプロジェクトで実行して下さい。

11.wikiもアップグレードするように表示されましたので、続けて以下のコマンドを入力します。
trac-admin.bat インストールフォルダ\projects\trac\プロジェクト名 wiki upgrade

複数プロジェクトがある場合は、すべてのプロジェクトで実行して下さい。

12.Tracのインストールフォルダ配下のprojects\svn\SampleProject\hooks以下の11個のファイルをすべてをTracのインストールフォルダ\projects\svn\プロジェクト名\hooks に上書きコピーをします。

複数プロジェクトがある場合は、全てのプロジェクトのフォルダにもコピーします。

13.手順12でコピーしたpost-commit.batを選択して右クリックの「編集」をクリックします。3行目の PROJECT= の後を SampleProject から該当プロジェクト名に修正して上書き保存します。今回はHomeに修正しています。
複数プロジェクトがある場合は、すべてのプロジェクトで実行して下さい。

14.Tracのインストールフォルダ\projects\trac\各プロジェクト\confにあるtrac.iniファイルをUTF-8に対応したエディタで開きます。
Windowsのメモ帳は対応していません。

15.TracLightning2.xからTracLightning3.0.xへのアップグレードの注意の手順に沿ってticket-customの日付フィールドを上書き修正をして、保存します。

複数プロジェクトがある場合は、すべてのプロジェクトで実行して下さい。

 なお、All-In-One TracからTrac Lightningに移行している場合は、All In One Tracからの移行の「Apacheの設定(httpd.conf)をBasic認証を利用するように変更します。」以下にあるようにD:\TracLight\CollabNetSVN\httpd\confにあるhttpd.confファイルをDigest認証からBasic認証にするように変更します。

 以上でバージョンアップ完了です。Trac Lightningを起動して下さい。

16.ログインして、以前の情報が引き継げているか確認して下さい。

17.SubversionSVNコミットが問題なく行きました。refsなども正しく動作しています。

18.カレンダーのポップアップも正しく表示されました。

 SampleProjectを移行したい場合は、プロジェクトの移行後に他のプロジェクトからhooksフォルダ以下をコピーして下さい。
といった感じで、おそらく上手くバージョンアップできたようです。