Firefox 34 アドオン互換性情報
[これは Mozilla Add-ons Blog の記事 Add-on Compatibility for Firefox 34 の翻訳です]
Firefox 34 が 11 月 25 日 [日本時間同日深夜] リリース となります。Firefox 34 の変更点でアドオンの互換性に影響を及ぼす可能性のあるものを以下にまとめました。Firefox 34 for Developers により詳しい情報が載っていますので、こちらも併せてご覧ください。
一般
- 更新: 新しい検索 UI. ベータサイクルの最後で投入された新しい検索 UI に関する この投稿 を読んでください。
- 新しい .app バンドル構造を持った OS X 版 Firefox がビルドされました。OS X 向けアプリケーションの内部レイアウトに新たな要件が加えられたため、アプリケーションパッケージの構造にいくつかの変更が必要となりました。アドオンに関しては、Firefox パッケージ内の特定バイナリへのアクセスを取得するために特別なディレクトリ「
GreD」を参照していた場合、コードに変更が必要となるかもしれません。それらのバイナリは 新しい特別なディレクトリ「GreBinD」へ移動されました。バイナリ以外のファイルは引き続き「GreD」でアクセス可能なはずです。 localstore.rdfが削除されました。Firefox から大半の RDF 関連コードを削除するより広範な取り組みの一環として、localstore.rdfの内容がxulstore.jsonへ移動されました。つまり、この RDF ストアを直接参照してデータを取得しているようなアドオンは正しく動作しなくなるでしょう。- 信頼できないコンテンツへ適用可能な XBL バインディングをホワイトリストへ追加できる仕組みが導入されました。XBL バインディングから信頼できない (Web) コンテンツへアクセスしたい場合、その宣言に
bindToUntrustedContent="true"を含める必要があります。 - JavaScript 正規表現のキャプチャが特定の交代で正常に動作しない問題が修正されました。
XPCOM
nsIDOMStorageにプロキシが実装されました。これにより、createStorageメソッドにwindow引数が追加されます。nsINavHistoryServiceからSetCharsetForURI、GetCharsetForURIが削除されました。これらのメソッドはPlacesUtilsに移動されましたが、値そのものではなくPromiseを返すものとなっています。XMLDocumentにアサーションが追加され、callingDocとdocが常に同じプリンシパルを持つようになりました。簡単に言えば、アドオンからドキュメントを読み込む場合はXMLDocumentではなくXMLHttpRequestを使ってください。nsIMarkupDocumentViewerがnsIContentViewerへ統合されました。nsICommandParamsから列挙メソッドが削除されました。nsITelemetryのnewHistogramとregisterAddonHistogramメソッドのmin、max、bucket_count引数がオプションとなりました。
新機能
- パブリックドメインの
JNI.jsm実装がインポート、使用可能となりました。これは低レベルアクセスが必要な Android アドオン開発者にとって便利なモジュールです。より完全な実装を伴って刷新されました。このモジュールはComponents.utils.import("resource://gre/modules/JNI.jsm");で取得可能です。
この一覧に載っていない変更点や間違いを見つけたらコメント欄でお知らせください。もしあなたのアドオンが Firefox 34 で動かなくなった場合は、筆者の方でも調査したいと思います。
AMO に登録されているアドオンの 自動互換性テストと対応バージョンの更新 はまもなく行われますので、AMO に Firefox 33 対応のアドオンを登録している方は後日メールをチェックしてみてください。