アドオンの対応バージョン自動更新と互換性チェックツール
更新: Firefox 10 でアドオンの互換性が改善され、バイナリコンポーネントを含まない拡張機能は自動的に新バージョンへ対応するようになったため、対応バージョンの自動更新は廃止されました。
4 月に投稿した「アドオンの互換性と高速リリースサイクル」以降、一連の記事で説明しているように、高速リリースサイクルが採用された Firefox/Thunderbird 5 から、AMO に登録されているアドオンは基本的に対応バージョン (互換性情報) が自動的に更新されています。これによってアドオン作者の負荷は大幅に軽減されますが、この仕組みを知らずに手作業で更新作業をしている方もまだ少なからずいるようですので、改めて説明しておきたいと思います。
対応バージョン自動更新の条件
自分のアドオンの対応バージョンが自動的に更新されるようにするには、以下のような条件を満たす必要があります。
- 対応バージョンの更新は、各アドオンのソースコードを、新バージョンでの変更点を判別する自動テストと照らし合わせることで行われます。例えば Firefox 8 の例で言えば、
ISO8601DateUtils.jsm
という文字列が見つかると、そこで問題ありと判断されて自動更新は行われず、作者にその内容を説明したメールが送られます。また、バイナリコンポーネントが含まれているアドオンも、ソースコードを確認できないため自動更新は行われません。特に問題が見つからなければ更新が行われ、更新が成功した旨の通知がメールで送られます。 - 対応バージョンの更新は、原則として新バージョンが公開される週に行われます。その日までに Aurora/Earlybird に対応しているアドオンが自動更新の対象となります。今なら Firefox/Thunderbird 7 が公開される 9 月 27 日の週までに
maxVersion
が8.*
になっていれば、自動的に9.*
へ更新されます。対応バージョンが正式版やベータ版までのアドオン、つまり今ならmaxVersion
が6.*
や7.*
の場合、自動更新の対象となりませんので注意してください。
このため、アドオン作者の皆さんには、自分のアドオンを Aurora や Earlybird でテストすることをお勧めします。Add-on Compatibility Reporter をインストールすれば、互換性チェックが無効になり、install.rdf
に書かれた maxVersion
が古くても強制的にインストールできます。
対応バージョンを手作業で更新する場合
AMO に登録しているアドオンの対応バージョンを手作業で変更したいときは、新しいファイルをアップロードする必要はありません。Manage My Add-ons のページを開き、Compatibility というリンクをクリックして、対応バージョンを変更して Save Changes ボタンを押すだけで、情報を更新できます。
ユーザがアドオンをインストールする際、Firefox/Thunderbird は AMO のデータベースに最新の対応バージョンを参照します。インストール後も 24 時間ごとに問い合わせを行い、必要に応じてローカルの対応バージョンを更新します。また Firefox/Thunderbird 本体をアップグレードしたときも同様に問い合わせを行います。このため、AMO の対応バージョンを更新しておけば、アドオン本体の install.rdf
に書かれた maxVersion
が古くても、ユーザは問題なくインストールできます。なお、対応バージョン以外でアドオンの XUL や JavaScript コードに変更を行い、新しいファイルをアップロードされる場合は、install.rdf
に書かれている対応バージョンも併せて更新してください。
互換性チェックツール
Add-ons Blog ではまだ紹介されていませんが、AMO の開発者センターで アドオン互換性チェックツール が公開されています。このツールを使うには AMO へのユーザ登録が必要となりますが、AMO に登録されていないアドオンや、まだアップロードしていない XPI ファイルに対しても、対応バージョンの更新に使われている一連の自動テストを実行することができます。必要に応じて使ってみてください。
質問があるときは
もし何か不明な点があるときは、この記事にコメントするか、addons AT mozilla DOT jp までお気軽にご相談ください。