» アドオン開発
Firefox 7 と 8 のアドオン互換性情報
[これは Mozilla Add-ons Blog の記事 Firefox 7 add-on compatibility, and looking forward to 8 の抄訳です]
Firefox 7 が 1 週間ちょっと前に Aurora チャネルへ移行しました。私たちは、AMO に登録されていて既に Firefox 6 と互換性のあるすべてのアドオンに対し、対応バージョン更新のための自動テストを実行する準備を進めています。もしあなたがアドオン作者で、この自動更新の恩恵を受けたい場合は、アドオンの最大対応バージョンが現時点で 6.* となっている必要があります。互換性に関する問題が何も見つからなければ、テスト実行後自動的に 7.* へ更新されます。
私たちは Firefox 7 で行われたバグの修正を調査し、アドオン作者が考慮すべき変更を以下のようにまとめました。大半は XPCOM インタフェースの削除で、その一部は AMO に登録されているアドオンでも使用されています。開発者の皆さんはこの一覧に目を通して、必要に応じてアドオンを更新してください。
nsIJSON
のエンコード、デコード関数が削除されました (Bug 645922)。この修正は非常に多くのアドオンに影響するため、元に戻すことを目指す動き もあります。いずれにしても、XPCOM コンポーネントの代わりに グローバル JSON オブジェクト のparse
、stringify
関数を使うことを強く推奨します。nsINavHistoryObserver
とnsINavBoorkmarkObserver
インタフェースに、Firefox Sync 対応を強化するための変更が行われました (Bug 633266)。いくつかの関数が新しい引数 (GUID) を取ります。アドオンは通常オブザーバという位置付けになるため、これは単に受け取るデータが増えるというだけで、アドオン側で変更を行う必要はありません。ただし、バイナリコンポーネントを含むアドオンは、関数のシグネチャを更新する必要があります。nsIDOMFile
インタフェースから、getDataAsURL
、getAsBinary
など、多くの関数が削除されました (Bug 661876)。同等の関数はcanvas
など他のオブジェクトで利用可能です。- 他にも次のようないくつかのインタフェースが削除されました。
nsIDOM3Node
(Bug 659053)、nsIDOM3TypeInfo
(Bug 660539)、schemaTypeInfo
(Bug 660539)、nsIDOMNSDocument
(Bug 658906)、nsIDOMDocumentStyle
(Bug 658904)
より詳しくは Firefox 7 for Developers をご覧ください。ここでは、とてもエキサイティングな新機能を 2 つだけ挙げておきます。
- JavaScript モジュールをアンロードすることが可能となり、再起動不要なアドオンにとってこれらのモジュールがより実用可能な選択肢となりました (Bug 481603)。
- インライン設定 が実装されました。アドオンの設定パネルを、別ウィンドウではなくアドオンマネージャ内に表示させることが可能となりました。このインライン設定ではできることに限りがありますが、多くのアドオンではうまく機能するはずです。また、これは再起動不要なアドオンでも使えるので、大きなメリットとなります。
もしあなたが Firefox 7 で動作確認を行っている間に、何かここで言及されていない互換性問題を見つけた場合は、この記事のコメント欄でお知らせください。
Firefox 8
Firefox 8 について気に掛けるのは時期尚早ですが、できるだけ早く言及しておいた方が良いかと思われる変更がいくつかあります。
nsIDOMWindowInternal
インタフェースが削除されました (Bug 670235)。パッチから判断すると、今後はnsIDOMWindow
に対してQueryInterface
を行う必要があるようです。- JavaScript エンジンに増分ガベージコレクションを実装する作業が進んでいます。これは、潜在的にはバイナリコンポーネントを含むアドオンに影響する可能性があります。条件としては、JSAPI を使って独自の JSClass と、そのクラスのオブジェクトを生成し、さらに その独自クラスのオブジェクトが独自のガベージコレクショントレース関数を持っている場合です。これはかなり特異な事例と思われますが、万が一にも影響を受ける開発者がいる可能性を考えて、ここに書いておきます。この件に関して詳しい情報が必要なら筆者 [Jorge Villalobos] まで連絡をください。
MDN のドキュメント Firefox 8 for developers は既に公開されており、今後数週間でさらに情報が充実していくはずです。
アドオンの Thunderbird 5 対応を始めましょう
[これは Mozilla Add-ons Blog の記事 Update your add-on in time for Thunderbird 5 の抄訳です]
Thunderbird 5 ベータ版のリリース に合わせて、AMO の開発者ツールで指定可能な最大バージョンを 5.* へ上げました。ベータ版では API が確定していますので、アドオン作者の皆さんは Thunderbird 5 への対応を進めてください。Thunderbird 5 は今月末リリース予定です。
Thunderbird 5 でアドオンに関する最も大幅な変更は、Firefox 4 で導入されたアドオンマネージャの統合です。詳しくは、MDN のドキュメント Thunderbird 5 for developers をご覧ください。
質問があるときは modest の Google グループ をご利用ください。英語で良ければ、フォーラム に投稿するか、IRC の #extdev に参加すればリアルタイムサポートを受けられます。
アドオンを Firefox 5 と 6 へ対応させるための注意点
[これは Mozilla Add-ons Blog の記事 Making your add-ons compatible with Firefox 5 and 6 の抄訳です]
以前からお知らせしているように、Firefox は新たな高速リリースサイクルへ移行しており、それぞれ Beta/Aurora チャネルにある Firefox 5 と Firefox 6 のプレビュー版 が既にダウンロード可能となっています。Firefox 5 は数週間以内 [6 月 22 日] にリリースされる可能性が高く、Firefox 6 もそれから 6 週間後に続きます。
Firefox 5 に向けてアドオンの互換性を更新しました
[これは Mozilla Add-ons Blog の記事 Firefox 5 Compatibility Bump と Subscribe to Add-on Compatibility Announcements を合わせた抄訳です]
本日夕方 [日本時間 22 日朝]、AMO で Firefox 4 へ対応しているアドオンの互換性情報を更新し、Firefox 5 にも対応させるようにしました。ただし、一部互換性がないと思われるものは除いています。これは、先日発表した 高速リリースサイクルに対応した互換性更新計画 で説明した通り、通常は Nightly チャネルが Aurora へ移行する際に行う作業ですが、Firefox 5 に関しては ベータ版の公開 に合わせて更新する形となりました。
アドオンの互換性と高速リリースサイクル
[これは Mozilla Add-ons Blog の記事 Add-on Compatibility & Rapid Releases の抄訳です]
最近、Firefox の開発が 高速リリースサイクル へ移行し、これまでよりかなり迅速に、新機能、セキュリティ、安定性、その他のバグ修正を、数億人のユーザへ届けることになりました。このエキサイティングな新リリースサイクルに対応するため、多くの変更が必要となりますが、影響を受ける最大の分野のひとつがアドオンの互換性です。
アドオンのパフォーマンステストに関するアップデート
[これは Mozilla Add-ons Blog の記事 Update on Add-on Performance Testing の抄訳です]
先日 Mozilla では アドオンのパフォーマンス向上に向けた取り組み を発表しましたが、アドオンのユーザと開発者から多くのフィードバックが寄せられました。素晴らしいコミュニティのおかげで、開発者の皆さんの中には、アドオンを修正して起動時間への影響を削減したり、テストの結果を詳しく調べたり、AMO のテストフレームワーク改善のため バグの登録という形で協力したり といった具体的な行動を起こしてくれる方も出てきました。AMO の自動テストは一部のアドオンに対応できていません。結果を見る ことができない場合は、ぜひ バグを登録 して知らせてください。
アドオンのパフォーマンスを向上させるために
[これは Mozilla Add-ons Blog の記事 Improving Add-on Performance の抄訳です]
Firefox のパフォーマンス、特に起動時間とページの読み込み速度は、ユーザにとって大変重要な課題です。カスタマイズもまた同じぐらい重要です。アドオンによるパフォーマンスへの影響はほとんどの場合わずかなものですが、中には大幅に低下させてしまうアドオンもあります。アドオンがそうした低速化の原因となることに多くのユーザが気付いていないという現状も踏まえて、Mozilla ではパフォーマンスの向上に力を入れています。
アドオンの Firefox 4 対応をこれから始められる方、あるいは審査待ちの方へ
皆さんご存じの通り、先月 22 日に Firefox 4 の正式版が公開されました。ユーザの評判は高く、アドオンさえ対応すれば割と速いペースで 3.6 からの乗り換えが進むのではないかと思います。
誰もが気になるアドオンの状況ですが、アドオン互換性センター というページで集計されています。広く利用されているアドオンのうち、現時点で既に 86% が Firefox 4 に対応済みとのことで、大幅な変更を伴うアップグレードだったにも関わらず、Firefox 3.6 リリース時と同程度か多少改善されているようです。これはひとえにアドオン作者の皆さんが早めに対応を進めてくださったおかげです。
今から時間のあるときに Firefox 4 対応を始めていただけるという方は、こちらの記事を参考にしてください。
来週、AMO でサンドボックス内のアドオンの掲載が中止されます
[これは Mozilla Add-ons Blog の記事 Sandboxed add-ons to be disabled next week の翻訳です]
1 か月ほど前、新しい開発者ツールと審査プロセス が AMO に実装されたことが発表されました。この新しい審査プロセスについては さらに詳しい説明 を投稿していますので、まだご覧になっていない方はぜひ目を通してください。
Firefox 4 のツールバーボタンの仕様がシンプルになりました
[これは Mozilla Add-ons Blog の記事 Toolbar buttons in Firefox 4 – revisited の翻訳です]
更新: 当初これらの変更が Beta 11 で行われたと書きましたが、Beta 12 の間違いでした。この新仕様は最新のナイトリービルドで試せます。あるいは近日公開予定の Beta 12 をお待ちください。文中のサンプルは Beta 11 でも動作しますが、ひとつだけバグがあります。Linux でツールバーが「大きいアイコン」モードになっているとき、大きいアイコンが使われますが、実際の表示は縮小されてしまい、Windows で常に小さいアイコンが使われるような状態になってしまいます。
数か月前、筆者 [Jorge Villalobos] は Firefox 4 のツールバーボタンとアイコン に関する記事を書き、3 プラットフォームすべてにアドオンを対応させるのに必要な CSS と画像の例を説明しました。この記事には「なぜこれほど複雑なのか」「いつになったら本当にシンプルな仕様になるのか」といった趣旨の質問が多く寄せられました。そのため、バグが立って仕様が再検討され、その結果、多くの問題がようやく解決されました。