Firefox 60 for developers - Mozilla

Firefox 60 for developers
=========================

Firefox 60 は、米国時間 2018 年 5 月 9 日にリリースされました。このページでは、開発者に影響する Firefox 60 の変更点をまとめています。

Android 版 Firefox 60 に Stylo を導入
--------------------------------

Firefox の新しい並列処理 CSS エンジン は、 **Quantum CSS** または **Stylo** とも呼ばれ、デスクトップ版 Firefox 57 で始めにデフォルトで有効化されたものですが、Android 版 Firefox で有効化しました。

ウェブ開発者向けの変更点一覧
--------------

### 開発者ツール

* CSS ペインのルールビュー (CSS の調査と編集 をご覧ください) で精密に値を増減する (0.1 ずつ増減) キーボードショートカットを、Linux および Windows で OS の既定のショートカットと衝突しないようにするため、 `Alt` + `Up`/`Down` to `Ctrl` + `Up`/`Down` に変更しました (Firefox バグ 1413314)。
* CSS ペインのルールビューで、CSS 変数名 の自動補完が可能になりました (Firefox バグ 1422635)。プロパティの値に `var(` と入力してダッシュ (`-`) を押下すると、CSS で宣言した変数を自動補完のリストに表示します。
* レスポンシブデザインモード で、タッチのシミュレーションを切り替えたときやシミュレーションするユーザーエージェントを変更したときにページを自動的に再読み込みする機能を有効化/無効化できる、*Reload when...* ドロップダウンメニューを追加しました。詳しくは ページ再読み込みの動作を制御する をご覧ください (Firefox バグ 1428816)。
* 設定項目 `view_source.tab` を削除しましたので、ソース表示 モードを新しいタブか新しいウィンドウで選ぶことができなくなりました。ページのソースは、常に新しいタブで表示されます (Firefox バグ 1418403)。
### HTML

* `designMode` および `contenteditable` の状況で、ブロックレベルの編集ホストの子であるインライン要素またはテキストノードの内部にキャレットがあるときに Enter キーを押下すると、`<div>` 要素を挿入するようになりました。以前は、`<br>` 要素を挿入していました。アプリで以前の動作を望む場合は、`document.execCommand()` で実現できます。詳しくは マークアップ生成の違い をご覧ください (Firefox バグ 1430551)。
### CSS

* `align-content`、`align-items`、`align-self`、`justify-content`、`place-content` プロパティの値を、最新の CSS Box Alignment Module Level 3 仕様書に従って更新しました (Firefox バグ 1430817)。
* `paint-order` プロパティを実装しました (Firefox バグ 1426146)。
### SVG

*変更なし。*

### JavaScript

* ECMAScript 2015 モジュールを、デフォルトで有効にしました (Firefox バグ 1438139)。詳しくは ES6 In Depth: Modules および ES modules: A cartoon deep dive をご覧ください。または、MDN のリファレンス文書を確認してください。
    + `<script src="main.js" type="module">` および `<script nomodule src="fallback.js">`
    + `import` 文と `export` 文。
* `Array.prototype.values()` メソッドを再び追加しました (Firefox バグ 1420101)。互換性の問題のために無効化されました。このメソッドを独自に実装していないことを確認してください。
### API

#### 新規 API

* ウェブ認証 API を有効化しました (Firefox バグ 1432542)。

#### DOM

* ウェブ認証 API で、`MakePublicKeyCredentialOptions` 辞書オブジェクトが `PublicKeyCredentialCreationOptions` に改名されました。これを Firefox でも実施しました (Firefox バグ 1436473)。
* 設定項目 `dom.workers.enabled` を削除しました。すなわち、ワーカーを無効化できなくなりました (Firefox バグ 1434934)。
* `body` プロパティを `Document` インターフェイスに実装しました。以前は `HTMLDocument` インターフェイスにありました (Firefox バグ 1276438)。
* `PerformanceResourceTiming` がワーカーで使用可能になりました (Firefox バグ 1425458)。
* `PerformanceObserver.takeRecords()` メソッドを実装しました (Firefox バグ 1436692)。
* アクティブなキーボードレイアウトが ASCII 文字を生成しない場合でも、句読点キーの `KeyboardEvent.keyCode` 属性は 0 ではない値になります。詳しくはこちらをご覧ください。新しいアプリケーションでは `KeyboardEvent.keyCode` を**使用しない**ようにしてください。代わりに `KeyboardEvent.key` または `KeyboardEvent.code` を使用します。
* `Animation.updatePlaybackRate()` メソッドを実装しました (Firefox バグ 1436659)。
* 句読点キーの keyCode の値 を決定するための新しい規則を導入しました (Firefox バグ 1036008)。
* Gecko 限定の option オブジェクトである、`IDBFactory.open()` メソッドの `storage` オプション (Experimental Gecko options object もご覧ください) が非推奨になりました (Firefox バグ 1442560)。
* プロミス が IndexedDB のコード内で使用可能になりました (Firefox バグ 1193394)。

#### DOM イベント

*変更なし。*

#### サービスワーカー

*変更なし。*

#### メディアと WebRTC

* `getUserMedia()` を使用して取得したメディアを録画または共有するとき、対応するトラックの `MediaStreamTrack.enabled` プロパティを `false` に設定してカメラをミュートすると、カメラを使用していないことをユーザーにわかりやすくするために、カメラが "使用中" であることを示すランプを消灯するようになりました (Firefox バグ 1299515)。詳しくは MediaDevices.getUserMedia() の User privacy をご覧ください。また、こちらのブログ記事 もご覧ください。
* `removeTrack()` (en-US) を使用して `RTCPeerConnection` からトラックを削除するときに、`getSenders()` (en-US) が報告する送信者のピアコネクションのリストからトラックの `RTCRtpSender` (en-US) を削除しないようになりました (Firefox バグ 1290949)。
* `RTCRtpContributingSource` (en-US) および `RTCRtpSynchronizationSource` (en-US) オブジェクトのタイムスタンプは、以前は `Date.getTime()` が返す値に基づいて報告されていました。Firefox 60 で、正しく Performance Timing API を使用するように修正しました (Firefox バグ 1433576)。
* 仕様書に合わせて `ConvolverNode()` (en-US) コンストラクターで、参照される `AudioBuffer` のチャンネル数が 1、2、あるいは 4 でない場合に `NotSupportedError` が発生するようになりました (Firefox バグ 1443228)。
* `RTCPeerConnection` で廃止されたイベントハンドラーである `RTCPeerConnection.onremovestream` (en-US) を削除しました。代わりに `removetrack` イベントを使用するべきです (Firefox バグ 1442385)。
* `RTCDataChannel` は `DataChannel` の別名ではなく、`RTCDataChannel` そのものが本名になりました。`DataChannel` という名前はサポートしません (Firefox バグ 1173851)。

#### Canvas と WebGL

* 設定項目 `privacy.resistFingerprinting` が `true` である場合に、`WEBGL_debug_renderer_info` (en-US) WebGL 拡張が無効になります (Firefox バグ 1337157)。
### CSSOM

*変更なし。*

### HTTP

*変更なし。*

### セキュリティ

* `X-Content-Type-Options` ヘッダーで `no-sniff` を設定したときに、JavaScript の MIME タイプの仕様に従うようになりました。特に、`text/json` および `application/json` は有効な値ではなくなりました (Firefox バグ 1431095)。
### プラグイン

*変更なし。*

### その他

* 資格情報を含むフェッチと資格情報を含まないフェッチが、接続を共有できるようになりました。例えば同じオリジンからウェブフォントと資格情報が設定されたユーザーデータを同じ CDN へ要求するときに、どちらも同じ接続を共有することにより、応答が早くなる可能性があります (Firefox バグ 1363284)。
ウェブプラットフォームから廃止
---------------

### HTML

*変更なし。*

### CSS

* 独自仕様である `-moz-user-input` プロパティの `enabled` および `disabled` 値が使用できなくなりました (Firefox バグ 1405087)。
* 独自仕様である `-moz-border-top-colors`、`-moz-border-right-colors`、`-moz-border-bottom-colors`、`-moz-border-left-colors` (en-US) プロパティを、プラットフォームから完全に削除しました (Firefox バグ 1429723)。
### JavaScript

* 非標準の 式クロージャ 構文を削除しました (Firefox バグ 1426519)。
### API

*変更なし。*

### SVG

*変更なし。*

### その他

*変更なし。*

アドオン開発者と Mozilla 開発者向けの変更点
--------------------------

### WebExtensions

テーマ API:

* headerURL が省略可能になりました。
* ブラウザー テーマ (en-US) を作成するとき、`headerURL` が指定されていない場合は、ヘッダーテキストに適用されている `text-shadow` を削除します (Firefox バグ 1404688)。
* 新たにサポートしたプロパティ:
    + **tab\_line**
    + **tab\_selected**
    + **popup**
    + **popup\_border**
    + **popup\_text**
    + **tab\_loading**
    + **icons**
    + **icons\_attention**
    + **frame\_inactive**
    + **button\_background\_active**
    + **button\_background\_hover**
過去のバージョン
--------

* Firefox 59 for developers
* Firefox 58 for developers
* Firefox 57 for developers
* Firefox 56 for developers
* Firefox 55 for developers
* Firefox 54 for developers
* Firefox 53 for developers
* Firefox 52 for developers
* Firefox 51 for developers
* Firefox 50 for developers
* Firefox 49 for developers
* Firefox 48 for developers
* Firefox 47 for developers
* Firefox 46 for developers
* Firefox 45 for developers
* Firefox 44 for developers
* Firefox 43 for developers
* Firefox 42 for developers
* Firefox 41 for developers
* Firefox 40 for developers
* Firefox 39 for developers
* Firefox 38 for developers
* Firefox 37 for developers
* Firefox 36 for developers
* Firefox 35 for developers
* Firefox 34 for developers
* Firefox 33 for developers
* Firefox 32 for developers
* Firefox 31 for developers
* Firefox 30 for developers
* Firefox 29 for developers


Firefox 2 for developers - Mozilla

Firefox 2 for developers
========================

開発者のための Firefox 2 の新機能
----------------------

Firefox 2 ではたくさんの新機能と能力を導入します。この記事は新機能を取り上げている記事へのリンクを提供します。

### ウェブサイトとウェブアプリケーション開発者向け

マイクロサマリ

マイクロサマリ (Microsummaries)とは Web ページの最も重要な情報の、定期的に更新される要約です。 Web サイトだけではなく第三者の開発者もマイクロサマリを提供することができます。 ユーザーがマイクロサマリの提供されたページをブックマークすると、通常の変化しないタイトルの代わりにマイクロサマリを表示させるかどうか選択できます。

マイクロサマリの作成

マイクロサマリジェネレータ (microsummary generator)の作り方のチュートリアル

マイクロサマリ XML 文法リファレンス

マイクロサマリジェネレータで使われる XML 文法のリファレンスガイド

Firefox 用 OpenSearch プラグインの作成 (en-US)

Firefox 2 は OpenSearch 検索エンジンフォーマットをサポートします。

MozSearch プラグインの作成

Firefox 2 は OpenSearch を元にした検索プラグインフォーマットの MozSearch をサポートしますが、しかし内部利用目的のみのものです。

検索プラグインでの検索サジェスト機能のサポート

検索バーで入力中にドロップダウンリストが現れる検索サジェスト機能 (search suggestions)をサポートした MozSearch プラグインの作り方。

New in JavaScript 1.7

Firefox 2 は JavaScript 1.7 をサポートします。JavaScript 1.7 には `let` や、分割代入 (destructuring assignment)、ジェネレータ (generator)とイテレータ (iterators)、配列内包 (array comprehensions)などの新機能が含まれます。

WHATWG のクライアントサイドのセッション及び永続ストレージ (DOM ストレージ)

クライアントサイドのセッション及び永続ストレージにより、Web アプリケーションは構造化されたデータをクライアントサイドに保存できるようになります。

SVG in Firefox

Firefox 2 はスケーラブルベクタグラフィックス (SVG) のサポートを改善します。`<textPath>` 要素と以前にサポートされていなかったいくつかの属性を実装しました。

HTML フォームのスペルチェックを制御する

Firefox 2 ではテキストエリアとテキストフィールドでのインラインスペルチェックがサポートされます。この記事は個々のフォーム要素についてスペルチェックを有効、無効にする HTML の書きかたを説明します。

### XUL と拡張機能の開発者向け

拡張機能を Firefox 2 用に更新する方法

既存の拡張機能を Firefox 2 で動くようにする方法を取り上げます。

セッションストア API

Firefox のセッション全体を保存し復帰するための項目を提供します。

フィードコンテンツへアクセスする API

開発者が RSS および Atom フィードをアクセスおよびパースできる API。

SAX サポート

イベントベースの XML パーサ API.

ウェブページから検索エンジンを追加する (en-US)

JavaScript コードは Firefox に新しい検索プラグインをインストールするように命令することができます。OpenSearch か Sherlock フォーマットのどちらかを利用して検索プラグインを書くことができます。

XUL でのスペルチェック

コードから単語のスペルをチェックしたり、スペルの候補リストを得る方法。

フィッシング保護データプロバイダの追加

安全なブラウジングシステムのためにさらなるデータプロバイダを追加することで Firefox のフィッシング保護機能を改善することができます。

Firefox へのフィードリーダーの追加

Firefox には、Web ベースかアプリケーションベースかに関わらず、フィードリーダーを新しく追加できます。

ストレージ

Firefox 2 は sqlite を基にしたデータベースアーキテクチャである mozStorage を導入します。

Firefox 2 のテーマ変更

既存のテーマを更新して Firefox 2 で動作させるために必要な変更についての説明。

Textbox の改良 (Firefox 2.0.0.1 以降のみ)

`<textbox>` に、テキストボックスの値を既定値にリセットする `reset()` メソッドが追加されました。テキストボックスの既定値を取得および変更するには `defaultValue` プロパティを使用してください (Firefox バグ 312867)。

テキストフィールド内部の nsIEditor を取得するための `editor` プロパティがサポートされました (Firefox バグ 312867)。

利用者向けの新機能
---------

Firefox 2.0 は前のバージョンと同じクリーンなインターフェースの強化版に加え、より安全でこれまで以上に便利なオンライン体験のための改良されたセキュリティ機能を提供します。

### ユーザ体験

* **テキストエリアのインラインスペルチェック** はあなたにウェブフォームで自信をもって編集させてくれます。
* **マイクロサマリ** は自動的に更新され、参照するサイトから引っ張てきた情報を表示するブックマークを作る方法を提供します。株式のティッカーやオークションの監視などに最適です。
* **拡張機能マネージャのユーザインタフェース**が改善されました。
* **検索エンジンマネージャ**は検索バーに示されたサーチエンジンを再配列し取り除かせてくれます。
* **タブブラウザの強化** にはそれぞれのタブに閉じるボタンの追加、タブを閉じたときにどのタブに移動するかを Firefox が判断する方法を調整、単純化されたタブの設定が含まれています。
* **検索エンジンの自動検出**は Firefox の検索バー用のプラグインを提供する検索エンジンにプラグインをインストールすることを可能にします。
* **検索サジェスト**は検索エンジンはあなたが検索バーに途中まで入力した語句に基づいてサジェストされた検索語句を提案します。
### セキュリティとプライバシー

* **フィッシング保護**はあなたが見ているウェブサイトが偽造されているように見える時にユーザに警告します。
参考資料
----

* Firefox 1.5 for developers


Firefox 37 for developers - Mozilla

Firefox 37 for developers
=========================

Firefox 37 は、米国時間 2015 年 3 月 31 日にリリースされました。このページでは、開発者に影響する Firefox 37 の変更点をまとめています。

Web 開発者向けの変更点一覧
---------------

### 開発者ツール

ハイライト:

* ネットワークモニタの Security パネル
* インスペクタのアニメーションパネル
* WebIDE でカスタムビルドステップの実行をサポート

Firefox 36 から Firefox 37 の間に解決した開発ツール関連のバグ一覧

### CSS

* `display``: contents` をデフォルトで有効にしました (Firefox バグ 1102374 および Firefox バグ 1105369)。
* CSS マルチカラムレイアウトが、`display``: table-caption` を適用した要素で動作するようになりました (Firefox バグ 1109571)。
* テーブルセルの相対配置 (`position``: relative`) を実装しました (Firefox バグ 35168)。
* Quirks モードで、`empty-cells` の動作を削除しました。Standard モードと同様に、デフォルトが `show` になります (Firefox バグ 1020400)。
### HTML

* リンクを新しいタブで開く場合でも、`<a rel="noreferrer">` が機能するようになりました (Firefox バグ 1031264)。
* `<input accept>` で、`'.'` の後に拡張子を記載する形式を受け入れるようになりました。これを指定するとファイル選択ダイアログをユーザに提示するとき、指定した拡張子でフィルタします (Firefox バグ 826176)。
### JavaScript

* `Map`、`Set`、`WeakMap`、`WeakSet` コンストラクタは、引数 iterable で値 null を無視するようになりました (Firefox バグ 1092538)。
* `Map`、`Set`、`WeakMap`、`WeakSet` コンストラクタで、モンキーパッチを使用した `prototype.set` または `prototype.add` をサポートしました (Firefox バグ 804279)。
* 非標準の `String.prototype.quote()` メソッドを削除しました (Firefox バグ 1103181)。
* `RegExp.prototype.flags` プロパティを実装しました (Firefox バグ 1108467)。
* `Array` のメソッドのいくつかを、Typed Array にも実装しました:
    + `every()` および `some()` メソッド (Firefox バグ 1116390)。
    + `find()` および `findIndex()` メソッド (Firefox バグ 1078975)。
    + `fill()` メソッド (Firefox バグ 1113722)。
    + `indexOf()` および `lastIndexOf()` メソッド (Firefox バグ 1107601)。
    + `join()` メソッド (Firefox バグ 1115817)。
    + `reduce()` および `reduceRight()` メソッド (Firefox バグ 1117350)。
    + `reverse()` メソッド (Firefox バグ 1111516)。
    + `keys()`、`values()`、`entries()` メソッド (Firefox バグ 1119217)。
* ES6 Proxy の `enumerate` トラップを実装しました (Firefox バグ 783829)。
* ES6 仕様書に基づき、`Function.length` プロパティの `configurable` 属性を `true` に変更しました (Firefox バグ 911142)。
* ParallelJS (PJS) の開発を中止しました。将来性の乏しさ、関心の薄さ、コードの複雑さが理由です。`Array.prototype.mapPar`、`filterPar`、`reducePar` メソッドといった、Nightly チャンネルのみで有効であった実験的な実装は全面的に削除しました。
### インターフェイス/API/DOM

* `StereoPannerNode` Web Audio ノードを実装しました (Firefox バグ 1100349)。
* `Promise` ベースの `OfflineAudioContext` が使用可能になりました (Firefox バグ 1087944)。
* Service Worker の実験的な実装 (デフォルトで無効) を進めています。`ServiceWorkerGlobalScope.update()` (en-US) を実装しました (Firefox バグ 1065366)。
* Web workers で IndexedDB API を使用できるようになりました (Firefox バグ 701634)。
* WebGL 2.0 の実験的な実装を進めています!
    + バッファオブジェクトへのアクセス機能を提供する、`WebGL2RenderingContext.getBufferSubData()` (en-US) メソッドを実装しました (Firefox バグ 1048731)。
* `KeyboardEvent.key` のキー名の一部を、最新の DOM Level 3 Events 仕様に準拠するよう変更しました。MDN で KeyboardEvent.key の値の一覧表 (en-US)をご覧ください。緑色のセルが新たな値です。また、紫色の値は変更される可能性があります。これらの値を使用する場合は注意してください (キー名の変更に関するメタバグは Firefox バグ 900372 です)。
* `Console` インターフェイスが `ServiceWorker` および `SharedWorker` で動作するようになりました。これらは以前から使用できましたが、動作しない状態でした (Firefox バグ 1058644)。
### MathML

*変更なし。*

### SVG

* SVG2 の `<marker orient="auto-start-reverse">` を実装しました (Firefox バグ 1107584)。
### Audio/Video

*変更なし。*

ネットワーク
------

* WebSockets で `permessage` 圧縮法をサポートしました (Firefox バグ 792831)。サーバが対応していれば使用できます。
セキュリティ
------

* SSL 3.0 や RC4 といった弱いプロトコルや暗号方式をサイトで使用していることを警告するため、それらが使用されたことをコンソールに記録するようになりました (Firefox バグ 1092835)。
* CSP 1.1 の `referrer` ディレクティブをサポートしました (Firefox バグ 965727)。
アドオン開発者と Mozilla 開発者向けの変更点
--------------------------

### Add-on SDK

*変更なし。*

### XUL

*変更なし。*

関連情報
----

* Firefox 37 リリースノート
* Firefox 37 アドオン互換性情報
過去のバージョン
--------

* Firefox 36 for developers
* Firefox 35 for developers
* Firefox 34 for developers
* Firefox 33 for developers
* Firefox 32 for developers
* Firefox 31 for developers
* Firefox 30 for developers
* Firefox 29 for developers
* Firefox 28 for developers
* Firefox 27 for developers
* Firefox 26 for developers
* Firefox 25 for developers
* Firefox 24 for developers
* Firefox 23 for developers
* Firefox 22 for developers
* Firefox 21 for developers
* Firefox 20 for developers
* Firefox 19 for developers
* Firefox 18 for developers
* Firefox 17 for developers
* Firefox 16 for developers
* Firefox 15 for developers
* Firefox 14 for developers
* Firefox 13 for developers
* Firefox 12 for developers
* Firefox 11 for developers
* Firefox 10 for developers
* Firefox 9 for developers
* Firefox 8 for developers
* Firefox 7 for developers
* Firefox 6 for developers


Firefox 95 for developers - Mozilla

Firefox 95 for developers
=========================

 このページでは、開発者に影響する Firefox 95 の変更点をまとめています。
 Firefox 95 は、2021 年 12 月 7 日にリリースされました。

ウェブ開発者向けの変更点一覧
--------------

### HTML

* `inputmode` グローバル属性を、Android だけでなくすべてのプラットフォームでサポートしました。
 これは、特定の要素を編集するときにどの種類の仮想キーボードが最適であるかのヒントをブラウザーに与えるものです (Firefox バグ 1205133)。
### CSS

* CSS の `cursor` プロパティを、Android 版 Firefox でサポートしました。
 マウスを使用する Android ユーザーは、どの要素がクリックできるかを見分けやすくなります (Firefox バグ 1672609)。
### JavaScript

変更なし。

### API

* `Crypto.randomUUID()` 関数をサポートしました。これは暗号的に強い 36 文字固定長の UUID を返します (Firefox バグ 1723674)。

#### Media、WebRTC、Web Audio

* 仕様書の更新に合わせて、`SpeechSynthesisEvent.elapsedTime` が経過時間をミリ秒単位ではなく秒単位で返すようになりました (Firefox バグ 1732498)。
### WebDriver conformance (Marionette)

* Marionette が使用する `port` を、プロファイルディレクトリーの `MarionetteActivePort` ファイルへ書き込むようになりました。これを使用すると `port` を容易に取得できます。以前はプロファイルの `prefs.js` ファイルを解析することだけで可能でした (Firefox バグ 1735162)。
* window proxy が意図せずアンロードされることを防ぐため、最初のタブが完全に読み込まれるまで `WebDriver:NewSession` が待つようになりました (Firefox バグ 1736323)。
アドオン開発者向けの変更点一覧
---------------

* 設定項目 `layout.css.prefers-color-scheme.content-override` の制御を可能にする `overrideContentColorScheme` を `browserSettings` に追加しました。ブラウザーのテーマから独立して、ページが好むカラースキーム (ライトまたはダーク) を設定できます (Firefox バグ 1733461)。
過去のバージョン
--------

* Firefox 94 for developers
* Firefox 93 for developers
* Firefox 92 for developers
* Firefox 91 for developers
* Firefox 90 for developers
* 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 6 for developers - Mozilla

Firefox 6 for developers
========================

Firefox 6 は Gecko 6.0 ベースのブラウザで、2011 年 8 月 16 日にリリースされました。このページは Firefox 6 のリリースにあたり、開発者に関係する変更についてまとめたものです。

Web 開発者向けの変更点一覧
---------------

### HTML

* プログレスバーを表す HTML5 の `<progress>` 要素がサポートされました。
* メディア要素にテキストトラックを追加する HTML5 の `<track>` 要素について、そのパース処理部分が実装されました。要素そのものは実装されていませんが、DOM に現れるようにはなります。
* `border-radius` プロパティによって角が丸められたコンテナ内の `<iframe>` についても、適切に角が丸められるようになりました。
* `<form>` 要素の `<input>` テキストフィールドが XUL の `maxwidth` プロパティをサポートしなくなりました。これは意図的なものではなく、また HTML 仕様違反でもあります。要素の最大幅を設定するには、`size` 属性を利用します。
* `<canvas>` の `CanvasRenderingContext2d` プロパティ `fillStyle` と `strokeStyle` はこれまで、妥当な色の指定の後に続く余計なものを無視する処理をしていましたが、適切にエラーとして処理されるように修正されました。たとえば、"red blue" を指定したとき、これまでは "red" と扱われていましたが、これからは指定そのものが無視されます。
* `<canvas>` 要素の width と height を適切に 0px と指定できるようになりました。これまではそう指定しても 300px にされていました。
* HTML カスタムデータ属性 (data-\*) がサポートされました。DOM プロパティ `element.dataset` からデータにアクセスできます。
* `<textarea>` 要素がフォーカスされたとき、テキスト挿入箇所が最後ではなく先頭になりました。これにより、他のブラウザの挙動と一致します。
### CSS

`-moz-text-decoration-color`

このプロパティは `text-decoration` で指定する `underline`, `overline`, `strikethrough` などの色を指定します。

`-moz-text-decoration-line`

このプロパティは `text-decoration` の種類を指定します。

`-moz-text-decoration-style`

このプロパティは `text-decoration` で指定する `underline`, `overline`, `strikethrough` などのスタイルを指定します。スタイルには `solid`, `double`, `dotted`, `dashed`, `wavy` などがあります。

`-moz-hyphens`

このプロパティは行送りが発生する際、単語のハイフネーションを制御するプロパティです。

`-moz-orient` (en-US)

現在は Mozilla 固有のプロパティで、いくつかの要素 (`<progress>` 要素など) の縦横の向きを制御します。

`::-moz-progress-bar`

Mozilla 固有の擬似要素で、`<progress>` 要素において、完了した部分のスタイルづけを行うためのものです。

#### その他の変更

* `@-moz-document` (en-US) に新しく `regexp()` 関数記法が追加されました。これにより、スタイルシートを適用する文書の URL を 正規表現でマッチさせられます。
* `aural` 媒体グループのために持っていたコードを削除したため、`azimuth` CSS プロパティのサポートが廃止されました。このプロパティはちゃんと実装されていなかったため、パッチを当て続けるのではなく未完成の実装を省くほうが理にかなっていると考えました。
* これまで、`:hover` 擬似クラスは Quirks モードにおいてクラスセレクタに適用されませんでした。このため `.someclass:hover` といったコードは動きませんでしたが、この例外が取り払われました。
* `:indeterminate` 擬似クラスは `<progress>` 要素にも適用できます。これは非標準ですが、便利ですので他のブラウザにも取り入れられて欲しいと考えています。
### DOM

コード内でのメディアクエリの使用

`window.matchMedia()` メソッドと `MediaQueryList` インターフェースによって、メディアクエリーの結果をプログラムから検証できます。

Touch events

Firefox 6 は W3C の標準タッチイベント仕様をサポートします。これにより、タッチスクリーンやトラックパッドなどタッチセンサー式のデバイスでのタッチの解釈が容易になります。

Server-sent events

Server-sent events はサーバが手元で生成された DOM イベントと同じようにイベントを送出するよう、Web アプリケーションが尋ねるための機能です。

* これまでずっと、空文字列を返すだけだった `navigator.securityPolicy` プロパティが完全に削除されました。
* `BlobBuilder` がサポートされました。現時点では接頭辞付きの実装 (`MozBlobBuilder`) となっています。
* `document.height`, `document.width` が削除されました。 バグ 585877
* `DocumentType` オブジェクトの `entities`, `notations` プロパティが削除されました。これは実装されておらず常に `null` を返しており、また仕様からも削除されていました。
* `DOMConfiguration` インターフェースと、それを使用していた `document.domConfig` プロパティが削除されました。これらはサポートされておらず、また DOM 仕様からも削除されていました。
* `hashchange` イベントが適切に `newURL`, `oldURL` フィールド を含むようになりました。
* `FileReader` インターフェースの `abort()` メソッドが、ファイルの読み込み中に利用された際に例外を投げるようになりました。
* `window.postMessage()` メソッドが structured clone algorithm (en-US) を使用するようになり、あるウィンドウから他のウィンドウに文字列ではなく JavaScript オブジェクトを渡せるようになりました。
* `window.history` API が `pushState()`, `replaceState()` メソッドに渡されたオブジェクトのシリアライズに structured clone algorithm (en-US) を使用するようになりました。これによって循環参照などを含むより複雑なオブジェクトも使用可能となりました。
* 新しく追加された `beforeprint`, `afterprint` イベントによって、印刷が行われたときと完了したときを検出する (en-US) ことができるようになりました。
* `document.strictErrorChecking` プロパティが削除されました。実装されておらず、また DOM 仕様からも削除されていました。
* 標準である `event.defaultPrevented` プロパティがサポートされました。`event.preventDefault()` がイベントから呼び出されたかを知る際には、非標準の `getPreventdefault()` ではなくこちらを使うようにしましょう。
* `window.top` プロパティが、適切に readonly となりました。
* これまでドキュメントのなかった DOM views が削除されました。これらには実装の詳細が多く、また不必要に様々なものを複雑にしていたため削除されました。もしこの変化に気づいた場合は、何か誤ったことをしている可能性があります。
* `EventTarget` の関数 `addEventListener()` に指定する引数 `useCapture` が optional となりました。これは WebKit の動作とも共通し、また新しい仕様でもそう定義されています。
* `XMLHttpRequest` オブジェクトの `mozResponseArrayBuffer` プロパティが `responseType`, `response` プロパティに置き換えられました。
* `HTMLElement` インターフェースに `element.dataset` プロパティが追加されました。このプロパティにより 要素の `data-*` グローバル属性 にアクセスできます。
* `CustomEvent` インターフェースが実装されました (バグ 427537)
* セキュリティの観点から、ユーザーがロケーションバーに `data:` URI と `javascript:` URI を入力した時、現在のページのセキュリティコンテキストを受け継がなくなりました。代わりに、新しい空のセキュリティコンテキストが生成されます。これにより、ロケーションバーに入力した `javascript:` URI から読み込まれたスクリプトは、DOM メソッドなどへのアクセスを持たなくなります。しかし、これらの URI がスクリプトから使用された場合は、これまでと同じように動作します。
### JavaScript

* これまで、いくつかの組み込み関数 (`eval`, `parseInt`, `Date.parse` など) に対し `new` オペレータを使うことができましたが、仕様においてこれは許されるべきではないとされていました。Firefox 6 では、このサポートが廃止されました。`new` オペレータのこういった利用は公式にはサポートされておらず、また広く利用されてもいません。この変更が何かに影響することはないでしょう。
* ECMAScript Harmony の WeakMaps がプロトタイプ実装として追加されました。
### SVG

* `pathLength` (en-US) 属性がサポートされました。
* `data:` URL から読み込まれたパターン、グラデーション、フィルタが適切に動作するようになりました。
### MathML

* `<mstyle>` (en-US) の実装が修正されました。
### アクセシビリティ (ARIA)

* 状態変化イベントが `aria-busy` の値の変化でも発生するようになりました。
* `aria-sort` が発生した際に属性変化イベントが発生するようになりました。
### ネットワーク

WebSocket

WebSocket プロトコルのサポートがバージョン 07 に更新されました。また、グローバルオブジェクトの`WebSocket`オブジェクトが`MozWebSocket`に改称されました。接頭辞のないオブジェクトの検出を目的としたときに問題となるため、それを防ぐ目的です。

* `Content-Disposition` ヘッダの構文解析が修正され、バックスラッシュでエスケープされた ASCII 文字が適切に文字そのものとして処理されるようになりました。これまではその文字をアンダースコア ("`_`")に置き換えるという誤った処理がなされていました。
* `Set-Cookie` ヘッダのパスの値において、クォートが適切に処理されるようになりました。これまでクォートを使った場合はそれがデリミタではなく、パスの文字列として認識されていました。\*\*この変更により、いくつかのサイトで互換性の問題が発生する可能性があります。\*\*製作者はコードをチェックすることが望まれます。
* `Upgrade` リクエストヘッダがサポートされました。`nsIHttpChannelInternal.HTTPUpgrade()` を呼ぶことで、HTTP チャネルから他のプロトコルへのアップグレードをリクエストできます。
### その他の変更

* Microsummary が削除されました。広く使われおらず、また見つけにくい機能でもあり、サポートの継続によって Places (ブックマークと履歴) のアーキテクチャを向上させることが難しくなっていたからです。
* WebGL が `OES_texture_float` 拡張をサポートしました。
* JavaScript コードをテストする簡易で便利なツール Scratchpad が追加されました。
Mozilla 開発者とアドオン開発者向けの変更点
-------------------------

Firefox 6 へアドオンを対応させるために必要な作業の概要は アドオンの Firefox 6 対応 をご覧ください。

**メモ:** Firefox 6 では、従来のメジャーリリースと同様に、バイナリコンポーネントをコンパイルし直す必要があります。詳しくは バイナリインタフェース をご覧ください。

### JavaScript コードモジュール

#### FileUtils.jsm

* `openSafeFileOutputStream()` メソッドは、ファイルを即座に開こうとする代わりに、`DEFER_OPEN` ビヘイビアフラグ 付きで開くようになりました。

#### XPCOMUtils.jsm

* 新しい `importRelative()` メソッドは、ある JavaScript コードモジュールを、他の JavaScript コードモジュールの相対パスから読み込むようになりました。これによって互いに依存するモジュールを開発しやすくなりました。
### XPCOM

* `nsCOMArray<T>` に、配列から複数のオブジェクトを一度に削除できる `RemoveObjectsAt()` メソッドが追加されました。
### クロームからの DOM の使用

クロームコードでの DOM File API の使用

これまでもクロームコード内で DOM File API を使うことは可能でしたが、`File` (en-US) コンストラクタをクロームで使用した場合に、ローカルパス名文字列を指定できるようになりました。また、`nsIFile` オブジェクトを使用して、DOM File API を通じてアクセスするファイルを指定できるようになりました。

### インタフェースの変更

* `nsINavHistoryQueryOptions` で、新たな定数 `SORT_BY_FRECENCY_ASCENDING` と `SORT_BY_FRECENCY_DESCENDING` を使った訪問頻度順のソートが可能になりました。
* `nsIFilePicker` に `addToRecentDocs` 属性が追加されました。これは、もしユーザの「最近使用したドキュメント」リストがあれば、そのリストに選択したファイルを追加するよう指定できるものです。この属性はプライベートブラウジングモードでは無視されます。
* `nsINavBookmarkObserver` メソッドにアイテム ID 引数を与える場合、GUID も必要となります。
* `nsIPrefBranch.clearUserPref()` が、指定された設定が存在しない場合やユーザ設定値がない場合も、例外を投げなくなりました。その代わり、単に何もしなくなりました。
* `nsIMemoryReporter` インタフェースで、調べたいメモリの種類 (マップ、ヒープ、その他) を指定できるようになりました。
* `nsISHEntry` の `stateData` 属性が `nsIStructuredCloneContainer` を返すようになりました。
* `nsIURI` に `ref` 属性が追加されました。これは、URI の一部の参照 (「#」以降の部分) を返すものです。また、参照メンバーなしに `nsIURI` を複製できる `cloneIgnoringRef()` メソッドと、参照メンバーを無視して他の `nsIURI` と比較できる `equalsExceptRef()` メソッドが追加されました。

#### 新しいインタフェース

`mozIAsyncFavicons`

ブックマークアイコン (favicon) サービスへの非同期アクセスが可能な新サービスです。

`nsIEventSource`

*詳細は後日解説します。*

`nsIGSettingsCollection`

*詳細は後日解説します。*

`nsIGSettingsService`

*詳細は後日解説します。*

`nsIHttpUpgradeListener`

`nsIHttpChannelInternal.HTTPUpgrade()` メソッドを通じた HTTP アップグレード要求を処理するためのコールバックインタフェースです。

`nsIStructuredCloneContainer`

構造化された複製アルゴリズム を使ってシリアライズされたオブジェクトのためのコンテナです。

`nsITelemetry`

パフォーマンス測定を目的とした 使用統計情報 (Telemetry) を記録とヒストグラムの生成に使用されます。バグ 649502 と バグ 585196 参照。

`nsITimedChannel`

バグ 576006 参照。

`nsIWebSocketListener`

バグ 640003 参照。

`nsIWebSocketProtocol`

バグ 640003 参照。

#### 削除されたインタフェース

以下のインタフェースは、不要となり削除された実装です。詳細はバグを参照してください。

* `nsIDOMDocumentEvent` (バグ 655517)
* `nsIDOMDocumentTraversal` (バグ 655514)
* `nsIDOMDocumentRange` (バグ 655513)
* `IWeaveCrypto` (バグ 651596)
* `nsIDOM3DocumentEvent` (バグ 481863)
* `nsIDOMAbstractView`
* `nsILiveTitleNotificationSubject`
* `nsIPlugin` (バグ 637253)
* `nsIPluginInstance` (バグ 637253)
* `nsIHTMLEditRules` (バグ 633750)
* `nsIXSLTProcessorObsolete` (バグ 649534)
### その他の変更

アプリケーションコードからの設定の使用

設定へ簡単にアクセスできる、新しい静的な API が実装されました。これはアプリケーションコードからのみ使用可能であり、アドオンでは使用できません。

参考
--

* Firefox 6 の後方互換性に関わる修正のまとめ
* 高速リリースサイクルに関するよくある質問

* Firefox 5 for developers
* Firefox 4 for developers
* Firefox 3.6 for developers
* Firefox 3.5 for developers
* Firefox 3 for developers
* Firefox 2 for developers
* Firefox 1.5 for developers


Firefox 64 for developers - Mozilla

Firefox 64 for developers
=========================

Firefox 64 は、米国時間 2018 年 12 月 11 日 にリリースされました。このページでは、開発者に影響する Firefox 64 の変更点をまとめています。

ウェブ開発者向けの変更点一覧
--------------

### 開発者ツール

* アクセシビリティインスペクターの情報バー が、ページ上のテキストや画像の色のコントラスト比に関する情報を表示するようになりました (Firefox バグ 1473037)。
* レスポンシブデザインモード で選択したデバイスが、セッションをまたいで保存されるようになりました (Firefox バグ 1248619)。
* ネットワークモニター で、トラッキング防止 (en-US) の影響を受ける可能性があるリソースに印をつけるようになりました (Firefox バグ 1333994)。
* ウェブコンソール で、コードの入力や評価の機能が向上しました:
    + コンソールの式の オートコンプリート が、大文字・小文字を区別しないようになりました (Firefox バグ 672733)。
    + bash のような reverse search によって コンソールの式の履歴 をたどれるようになりました (Firefox バグ 1024913)。
    + コンソールで 評価されたコード が、入力・出力ともに構文強調を行うようになりました (Firefox バグ 1463669)。
* JavaScript デバッガー のステップ実行の機能も向上しました:
    + ステップ実行中は 展開された変数 を維持するようになりました (Firefox バグ 1491471)。
    + 関数の ステップアウト で、戻り値をスキップするようになりました (Firefox バグ 923975)。

#### 廃止

* 開発ツールバー/ GCLI を削除しました (Firefox バグ 1429421)。
### HTML

*変更なし。*

### CSS

* CSS Scrollbars 仕様の機能をデフォルトで有効化しました (Firefox バグ 1492012)。
* `pointer:coarse` を含む、Interaction Media Features を実装しました (Firefox バグ 1035774)。`any-pointer` および `any-hover` の実装については、Firefox バグ 1483111 をご覧ください。
* `prefers-reduced-motion` メディア特性を Android 版 Firefox でサポートしました (Firefox バグ 1478505)。
* CSS の `<gradient>` 値で複数の color stop を持つ構文をサポートしました。例えば `yellow 25%, yellow 50%` を `yellow 25% 50%` と書くことができます (Firefox バグ 1352643)。
* `text-transform` プロパティで `full-size-kana` 値を受け入れるようになりました (Firefox バグ 1498148)。
* ウェブ互換性の問題を緩和するため、`-webkit-appearance` をサポートしました (Firefox バグ 1368555)。
* 上記の更新に関連して、Firefox 固有の `-moz-appearance` の大半の値を削除しました (Firefox バグ 1496720)。
* `<legend>` 要素で `display`: `list-item` をサポートしました (Firefox バグ 1486602)。
* `offset-path` で使用可能な SVG の `path()` がアニメーション可能になりました (Firefox バグ 1486094)。
* セレクターの羅列やグループに `-webkit-` 接頭辞を持つ疑似要素が含まれるとき、疑似要素がセレクターを無効化しないようになりました (詳しくは Firefox バグ 1424106、またこの機能の有効化について Firefox バグ 1486325 をご覧ください)。

#### 廃止

* `display` の非標準の値である `-moz-box` および `-moz-inline-box` が、ウェブコンテンツで使用できなくなりました (Firefox バグ 1496961)。
* 非標準の `::-moz-tree` 疑似要素 が、ウェブコンテンツで使用できなくなりました (Firefox バグ 1496961)。
* 設定項目 `layout.css.filters.enabled` を削除しました。CSS filters は無効化できません (Firefox バグ 1408841)。
* `overflow` の 2 値構文で block を 1 番目、inline を 2 番目に入れ替えた変更 (Firefox バグ 1481866) を元に戻しました (Firefox バグ 1492567)。理由は Bug 1481866 の comment 14 をご覧ください。
### SVG

*変更なし。*

### JavaScript

* `JSON.stringify` が正しくない Unicode 文字列を返すのを避けるため、TC39 Well-formed JSON.stringify 提案を実装しました (Firefox バグ 1469021)。
* Proxy 化した関数を `Function.prototype.toString``.call()` に渡すことが可能になりました (Firefox バグ 1440468)。
* `WebAssembly.Global` コンストラクターで、何も値を指定しない場合に型付きの値 0 を使用するようになりました。これは `DefaultValue` アルゴリズム で示されています (Firefox バグ 1490286)。
### API

#### DOM

* Fullscreen API に関して、いくつかの変更を施しました:
    + API の接頭辞を削除しました (Firefox バグ 1269276)。
    + `Element.requestFullscreen()` および `Document.exitFullscreen()` メソッドが、モード変更が完了したときに解決する `Promise` を返すようになりました (Firefox バグ 1188256、Firefox バグ 1491212)。
    + 以前は `fullscreenchange` および `fullscreenerror` イベントが始めに `Document` へ、次に `Element` へ発行されていました。これを逆にして、要素が始めにイベントを受けるようになりました。これは最新の仕様書や Google Chrome の動作に一致します (Firefox バグ 1375319)。
* WebVR API (1.1) を macOS で再び有効化しました (Firefox バグ 1476091)。
* `Window.screenLeft` (en-US) および `Window.screenTop` (en-US) を、それぞれ `Window.screenX` および `Window.screenY` の別名として実装しました (Firefox バグ 1498860)。
* `XMLHttpRequest.getAllResponseHeaders()` メソッドが、仕様書に従ってヘッダー名をすべて小文字で返すようになりました (Firefox バグ 1398718)。
* 古い `HTMLAllCollection` インターフェイスを、最近の 仕様書の更新 に従って更新しました (Firefox バグ 1398354)。
* プライバシー保護のため、`Navigator.buildID` で固定値のタイムスタンプが返るようになりました (Firefox バグ 583181)。
* 以下の `Document.execCommand()` UI 機能コマンドを、デフォルトで無効にしました (Firefox バグ 1490641):
    + `enableObjectResizing`
    + `enableInlineTableEditing`
    + `enableAbsolutePositionEditor`

#### Service workers

* `ServiceWorkerContainer.startMessages()` メソッドを実装しました (Firefox バグ 1263734)。

#### メディア、Web Audio、WebRTC

* `PannerNode.refDistance` (en-US)、`PannerNode.maxDistance` (en-US)、`PannerNode.rolloffFactor` (en-US)、`PannerNode.coneOuterGain` (en-US) プロパティが、受け入れ可能な範囲を超える値が設定されたときに、正しく例外を発生させるようになりました (Firefox バグ 1487963)。
* `RTCRtpSender.setParameters()` (en-US) で変更した `RTCRtpEncodingParameters` (en-US) の設定は、呼び出し中に更新されませんでした。これらが再ネゴシエーションなしで即座に更新するようになりました (Firefox バグ 1253499)。
* `RTCIceCandidateStats.relayProtocol` (en-US) を実装しました。これは `RTCIceCandidateStats.mozLocalTransport` (en-US) を標準化したものであり、こちらは非推奨になりました (Firefox バグ 1435789)。
* 自動利得制御 (AGC) をデフォルトで有効にしました。これは設定項目 `media.getusermedia.agc_enabled` で変更できます (Firefox バグ 1496714)。

#### 廃止

* ウェブ互換性の問題を緩和するために Firefox 63 で追加した `Window.event` プロパティで別の問題が発覚したため、設定 (`dom.window.event.enabled`) で制御するようにして、Release 版はデフォルトで無効化しました (Firefox バグ 1493869)。注記: これは実際には Firefox 63 のリリースサイクルの後期に実施しましたが、念のためここで言及します。
* `LocalMediaStream` インターフェイスと、その `stop()` メソッドを削除しました (Firefox バグ 1258143)。このメソッドは `LocalMediaStream` の非推奨化によって使用できなくなりました。全体のストリームを停止する方法については 映像ストリームの停止 セクションをご覧ください。
* `AudioStreamTrack` および `VideoStreamTrack` インターフェイスを削除しました。これらはしばらく前から非推奨でした (Firefox バグ 1377146)。この機能は `MediaStreamTrack` に統合されました。トラックは `kind` プロパティの値で、`audio` や `video` といった値で識別します。
### セキュリティ

* シマンテックの CA を失効させる計画を実装しました (Firefox バグ 1409257 を参照。詳しくは Mozilla's Plan for Symantec Roots の議論もご覧ください)。
* `Referrer-Policy` を、スタイルシートで読み込むリソースの制御で使用可能になりました (Firefox バグ 1330487)。詳しくは CSS との統合 をご覧ください。
### プラグイン

*変更なし。*

### WebDriver conformance (Marionette)

#### API の変更点

* `Marionette:`、`L10n:`、`Addon:` の接頭辞を持たない、非推奨のコマンドエンドポイント (`singeTap` を含む) を削除しました (Firefox バグ 1504478、Firefox バグ 1504940)。

#### バグ修正

* `WebDriver:PerformActions` で、`Shift` キーと合成したイベントが大文字にならない問題を修正しました (Firefox バグ 1405370)。
* コンテンツプロセス内のタブがナビゲーション中に複数回変化したとき、`WebDriver:Navigate` がハングアップする場合がある問題を修正しました (Firefox バグ 1504807)。
* パフォーマンスを向上させるため、および Firefox のメモリー使用量を削減するために、新しいタブやウィンドウがデフォルトで読み込むページを `about:newtab` から `about:blank` に変更しました (Firefox バグ 1506643)。
* さまざまなページで表示されて要素との対話を失敗させていた、コンテンツブロックを紹介するパネルをデフォルトで無効にしました (Firefox バグ 1488826)。
アドオン開発者向けの変更点
-------------

### API の変更点

#### メニュー

* 拡張機能で独自のコンテキストメニューを設定するために `contextmenu` DOM イベントから呼び出すことが可能な、`browser.menus.overrideContext()` API を新設しました。この API は、拡張機能が Firefox のすべてのデフォルトのメニュー項目を隠して、独自のコンテキストメニューの UI を提供することを可能にします。このコンテキストメニューは、拡張機能が提供する複数のトップレベルのメニュー項目で構成され、任意で別の拡張機能のタブやブックマークのコンテキストメニューを含むこともできます。詳しくは こちらのブログ記事 をご覧ください。
    + `browser.menus.overrideContext()` を実装しました (Firefox バグ 1280347)。
    + デフォルトのコンテキストメニューを隠すために使用できる `showDefaults: false` オプションを実装しました (Firefox バグ 1367160)。
    + `browser.menus.overrideContext()` が使用されていても、`moz-extension://` 文書 URL をマッチさせるために `documentURLPatterns` を使用できるようになりました。この方法は、独自のメニュー項目を特定の文書に限定させることを確実にできます (Firefox バグ 1498896)。
* `menus.create()` (en-US) および `menus.update()` (en-US) の新しい `viewTypes` プロパティを使用して、アドオンでコンテキストメニューを表示可能にするかを制限できるようになりました (Firefox バグ 1416839)。
* `menus.update()` (en-US) が、既存のメニュー項目のアイコンを更新できるようになりました (Firefox バグ 1414566)。
* メニュー項目がクリックされたとき、どのマウスボタンを使用したかを拡張機能で検出可能になりました。これは `menus.OnClickData` (en-US) の新しい `button` プロパティを使用して判断できます (Firefox バグ 1469148)。

#### ウィンドウ

* `windows.create()` (en-US) メソッドで新たに `cookieStoreId` オプションが使用可能になりました。これはウィンドウが開かれたときに作成されたすべてのタブで使用する `CookieStoreId` を指定します (Firefox バグ 1393570)。

#### プライバシー

* `privacy.websites` (en-US) の `cookieConfig` プロパティは、`behavior` プロパティを受け入れ可能なオブジェクトです。このプロパティが、新たな値 `reject_trackers` をとれるようになりました。これは、拡張機能にトラッキング Cookie を拒否するよう指示します (Firefox バグ 1493057).

#### devtools.panels API

* `devtools.panels.elements` (en-US) の `Sidebar.setPage()` メソッドをサポートしました (Firefox バグ 1398734)。
### マニフェストの変更点

* `page_action` マニフェストキーの新しいプロパティである `pinned` で、拡張機能をインストールする際にロケーションバーへページアクションをピン止めするかを制御できるようになりました (Firefox バグ 1494135)。
* Windows のネイティブマニフェストで、レジストリキーを始めに 32 ビットのレジストリビュー (Wow6432Node) で確認して、そのあとに "ネイティブ" のレジストリビューを確認します。アプリケーションで適切なビューを使用してください (Firefox バグ 1494709)。
* `chrome_settings_overrides` フィールドの `search_provider` オブジェクトが、新たに `suggest_url`、`suggest_url_post_params` (Firefox バグ 1486819)、 `search_url_post_params` プロパティを持てるようになりました。
関連情報
----

* Firefox 64.0, See All New Features, Updates and Fixes
過去のバージョン
--------

* Firefox 64 for developers
* Firefox 63 for developers
* Firefox 62 for developers
* Firefox 61 for developers
* Firefox 60 for developers
* Firefox 59 for developers
* Firefox 58 for developers
* Firefox 57 for developers
* Firefox 56 for developers
* Firefox 55 for developers
* Firefox 54 for developers
* Firefox 53 for developers
* Firefox 52 for developers
* Firefox 51 for developers
* Firefox 50 for developers
* Firefox 49 for developers
* Firefox 48 for developers
* Firefox 47 for developers
* Firefox 46 for developers
* Firefox 45 for developers
* Firefox 44 for developers
* Firefox 43 for developers
* Firefox 42 for developers
* Firefox 41 for developers
* Firefox 40 for developers
* Firefox 39 for developers
* Firefox 38 for developers
* Firefox 37 for developers
* Firefox 36 for developers
* Firefox 35 for developers
* Firefox 34 for developers


Firefox 55 for developers - Mozilla

Firefox 55 for developers
=========================

Firefox 55 は、米国時間 2017 年 8 月 8 日にリリースされました。このページでは、開発者に影響する Firefox 55 の変更点をまとめています。

ウェブ開発者向けの変更点一覧
--------------

### 開発者ツール

* ネットワーク要求を、列の値や他のプロパティでフィルタリング可能になりました (Firefox バグ 1041895、Firefox バグ 1354508、Firefox バグ 1354507)。また、正規表現を使用してフィルタリングできるようになりました (Firefox バグ 1354495)。
* ネットワークモニター で列を隠したり表示したりできるようになりました (Firefox バグ 862855)。
* ネットワークモニターに Remote IP (Firefox バグ 1344523)、Protocol (Firefox バグ 1345489)、Scheme (Firefox バグ 1356867)、Cookies および Set-Cookies (Firefox バグ 1356869) の列を追加しました。
* `SourceMap` HTTP ヘッダーをサポートしました (以前のバージョンでは、非推奨である `X-SourceMap` ヘッダーをサポートしていました。Firefox バグ 1346936)。
### HTML

* `contenteditable` を `true` に設定した要素で、テキストの別の行を分けるために `<div>` 要素を使用するようになりました。これは、他の現行ブラウザーに Firefox を合わせるためです (Firefox バグ 1297414)。詳しくはマークアップ生成の違い をご覧ください。
* Nightly で、`dom.forms.datetime` をデフォルトで有効にしました (Firefox バグ 1366188)。
### CSS

* `transform-box` プロパティをデフォルトで有効にしました (Firefox バグ 1208550)。
* frames() タイミング関数 を実装しました (Firefox バグ 1248340)。
* `text-justify` プロパティを実装しました (Firefox バグ 1343512, Firefox バグ 276079).
* [css-grid] repeat() 内で `fit-content` が、意図せず最大限に制限したサイズで領域を確保してしまう問題を修正しました (Firefox バグ 1359060)。
* `float` / `clear` の論理値 `inline-start` および `inline-end` は、以前から実装していましたが Release チャンネルでは無効化していました。これを、すべてのチャンネルにおいてデフォルトで有効化しました (Firefox バグ 1253919)。
* 設定項目 `layout.css.variables.enabled` を完全に削除しました。CSS 変数 の機能は常にデフォルトで有効であり、無効化できません (Firefox バグ 1312328)。
* 独自仕様である `-moz-context-properties` プロパティを実装しました (Firefox バグ 1058040)。
* 角度の単位がつかない 0 度の値が、`linear-gradient()` で正しく解釈されない問題を修正しました (Firefox バグ 1363292)。
* `::cue` 疑似要素をサポートしました。これは、メディア要素内で提供するテキストキューにマッチします (Firefox バグ 1318542)。
### SVG

* `<radialGradient>` の `fr (en-US)` 属性を実装しました (Firefox バグ 1240275)。
### JavaScript

* `SharedArrayBuffer` および `Atomics` オブジェクトをデフォルトで有効化しました。JavaScript の Shared Memory と Atomics の入門として、A Taste of JavaScript's New Parallel Primitives をご覧ください。
* object destructuring で rest operator (`...`) をサポートしました。また、spread operator (`...`) が オブジェクトリテラル で動作するようになりました (Stage 3 ECMAScript proposal: Object Rest/Spread Properties。 Firefox バグ 1339395)。
* 非同期ジェネレーターメソッド をサポートしました (Firefox バグ 1353693)。
* `String.prototype.toLocaleLowerCase()` および `String.prototype.toLocaleUpperCase()` メソッドで、ロケール固有の大文字・小文字の対応を言語タグで指定するための、省略可能な引数 `locale` をサポートしました (Firefox バグ 1318403)。
* `Intl.Collator` オブジェクトで `caseFirst` オプションをサポートしました (Firefox バグ 866473)。
* Intl API でロケール設定が提供されていない場合に、オペレーティングシステムのデフォルトのロケールではなくブラウザーのデフォルトのロケールを使用するようになりました (Firefox バグ 1346674)。
* Template call sites objects が、未加工の文字列のリストに基づいて範囲ごとに正規化されるようになりました (Firefox バグ 1108941)。
* `TypedArray` のコンストラクター (`Int8Array`、`Float32Array` など) を ES2017 に更新しました。`ToIndex` 操作を行うようになり、引数なしでコンストラクターを使用できます。この場合は、length が 0 の typed array が戻ります (Firefox バグ 1317383)。
### API

#### 新規 API

* Firefox 53 から設定により使用可能であった **Collaborative Scheduling of Background Tasks API (en-US)** (またはシンプルに **Background Tasks API** または **`requestIdleCallback` API** として知られる) を、デフォルトで有効にしました。この API は、次の再描画を行う前に利用可能な空き時間があるとブラウザーが判断したときに実行するタスクを予定することができます。これにより、目に見えるパフォーマンス低下を発生させずに空き時間をコードで使用できます (Firefox バグ 1314959)。
* **WebVR 1.1 API** を、Windows でデフォルトで有効にしました (macOS は Nightly で使用できます)。この API はバーチャルリアリティデバイス (例えば Oculus Rift や HTC Vive のようなヘッドマウントディスプレイ) をウェブアプリで使用可能にして、開発者がディスプレイの位置や移動の情報を 3D シーンの移動に変換して、ディスプレイにコンテンツを表示することが可能になります。
* **Intersection Observer API** (祖先要素またはトップレベルのドキュメントの ビューポート と対象要素の交差状態の変化を非同期に監視する手段を提供します) を追加しました (Firefox バグ 1321865)。

#### DOM

* `Window` の `scrollX` および `scrollY` プロパティ (別名である `pageXOffset` (en-US) および `pageYOffset` (en-US) も同様) を、サブピクセル精度に更新しました。戻り値が整数ではなく、サブピクセル精度のディスプレイでスクロール位置をより正確に示す浮動小数点数値になります (Firefox バグ 1151421)。必要に応じて、整数に変換する `Math.round()` を使用できます。
* `MediaQueryList` (および他の関連機能) を、最新の仕様に合わせて更新しました。Firefox バグ 1354441、`MediaQueryList`、`MediaQueryListEvent` (en-US) をご覧ください。
* リストの値を変更する `DOMTokenList` のメソッドが、自動的にホワイトスペースの切りつめと重複する値の削除を行うようになりました (Firefox バグ 869788、ホワイトスペースのトリミングと重複の削除をご覧ください)。
* `HTMLInputElement` の `maxLength` プロパティを、同等の HTML が生成された後に JavaScript で動的に変更することが可能になりました (Firefox バグ 1352799)。
* `URL()` コンストラクターの base (第 2 引数) が `DOMString` を受け入れないようになりました。 `USVString` のみ受け入れます。既存の `URL` オブジェクトを base に使用することは可能であり、それ自体をオブジェクトの `href` 属性に文字列化します (Firefox バグ 1368950)。

#### DOM イベント

* `Document.createEvent()` メソッドがサポートするイベントの型を、最新の DOM 仕様に合わせて更新しました (Firefox バグ 1251198)。
* `MessageEvent.origin` プロパティの値が、`DOMString` 型から `USVString` 型に替わりました。また、`MessageEvent.source` プロパティが `MessageEventSource` 値 (これは `WindowProxy`、`MessagePort`、`ServiceWorker` オブジェクトにできます) をとるようになりました (Firefox バグ 1311324)。
* ピンチズームのジェスチャーを、`wheel` イベントと `Ctrl` キーの組み合わせにマッピングしました。モバイルスクリーンやトラックパッドでピンチズームによるジェスチャーを使用してシンプルなズーム機能を開発者が実装できるようにするため、このマッピングを実装しました (一般的に、マウスホイール + `Ctrl` でズームします) (Firefox バグ 1052253)。

#### Selection API

* 内部で選択範囲が動いたときに editing hosts がどのようにフォーカスを得るかについて、他のブラウザーへ合わせるために Selection API を更新しました (Firefox バグ 1318312)。詳しくは編集ホストのフォーカス変更に関する選択 API の挙動をご覧ください。
* 最近の仕様の変更に合致するよう、`Selection` API を更新しました (Firefox バグ 1359371):
    + `collapse()` (en-US) および `extend()` (en-US) メソッドの `offset` 引数を省略可能にしました。
    + `collapse()` (en-US) メソッドの `node` 引数を null にすることが可能になりました。
    + `containsNode()` (en-US) メソッドの `partialContainment` 引数が省略可能になりました。
    + `deleteFromDocument()` (en-US) メソッドを追加しました。
* ウェブ互換性のため、および WebKit/Blink と一致させるため、`Selection` API で `Selection.removeAllRanges()` (en-US) および `Selection.collapse()` (en-US) の別名として、`Selection.empty()` および `Selection.setPosition()` を追加しました (Firefox バグ 1359387)。
* Storage API の `StorageManager.persist()` および `StorageManager.persisted()` メソッドを実装して、`Window` コンテキストに公開しました (Firefox バグ 1286717)。

#### Workers

* ワーカーおよび共有ワーカーを、識別用の `name` プロパティをつけて作成できるようになりました。`Worker()` および `SharedWorker()` コンストラクター、`DedicatedWorkerGlobalScope` および `SharedWorkerGlobalScope` インターフェイスをご覧ください (Firefox バグ 1364297)。
* `setTimeout()` および `setInterval()` が、バックグラウンドのタブでトラッキングスクリプトに対して最小間隔の調整を課すようになりました。トラッキングスクリプトのタイムアウトを制限するをご覧ください (Firefox バグ 1355311)。

#### Service Workers/Push

* サービスワーカーコンテキストに送信したメッセージ (例えば、`onmessage` のイベントオブジェクトとして) は、他のウェブメッセージング機能との一貫性のため、`MessageEvent` オブジェクトで表すようになりました。
* `PushManager.subscribe()` メソッドが `applicationServerKey` の値として、`ArrayBuffer`s や Base64 エンコードの文字列を受け入れるようになりました (Firefox バグ 1337348)。

#### Web Audio API

* `AudioContext` インターフェイスの非標準のコンストラクター (コンテキストの用途を示す列挙型の文字列を受け入れます) は、`options` 引数が与えられた場合にエラーが発生していました。この非標準コンストラクターを削除しました。ただし `options` 引数は Firefox で未サポートであり、現在は無視することに注意してください (Firefox バグ 1361475)。

#### WebRTC

* ソースデバイスがステレオ音声を提供する場合に、`getUserMedia()` がデフォルトでステレオ音声ストリームを提供するようになりました。モノラル入力を明示的に要求する機能は Firefox 56 でサポートする予定です。現在、この機能はデスクトップに限り動作します。モバイル版 Firefox はステレオ音声入力ソースが未サポートです (Firefox バグ 971528)。
* `getUserMedia()` の メディア能力、制約、設定 である `autoGainControl` および `noiseSuppression` が仕様書に準拠しました。以前は `moz` 接頭辞がついていました (Firefox バグ 1366415)。
* 制約セットを空にして `getUserMedia()` を呼び出したとき、誤って `TypeError` はなく `NotSupportedError` を返していました。この問題を修正しました (Firefox バグ 1349480)。
* 以下の新たな WebRTC 統計値を使用できます: `framesEncoded`、`pliCount`、`nackCount`、`firCount` (Firefox バグ 1348657)。
* 以前は `mozRtt` と呼ばれていた `RTCInboundRTPStreamStats` ディクショナリーフィールドを、仕様書に合わせて `roundTripTime` に改名しました。また、`roundTripTime` の動作を標準仕様に準拠するよう調節しました。RTCP Receiver Report の RTCP タイムスタンプに基づいて秒単位で測定した、ラウンドトリップタイムの推定値を倍精度浮動小数点数を持ちます (RFC 3550, セクション 6.4.1 で説明されているアルゴリズムに準拠します) (Firefox バグ 1344970)。ただしこのプロパティは、まもなく別のディクショナリー (`RTCRemoteInboundRTPStreamStats`) に*移動する*ことを意識しておいてください (Firefox バグ 1380555)。
* `RTCRTPStreamStats` ディクショナリーが、`firCount`、`pliCount`、`nackCount` フィールドを持つようになりました。これは、接続の信頼性を判断するために使用できる低レベルの情報を返します (Firefox バグ 1348657)。
* `RTCOutboundRTPStreamStats` ディクショナリーが `framesEncoded` フィールドを持つようになりました。これは、ストリーム用のエンコードが成功したフレームの数を報告します。この情報を使用して、フレームレートを計算できます (Firefox バグ 1348657)。
* Android でビデオ通話のパフォーマンス向上とバッテリー節約のため、ハードウェアによる動画エンコードを有効化する 設定 を追加しました。これは Firefox 56 で、デフォルトで有効化します (Firefox バグ 1265755)。

#### Encrypted Media Extensions API

* 現在、Firefox は仕様書で認められていないにもかかわらず、安全でないコンテキストで Encrypted Media Extensions を使用できます。近い将来にこの動作を変更する予定であり、Firefox 55 からこのようなことを行うと、ウェブコンソール に非推奨である旨の警告を出力します (Firefox バグ 1361000)。
* 現在、Firefox は仕様書で必須であるにもかかわらず、`Navigator.requestMediaKeySystemAccess()` (en-US) に渡す `suggestedConfigurations` 引数に `MediaKeySystemCapabilities` オブジェクトを少なくとも 1 つ含めることを要求していません。Firefox 55 より、サポートするコーデックを指定せずに音声や動画の構成を指定すると、ウェブコンソールに警告を表示します。まもなく、1 つ以上の音声や動画の有効な構成が含められていない場合に例外が発生するようになります (Firefox バグ 1368683)。

#### WebGL

* `WEBGL_compressed_texture_s3tc_srgb` (en-US) 拡張が、WebGL および WebGL2 (en-US) コンテキストで使用可能になりました (Firefox バグ 1325113)。
### セキュリティ

* `Geolocation` API が、安全なコンテキスト である場合に限り利用可能になりました (Firefox バグ 1072859)。
* `Storage API` が、安全なコンテキスト である場合に限り利用可能になりました (Firefox バグ 1268804)。
* localhost で、混在コンテンツの読み込みを許可しました (Firefox バグ 903966)。
* リモートの JAR ファイルの読み込みを再び無効化しました (Firefox バグ 1329336)。詳しくは Security and the jar protocol をご覧ください。
### プラグイン

* Flash コンテンツが "click-to-activate" になりました (Firefox バグ 1317856)。これはすべての Nightly のユーザーと、beta のユーザーの 50% へ直ちに適用しました。Firefox 55 リリース版では、リリース後の 2 週間でユーザーの 5%、4 週間でユーザーの 25%、6 週間でユーザーの 100% へ適用する予定です (Firefox バグ 1365714)。
* Flash および他のプラグインは、`http://` および `https://` 以外の URL スキームで読み込むことができなくなりました (Firefox バグ 1335475)。
### その他

* Linux 版 Firefox が、`-headless` フラグを使用して ヘッドレスモード で実行できるようになりました (Firefox バグ 1356681)。
ウェブプラットフォームから廃止
---------------

### HTML

* `xml:base` 属性を、`style` 属性内に現れるパスのベース URL として使用できなくなりました。 例えば `<div xml:base="https://example.com/" style="background:url(picture.jpg)"></div>` のような使い方です (Firefox バグ 1350521)。style 属性向け xml:base が無効化されました。
* 他のブラウザーがサポートしていないため、Firefox 55 から content ドキュメントでは `<style>` 要素の `scoped` 属性を設定 (`layout.css.scoped-style.enabled`) で無効化しました。
* `<meta>` 要素の `http-equiv` 属性で、不明瞭な値である `MSThemeCompatible` のサポートを Gecko から削除しました。他にサポートする現行ブラウザーがなく、また互換性の問題が発生していました (Firefox バグ 966240)。
### CSS

* 独自仕様である `:-moz-bound-element` 疑似クラスを削除しました (Firefox バグ 1350147)。
* `text-decoration-line` の独自仕様の値である `-moz-anchor-decoration` を削除しました (Firefox バグ 1355734)。
### API

* `UIEvent.isChar` プロパティは Firefox 以外のブラウザーがサポートせず、また macOS 以外では不完全な実装でした。よってほかのブラウザーに合わせるため、Firefox 55 で削除しました。
* Firefox OS の独自仕様である Device Storage API を、プラットフォームから削除しました (Firefox バグ 1299500)。
* 非標準の `Window.find()` メソッドの、`aShowDialog` 引数 (ブラウザーの "検索" ダイアログを開くかを指定できます) を削除しました (Firefox バグ 1348409)。
* `HTMLFormElement.requestAutoComplete()` メソッドを削除しました (`HTMLFormElement` を参照) (Firefox バグ 1270740)。
* 非標準で Mozilla 特有の WebRTC オプションである `mozDontOfferDataChannel` および `mozBundleOnly` を、 `RTCOfferOptions` 辞書から削除しました。また、これらは `RTCPeerConnection.createOffer()` (en-US) でサポートしません (Firefox バグ 1196974)。
* Firefox OS 独自の Audio Channels API を、`HTMLMediaElement` および `AudioContext` から削除しました (Firefox バグ 1358061)。
### SVG

* `SVGZoomEvent` および `SVGZoomEvents` インターフェイスを、<svg> の `onzoom` 属性とともに SVG2 仕様および Gecko から削除しました (Firefox バグ 1314388)。
アドオン開発者と Mozilla 開発者向けの変更点
--------------------------

### WebExtensions

* contextMenus.create() の command プロパティで、コンテキストメニューからブラウザーアクションポップアップ、ページアクションポップアップ、サイドバーを開くことができます。 (en-US)
* proxy API
* chrome\_settings\_overrides キーで、ブラウザーのホームページをオーバーライドできます。
* browser\_style プロパティで、ブラウザーアクションポップアップ、サイドバー、オプションページ にブラウザーライクなスタイルを適用できます。
* permissions API
過去のバージョン
--------

* Firefox 54 for developers
* Firefox 53 for developers
* Firefox 52 for developers
* Firefox 51 for developers
* Firefox 50 for developers
* Firefox 49 for developers
* Firefox 48 for developers
* Firefox 47 for developers
* Firefox 46 for developers
* Firefox 45 for developers
* Firefox 44 for developers
* Firefox 43 for developers
* Firefox 42 for developers
* Firefox 41 for developers
* Firefox 40 for developers
* Firefox 39 for developers
* Firefox 38 for developers
* Firefox 37 for developers
* Firefox 36 for developers
* Firefox 35 for developers
* Firefox 34 for developers
* Firefox 33 for developers
* Firefox 32 for developers
* Firefox 31 for developers
* Firefox 30 for developers
* Firefox 29 for developers
* Firefox 28 for developers
* Firefox 27 for developers
* Firefox 26 for developers
* Firefox 25 for developers
* Firefox 24 for developers


Firefox 105 for developers - Mozilla

Firefox 105 for developers
==========================

このページでは、開発者に影響する Firefox 105 の変更点をまとめています。Firefox 105 は、米国時間 2022 年 9 月 20 日にリリースされました。

ウェブ開発者向けの変更点一覧
--------------

### HTML

変更なし。

### CSS

* SVG の定義や `<iframe>` 内部のコンテンツなどの埋め込みコンテンツが、OS やブラウザーのテーマ設定ではなくコンテンツを埋め込んでいる要素のテーマ設定を重視するようになりました (両者の設定が異なっている場合があります)。
 特に、埋め込みコンテンツは埋め込み元要素の `color-scheme` を継承するようになりました。また、埋め込みコンテンツの `prefers-color-scheme` メディアクエリーは OS やブラウザーレベルの color-scheme 設定ではなく埋め込み元要素の color-scheme の値を重視します (Firefox バグ 1779457)。
### JavaScript

* `Intl.DateTimeFormat`、`Intl.NumberFormat`、`Intl.PluralRules` オブジェクトの `formatRange` および `selectRange` 関数で、範囲の制限を緩和しました。この変更により、負の値を受け入れるようになりました (Firefox バグ 1780545)。
### API

#### DOM

* Encoding API の一部である TextDecoderStream および TextEncoderStream インターフェイスをサポートしました (Firefox バグ 1486949)。
* OffscreenCanvas (en-US) API が、window および web worker (en-US) のどちらのコンテキストでもオフスクリーンで描画できる canvas を提供するようになりました。
 これは、`<canvas>` 要素を DOM から分離することを可能にします。このために OffscreenCanvasRenderingContext2D (en-US) インターフェイスをサポートして、デフォルトで有効にしました (Firefox バグ 1746110)。
* CSS Font Loading API を worker スレッドで使用できるようになりました (Firefox バグ 1072107)。
### WebDriver conformance (WebDriver BiDi, Marionette)

#### WebDriver BiDi

* IPv6 を優先する DNS 名前解決クライアントを持つシステムで、WebSocket サーバーのホストとして `localhost` を使用したときに接続が失敗しないようになりました (Firefox バグ 1769994)。
* `RemoteValue` を、単純な JSON のシリアライズ可能なフィールドを持つプレーンな JS オブジェクトをシリアライズできるように改良しました (Firefox バグ 1779226)。

#### Marionette

* `WebDriver:GetElementProperty` が、ウェブコンテンツによって設定されたノードプロパティを返せるようになりました (Firefox バグ 1398792)。
アドオン開発者向けの変更点一覧
---------------

* `scripting` (en-US) を使用して、永続的なスクリプトを定義する機能を追加しました。`scripting.RegisteredContentScript` (en-US) の `persistAcrossSessions` プロパティを使用して、永続的なスクリプトを識別します (Firefox バグ 1751436)。
* デフォルトで、拡張機能のリソースがほかの拡張機能から読み込まれないようになりました。ほかの拡張機能がリソースを読み込むことを可能にするには、拡張機能の `web_accessible_resources` マニフェストキーに列挙しなければなりません (Firefox バグ 1711168)。
過去のバージョン
--------

* Firefox 104 for developers
* Firefox 103 for developers
* Firefox 102 for developers
* Firefox 101 for developers
* Firefox 100 for developers
* Firefox 99 for developers
* Firefox 98 for developers
* Firefox 97 for developers
* Firefox 96 for developers
* Firefox 95 for developers
* Firefox 94 for developers
* Firefox 93 for developers
* Firefox 92 for developers
* Firefox 91 for developers
* Firefox 90 for developers
* 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 59 for developers - Mozilla

Firefox 59 for developers
=========================

Firefox 59 は、米国時間 2018 年 3 月 13 日にリリースされました。このページでは、開発者に影響する Firefox 59 の変更点をまとめています。

ウェブ開発者向けの変更点一覧
--------------

### 開発者ツール

* ネットワークモニター の応答タブで、応答が HTML である場合に 描画された HTML のプレビュー を表示するようになりました (Firefox バグ 1353319)。
* ストレージインスペクターで表示する Cookie の情報 (Cookie をご覧ください) で、それぞれの Cookie が same-site 状態であるかを示す *sameSite* 列を追加しました (Firefox バグ 1298370)。
* 定規 ツールで、ビューポートの現在の寸法を示す情報を表示するようになりました (Firefox バグ 1402633)。
* レスポンシブデザインモード で、カーソルキーを使用して画面の寸法を設定できるようになりました (Firefox バグ 1421663)。詳しくは 画面のサイズを設定する をご覧ください。
* ネットワークモニター の *ヘッダー* タブに表示する*生ヘッダー*で、応答のステータスコードを表示するようになりました (Firefox バグ 1419401)。
### HTML

* `<textarea>` 要素の `autocomplete` 属性を実装しました。要素でフォームのオートフィル機能を有効化または無効化できます。
### CSS

* `overscroll-behavior` プロパティと、このプロパティに関係するロングハンドプロパティである `overscroll-behavior-x` および `overscroll-behavior-y` を実装しました (Firefox バグ 951793)。また、すべてのリリースで、デフォルトで有効化しました (Firefox バグ 1428879)。
* "unusual elements" (置換要素のように、CSS のボックスの概念に従って描画されない要素) で `display` の値に `contents` を指定したときの動作を、仕様書に従って更新しました (Firefox バグ 1427292)。仕様で定められた正確な動作については、Appendix B: Effects of display: contents on Unusual Elements をご覧ください。
* `position` の `sticky` を、適切な HTML テーブル の部品 (例えば `<th>` 要素) でサポートしました (Firefox バグ 975644)。
* `<color>` 値 (`rgb()`, `rgba()`, `hsl()`, `hsla()`) で `calc()` をサポートしました (Firefox バグ 984021)。
* メディアクエリー の値で `calc()` をサポートしました (Firefox バグ 1396057)。
* `@document` @-規則の使用を、ユーザースタイルシートと UA スタイルシートに限定しました (Firefox バグ 1035091)。
* `font-optical-sizing` プロパティを実装しました (Firefox バグ 1435692)。
### SVG

*変更なし。*

### JavaScript

*変更なし。*

### API

#### 新規 API

* `PointerEvents` を、デスクトップ版 Firefox で有効化しました (Firefox バグ 1411467)。

#### DOM

* `EventTarget()` コンストラクターを実装しました (Firefox バグ 1379688)。
* `Response()` コンストラクターが、仕様書に従って `body` 引数で `null` 値を受け入れるようになりました (Firefox バグ 1303025)。

#### DOM イベント

* `Event.composedPath()` メソッドを実装しました (Firefox バグ 1412775)。

#### Service workers

* 別のブラウザープロセスで、Service worker Clients API を発見および通信できるようになりました (Firefox バグ 1293277)。
* 入れ子の about:blank や about:srcdoc のインラインフレームが、親で制御している service worker を継承するようになりました。これは Firefox バグ 1293277 および Firefox バグ 1426979 で修正しました。
* service worker が `Response` を `FetchEvent.respondWith()` に提供するときに `Response.url` の値が、インターセプトされたネットワークに最終的に解決された URL として伝播しないようになりました。以前は、代わりに `FetchEvent.request.url` を使用していました。これは、例えば service worker がスタイルシートや worker スクリプトをインターセプトする場合に提供される `Response.url` が、関連する `@import` や `importScripts()` のサブリソースの解決に使用されるということです (Firefox バグ 1222008)。
* `FetchEvent.request.mode` が `"same-origin"` であり、`Response.type` に `"cors"` を与えた場合に、`FetchEvent.respondWith()` がネットワークエラーを発生させるようになりました (Firefox バグ 1222008)。

#### メディアと WebRTC

* `MediaStreamTrack` の `MediaStreamTrack.muted` プロパティ、および `mute` イベントと `unmute` イベント、さらにこれに対応するイベントハンドラーである `onmute` と `onunmute` を実装しました。トラックの `muted` 状態は、トラックが今のところメディアデータを提供できないことを示します。

**メモ:** トラックの `muted` 状態は、一般的に考えられているトラックのミュートやミュート解除として役に立つものではありません。代わりに `enabled` プロパティを使用します。`enabled` を `false` に設定すると、トラックは空のフレームだけを出力します。
* Android 版 Firefox 59 で Apple の HTTPS Live Streaming (HLS) を、音声および映像の両方でサポートしました。この非標準プロトコルは、モバイル環境においてモバイルストリーミングのためにこのプロトコルを必要とするサイトの互換性を向上するためにサポートしました。現在、デスクトップ版 Firefox にこのプロトコルを実装する予定はありません。
* それぞれの RTP ストリームのソースの情報を提供するため、`RTCRtpReceiver` (en-US) の `getContributingSources()` (en-US) および `getSynchronizationSources()` (en-US) メソッドを実装しました。ただし、公開前に仕様書が変更されましたので、デフォルトで設定項目 `media.peerconnection.rtpsourcesapi.enable` によってこれらを無効化しました (Firefox バグ 1363667, Firefox バグ 1430213, Firefox バグ 1433236)。
* Firefox の WebRTC 実装でトランシーバーをサポートしましたので、`RTCRtpTransceiver` (en-US) インターフェイスを実装しました。また、`RTCPeerConnection` やほかのインターフェイスを、最新の仕様書に従ってこれらを使用使用するように更新しました。
* `RTCPeerConnection.addTransceiver()` (en-US) メソッドを追加しました。さらに、要求に従ってトランシーバーを作成するように、`addTrack()` (en-US) の動作を更新しました。
* Firefox 58 で WebVTT のリージョンを実装しましたが、デフォルトで無効化していました。これをデフォルトで有効化しました (Firefox バグ 1415805)。
* WebVTT ファイルで同じ行にすべての設定を並べる形式ではなく、1 行ごとにひとつの設定を並べる形式の `REGION` 定義ブロックを Firefox でサポートしました (Firefox バグ 1415821)。

#### Canvas と WebGL

*変更なし。*

### CSSOM

* `CSSNamespaceRule` インターフェイスと、`namespaceURL` および `prefix` プロパティを実装しました (Firefox バグ 1326514)。
### HTTP

*変更なし。*

### セキュリティ

* `data:` URI へのトップナビゲーションはブロックされます(Firefox バグ 1401895)。詳しくは Blocking Top-Level Navigations to data URLs for Firefox 59 をご覧ください。
* `X-Frame-Options` ヘッダーの `SAMEORIGIN` ディレクティブが、トップレベルのインラインフレームが同一オリジンであるかだけでなく、すべての祖先も同様であるかを確認するようになりました (Firefox バグ 725490)。
* 異なるオリジンから現在のドキュメントに読み込まれる画像リソースが、HTTP 認証ダイアログを表示させることができなくなりました。 (Firefox バグ 1423146)。
* ほかのブラウザーに合わせるため、および Firefox バグ 1419658 で説明されている潜在的な問題を避けるため、HTTP 認証でユーザー名やパスワードに (`ISO-8859-1` ではなく) `utf-8` エンコーディングを使用するようになりました。
* HSTS プリロードリストは Google によって毎日更新されています。いつもの更新であれば注意する必要はないのですが、このリリースから新しい TLD が追加されました。このうち具体的に注目したいのが `.app` と `.dev` です。これらの新しい TLD を知らず、ローカルの開発環境に使用した場合、予期しない挙動となるかもしれません。なお、ローカルでの開発には予約済み TLD を使うべきとされています。
### プラグイン

*変更なし。*

### その他

*変更なし。*

ウェブプラットフォームから廃止
---------------

### HTML

* `<script>` 要素の `type` 属性の非標準パラメーターである `version` (例えば `type="application/javascript;version=1.8"`) を削除しました (Firefox バグ 1428745)。
### CSS

* 独自仕様の `mozmm` `<length>` 単位を削除しました (Firefox バグ 1416564)。
* 独自仕様の `-moz-border-top-colors`、`-moz-border-right-colors`、`-moz-border-bottom-colors`、`-moz-border-left-colors` (en-US) プロパティを、chrome コードのみ使用するように制限しました (Firefox バグ 1417200)。
### JavaScript

* 非標準の 条件付き catch 節 を削除しました (Firefox バグ 1228841)。
### API

* 非標準の `Event.getPreventDefault()` メソッドを削除しました。`Event` で `preventDefault()` が呼び出されたかを判断するには、代わりに `Event.defaultPrevented` プロパティを使用します。
* 標準の 通知 API が好ましいため、独自仕様の `Navigator.mozNotification` プロパティと `DesktopNotification` インターフェイスを削除しました (Firefox バグ 952453)。
* 独自仕様の `window.external.addSearchEngine()` メソッドを削除しました (Firefox バグ 862147)。詳しくは `Window.sidebar` もご覧ください。
* Firefox 限定の非標準プロパティである `HTMLMediaElement` の `mozAutoplayEnabled` プロパティを削除しました。
### SVG

SMIL の `accessKey` 機能のサポートを廃止しました (Firefox バグ 1423098)。

### その他

非標準の `pcast:` および `feed:` プロトコルのサポートを廃止しました (Firefox バグ 1420622)。

アドオン開発者と Mozilla 開発者向けの変更点
--------------------------

### WebExtensions

* Theme (en-US) の更新:
    + 新しいプロパティ: `colors.background_tab_text`, `colors.toolbar_field_border`
    + すべての色関連プロパティで、Chrome 形式の配列と CSS の色の値の両方をサポートしました。
* 新しい ブラウザー設定:
    + `contextMenuShowEvent` (en-US)
    + `openBookmarksInNewTabs` (en-US)
    + `openSearchResultsInNewTabs` (en-US)
    + `proxyConfig` (en-US)
* 新しい `tabs` の API:
    + `tabs.captureTab()` (en-US)
    + `tabs.hide()` (en-US)
    + `tabs.show()` (en-US)
* `contextMenus` API で "bookmark" コンテキスト (en-US) をサポートしました。
* 新しい `contentScripts` API で、ランタイムがコンテンツスクリプトを登録できます。
* 新しい `pageAction` (en-US), `browserAction`, `SidebarAction` の API:
    + `browserAction/pageAction/sidebarAction.set*` 関数で、変更を元に戻すための `null` をサポートしました。
    + `browserAction.isEnabled()` (en-US), `pageAction.isShown()` (en-US) , `sidebarAction.isOpen()` (en-US) 関数。
* デフォルトでページアクションを表示するための、`page_action` の新しいオプション。
* `protocol_handers` の新しい値:
    + Secure Scuttlebutt 通信のための "ssb"
    + DATproject のための "dat"
    + IPFS のための "ipfs", "ipns", "dweb"
* `privacy.websites` (en-US) の新しい設定 "cookieConfig"。
* `cookies` API で ファーストパーティ分離 をサポート。
* `webRequest` の新しいオプションである `upgradeToSecure`。
過去のバージョン
--------

* Firefox 58 for developers
* Firefox 57 for developers
* Firefox 56 for developers
* Firefox 55 for developers
* Firefox 54 for developers
* Firefox 53 for developers
* Firefox 52 for developers
* Firefox 51 for developers
* Firefox 50 for developers
* Firefox 49 for developers
* Firefox 48 for developers
* Firefox 47 for developers
* Firefox 46 for developers
* Firefox 45 for developers
* Firefox 44 for developers
* Firefox 43 for developers
* Firefox 42 for developers
* Firefox 41 for developers
* Firefox 40 for developers
* Firefox 39 for developers
* Firefox 38 for developers
* Firefox 37 for developers
* Firefox 36 for developers
* Firefox 35 for developers
* Firefox 34 for developers
* Firefox 33 for developers
* Firefox 32 for developers
* Firefox 31 for developers
* Firefox 30 for developers
* Firefox 29 for developers
* Firefox 28 for developers


Firefox 12 for developers - Mozilla

Firefox 12 for developers
=========================

Firefox 12 は 米国時間 2012 年 4 月 24 日にリリースされました。この記事は開発者に影響がある Firefox 12 での変更点をまとめています。

Web 開発者向けの変更点一覧
---------------

### HTML

* `title` の値に含めた改行文字が反映され、複数行のツールチップを表示できるようになりました。
* JavaScript が無効である場合、仕様 に従ったフォールバックコンテンツではなく `<canvas>` 要素が表示されていましたが、フォールバックコンテンツが表示されるようになりました。
### CSS

* `text-align-last` プロパティに対応しました。(接頭辞付き)
### JavaScript

* シャープ変数 (Netscape 由来の非標準拡張仕様) への対応が打ち切られました。
### DOM

* DOMParser (en-US) が HTML ドキュメントのソース解析に対応しました。
* `XMLHttpRequest` で `timeout` プロパティと `XMLHttpRequestEventTarget` インタフェース 上の `ontimeout` イベントハンドラである "timeout" イベントを用いた、タイムアウトがサポートされました。
* `XMLHttpRequest` が`data:` URI から読み込めるようになりました。
* `XMLHttpRequest` で巨大なデータをダウンロードしているとき、`responseType` に "moz-blob" を設定していると、 これまでに受信したデータのすべてを含む `Blob` であるレスポンスを参照できる progress イベントハンドラが定期的に呼び出されるようになりました。これによって、progress ハンドラでデータのすべてが到着するまで待つことなしにデータを処理し始められます。
* Gecko が Android 上で マルチタッチ をサポートしました。今までは一度に一つのタッチ操作しか認識しかできませんでした。
* エディタ (フォーム) 上で IME を使った文字入力を行っている場合、従来は確定後に `input` イベントが発生していましたが、Firefox 12 では、IME で編集中の文字列が変更されたことを示す `compositionupdate` イベントの直後にも `input` イベントが発生するようになりました。これにより、`input` イベントハンドラを使って、日本語入力中にも未確定文字列を含めたフォームの入力内容を取得することが可能となりました。
* DOM 4 仕様で定義されている `DOMError` が実装されました。
* `Document.createNodeIterator()` メソッドが DOM 4 仕様に適合するように更新されました。これにより、`whatToShow` および `filter` 引数がオプションになり、非標準の 4 番目の引数である `entityReferenceExpansion` が削除されます。
* `Blob` インタフェースの `slice()` メソッドは符号付き 64 ビット整数の範囲外の `start` の値と `end` の値を正しく受け取れないバグによる影響を受けていましたが、この問題は修正されました。`
* `element.getBoundingClientRect()` メソッドが要素の矩形の境界を算出するときに CSS transforms の効果を考慮するようになりました。

#### 新しい WebAPI

* Network Information API: `window.navigator.connection` の実験的サポートが追加されました。（接頭辞付き）
* WebTelephony API: `window.navigator.mozTelephony` が実装されました。デバイス上での電話の発信、応答、管理をするためのサポートを提供します。
* WebSMS API: モバイルデバイスで SMS テキストメッセージを送信できる `window.navigator.mozSms` が利用可能になりました。
### SVG

* `SVGTests` DOM API に対応しました。(Firefox バグ 607854)
* `SVGStringList` DOM インタフェースが非標準の `length` プロパティに対応しました。(Firefox バグ 711958)
### MathML

* MathML 式の方向性を制御する `dir` 属性に対応しました。`<math>`、`<mrow> (en-US)`、`<mstyle> (en-US)` の各要素と、MathML トークン要素 で使用できます。これは特に一部の アラビア語数学的表記 で必要とされるものです。
* MathML3 で定義された配置属性 `align` に対応しました。`<munder>`、`<mover>`、`<munderover> (en-US)` の各要素で使用できます。
### ネットワーク

* 以前は、WebSocket チャンネルが、予期せぬエラーのためにクローズしたとき、あるいは、仕様がカバーしていないエラー状況のためにクローズした場合、Gecko は `CLOSE_NORMAL` クローズコードを報告していましたが、代わりに `CLOSE_GOING_AWAY コードを報告するようになりました。`
### 開発者ツール

* Web Console がコンソールが開いていない状態の場合にエラーメッセージと `console.log()` を用いて追加したログエントリをキャッシュし、コンソールが開いたときにそれらを表示するようになりました。
* 3D view で "r" キーを押すことにより、ズームレベル、移動、回転をリセットできるようになりました。
* 3D view でノードを選択した後に "x" キーを押すことにより、そのノードを隠すことができるようになりました。
* ソースエディタ (en-US) にいくつかの新しい編集機能とキーボードショートカットが追加されました。詳細は、ソースエディタの利用 (en-US) を参照してください。

Mozilla は人気のアドオン Firebug に依存するだけではなく、自身の Web 開発者ツールの統合作業を進めています。これらのツールについてのさらなる情報および Firefox での Web 開発を支援する外部リソースの一覧は、Web developer tools にあります。

### その他の変更点

* GEOSTD8 文字セットは、これまでも完全にはサポートされていませんでしたが、まったくサポートされなくなりました。
Mozilla 開発者とアドオン開発者向けの変更点
-------------------------

### JavaScript code modules

#### source-editor.jsm

* The `resetUndo()` method was added; this lets you clear the undo stack.
* The source editor now offers methods for providing search capability: `find()`, `findNext()`, and `findPrevious()`.
### XUL

* `chromemargin` 属性の値の定義が若干変更されました。これにより、デフォルトのウィンドウ枠幅が異なる各プラットフォームで、クロスプラットフォームな XUL コードの見た目を簡単に揃えられるようになりました。
### XPCOM

* `nsISupports` プロキシ が削除されました。代わりに runnable を使ってください。

* Firefox 11 changed the behavior of `Components.utils.getWeakReference()` to throw an exception when the object reference is null; the previous behavior of silently failing has been restored.
### XPConnect

* The `PRUint64` data type was incorrectly essentially identical to `PRint64` when used with XPConnect. This has been fixed.
### インタフェースの変更

* `nsIScreen_MOZILLA_2_0_BRANCH` インタフェースが `nsIScreen` へ統合されました。このインタフェースで定義されていた API (画面の最低輝度の調節) はこれまで文書化されていませんでしたが、これを機に文書化されました。
* The `nsIScriptError2` interface has been merged into `nsIScriptError`.
* `nsIDownloadManager.addDownload` is now handled asynchronously rather than synchronously.
* The `imgIContainerObserver.frameChanged` method now receives as its first parameter an `imgIRequest` object identifying the corresponding request.
* The `nsIDOMWindowUtils.sendTouchEvent` method has been added to allow synthesizing touch events.
* You can now scroll the specified content to the vertical center of the view by specifying `SCROLL_CENTER_VERTICALLY` as the scroll constant when calling `nsISelectionController.scrollSelectionIntoView`.
* The new `nsIMemoryMultiReporter.explicitNonHeap` attribute has been added; this is a more efficient way to obtain the sum of all of the multi-reporter's measurements that have a path that starts with "explicit" **and** are of the kind `KIND_NONHEAP`.
* The `nsIDOMWindowUtils.paintingSuppressed` attribute has been added; this boolean value indicates whether or not painting is currently suppressed on the window. This is used on mobile to prevent bouncy rendering that occurs when attempts to draw the page begin before enough content is available to do so smoothly.
* The `nsIDocCharset` and `nsIDocumentCharsetInfo` interfaces have been merged into `nsIDocShell`. As part of this work, the old `forcedDetector` attribute has been removed; it never did anything.
### SpiderMonkey

* `JSThread` has been eliminated.
* `JSThreadData` has been merged into `JSRuntime`.
### Building

* When building on Windows, you must have the Windows 7 SDK installed.
### Other changes

* The editor component (known as Midas) now only accepts events from privileged code.
関連記事
----

* Firefox 12 のサイト互換性に関わる修正のまとめ
* Firefox 12 のアドオン互換性に関わる修正のまとめ
* Aurora 12 is out – improvements and updated Developer Tools

* Firefox 11 for developers
* Firefox 10 for developers
* Firefox 9 for developers
* Firefox 8 for developers
* Firefox 7 for developers
* Firefox 6 for developers
* Firefox 5 for developers
* Firefox 4 for developers
* Firefox 3.6 for developers
* Firefox 3.5 for developers
* Firefox 3 for developers
* Firefox 2 for developers
* Firefox 1.5 for developers


Firefox 109 for developers - Mozilla

Firefox 109 for developers
==========================

このページでは、開発者に影響する Firefox 109 の変更点をまとめています。Firefox 109 は、米国時間 2023 年 1 月 17 日にリリースされました。

ウェブ開発者向けの変更点一覧
--------------

### HTML

* range 要素で、`list` 属性をサポートしました。これは、Firefox が範囲の途中に目盛りをつけられるようにするため、id によって `<datalist>` に関連づけるものです。
### CSS

* `<system-color>` CSS データ型で、値 `Mark`、`MarkText`、`ButtonBorder` をサポートしました (Firefox バグ 1638052)。
### JavaScript

変更なし。

### SVG

#### 廃止

* `SVGGraphicsElement.getTransformToElement()` を削除しました。
 これは、2015 年に SVG2 の仕様書および他の主要なブラウザーから削除されたことに従ったものです (Firefox バグ 1803790)。
* `SVGGraphicsElement.nearestViewportElement` および `SVGGraphicsElement.farthestViewportElement` 属性を、nightly および初期の beta ビルドにおいてデフォルトで無効にしました (設定項目 `svg.nearestAndFarthestViewportElement.enabled` で制御します)。
 `SVGGraphicsElement.nearestViewportElement` の代替として `SVGElement.viewportElement` を使用できます。
 これらは SVG2 仕様書から削除されており、将来の Firefox リリースで完全に削除する予定です (Firefox バグ 1133174)。
### HTTP

* `Content-Security-Policy` のソースディレクティブ用の値 `'unsafe-hashes'` をサポートしました。
 詳しくは CSP unsafe-hashes (Firefox バグ 1343950) をご覧ください。
### API

* `scrollend` イベントをサポートしました。これは、ユーザーが `Element` および `Document` オブジェクトでスクロールを完了したことを示します。
 詳しくは、Element: `scrollend` イベント および Document: `scrollend` イベント をご覧ください (Firefox バグ 1797013、Firefox バグ 1803435)。
### WebDriver conformance (WebDriver BiDi, Marionette)

#### WebDriver BiDi

* WebDriver BiDi の接続の詳細情報を、`WebDriverBiDiActivePort` ではなく`WebDriverBiDiServer.json` に書き込むようになりました。これはポート (`ws_port`) やホスト (`ws_host`) を含みます。このファイルは、Firefox のプロファイルフォルダーに置かれます (Firefox バグ 1792875)。
* `session.subscribe` および `session.unsubscribe`を使用して、個々の `contexts` をサブスクライブおよびアンサブスクライブできるようになりました (Firefox バグ 1723102)。
* `Node` オブジェクトのシリアライズをサポートしました (Firefox バグ 1770731)。
* `exceptions` および `stackTraces` の `columnNumber` を、0 から数え始めるように修正しました (Firefox バグ 1796073)。

#### Marionette

* `WebDriver:NewWindow` および `WebDriver:SwitchToWindow` が、新しいウィンドウに正しくフォーカスを当てない不具合を修正しました (Firefox バグ 1798655)。
* Windows で Firefox のウィンドウが他のアプリケーションに隠されている場合に、`WebDriver:FindElement` (および類似するコマンド) が失敗する不具合を修正しました (Firefox バグ 1802473)。
アドオン開発者向けの変更点一覧
---------------

* Manifest V3 の署名と、AMO で Manifest V3 拡張機能を公開する機能をサポートしました。詳しくは Manifest v3 signing available November 21 on Firefox Nightly のブログ記事をご覧ください。
* Manifest V3 拡張機能のデフォルトの Content Security Policy (CSP) を、`upgrade-insecure-requests` を含む ように更新しました。これはデフォルトで、すべてのネットワーク要求が `https:` を使用するように更新されることを意味します。`http:` を使用することが必要な拡張機能は、`content_security_policy` manifest.json キーでデフォルトの CSP を上書きすることで `http:` を使用できます (Firefox バグ 1797086)。
* `webRequest.SecurityInfo` (en-US) に `secretKeyLength` プロパティを追加しました。これは、ウェブ要求のセキュリティプロパティにある暗号鍵の長さをビット数で表します (Firefox バグ 1778473)。
* 拡張機能ボタン の導入に合わせて、`action` および `browser_action` マニフェストキーの `default_area` の既定値を `"navbar"` から `"menupanel"` に変更しました (Firefox バグ 1799947)。
過去のバージョン
--------

* Firefox 108 for developers
* Firefox 107 for developers
* Firefox 106 for developers
* Firefox 105 for developers
* Firefox 104 for developers
* Firefox 103 for developers
* Firefox 102 for developers
* Firefox 101 for developers
* Firefox 100 for developers
* Firefox 99 for developers
* Firefox 98 for developers
* Firefox 97 for developers
* Firefox 96 for developers
* Firefox 95 for developers
* Firefox 94 for developers
* Firefox 93 for developers
* Firefox 92 for developers
* Firefox 91 for developers
* Firefox 90 for developers
* 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 81 for developers - Mozilla

Firefox 81 for developers
=========================

このページでは、開発者に影響する Firefox 81 の変更点をまとめています。Firefox 81 は 2020 年 9 月 22 日にリリースされました。

ウェブ開発者向けの変更点一覧
--------------

### 開発者ツール

* デバッガー で、`.ts` および `.tsx` ファイルに対して TypeScript のアイコンを使用するようになりました (Firefox バグ 1642769)。以前は汎用ファイルのアイコンを使用していました。
* デバッガーのソースペイン で行の折り返しをサポートしました (Firefox バグ 1590885)。
* アクセシビリティインスペクター から、不必要な 色覚シミュレーション (en-US) (1 型 3 色覚、2 型 3 色覚、3 型 3 色覚) を削除して、1 色覚 (全色盲) のシミュレーションを追加しました (Firefox バグ 1655053)。
* 要素にクラスを追加する 際のオートコンプリートをサポートしました。文書内にあるクラスに基づいて、クラスを提案します (Firefox バグ 1492797)。
### HTML

* サンドボックス化された `<iframe>` 要素で、自動ダウンロードをブロックするようになりました (Firefox バグ 1558394)。

#### 廃止

* 非標準の `mozallowfullscreen` 属性を、`<iframe>` から削除しました。代わりに `allow="fullscreen"` を検討してください (Firefox バグ 1657599)。
### CSS

* `overflow` プロパティの値 `overflow:-moz-hidden-unscrollable` を改名して、値 `clip` をサポートしました (Firefox バグ 1531609)。
* 仕様書に合わせて、`text-combine-upright` プロパティをアニメーション不可にしました (Firefox バグ 1654195)。

#### 廃止

* 非標準の `::-moz-focus-outer` 疑似要素 を削除しました (Firefox バグ 1655859)。
### JavaScript

*変更なし。*

### HTTP

* Firefox で、空白を含むクォートされていないファイル名を持つ非標準の `Content-Disposition` ヘッダーを受け入れるようになりました (Firefox バグ 1440677)。
* Firefox で HTTP `Feature-Policy` ヘッダーの `web-share` ディレクティブをサポートしました。これは、Web Share API へのアクセスを信頼されたオリジンに制限するために使用できます。現時点で Firefox は Web Share API 自体をサポートしていないことに注意してください (Firefox バグ 1653199)。
### API

#### ゲームパッド

* ゲームパッドのジョイスティックがアクティブになるしきい値を上げました。これにより、アイドル時に小さな軸の値を送信するコントローラーや、ごく小さな打撃によって意図せずゲームパッドがアクティブになる可能性を減らします。(Firefox バグ 1539178)

#### Workers/Service workers

* worker や shared worker のスクリプトで、厳格な MIME タイプの確認を強制するようになりました。すなわち `Worker()` や `SharedWorker()` コンストラクターの対象になるスクリプトは `text/javascript` で提供しなければなりません (Firefox バグ 1523706)。
### WebDriver conformance (Marionette)

* `setWindowRect` 機能の既定値が、すべてのデスクトップアプリケーション (Thunderbird を含む) で `true` に、Android の GeckoView で `false` になりました (Firefox バグ 1650872)。
* 以下のコマンドで Fission をサポートしました: `WebDriver:SwitchToFrame`、`WebDriver:SwitchToParentFrame`、`WebDriver:GetCurrentURL`。すべての Fission 互換コマンドは、`marionette.actors.enabled` が `true` に設定されている場合に限って利用できます。
* 新しいウィンドウを開いた後、ブラウジングコンテキストの監視が破損する問題を修正しました (Firefox バグ 1661495)。
* `WebDriver:SwitchToWindow` が失敗したとき、統一された `NoSuchWindowError` が常に返るようになりました (Firefox バグ 1663429)。

#### 廃止

* WebDriver 仕様書に含まれておらず、またすでに使用されていない `WebDriver:GetActiveFrame` を削除しました (Firefox バグ 1659502)。
アドオン開発者向けの変更点
-------------

* `tabs.saveAsPDF()` (en-US) を macOS でサポートしました (Firefox バグ 1653354)。
* `webNavigation.getFrame()` (en-US) および `webNavigation.getAllFrames()` (en-US) の動作を変更しました。次のページへ進んでタブが破棄されたとき、promise が `null` 値で解決します (Firefox バグ 1654842)。
過去のバージョン
--------

* 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
* Firefox 58 for developers
* Firefox 57 for developers
* Firefox 56 for developers
* Firefox 55 for developers
* Firefox 54 for developers
* Firefox 53 for developers
* Firefox 52 for developers
* Firefox 51 for developers
* Firefox 50 for developers


Firefox 23 for developers - Mozilla

Firefox 23 for developers
=========================

Gecko 23 を搭載した Firefox 23 は米国時間 2013 年 8 月 6 日にリリースされました。このページでは、開発者に影響する Firefox 23 の変更点をまとめています。

Web 開発者向けの変更点一覧
---------------

### セキュリティ

* Mixed content のブロック。Firefox はセキュアな (https) ページでセキュアでない (http) リソースを読み込みません (Firefox バグ 834836)。
* CSP 1.0 ポリシーの標準的な構文を実装して、デフォルトで施行します。
### 開発者ツール

* 開発者ツールにネットワークパネルを追加しました。これは、Web コンソールの "ネットワーク" ビューより詳細なツールです。
* Web コンソールを "コンソール" に改名して、セキュリティのエラーや警告をフィルタリングする設定を追加しました。
* ツールボックスの新たな設定項目によって機能の無効化、Light/Dark テーマの切り替え、Chrome/Remote デバッグの有効化が可能になりました。
### HTML

* `<blink>` 要素のサポートを完全に廃止しました。`<blink>` タグは `HTMLUnknownElement` インターフェイスを実装します (Firefox バグ 857820)。
* `<input>` 要素の `range` ステート (`<input type="range">`) を、デフォルトで有効にしました (Firefox バグ 841950)。
### JavaScript

* `Object.defineProperty` メソッドが、`Array` オブジェクトの `length` プロパティの再定義に使用できるようになりました。
* ウィンドウの移動やコンテキストメニューの置き換えを含む、JavaScript を無効化する選択項目を削除しました。about:config で設定項目 "javascript.enabled" をダブルクリックすることで、JavaScript を無効化できます。
### DOM

* D3E の `KeyboardEvent.key` を、文字入力可能ではないキーについてのみサポートしました (Firefox バグ 842927)。
* `DOMImplementation.createHTMLDocument` の引数 `title` は、更新された DOM 仕様書のとおり省略可能になりました。
* サイドバーパネルを追加する機能 (`window.sidebar.addPanel`) を削除しました (Firefox バグ 691647)。
* 接頭辞なしの `window.requestAnimationFrame`、`window.cancelAnimationFrame` メソッドが追加されました (Firefox バグ 704063)。
* 接頭辞のない版で `Window.requestAnimationFrame` のコールバックは、詳細度が低い `DOMTimeStamp` に代わり `DOMHighResTimeStamp` を引数として受け取ります (Firefox バグ 753453)。
* `window.alert` および `window.confirm` のテキスト引数が省略可能になりました (Firefox バグ 861605)。
* 仕様書から削除された `HTMLMediaElement.initialTime` プロパティのサポートを廃止しました (Firefox バグ 742537)。
* `AnimationEvent()` コンストラクタを追加しました (Firefox バグ 848293)。
* `AnimationEvent.pseudoElement` プロパティを実装しました (Firefox バグ 848293)。
* `TransitionEvent()` コンストラクタを追加しました (Firefox バグ 848291)。
* `TransitionEvent.pseudoElement` プロパティを実装しました (Firefox バグ 848291)。
* 非標準の `TransitionEvent.initTransitionEvent()` (en-US) および `AnimationEvent.initAnimationEvent()` (en-US) を削除しました (Firefox バグ 868751)。
### CSS

* `text-decoration: blink;` の点滅効果を廃止しましたが、値そのものは現在も有効です (Firefox バグ 857820)。
* フロー内の `::after` 疑似要素や `::before` 疑似要素は、flex アイテムになりました (Firefox バグ 867454)。
### MathML

* `<mspace>` 要素でマイナスの幅を実装しました (Firefox バグ 717546)。
* `<semantics>` 要素は MathML3 仕様で述べられているとおりに、表示する子要素を決めるようになりました。
アドオン開発者と Mozilla 開発者向けの変更点
--------------------------

### Firefox 開発者ツール

chrome://browser/content/debugger.xul にオーバーレイするアドオンは、chrome://browser/content/devtools/debugger.xul. へのオーバーレイが必要になりました。互換性のため、chrome.manifest でこれら両方への参照を追加してもさしつかえありません。

関連情報
----

* Firefox 23 リリースノート
* Firefox 23 アドオン互換性情報
### 過去のバージョン

* Firefox 22 for developers
* Firefox 21 for developers
* Firefox 20 for developers
* Firefox 19 for developers
* Firefox 18 for developers
* Firefox 17 for developers
* Firefox 16 for developers
* Firefox 15 for developers
* Firefox 14 for developers
* Firefox 13 for developers
* Firefox 12 for developers
* Firefox 11 for developers
* Firefox 10 for developers
* Firefox 9 for developers
* Firefox 8 for developers
* Firefox 7 for developers
* Firefox 6 for developers
* Firefox 5 for developers
* Firefox 4 for developers
* Firefox 3.6 for developers
* Firefox 3.5 for developers
* Firefox 3 for developers
* Firefox 2 for developers
* Firefox 1.5 for developers


Firefox 68 for developers - Mozilla

Firefox 68 for developers
=========================

Firefox 68 は、米国時間 2019 年 7 月 9 日 にリリースされました。このページでは、開発者に影響する Firefox 68 の変更点をまとめています。

ウェブ開発者向けの変更点一覧
--------------

### 開発者ツール

#### ブラウザー/ウェブコンソール

* ルールで使用した DOM 要素のノードリストなど、CSS 警告に関するより多くの情報 をウェブコンソールで表示するようになりました (Firefox バグ 1093953)。
* 正規表現を使用してウェブコンソールの内容をフィルタリングできるようになりました (Firefox バグ 1441079)。
* ブラウザーコンソールの "*コンテンツメッセージを表示*" のチェックボックスで、コンテンツプロセスのメッセージを表示/非表示できるようになりました (Firefox バグ 1260877)。

#### JavaScript デバッガー

* `Shift`
 +
 `Ctrl`
 +
 `F`
 (Windows や Linux) または
 `Shift`
 +
 `Cmd`
 +
 `F`
 (macOS) を押下すると、デバッガーで現在のプロジェクトのすべてのファイルから 検索 できるようになりました (Firefox バグ 1320325)。

#### ネットワークモニター

* ネットワークモニターの 要求リスト で、特定の URL をブロックできるようになりました (Firefox バグ 1151368)。
* コンテキストメニューの 再送信 コマンドを使用して、メソッド、URL、パラメーター、ヘッダーを編集せずにネットワーク要求を再送信できます (Firefox バグ 1422014)。
* ネットワークモニターの ヘッダー タブのコンテキストメニューで、すべてあるいは一部のヘッダー情報を JSON 形式でクリップボードにコピーできるようになりました (Firefox バグ 1442249)。

#### インスペクター

* インスペクターの ルールパネル に、print メディアクエリーの表示を切り替えるボタンを追加しました (Firefox バグ 1534984)。
* フォントパネル に、`letter-spacing` を変更するスライダーを追加しました (Firefox バグ 1536237)。
* あるスタイルがなぜ適用されないかをわかりやすくするため、値が無効であるルールや未サポートの CSS プロパティの隣に警告アイコンを表示するようになりました (Firefox バグ 1306054)。

#### ストレージインスペクター

* ストレージインスペクターで項目を選択して Back Space キーを押下すると、ローカルストレージやセッションストレージを削除 できるようになりました (Firefox バグ 1522893)。

#### その他

* アクセシビリティインスペクター に*問題のチェック*機能を追加しました。ウェブページでアクセシビリティの問題を明らかにする検査ツールが含まれています。まず使用できるツールは*コントラスト*で、色のコントラストの問題を明らかにします。
* 内部拡張機能 (システムアドオンや非表示の拡張機能) を about:debugging で表示するかを制御する設定項目を、`devtools.aboutdebugging.showSystemAddons` から `devtools.aboutdebugging.showHiddenAddons` に変更しました (Firefox バグ 1544372)。
* レスポンシブデザインモード を再設計しました。*端末設定*ダイアログ (デバイス選択メニュー > *リストを編集...*) がより直感的でシンプルになりました (Firefox バグ 1487857)。

#### 廃止

* about:debugging ページから "アドオンのデバッグを有効化" のチェックボックスを削除しました (Firefox バグ 1544813)。
### HTML

* テキストトラックがメディア要素に含まれている場合に、`TextTrack` 自体に加えて `<track>` 要素 (`HTMLTrackElement` で表される) が `cuechange` イベントを受け取るようになりました (Firefox バグ 1548731)。
* 動作が異なりますが、`<link>` 要素で `disabled` 属性を再びサポートしました。`rel="stylesheet"` を持つ `<link>` 要素で `disabled` を設定すると、ページを読み込むときに参照先のスタイルシートが読み込まれなくなります。`disabled` 属性を `false` に設定するか削除すると、必要に応じて読み込まれます (Firefox バグ 1281135)。

#### 廃止

* `<meta http-equiv="set-cookie">` のサポートを廃止しました (Firefox バグ 1457503)。
### CSS

* CSS Scroll Snapping を、最新バージョンの仕様書に更新しました (Firefox バグ 1312163) および (Firefox バグ 1544136)。変更点は以下のとおりです:
    + `scroll-padding` 関係のプロパティ (Firefox バグ 1373832)
    + `scroll-margin` 関係のプロパティ (Firefox バグ 1373833)
    + `scroll-snap-align` (Firefox バグ 1373835)
* ほかのブラウザーとの互換性のため、`-webkit-line-clamp` プロパティを実装しました (Firefox バグ 866102)。
* `::marker` 疑似要素 (Firefox バグ 205202) と、::marker のアニメーション (Firefox バグ 1538618) をサポートしました。
* `<currentColor>` を計算値に変更しました (`color` プロパティを除く) (Firefox バグ 760345)。
* 長さの単位 'ch' を、仕様書に合うよう修正しました ('0' のグリフがない場合は高さにフォールバックする) (Firefox バグ 282126)。
* `counter-set` プロパティを実装しました (Firefox バグ 1518201)。
* 内蔵の 'list-item' カウンターを使用したリストの番号付けを実装して、番号付けの不具合を修正しました (Firefox バグ 288704)。
* `::part()` にセレクターのマッチングとパースを実装しました (Firefox バグ 1545430) および (Firefox バグ 1545425)。
* `<mask>`、`<marker>` (en-US)、`<pattern>`、`<clipPath>` など、間接的に描画されるもので CSS Transforms をサポートしました (Firefox バグ 1323962)。
* 互換性の理由でさまざまなグラデーションプロパティ (`linear-gradient()`、`radial-gradient()`、`repeating-radial-gradient()`) の接頭辞がついたものを使用可能に維持していますが、接頭辞がないものにより似た形で扱うように処理を変更しました。これは、既存のスタイルの一部が正しく動作しなくなることを意味します。
 特に、角度と位置の両方を持つ複雑な構文は動作しません。また `<side-or-corner>` の `to` キーワードは、接頭辞があるグラデーションプロパティで必須ではありません。広くサポートされているため、接頭辞がない標準のグラデーションプロパティを使用することが推奨されます (Firefox バグ 1547939)。

#### 廃止

* `scroll-snap-coordinate`、`scroll-snap-destination`、`scroll-snap-type-x`、`scroll-snap-type-y` を削除しました。
* `scroll-snap-type` プロパティがロングハンドプロパティになりました。`scroll-snap-type:mandatory` のような、以前のショートハンド構文は動作しません。
### SVG

*変更なし。*

### JavaScript

* `BigInt` プリミティブをデフォルトで有効にしました (Firefox バグ 1527902)。
* String のジェネリックメソッドを削除しました (Firefox バグ 1222552)。詳しくは 非推奨に関する警告 をご覧ください。
### API

#### CSS Object Model (CSSOM)

* 時代遅れの `rules` プロパティ、`addRule()` メソッド、`removeRule()` メソッドを `CSSStyleSheet` インターフェイスに追加しました。これらは Internet Explorer 9 で導入されて完全には根絶されておらず、いまだに使用しているわずかなサイトの互換性を向上するために追加しました (Firefox バグ 1545823)。

#### DOM

* Visual Viewport API (en-US) が Android 版でデフォルトで有効になりました (Firefox バグ 1512813)。デスクトップ版 Firefox にこの API を追加する作業は Firefox バグ 1551302 で追跡しています。
* `Window` の `noreferrer` 機能をサポートしました。これを指定するとホスト名、IP アドレス、URL、その他のホスト端末を識別する情報を共有せずに、新しいウィンドウのコンテンツを読み込みます (Firefox バグ 1527287)。
* `HTMLImageElement` の `decode()` メソッドを実装しました。これは画像を、DOM に追加する前に読み込みおよびデコードするために使用できます (Firefox バグ 1501794)。
* `XMLHttpRequest` を、`responseType` で非標準の値 `moz-chunked-arraybuffer` を受け入れないように更新しました。この値を使用しているコードは、Fetch API をストリームとして使用する ように更新してください (Firefox バグ 1120171)。
* `XMLHttpRequest` で `unload`、`beforeunload`、`pagehide` イベントを処理しているときに同期リクエストを行うと、コンソールに警告を出力するようになりました (Firefox バグ 980902)。
* `cookie` プロパティを `HTMLDocument` インターフェイスから `Document` インターフェイスへ移動しました。HTML 以外の文書でも Cookie を使用できます (Firefox バグ 144795)。
* `HTMLElement.focus()` および `SVGElement.focus()` メソッドで、新たにフォーカスを得た要素が表示されるようにブラウザーがスクロールすることをブロックするかを指定する論理値の `preventScroll` オプションをもつ、省略可能なオブジェクトを受け入れるようになりました (Firefox バグ 1374045)。

#### DOM イベント

* Android 版 Firefox が、最初のフレームが描画された後まで `resize` イベントを誤って送信する不具合を修正しました。このイベントが発生しないと想定するサイトとのウェブ互換性が向上します (Firefox バグ 1528052)。
* マウスの第 1 ボタン以外のボタンのイベントが、より仕様書に近い形で発生するようになりました。第 1 ボタン以外のボタンをクリックしても `click` イベントが発生しなくなり、代わりに `auxclick` を使用します。また、`dblclick` は第 1 ボタンだけで発生します (Firefox バグ 1379466)。
* 独自仕様の `MouseEvent.mozPressure` プロパティが非推奨になり、コンソールへ警告を表示するようになりました (Firefox バグ 1165211)。

#### メディア、Web Audio、WebRTC

* Google Play ストアの規約変更により Android 版 Firefox 68 から、WebRTC 接続で AVC/H.264 動画を扱っていた OpenH264 コーデックをダウンロードおよびインストールすことができなくなりました。このため Android デバイスに新規インストールした Firefox は、WebRTC 接続で AVC をサポートしません。すでにコーデックをダウンロードしている旧バージョンの Firefox を更新した場合は、引き続き動作します。これは、ほかのプラットフォームには*影響がありません*。詳しくは SUMO の記事 または Firefox バグ 1548679 をご覧ください。
* `icecandidate` (en-US) イベントハンドラーに `null` 候補が渡されたことを認識するように、WebRTC を更新しました。後続の候補がないことを示しており、これが発生すると ICE の収集 (`iceGatheringState` (en-US)) が `complete` 状態になります (Firefox バグ 1318167)。
* `RTCRtpReceiver` (en-US) の `getContributingSources()` (en-US) および `getSynchronizationSources()` (en-US) メソッドで動画トラックをサポートしました。以前は音声のみ動作していました (Firefox バグ 1534466)。
* Web Audio API の `MediaStreamTrackAudioSourceNode` インターフェイスと `AudioContext.createMediaStreamTrackSource()` メソッドをサポートしました (Firefox バグ 1324548)。
* `RTCDataChannel.negotiated` (en-US) を実装しました (Firefox バグ 1529695)。
* ストリームの "最初の音声トラック" の ID が辞書順で最初に来るトラックであると定義する現行の仕様書に準拠するよう、`MediaStreamAudioSourceNode()` コンストラクターを更新しました (Firefox バグ 1324548)。
* `getUserMedia()` は安全でないコンテキストから使用できなくなりました。使用を試みると `NotAllowedError` 例外が発生します。安全なコンテキストは HTTPS を使用して読み込むもの、`file:///` スキームを使用して示すもの、`localhost` から読み込むものです。今のところ、必要であれば設定項目 `media.getusermedia.insecure.enabled` を `true` に設定すると、`getUserMedia()` を安全でないコンテキストから呼び出すことを再有効化できます (Firefox バグ 1335740)。

**メモ:** 将来、Firefox は `navigator.mediaDevices` プロパティも安全でないコンテキストで廃止して、`MediaDevices` API へのアクセスを完全に遮断する予定です。**これは Nightly ビルドですでに実施しています。**

#### 廃止

* 非標準の `XMLDocument.load()` (en-US) メソッドを削除しました (Firefox バグ 332175)。
* 非標準の `XMLDocument.async` プロパティを削除しました (Firefox バグ 1328138)。
* `RTCIceCredentialType` (en-US) の値 `token` を削除しました (Firefox バグ 1529595)。
### HTTP

* HTTP の `Clear-Site-Data` ヘッダーで `executionContexts` ディレクティブのサポートを廃止しました。これは、ナビゲーションプロセスのさまざまな時点でさまざまな種類のデータの間の相互接続における相互作用の問題や、仕様書の設計の問題のために削除しました。この理由でディレクティブを仕様書から削除することが 提案されています (Firefox バグ 1548034)。

#### 廃止

* 標準化の状況に懸念があるため、`Content-Security-Policy` の `require-sri-for` ディレクティブのサポートを廃止しました。以前は設定変更により使用できており、既定値は無効でした (Firefox バグ 1386214)。
### セキュリティ

* CVE-2019-11730: Same-origin policy treats all files in a directory as having the same-origin のため、同じディレクトリーにあるファイルを別々のオリジンとして扱うように Firefox を変更しました。これは、file:// URL で読み込んだドキュメントの動作でいくつかの副作用が発生します (調査について Firefox バグ 1558299 をご覧ください)。例えば、workers を読み込むことができません。
### WebDriver conformance (Marionette)

#### バグ修正

* `WebDriver:SwitchToWindow` が別のウィンドウを選択すると、元のウィンドウに戻るまで `focus` および `activate` イベントを待機するようになりました (Firefox バグ 1335085)。
* `TypeError: this.tabModal is null` の不具合を修正しました。これはモーダルダイアログやユーザープロンプトと対話しているときに発生することがありました (Firefox バグ 1538782)。

#### その他

* トップレベルのブラウザーコンテキストが突然消えてしまうことを防ぐため、メモリーが少ない状況でバックグラウンドのタブを強制的にアンロードする機能を無効化しました (Firefox バグ 1553748)。
* 新しいタブを開いた後にウェブサイトへ移動するときに HTTP 認証ダイアログが表示されない、特権付きコンテンツプロセスを無効化しました (Firefox バグ 1558763)。
### プラグイン

*変更なし。*

アドオン開発者向けの変更点
-------------

### API の変更点

* `proxy.register()` (en-US) および `proxy.unregister()` (en-US) 関数が非推奨になり、Firefox 71 で削除される予定です (Firefox バグ 1545811)。
* `boolean` 型の `incognito` フラグを proxy.RequestDetails (en-US) オブジェクトに追加しました。`true` を設定すると、プライベートブラウジングの要求であったことを示します (Firefox バグ 1545163)。
* webRequest.RequestFilter (en-US) が incognito パラメーターを持てるようになりました。これを与えると、incognito の状態 (`true` または `false`) に合致しない要求を除去できます (Firefox バグ 1548177)。
* 現在のコンテキストにおける Cookie のストア ID を表す、`string` 型の `cookieStoreId` を proxy.RequestDetails (en-US) オブジェクトに追加しました (Firefox バグ 1545420)。
* アドオンがブックマークフォルダーをルートフォルダーへ追加しようとしたときのエラーメッセージが、より直感的になりました (Firefox バグ 1512171)。
* `browser.tabs.duplicate()` が返す promise がタブが完全に読み込まれる前に、直ちに解決するようになりました (Firefox バグ 1394376)。
* chrome.storage.managed をサポートして、拡張機能の設定をエンタープライズポリシーで設定できるようになりました (Firefox バグ 1230802)。
### マニフェストの変更点

*変更なし。*

関連情報
----

* Firefox 68.0 リリースノート
過去のバージョン
--------

* 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
* Firefox 58 for developers
* Firefox 57 for developers
* Firefox 56 for developers
* Firefox 55 for developers
* Firefox 54 for developers
* Firefox 53 for developers
* Firefox 52 for developers
* Firefox 51 for developers
* Firefox 50 for developers
* Firefox 49 for developers
* Firefox 48 for developers
* Firefox 47 for developers
* Firefox 46 for developers
* Firefox 45 for developers
* Firefox 44 for developers
* Firefox 43 for developers
* Firefox 42 for developers
* Firefox 41 for developers
* Firefox 40 for developers
* Firefox 39 for developers
* Firefox 38 for developers
* Firefox 37 for developers


Firefox 111 for developers - Mozilla

Firefox 111 for developers
==========================

このページでは、開発者に影響する Firefox 111 の変更点をまとめています。Firefox 111 は、米国時間 2023 年 3 月 14 日にリリースされました。

ウェブ開発者向けの変更点一覧
--------------

### 開発者ツール

### HTML

* `autocapitalize` グローバル属性をデフォルトで有効にしました。属性の既定値は `none` ですので、大文字化を行いません (Firefox bug 1692007)。
* `translate` グローバル属性をサポートしました (Firefox bug 1418449)。

#### 廃止

### CSS

* CSS 色の関数 `color()`、`lab()`、`lch()`、`oklab()`、`oklch()` をサポートしました。
 これらの機能はデフォルトで無効であり、設定項目 `layout.css.more_color_4.enabled` を true に設定すると有効にできます。
 詳しくは CSS color value の文書をご覧ください (Firefox bug 1352757 および Firefox bug 1128204)。

#### 廃止

### JavaScript

#### 廃止

### SVG

* `<marker>` 要素内で `context-stroke` および `context-fill` の値をサポートしました。
 これらの値を `fill` および `stroke` プロパティとともに使用する方法について、詳しくは `<marker>` (en-US) の文書をご覧ください (Firefox bug 752638)。

#### 廃止

### HTTP

* HTTP の `Authorization` ヘッダーを、クロスオリジンのリダイレクトから削除しました。
 詳しくは Firefox bug 1802086 をご覧ください。

#### 廃止

### セキュリティ

#### 廃止

### API

* File System Access API を使用するときに、Origin private file system (OPFS) をサポートしました。
 このファイルシステムのデータはオリジンに固有です。ファイルへアクセスするために許可プロンプトは必須でなく、またサイトやオリジンがストレージを削除するとデータが消去されます。
 OPFS はメインスレッドまたは worker で `navigator.storage.getDirectory()` を呼び出すことにより、`StorageManager.getDirectory()` メソッドでアクセスできます。
 詳しくは Firefox bug 1785123 をご覧ください。
* HTTP の `Authorization` ヘッダーを、クロスオリジンのリダイレクトが発生する `fetch()` および `XMLHttpRequest` 要求から削除しました (`fetch()` のヘッダーは、`option.headers` 引数を使用して開発者が追加できます)。
 詳しくは Firefox bug 1802086 をご覧ください。

#### DOM

* `FormData` コンストラクターが、送信ボタンを指定するための省略可能な第 2 引数である `submitter` を受け入れるようになりました。ボタンの名前があるか画像ボタンである場合は、それがフォームのデータセットに含まれます。これは、ボタンで送信する普通のフォームと同じデータセットを持つ `FormData` オブジェクトを作ることを可能にします。詳しくは Firefox bug 1812696 をご覧ください。

#### Media、WebRTC、Web Audio

* `RTCInboundRtpStreamStats.trackIdentifier` (en-US) をサポートしました。
 これにより開発者は、`RTCPeerConnection.getStats()` (en-US) を使用しているときに `inbound-rtp` 統計値と特定のトラックを関連づけることができます。
 (詳しくは Firefox bug 1804676 をご覧ください)

#### 廃止

### WebAssembly

#### 廃止

### WebDriver conformance (WebDriver BiDi, Marionette)

#### WebDriver BiDi

* 古くなった要素を確認する処理を、最近更新された WebDriver classic 仕様に基づいて変更しました。詳しくは Firefox bug 1808894 をご覧ください。

#### Marionette

* `WebDriver:ExecuteScript` から ShadowRoot が返るときに `cyclic object value` エラーが発生する不具合を修正しました。詳しくは Firefox bug 1764594 をご覧ください。
アドオン開発者向けの変更点一覧
---------------

* `Find.find` API に `matchDiacritics` を追加しました。このオプションは、アクセントつき文字とベース文字を区別して検索することができます。たとえば `true` を設定すると、"résumé" を検索しても "resume" に一致するものが見つかりません。Firefox bug 1680606
* Chromium ベースのブラウザーと互換性がある search API を提供する `search.query` (en-US) を追加しました。Firefox bug 1804357
* 新しいタブまたはウィンドウに結果を表示することを可能にする、`disposition` プロパティを `search.search` (en-US) に追加しました。Firefox bug 1811274
### 廃止

### その他

過去のバージョン
--------

* Firefox 110 for developers
* Firefox 109 for developers
* Firefox 108 for developers
* Firefox 107 for developers
* Firefox 106 for developers
* Firefox 105 for developers
* Firefox 104 for developers
* Firefox 103 for developers
* Firefox 102 for developers
* Firefox 101 for developers
* Firefox 100 for developers
* Firefox 99 for developers
* Firefox 98 for developers
* Firefox 97 for developers
* Firefox 96 for developers
* Firefox 95 for developers
* Firefox 94 for developers
* Firefox 93 for developers
* Firefox 92 for developers
* Firefox 91 for developers
* Firefox 90 for developers
* 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 41 for developers - Mozilla

Firefox 41 for developers
=========================

Firefox 41 は、米国時間 2015 年 9 月 22 日にリリースされました。このページでは、開発者に影響する Firefox 41 の変更点をまとめています。

Web 開発者向けの変更点一覧
---------------

### 開発者ツール

ハイライト:

* DOM ノードのスクリーンショットを撮影する
* HAR としてコピー/HAR として保存
* ルールビューの "Add Rule" ボタン
* タブでソースを表示 (デフォルトは無効)
* CSS ルールのコピー方法を追加
* ルールビューで画像を data: URI としてコピー
* CSP の情報を表示するコマンドを GCLI に追加

Firefox 40 から Firefox 41 の間に解決した開発ツール関連のバグ一覧: これらのバグの多く (特にパフォーマンスツールに関するバグ) の修正は Firefox 40 に前倒しされました。

### CSS

* 縦書き文章のレイアウト機能を、デフォルトで有効にしました (Firefox バグ 1138384)。以下の CSS プロパティが使用可能になりました:
    + 書字方向を選択する: `writing-mode`
    + 文字の向きを制御する: `text-orientation`.
    + 方向に依存しない `width` および `height`: `block-size` および `inline-size`
    + 方向に依存しない `min-width` および `min-height`: `min-block-size` および `min-inline-size`
    + 方向に依存しない `max-width` および `max-height`: `max-block-size` および `max-block-size`
    + 方向に依存しない `margin-top`、`margin-right`、`margin-bottom`、`margin-left`: `margin-block-start`、`margin-block-end`、`margin-inline-start`、`margin-inline-end`
    + 方向に依存しない `padding-top`、`padding-right`、`padding-bottom`、`padding-left`: `padding-block-start`、`padding-block-end`、`padding-inline-start`、`padding-inline-end`
    + 方向に依存しない `border-top`、`border-right`、`border-bottom`、`border-left` および幅、スタイル、色を個別に指定するプロパティ: `border-block-start`、`border-block-start-width`、`border-block-start-style`、`border-block-start-color`、`border-block-end`、`border-block-end-width`、`border-block-end-style`、`border-block-end-color`、`border-inline-start`、`border-inline-start-width`、`border-inline-start-style`、`border-inline-start-color`、`border-inline-end`、`border-inline-end-width`、`border-inline-end-style`、`border-inline-end-color`
    + 方向に依存しない `top`、`right`、`bottom`、`left`: `offset-block-start`、`offset-block-end`、`offset-inline-start`、`offset-inline-end`
* SVG で `transform-origin` プロパティをサポートしました。また、`transform-box` プロパティを実装しました (Firefox バグ 923193)。
### HTML

* `href` 属性を持たない `<a>` は、インタラクティブコンテンツとして分類しないようになりました。`<label>` 要素内でクリックすると、ラベル付けされたコンテンツがアクティブになります (Firefox バグ 1167816)。
* サイトアイコン (favicon およびショートカットアイコン) で、SVG アイコンをサポートしました (Firefox バグ 366324)。
* <link rel='preconnect'> で、`crossorigin` 属性をサポートしました (Firefox バグ 1174152)。
* picture 要素がリサイズやビューポートの変化に反応しない問題を修正しました (Firefox バグ 1135812)。
### JavaScript

* `Date.prototype` は `Date` のインスタンスではなく、通常のオブジェクトになりました (Firefox バグ 861219)。
* `Date.prototype.toString` は、ジェネリックなメソッドになりました (Firefox バグ 861219).
* `Symbol.species` を追加しました (Firefox バグ 1131043)。
* `Map[@@species]` および `Set[@@species]` ゲッタを追加しました (Firefox バグ 1131043)。
* 非標準の let 式を廃止しました (Firefox バグ 1023609)。
* 既定値の代入を含む、分割されたパラメータをサポートしました (Firefox バグ 1018628)。
* ES6 に従い、メソッドの定義で波括弧が必要になりました。波括弧を欠いた構文はエラーになります (Firefox バグ 1150855)。
* コンストラクタ形式のメソッド定義 (ジェネレータメソッドを除く) は不可になりました (Firefox バグ 1059908 および Firefox バグ 1166950)。
* ES6 使用への準拠の一環として `([a, b]) = [1, 2]` や `({a, b}) = { a: 1, b: 2 }` といった、括弧でくくるパターンの destructuring 構文は無効と判断され、`SyntaxError` が発生するようになりました。詳しくは Jeff Walden のブログ記事 をご覧ください。
* `new.target` 構文をサポートしました (Firefox バグ 1141865)。
### インターフェイス/API/DOM

#### HTML Editing API

* 切り取り、コピー、貼り付けのコマンド制御を改良して、JS プログラムから Web コンテンツのコピーや切り取りが可能になりました:
    + `Document.queryCommandSupported()` に引数として `'paste'` コマンドを与えると、実際に操作を行うための十分な権限がない場合に `false` を返します (Firefox バグ 1161721)。
    + `Document.queryCommandSupported()` に引数として `'cut'` または `'copy'` を与えると、ユーザが起動したコードや権限を持つコードのコンテキスト内で呼び出された場合に `true` を返すようになりました (Firefox バグ 1162952)。
    + 引数として `'cut'` または `'copy'` を与えた `Document.execCommand()` は動作しますが、ユーザが起動したコードや権限を持つコードのコンテキスト内で呼び出された場合に限ります (Firefox バグ 1012662)。
    + `Document.execCommand()` でコマンドが未サポートまたは無効である場合に、例外が発生しないようになりました (Firefox バグ 1027560)。

#### イベント

* 非標準の `CloseEvent.initCloseEvent()` メソッド、および `Event.createEvent('CloseEvent')` メソッドを使用して `CloseEvent` を生成する機能を削除しました。代わりに、標準のコンストラクタである `CloseEvent()` を使用してください (Firefox バグ 1161950)。
* デスクトップ版の Nightly で、`PointerEvent` がデフォルトで有効になりました。Developer Edition、Beta、Release では無効であり、少なくともいくつかのバージョンの間は有効化しない予定です。(Firefox バグ 1166347)
* 接頭辞なしの `MouseEvent.movementX` および `MouseEvent.movementY` を追加しました。接頭辞つきのプロパティは非推奨になり、将来のある時点で削除する予定です (Firefox バグ 1164981)。

#### Web Crypto

* `SubtleCrypto.importKey()` および `SubtleCrypto.exportKey()` で `ECDH` 鍵をサポートしました (Firefox バグ 1050175)。

#### Canvas API

* `HTMLCanvasElement.captureStream()` および `CanvasCaptureMediaStream` (en-US) を追加して、`<canvas>` の表示内容をリアルタイムに流すことが可能になりました (Firefox バグ 1032848)。
* `MediaStream.id` が、ストリームのユニークな ID を返すようになりました (Firefox バグ 1089798)。
* `CanvasRenderingContext2D.filter` (en-US) の初期値が、正しく `none` が設定されるようになりました (Firefox バグ 1163124)。

#### Service Worker

* Service Worker の実験的な実装を改良しました:
    + `ServiceWorkerGlobalScope.skipWaiting()` を実装しました (Firefox バグ 1131352)。
    + `Clients.claim()` を追加しました (Firefox バグ 1130684)。
    + Service Worker で機能する上記以外のイベントは `ExtendableEvent` から継承しており、`waitUntil()` メソッドにアクセスできます (Firefox バグ 1160527)。
* `CacheStorage` および `Cache` インターフェイスをサポートしました (Firefox バグ 1110144)。

#### WebGL

* WebGL コンテキスト属性 `failIfMajorPerformanceCaveat` を追加しました。また、システムのパフォーマンスが低い場合にコンテキスト生成を失敗させることを示すために、`HTMLCanvasElement.getContext()` で WebGL コンテキストを生成する際にこの属性を設定できるようになりました (Firefox バグ 1164970)。

#### その他

* OS X および Windows で、`Navigator.onLine` はネットワーク接続の状態に応じて変化するようになりました (以前は "オフライン作業" モードを選択しなければ常に `true` を返していました) (Firefox バグ 654579)。
* `MessagePort` および `MessageChannel` が Web workers で使用可能になりました。また、デフォルトですべての状況で有効になりました (Firefox バグ 952139 および Firefox バグ 911972)。
* User Timing API が Web workers で使用可能になりました (Firefox バグ 1155761)。
* Notifications API が Web workers で使用可能になりました (Firefox バグ 916893)。
* `DOMRequest` および `DOMCursor` が Web workers で使用可能になりました (Firefox バグ 1167650)。
* CSS Font Loading API (en-US) を全面的に実装して、デフォルトで有効にしました (Firefox バグ 1149381)。
* Shared workers が、プライベートドキュメント (すなわち、プライベートウィンドウで開いているドキュメント) と非プライベートドキュメントとの間で共有されないようになりました (Firefox バグ 1177621)。
* `URLUtilsSearchParams.searchParams` プロパティが読み取り専用になりました (Firefox バグ 1174731)。
* `URLUtils.hash` プロパティが、URL フラグメントをデコードしないようになりました (Firefox バグ 1093611)。
### MathML

#### 新たな既定フォントとフォールバックフォントの制御

数式では特別なフォントが必要です。これまで、そのフォントは `mathml.css` ユーザエージェントスタイルシート (`<math>` タグに font-family を設定) および設定項目 `font.mathfont-family` (伸縮する大型演算子で使用するフォールバックフォントを設定) でハードコードされていました。Firefox 41 より `<math>` タグへ自動的に設定される `x-math` 内部言語と、それに対応する設定項目 (例えば `font.name.serif.x-math`) を導入しました。ユーザエージェントスタイルシートでは `<math>` タグの font-family を serif に設定して、設定項目 `font.mathfont-family` を `font.name.serif.x-math` で置き換えました。また、すべてのプラットフォームで、フォールバックフォントは基本的に "Latin Modern Math" が先頭にある同一のリストを使用するようになりました。既定フォント/フォールバックフォントは、標準の言語別フォント設定メニューで設定できます。詳しくは Firefox バグ 947654 および Firefox バグ 1160456 をご覧ください。

### SVG

* サイトアイコン (favicon、ショートカットアイコン) で SVG をサポートしました (Firefox バグ 366324)。
### Audio/Video

* 設定項目 `media.autoplay.enabled` が、信頼されていない `HTMLMediaElement.play()` の起動 (ユーザ以外が作動したスクリプトから呼び出される場合) に対しても適用されるようになりました (Firefox バグ 659285)。
ネットワーク
------

* `X-Content-Duration` ヘッダのサポートを廃止しました (Firefox バグ 1160695)。
* HTTP/2 プロトコルの草案版のサポートを廃止しました (Firefox バグ 1132357)。
セキュリティ
------

* CSP 1.1 の `manifest-src` ディレクティブをサポートしました (Firefox バグ 1089255)。
アドオン開発者と Mozilla 開発者向けの変更点
--------------------------

### XUL

*変更なし。*

### JavaScript コードモジュール

*変更なし。*

### XPCOM

*変更なし。*

### インターフェイス

*変更なし。*

### その他

* window のルートウィジェットを `<canvas>` に描画するための、新たな chrome コンテキスト限定の内部 API である `CanvasRenderingContext2D.drawWidgetAsOnScreen()` を追加しました。この API は、オンスクリーンのウィジェットを取得するために OS を使用します。詳しくは Firefox バグ 1167477 をご覧ください。
関連情報
----

* Firefox 41.0 リリースノート
* Firefox 41 サイト互換性情報
* Firefox 41 アドオン互換性情報
過去のバージョン
--------

* Firefox 40 for developers
* Firefox 39 for developers
* Firefox 38 for developers
* Firefox 37 for developers
* Firefox 36 for developers
* Firefox 35 for developers
* Firefox 34 for developers
* Firefox 33 for developers
* Firefox 32 for developers
* Firefox 31 for developers
* Firefox 30 for developers
* Firefox 29 for developers
* Firefox 28 for developers
* Firefox 27 for developers
* Firefox 26 for developers
* Firefox 25 for developers
* Firefox 24 for developers
* Firefox 23 for developers
* Firefox 22 for developers
* Firefox 21 for developers
* Firefox 20 for developers
* Firefox 19 for developers
* Firefox 18 for developers
* Firefox 17 for developers
* Firefox 16 for developers
* Firefox 15 for developers
* Firefox 14 for developers
* Firefox 13 for developers
* Firefox 12 for developers
* Firefox 11 for developers
* Firefox 10 for developers