Firefox 90 for developers
このページでは、開発者に影響する Firefox 90 の変更点をまとめています。Firefox 90 は、米国時間 2021 年 7 月 13 日にリリースされました。
メモ: Mozilla Hacks の Getting lively with Firefox 90 もご覧ください。
ウェブ開発者向けの変更点一覧
開発者ツール
- 応答ビューで ウェブフォントのプレビュー を表示するようになりました (Firefox バグ 872078)。
HTML
- multipart/formdata 形式のフォームペイロードの、改行の正規化やエスケープに関する処理方法を修正しました。これは更新された仕様を満たしており、また他のブラウザーの実装に合致しています (Firefox バグ 1686765)。
- Firefox は画像の 内在サイズ や解像度を、EXIF 情報に基づいて設定するようになりました (EXIF 情報が提供されて、自己矛盾がない場合)。これは例えば、読み込みを高速化するためにサーバーが低品質のプレースホルダー画像を送信することを可能にします。また、ほかにもいくつかの利用方法 を実現できます (Firefox バグ 1680387)。
CSS
-webkit-image-set()
を、標準化されたimage-set()
関数の別名として実装しました (Firefox バグ 1709415)。
JavaScript
- プライベートスタティックフィールド、プライベートインスタンスフィールドおよびプライベートスタティックメソッド、プライベートインスタンスメソッド をデフォルトでサポートしました (Firefox バグ 1708235 および Firefox バグ 1708236)。
in
演算子を、プライベートなメソッドやフィールドが定義されているかの確認 に使用できるようになりました。これはコードをtry/catch
で包むこととは対照的に、未定義の可能性がある機能をよりコンパクトな方法で扱うことができます (Firefox バグ 1648090)。Intl.DateTimeFormat()
コンストラクター のオプションとして指定する独自の日付や時刻のフォーマットに、dayPeriod
を含めることが可能になりました。これは、1 日のうちのおおまかな時間帯 (例えば "朝" や "夜" など) をnarrow
、short
またはlong
の文字列として含めることを示します (Firefox バグ 1645115)。- 相対的な位置を指定するメソッドである
at()
をArray
、String
、TypedArray
グローバルオブジェクトに追加しました (Firefox バグ 1681371)。
HTTP
- HTTP フェッチメタデータリクエストヘッダー (
Sec-Fetch-*
) をサポートしました。これらのヘッダーは、リクエストが同一オリジン、クロスオリジン、同一サイト、ユーザー起動であるかや、リクエストデータをどこでどのように使用するかといった、リクエストに関する追加のコンテキストをサーバーに提供します。これは、サーバーがいくつかの種類のクロスオリジン攻撃を軽減できます (Firefox バグ 1695911)。
廃止
- FTP を Firefox から削除しました (Firefox バグ 1574475)。これは Firefox 88 で非推奨にした ことに続くものです。拡張機能は、引き続き自身を FTP プロトコルのハンドラー として登録できます。
API
DOM
- 非推奨の
WheelEvent
プロパティであるWheelEvent.wheelDelta
、WheelEvent.wheelDeltaX
、WheelEvent.wheelDeltaY
をサポートしました。これにより最近行ったWheelEvent
の互換性向上により問題が発生したごく一部のページが、Firefox で動作するようになります (Firefox バグ 1708829)。 Canvas API
のCanvasRenderingContext2D
インターフェイスでcreateConicGradient()
メソッドを提供するようになりました。これは既存のlinear
およびradial
グラデーションによく似ているCanvasGradient
を返しますが、座標で定義した点の周りを回るグラデーションを生成できます。詳しくは Firefox バグ 1627014 をご覧ください。matrix
プロトコルをサポートして、Navigator.registerProtocolHandler()
メソッドへ有効なスキームとして渡すことが可能になりました。
WebDriver conformance (Marionette)
- Marionette が、アクティブな WebDriver セッションを 1 つに制限するようになりました (Firefox バグ 1691047)。
- Firefox の新しいタイプのユーザープロンプトをサポートしました (Firefox バグ 1686741)。
- ウィンドウハンドルで一意の ID を使用するようになりました。また、cross-group navigations によって発生するプロセスの交換で ID を変更しないようになりました (Firefox バグ 1680479)。
- バックグラウンドのタブで新しいユーザープロンプトが開いたとき、現在の WebDriver のコマンドで不適切な中止が発生する問題を修正しました (Firefox バグ 1701686)。
WebDriver:GetWindowHandles
コマンドを、アンロードされたタブを適切に扱うように修正しました (Firefox バグ 1682062)。WebDriver:NewSession
コマンドを、proxy
機能が空の場合でも常に返すように修正しました (Firefox バグ 1710935)。
廃止
- Firefox Firefox 90 で FTP のサポートを廃止した ことに合わせて、
ftpProxy
能力を評価しなくなりました。また、この能力を使用したときにinvalid argument
エラーが発生するようになりました (Firefox バグ 1703805)。
アドオン開発者向けの変更点
matrix
URI スキームをサポートして、拡張機能のmanifest.json
でprotocol_handlers
キーでプロトコルとして定義できるようになりました。- 本バージョンから、Cache API を拡張機能のページやワーカーグローバルで使用できるようになりました。詳しくは (Firefox バグ 1575625) をご覧ください。
過去のバージョン
- Firefox 89 for developers
- Firefox 88 for developers
- Firefox 87 for developers
- Firefox 86 for developers
- Firefox 85 for developers
- Firefox 84 for developers
- Firefox 83 for developers
- Firefox 82 for developers
- Firefox 81 for developers
- Firefox 80 for developers
- Firefox 79 for developers
- Firefox 78 for developers
- Firefox 77 for developers
- Firefox 76 for developers
- Firefox 75 for developers
- Firefox 74 for developers
- Firefox 73 for developers
- Firefox 72 for developers
- Firefox 71 for developers
- Firefox 70 for developers
- Firefox 69 for developers
- Firefox 68 for developers
- Firefox 67 for developers
- Firefox 66 for developers
- Firefox 65 for developers
- Firefox 64 for developers
- Firefox 63 for developers
- Firefox 62 for developers
- Firefox 61 for developers
- Firefox 60 for developers
- Firefox 59 for developers