Firefox 78 for developers
=========================

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

Mozilla hacks の記事「New in Firefox 78: DevTools improvements, new regex engine, and abundant web platform updates」もご覧ください。

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

### 開発者ツール

#### デバッガー

* about:debugging パネルで、リモート端末がアクセスする URL を変更できるようになりました (Firefox バグ 1617237)。
* デバッガー のメニュー項目 "**JavaScript を無効化**" が現在のタブにのみ作用するようになりました。また、開発ツールを閉じるとリセットされるようになりました (Firefox バグ 1640318)。
* スコープペイン で **マッピング** を有効にすると、[https://firefox-source-docs.mozilla.org/devtools-user/debugger/set\_a\_logpoint/index.html) でソースマップを適用したコードの変数名と元の変数名をマッピングできます (Firefox バグ 1536857)。

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

* ネットワークモニター で、要求リストの表の列の境界をどこでもドラッグして、リサイズできるようになりました (Firefox バグ 1618409)。
* ネットワークモニターの 要求の詳細パネル の UX を改良しました (Firefox バグ 1631302, Firefox バグ 1631295)。
* リクエストがブロックされたとき、リクエストリスト でアドオン、CSP、CORS、強化型トラッキング防止などの理由を表示するようになりました (Firefox バグ 1555057, Firefox バグ 1445637, Firefox バグ 1556451)。

#### その他のツール

* アクセシビリティ インスペクターがベータ版から脱しました。このツールを使用して、サイトのさまざまなアクセシビリティの問題を確認できます (Firefox バグ 1602075)。
* キャッチされていない promise エラーについて、名前やスタックを含む詳細情報をコンソールに表示するようになりました (Firefox バグ 1636590)。
### CSS

* `:is()` および `:where()` 疑似クラスをデフォルトで有効にしました (Firefox バグ 1632646)。
* `:read-only` および `:read-write` 疑似クラスを、接頭辞なしでサポートしました (Firefox バグ 312971)。
    + また `:read-write` のスタイルが、無効化した `<input>` および `<textarea>` 要素に適用されないようになりました。これは HTML 仕様書 に違反していました (Firefox バグ 888884)。
### JavaScript

* `Intl.ListFormat` API をサポートしました (Firefox バグ 1589095)。
* `Intl.NumberFormat()` コンストラクターを、Intl.NumberFormat Unified API Proposal で定義された新しいオプションをサポートするように拡張しました (Firefox バグ 1633836)。特に、以下のようなものがあります:
    + 指数表記のサポート
    + 単位、通貨、符号表示 の整形
* `RegExp` エンジンを 更新 して、ECMAScript 2018 で導入したすべての新機能をサポートしました:
    + 後読み言明 (Firefox バグ 1225665)
    + `RegExp.prototype.dotAll` (Firefox バグ 1361856)
    + Unicode プロパティエスケープ (Firefox バグ 1361876)
    + 名前付きキャプチャグループ (Firefox バグ 1362154)
* 2020 年中頃の WebIDL 仕様書の変更 により、`Symbol.toStringTag` プロパティをすべての DOM プロトタイプオブジェクトに追加しました (Firefox バグ 1277799)。
* `WeakMap` オブジェクトのガベージコレクションを改良しました。`WeakMaps` を徐々にマークするようになりました (Firefox バグ 1167452)。
### API

#### DOM

* `Element.replaceChildren` メソッドを実装しました (Firefox バグ 1626015)。

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

* Extended Support Releases (ESR): Firefox 78 は Service workers (および プッシュ API) をサポートする最初の ESR リリースです。過去の ESR リリースはサポートしていませんでした (Firefox バグ 1547023)。
### WebAssembly

* Wasm Multi-value をサポートしました。WebAssembly の関数が複数の値を返したり、命令シーケンスが複数のスタックの値を使用および生成したりすることが可能になりました (Firefox バグ 1628321)。
* WebAssembly で、`BigInt` を使用して JavaScript から 64-bit 整数の関数パラメーター (i64) をインポートおよびエクスポートできるようになりました (Firefox バグ 1608770)。
### TLS 1.0 および 1.1 の廃止

* Transport Layer Security (TLS) プロトコルのバージョン 1.0 および 1.1 のサポートを、すべてのブラウザーで廃止しました。以前の告知と、影響を受ける場合の対処について、TLS 1.0 and 1.1 Removal Update をご覧ください (Firefox バグ 1643229)。
アドオン開発者向けの変更点
-------------

* `browsingData.removeCache` および `browsingData.removePluginData` (en-US) が、ホスト名による削除をサポートしました (Firefox バグ 1636784)。
* `proxy.onRequest` (en-US) を使用するとき、タブやウィンドウの ID に基づいて制限するフィルターが正しく適用されるようになりました。これは、プロキシの機能をひとつのウィンドウだけに提供したいアドオンで役に立つでしょう。
* "すべてのタブ" ドロップダウンから コンテキストメニューでクリックするとき、適切なタブオブジェクトが渡されるようになりました。以前は、誤ってアクティブなタブが渡されていました。
* `downloads.download` に saveAs オプションをつけて使用したとき、最近使用したディレクトリーを記憶するようになりました。この情報は開発者が使用できませんでしたが、ユーザーにはとても便利でした。
過去のバージョン
--------

* 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 49 for developers
* Firefox 48 for developers
* Firefox 47 for developers