Meteor 0.8.0がリリースされましたね。
今回のアップデートはレンダリングエンジンが一新されて、テンプレートのrenderedハンドラでHTML以外の色々な更新をしていたアプリには大きな変更になります。
以前のバージョンのレンダリングエンジンは、基本的にリアクティブなデータが更新される度にHTMLを吐き出して更新するタイプでした。なので、renderedハンドラはその度に呼び出されていました。
今回のバージョンから、レンダリングエンジンがDOMベースになり、リアクティブなデータが更新されてもDOMそのものは必要とされる限り、そのまま再利用され、属性など部分部分のみが更新されます。それに伴い、renderedハンドラは初回にDOMが生成された時だけ呼び出されるようになりました。
従って、renderedハンドラでHTML以外のリアクティブな動作を記述していたアプリは(observeなど)別の方法に記述を変更する必要があります。
また、Iron-Routerを使ったマルチページアプリの場合、Meteor 0.7.1.2と0.8.0で使用できるIron-Routerが異なるため、0.8.0に移行する場合、Iron-Routerも更新する必要があります。
Iron-Routerも含めた、Meteor 0.8.0へのアップデート手順は以下の通りです。
meteor remove iron-router rm -rf packages/iron-router mrt update mrt add iron-router
さて、旧バージョンに戻すには以下のようにします。
meteor remove iron-router meteor remove braze-layout rm -rf packages/iron-router rm -rf packages/braze-layout mrt update --release 0.7.1.2 mrt add iron-router --pkg-version 0.6.4
また、gitを使っている場合、
smart.jsonと.meteor/releaseも管理下に置いて、0.7.1.2版でのバージョンでsmart.jsonのiron-routerのところを
"iron-router": { "version": "0.6.4" }
としておけば、バージョンの切り替えだけで、meteor 0.8.0と0.7.1.2の切り替えができます。