前回と似たような話。

自分ところのプラグインでredmine 2.1向けに影響があったのは以下のとおり。

  1. prototype/script.aculo.us→ jQuery
  2. wikiマクロ出力の変化

1はなんというか地道にjQuery向けに書きなおした。

2。今まではwikiマクロからStringを返すとhtml(を表す文字列)だったけど、HTMLエスケープされるように変わった。htmlとして出力してという表明が必要になった。といってもhtml_safeメソッドを呼んであげるだけ。
wikiマクロの中から例外を飛ばしてエラーメッセージを出したい時に、例外オブジェクトに与えるmesageをhtmlエスケープしてあげないといけない不自然さがなくなったのはよかった。

     macro  :graphviz_me do |wiki_content_obj, args|
m = WikiGraphvizHelper::Macro.new(self, wiki_content_obj)
m.graphviz_me(args, params[:id]).html_safe
end

https://github.com/tckz/redmine-wiki_graphviz_plugin
https://github.com/tckz/redmine_wiki_preview_ext
https://github.com/tckz/redmine_wiki_astah

redmine 2.1におけるwikiマクロに関する最も大きな変化は、マクロの引数に複数行テキストを使用できるようになったことだなー。

#3061 Let macros optionally match over multiple lines and ignore single curly braces

今までredmine本体に手を入れないといけなかったWiki External Filter Pluginがそのまま動くようにできるから、対応図種が豊富なこれでいいやん、て。