Firefox 51 アドオン互換性情報
[これは Mozilla Add-ons Blog の記事 Add-on Compatibility for Firefox 51 の翻訳です]
Firefox 51 が 1 月 24 日 [日本時間同日深夜] リリース となります。なお、12 月 13 日にはメジャーリリースではなくマイナーリリースが予定されているため、今回は普段より相当長いリリースサイクルとなります。Firefox 51 の変更点でアドオンの互換性に影響を及ぼす可能性のあるものを以下にまとめました。Firefox 51 for Developers により詳しい情報が載っていますので、こちらも併せてご覧ください。
一般
- 「新しいタブ」ボタン上でのアクセルクリックや中クリックで、現在のタブの隣に新しいタブが開かれるようになりました。これにより、「新しいタブ」ボタンの挙動が変更され、
BrowserOpenNewTabOrWindow
関数が削除されました。 setTimeout
を使ったコードが警告表示後に間違った順番で実行される問題が修正されました。onButtonClick
関数の挙動が変更されて非同期となりました。- 接頭辞付き Visibility API が廃止されました。
mozVisibilityState
とmozHidden
が削除されました。 - ワーカー上で
close
イベントが発生しなくなり、onclose
プロパティも削除されました。 - WebExtension の
manifest.json
でstrict_min_version
に「*
」が含まれていた場合、インストールが中止されるようになりました。最小バージョンは、あいまいなものではなく、常に特定のバージョンでなければなりません。 - データとして読み込まれた XML 文書が
<parsererror>
を生成しなくなりました。一部のアドオンが、XML 文書のパース失敗時に現れていたこのノードに依存しているようです。
XPCOM とモジュール
- お気に入りアイコンに
SystemPrincipal
ではなくNullPrincipal
が使われるようになりました。これにより、setAndFetchFaviconForPage
、replaceFaviconDataFromDataURL
両関数に変更が加えられました。プリンシパルは通常引数として渡さなくてはなりません。 - 誤った
Content-Type
を使用しているサーバからダウンロードしたことがある場合、ファイルをアップロードするとその誤ったContent-Type
が設定されてしまう問題が修正されました。コメント #36 で説明されている通り、アドオンが MIME タイプマッピングを変更する方法が変更され、直接mimeTypes.rdf
を編集する代わりにカテゴリを通じて行われるようになりました。 Actor
、FrontClass
への最後の参照が削除されました。これらはまだアドオンから使用できますが、廃止予定となっています。
新機能
- 組み込み WebExtension: 再起動不要型アドオンに WebExtension を組み込めるようになったおかげで、この新しいプラットフォームへ徐々にコードを移行したり、保存したデータを WebExtension で扱える形式に変換したりすることが可能となりました。
- WebExtension Experiments: これは、Mozilla (やアドオン作者の皆さん) が新しい WebExtension API を試作できるようにするための仕組みです。
この一覧に載っていない変更点や間違いを見つけたらコメント欄でお知らせください。もしあなたのアドオンが Firefox 51 で動かなくなった場合は、筆者の方でも調査したいと思います。
AMO に登録されているアドオンの 自動互換性テストと対応バージョンの更新 は数週間以内に行われますので、AMO に Firefox 50 対応のアドオンを登録している方は後日メールをチェックしてみてください。