Firefox 12 のアドオン互換性に関わる修正のまとめ

[これは Mozilla Add-ons Blog の記事 Add-on Compatibility for Firefox 12 の抄訳です]

Firefox 12 は今日深夜 (日本時間) にベータ版となります。互換性情報の提供が遅れて申し訳ありません。Firefox 13 の情報は通常通り事前にまとめるつもりです。

Firefox 11 の互換性情報 (追記)

その他の変更点については Firefox 11 のアドオン互換性に関わる修正のまとめ を参照してください。

Firefox 12 の一般的な変更点

  • Jetpack サービスが削除されました。非常に古いバージョンの Add-ons SDK は、Firefox に統合されていたこの古いサービスに依存していました。いずれにしても、このサービスを使っているアドオンはずいぶん前に動かなくなっているはずですので、すべての開発者に手元の SDK のバージョンを更新するよう推奨します。詳しい情報は Developer Hub で公開しています。
  • ツールバーカスタマイズ画面のデザインが改良されました。これはどの拡張機能にも影響しないはずですが、もしボタンなどの要素を追加している場合は一度テストしてみてください。テーマはおそらくこの変更による影響を受けます。
  • インライン自動補完が再度有効化されました。ロケーションバーとその自動補完 (推測候補) 機能に手を加えているアドオンについては、動作に問題がないか確認してください。 更新: この変更は Firefox 13 へ持ち越されました。
  • addDownload が非同期で行われるようになりました。バグからの引用「nsIDownloadHistory を使う場合、addDownload メソッドが返った後も履歴項目が存在していることを前提としたコードを書けなくなりました。必要な場合は、nsINavHistoryObserver やその他の方法を使って、ターゲット URI が参照されたタイミングを待つべきです。link-visited オブザーバトピックは、履歴項目が保存される前に通知されるので使えません。」
  • シャープ変数への対応が打ち切られました。これはまったく無名の JavaScript 機能でしたが、削除されたので念のため書き残しておきます。
  • UniversalXPConnect 以外の特権管理機能が削除されました。これは主に、Web コンテンツのために高度な特権を要求する Web サイトやイントラネットに影響します。enablePrivilege 機能は廃止される予定で、今回の変更はそれに向けた第一歩となります。
  • chromemargin 属性の振る舞いが変更されましたchromemargin 属性の振る舞いにバグがあり、一部のアドオンで「最小化」「最大化」「閉じる」ボタンを移動させることが可能となっていました。関連するコードに行われた最近の変更によってこのバグが修正されたため、そうしたアドオンは期待通りに動かなくなっている可能性があります。この変更が取り消されることはなさそうですが、いくつかの代替策がバグのコメントで提案されています。

Firefox 12 の XPCOM 関連の変更点

その他の重要な変更は Firefox 12 for developers に書かれています。

Firefox 12 の開発者向け新機能

Firefox 13 の主な変更点

あらかじめ触れておいた方が良いと思われる大きな変更点が 2 つあります。

  • 「新しいタブページ」機能が追加されました。Firefox 13 では、新しいタブを開いたとき、空白ページの代わりに、履歴に基づくページの推測候補が表示されます。これはいくつかの既存アドオンの機能と重複するため、そうしたアドオンがこれまで通りに動作しなくなる可能性が考えられます。また、新しいタブページにテーマを適用できるようにすべき というバグも立っています。これはおそらく簡単な修正で、テーマ開発者に大いに役立つはずです。もし時間があればパッチを投稿してください。 更新: Bug 729878 で行われた作業の結果、新しいタブページのルート xul:window 要素には newtab-window という ID が振られたので、拡張機能やテーマからの参照が可能になっています。
  • Firefox 13 では、バイナリコンポーネントを含むアドオンの Windows 版で ASLR 対応が必須となりますKyle Huey のブログ に説明があります。

この一覧に載っていない変更点や間違いを見つけたらコメント欄でお知らせください。