:::: MENU ::::

Tracのプラグインがエラーで入らないときの対処法

Pocket

Python2.7.3で入れたTrac1.0.1にtracwysiwygplugin-0.12を
入れようとしてとき、以下のようなエラーがでた。

# python setup.py bdist_egg
running bdist_egg
Traceback (most recent call last):
  File "setup.py", line 20, in <module>
    'tracwysiwyg = tracwysiwyg',
  File "/usr/local/python2.7.3/lib/python2.7/distutils/core.py", line 152, in setup
    dist.run_commands()
  File "/usr/local/python2.7.3/lib/python2.7/distutils/dist.py", line 953, in run_commands
    self.run_command(cmd)
  File "/usr/local/python2.7.3/lib/python2.7/distutils/dist.py", line 971, in run_command
    cmd_obj.ensure_finalized()
  File "/usr/local/python2.7.3/lib/python2.7/distutils/cmd.py", line 109, in ensure_finalized
    self.finalize_options()
  File "/usr/local/python2.7.3/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg/setuptools/command/bdist_egg.py", line 94, in finalize_options
  File "/usr/local/python2.7.3/lib/python2.7/distutils/cmd.py", line 312, in get_finalized_command
    cmd_obj.ensure_finalized()
  File "/usr/local/python2.7.3/lib/python2.7/distutils/cmd.py", line 109, in ensure_finalized
    self.finalize_options()
  File "/usr/local/python2.7.3/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg/setuptools/command/egg_info.py", line 85, in finalize_options
  File "/usr/local/python2.7.3/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg/setuptools/command/egg_info.py", line 185, in tags
  File "/usr/local/python2.7.3/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg/setuptools/command/egg_info.py", line 233, in get_svn_revision
IndexError: list index out of range

通常プラグインのエラーは、プラグインのソースが原因なのだが、
これはそんな記述もなくsetuptoolsで落ちているようにみえる。

ググると以下のようなチケットを見つけた。

setuptoolsはsubversion1.7系に対応していないらしい。
実際subversionは1.7.8を入れていた。
解決法は結構簡単で、プラグインフォルダにあるsetup.cfgを書き換えるだけ。

# vi setup.cfg
tag_svn_revision = false

これでエラーが出ずにコンパイルが完了する。

falseにしたことによる影響はrevision番号がつかないことくらいみたい、
動作には影響がないのでさくっとfalseにしてしまうのが吉かと。

Pocket


So, what do you think ?