Redmine 3.0.0からのクラス/メソッドの変化を(詳細不明の)一覧にしてみた

yard diffが便利だったので、Redmine 3.0.0からのクラス/メソッドの変化を一覧にしてみた。

具体的な内容がわかるとより良いけど何か変化があった事がわかる程度。とりあえずGitHubのcompareのURLも付けるようにしたので現状は自分で詳細を確認する感じ。いつから使えていつ削除されたかがわかるだけでもRedmine本体のコードに依存するプラグインを作る時には多少は参考になるだろうか?と思って作ってみた。

ちなみにRedmine本体のドキュメントはyardで書かれてて、@sinceタグなんかも使えるので本当は本体にこの情報が付いてるとだいぶうれしい。以下でとりあえずRedmine::Pluginについてチケットにしてみたけど、メンテナンスに不安があるとの事なので、まだ取り込まれていない。そこで自動生成してみた。

やり方は以下。

  1. gitでredmineをcloneしてタグをcheckout
  2. yard doc --no-outputして.yardocだけ生成
  3. バージョンごとに.yardocがほしいので.yardocを.yardoc.<version>にmv
  4. 1〜3を調べたいタグ全部で実行
  5. yard diff .yardoc.<version1> .yardoc.<version2>を調べたいタグ全部で実行
  6. 5.の結果をadded/modified/removedなメソッドごとに分類

でも面倒くさいからとりあえず自動でやるようにした。特にRedmineに依存してないので、他のyardでドキュメントを書いてあるツールでも同じようにできると思う。

 

github.com

 まだちゃんとコマンドの出力を考えてないので、rake buildしてできたgemをインストールしないといけないけど、インストールしたら以下のようにできる。markdownの表を吐くだけだけど...というか、READMEすらない。便利そうならもう少し頑張るかも。

$ yard-method-since --from <version> --github redmine/redmine