就在前幾天,Subversion version 1.2.0 終於 release 了,於是我就在等 Ports,兩天後,devel/subversion 總算升到 1.2.0 了,趁著今天空閒,我做了升級。畢竟,我需要的 Issue 206520992134 都是修正於 1.2 版,要升上去才能用。

升級之後,一切順利,唯一要注意的是,svnadmin create--fs-type 的預設值從原先的 bdb 改為 fsfs。我比較喜歡 bdbfs,至少因為 bdbfs 在 Subversion 裡的歷史比較悠久,應該會比較保險一些。所以我一併把我的 svn-newrepo.sh 修改了一下,強制預設使用 bdbfs,只要我都是用 svn-newrepo.sh 建立 repository,便不會因為忘記這個預設值改變的事情,而設錯了 --fs-type

不過,我還是發現了另外一個問題。也就是新的 Subversion 1.2.0 和 Trac 0.8 並不相容,進 Timeline 區時,便會顯示如下的錯誤:

Traceback (most recent call last):
  File "/usr/bin/trac-admin", line 34, in ?
    from trac import sync
  File "/usr/lib/python2.4/site-packages/trac/sync.py", line 23, in ?
    from svn import fs, util, delta, repos, core
ImportError: cannot import name util

看來是 Subversion 的 util 這個 python module 在升級後不見了的緣故。察看了一下 ports,www/trac升級到 0.8.1 了,不過,為保險起見,我還是跑去 Trac 網站查 ticket。

果不其然,在 Milestone 0.8.2 才標註有 "primarily to fix compatibility with Subversion 1.2.",進一步察看裡面的 9 個 ticket,找到 Ticket 1500,正是我碰到的錯誤。因為 www/trac 還在 0.8.1 (Trac 的 Milestone 0.8.2 尚未完成),我只好把修正 Ticket 1500 的 Changeset 1583diff 給抓出來,手動修正檔案,總算讓我的 Trac 又能正常使用了。