Firefox 38 アドオン互換性情報
[これは Mozilla Add-ons Blog の記事 Add-on Compatibility for Firefox 38 の翻訳です]
Firefox 38 が 5 月 12 日 [日本時間同日深夜] リリース となります。Firefox 38 の変更点でアドオンの互換性に影響を及ぼす可能性のあるものを以下にまとめました。Firefox 38 for Developers により詳しい情報が載っていますので、こちらも併せてご覧ください。
更新: Firefox 38 と 38.0.5 に関する補足記事 も併せて参照してください。
一般
NetUtil.jsmAPI が刷新されました。newChannel2とasyncFetch2が廃止予定となり、newChannelとasyncFetchは不要な引数を簡単に除外できるようoptionsオブジェクトを取るようになりました。詳しくは 更新されたnewChannelのドキュメント を参照してください。promptForSaveToFileがpromptForSaveToFileAsyncに置き換えられる形で削除されました。
XPCOM
nsIProtocolProxyFilter.applyFilter()が URI の代わりにチャンネルもしくはリクエストを取るようになりました。これによりネットワークプロキシに関する様々なインタフェースに変更が行われています。asyncResolveとasyncResolve2が修正され、チャンネルと URI のどちらも受け入れるようになりました。一部アドオンへの影響を回避するため、このような追加修正が行われました。
SendCompositionEvent()とDispatchEvent()がmIsSynthesizedForTestsの設定なしにイベントを発行できるようになりました。これにより、nsICompositionStringSynthesizerに加え、nsIDOMWindowUtilsのsendCompositionEvent、createCompositionStringSynthesizer両メソッドが削除されました。一方でnsITextInputProcessorが導入されました。nsIHttpActivityObserverが HTTP アクティビティを適切に監視できていない問題が修正されました。一部の低レベル HTTP イベントが特定の状況で実行されていませんでしたが、今回のバージョンで修正されています。mozIndexedDBが再び削除されました。
新機能
- ノードを引数として渡さない
nsIContentPolicyの派生版が導入されました。nsIContentPolicyの e10s 対応版 がnsISimpleContentPolicyという名前で実装されました。これはコンテンツノードの代わりにブラウザ要素を渡します。今のところ、この 新しいインタフェースファイル 内の説明が最も詳しいドキュメントとなっています。 chrome.manifestファイル内のリソースプロトコルマッピングを動的に読み込めるようになりました.resource:URL をブートストラップ型拡張機能内のchrome.manifestを通じて宣言できるようになりました。
この一覧に載っていない変更点や間違いを見つけたらコメント欄でお知らせください。もしあなたのアドオンが Firefox 38 で動かなくなった場合は、筆者の方でも調査したいと思います。
AMO に登録されているアドオンの 自動互換性テストと対応バージョンの更新 はおそらく来月上旬に行われますので、AMO に Firefox 37 対応のアドオンを登録している方は後日メールをチェックしてみてください。