[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
コメント
はじめまして。
本体のバージョンアップが大変そうなので、この対応大変助かりました!
投稿者: Ryuzee | 2008年04月21日 11:52
お役に立ててよかったです♪
0.11対応のプラグインで 0.10で使いたいものって結構ありますよね。A^^;
Pythonはあまり詳しくないので、変な改造になってるかもしれません。。
問題ありましたらご連絡下さいね。(対応できるかはなぞ)
投稿者: ばたっち | 2008年04月21日 13:56
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)
にしてみるとエラーはなくなりました。
私にわかるのは現在ここまでなので正しく修正していただけると助かります。
よろしくお願いします。
投稿者: Anonymous | 2008年04月24日 14:52
報告ありがとうございます♪
手元でもエラー確認できたので、修正しました。(^^)v
投稿者: ばたっち | 2008年04月24日 16:30
早速対応していただきありがとうございます。
試してみますのでダウンロードできるようにしていただければ。
よろしくお願いします。
投稿者: tag | 2008年04月25日 08:53
修正ファイルを上書きアップロードしたので、文中のリンクからダウンロードできます。(^^)v
追記にもあるように、TracGanttCalendarのリポジトリにブランチを作成してもらったので、Subversionでチェックアウトもできるようになりました♪
http://svn.sourceforge.jp/svnroot/shibuya-trac/plugins/ganttcalendarplugin/branches/0.10/
投稿者: ばたっち | 2008年04月25日 13:53
正しく表示できることを確認しました。
ありがとうございました。
ありがたく使わせていただきます。
投稿者: tag | 2008年04月25日 14:13
ありがたく使わせていただいております。
当方、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>
投稿者: ooyama | 2008年06月22日 17:22
フィードバックありがとうございます。m(_ _)m
(しばらく触ってないので、確認できる環境作らねば。。A^^;)
投稿者: ばたっち | 2008年06月24日 13:37
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.
投稿者: Trac若葉マーク | 2008年10月31日 19:58
はじめまして、シンと申します。
branches/0.10/でなく、TrunkのTracGanttCalendarPluginを使用しているのですが、ガントチャートの並び順をチケット番号の若い順に上から並ぶようにしたいのですが、方法分かりますでしょうか? ご教授頂けると大変助かります。
投稿者: シン | 2008年12月10日 14:50
社内に導入して利用中です。英語版があればベストなのですが。
投稿者: k | 2009年05月26日 10:25