メイン

[Trac] TracGanttCalendarプラグイン for Trac-0.10(trac-ja)

こんにちわ。ばたっちです。

tidusさんの TracGanttCalendarというプラグインの Trac-0.10対応。

[Trac]TracGanttCalendarプラグイン
http://tidus.ultimania.org/diary/?date=20071020#p01


カレンダーとチケットの連携と、ガントチャートの描画ができるようになるプラグインです。
オリジナルは 0.11以降にのみ対応なのですが、インタアクト製の trac-ja(Trac-0.10.4)な環境で使いたかったので、移植してみました。

ロジック部分は 0.10と 0.11でそれほど変更なさそうなので、軽い気持ちで着手したら、テンプレートエンジンが ClearSilverってやつから、Genshiってのに変更になってて、実は差分がでかいということを知り、えらい目に会いました。A^^;

TracGanttCalendar 0.1(2008/4/12現在、trunkから取ってきた最新)をベースにしています。
(バージョンのつけ方がよく分からないので、0.0.1としています。)


以下、インストール方法です。

ファイルをダウンロード。
TracGanttCalendar 0.0.1

ファイルを展開。
> tar zxvf ganttcalendar-XXX.tar.gz

eggファイルを作る。
> cd ganttcalendar-XXX/
> python setup.py bdist_egg

eggファイルを pluginフォルダにコピー。
> cp dist/TracGanttCalendarPlugin-XXX-pyXX.egg /path/to/tracprj/plugins/

Apache再起動。
# /etc/init.d/apache restart

インストールが完了したら、トップのナビゲーションバーに、「カレンダー」と「ガント」が追加されます。


いまさら、0.10対応なんて必要な人いないかもしれないけど、どうぞ。A^^;


追記 (2008/4/24):
カレンダーのマイルストーン表示にエラーがあったので、修正版をアップしました。
(上のリンクからダウンロード可)


追記 (2008/4/25):
TracGanttCalendarのリポジトリにブランチ作成してもらいました♪
http://svn.sourceforge.jp/svnroot/shibuya-trac/plugins/ganttcalendarplugin/branches/0.10/

下記のコマンドでチェックアウトできます。


svn co http://svn.sourceforge.jp/svnroot/shibuya-trac/plugins/ganttcalendarplugin/branches/0.10/ ganttcalendarplugin

トラックバック

このエントリーのトラックバックURL:
http://pw.tech-arts.co.jp/cgi-bin/tamt32/mt-tb.cgi/74

コメント

はじめまして。
本体のバージョンアップが大変そうなので、この対応大変助かりました!

お役に立ててよかったです♪

0.11対応のプラグインで 0.10で使いたいものって結構ありますよね。A^^;

Pythonはあまり詳しくないので、変な改造になってるかもしれません。。
問題ありましたらご連絡下さいね。(対応できるかはなぞ)

trac lightningに適用してみました。
するとなぜか2008年の2月と1月にすると
「Oops…
Trac detected an internal error: 」
となるものがありました。
調べたらあるマイルストーンの完了期限と完了(dueとcompletedかな?)が
2/1になってましたのでこれに関係しているのかもしれません。

「Python Traceback
Traceback (most recent call last):
File "C:\TracLight\python\Lib\site-packages\trac\web\main.py", line 406, in dispatch_request
dispatcher.dispatch(req)
File "C:\TracLight\python\Lib\site-packages\trac\web\main.py", line 237, in dispatch
resp = chosen_handler.process_request(req)
File "build\bdist.win32\egg\ganttcalendar\ticketcalendar.py", line 160, in process_request
url = "%s/%d" % (req.href.milestone(), m['name'])
TypeError: int argument required

とでてるので、m['name']は文字列(そのマイルストーンの名前)になってるので
intでないからまずいのだろうということでとりあえず
url = "%s/%d" % (req.href.milestone(),0)
にしてみるとエラーはなくなりました。
私にわかるのは現在ここまでなので正しく修正していただけると助かります。
よろしくお願いします。

報告ありがとうございます♪

手元でもエラー確認できたので、修正しました。(^^)v

早速対応していただきありがとうございます。
試してみますのでダウンロードできるようにしていただければ。
よろしくお願いします。

修正ファイルを上書きアップロードしたので、文中のリンクからダウンロードできます。(^^)v

追記にもあるように、TracGanttCalendarのリポジトリにブランチを作成してもらったので、Subversionでチェックアウトもできるようになりました♪

http://svn.sourceforge.jp/svnroot/shibuya-trac/plugins/ganttcalendarplugin/branches/0.10/

正しく表示できることを確認しました。
ありがとうございました。
ありがたく使わせていただきます。

ありがたく使わせていただいております。
当方、cssでデザインを変えてTracを利用しています。
些細なことですが、表示に不具合がおこりました。1行パッチですがフィードバックさせていただきます。(^_^)

Index: ganttcalendar/templates/calendar.cs
===================================================================
--- ganttcalendar/templates/calendar.cs (リビジョン 93)
+++ ganttcalendar/templates/calendar.cs (作業コピー)
@@ -105,7 +105,6 @@
</td>
</tr>
</table>
-</form>

<table class="list with-cells">
<thead>
@@ -173,5 +172,6 @@
<?cs /each ?>
</tbody>
</table>
+</form>

<?cs include "footer.cs" ?>
</pre>

フィードバックありがとうございます。m(_ _)m

(しばらく触ってないので、確認できる環境作らねば。。A^^;)

Trac初心者です。

ガントを表示しようとしたら下記エラーが表示されました。

チケットの入力が悪いのでしょうか?(日々、開発メンバーが登録しています)

開始日と終了日の日付が逆転しているチケットがあるとか?
→全チケット見たのですが無いようです。

マイルストーンの完了期限との関連?→完了にしたマイルストーンがあります。

まったく見当がつきません。
どなたかお助けください。

Trac detected an internal error:

ValueError: invalid literal for int() with base 10: '1.5'

Most recent call last:

* File "C:\TracLight\projects\trac\.egg-cache\tracganttcalendarplugin-0.1-py2.5.egg-tmp\ganttcalendar\templates\gantt.html", line 352, in


Code fragment:

347. latew = todow
348.
349. complete = ticket['complete']
350. if complete == None or complete == "" or todow 351. complete = 0
352. else:
353. complete = int(complete)*barw/100-(gap)*dw
354. if assign*dw+complete > term*dw:
355. complete = (term-assign)*dw
356. ?>
357.

はじめまして、シンと申します。

branches/0.10/でなく、TrunkのTracGanttCalendarPluginを使用しているのですが、ガントチャートの並び順をチケット番号の若い順に上から並ぶようにしたいのですが、方法分かりますでしょうか? ご教授頂けると大変助かります。

社内に導入して利用中です。英語版があればベストなのですが。

コメントを投稿

(いままで、ここでコメントしたことがないときは、コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)