Firefox 71 for Developers - Mozilla

Firefox 71 for Developers
=========================

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

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

### 開発者ツール

コンソール:

* コンソールの マルチラインモード をデフォルトで有効にしました。
* コンソールの設定項目が、新しい ツールバーの設定メニュー に統合されました (Firefox バグ 1523868)。

JavaScript デバッガー:

* インラインの変数プレビュー を有効にしました (Firefox バグ 1576679)。
* as is the ability to イベントのタイプによるフィルタリング (en-US) と同様に、イベントのログ記録 (en-US) が可能になりました (Firefox バグ 1110276)。
* デバッガーの新しい 一時停止のオーバーレイ を、設定項目 `devtools.debugger.features.overlay` を使用して無効化できるようになりました (Firefox バグ 1579768)。
* デバッガーを開く新しい キーボードショートカット が使用可能になりました: Linux/Windows では
 `Ctrl`
 +
 `Shift`
 +
 `Z`
 、macOS では
 `Cmd`
 +
 `Opt`
 +
 `Z`
 です (Firefox バグ 1583042)。
* DOM Mutation のブレークポイント で一時停止すると、ブレークポイントを持つ DOM ノードや (存在すれば) 追加/削除された子ノードを表示するようになりました (Firefox バグ 1576145)。
* 整形されたソース 内の位置が、整形した後やインスペクターの イベントリスナーのツールチップ からジャンプしたときも正確になりました (Firefox バグ 1500222)。

ネットワークモニター:

* Web sockets インスペクター (en-US) をデフォルトで有効化しました (Firefox バグ 1573805)。
* 要求/応答のボディ、ヘッダー、Cookie の 全文検索 が可能になりました。
* 読み込み時に 特定の URL をブロックする パターンを入力できるようになりました。
* タイミングタブ で、`Server-Timing` ヘッダーで送信したタイミングデータを表示するようになりました (Firefox バグ 1403051)。

インスペクター:

* 色の値を持つ CSS 変数の定義の隣に、色見本を表示するようになりました (Firefox バグ 1456167)。
* `:visited` のスタイルを CSS ルールビューで表示するようになりました (Firefox バグ 713106)。
### CSS

* CSS Grid Level 2 から値 subgrid を、`grid-template-columns` および `grid-template-rows` に追加しました (Firefox バグ 1580894)。
* 段組みレイアウト で `column-span` をサポートしました (Firefox バグ 1426010)。
* `clip-path` で `path()` の値をサポートしました (Firefox バグ 1488530)。
* `<img>` 要素の `height` および `width` HTML 属性を、内部の `aspect-ratio` プロパティにマッピングしました (Firefox バグ 1585637)。この機能について、MDN のガイドをご覧ください。

#### 廃止

* CSS Radial Gradients が、負の値の半径を受け入れないようになりました (Firefox バグ 1583736)。サイト互換性情報の記事 をご覧ください。
### JavaScript

* `Promise.allSettled()` メソッドをサポートしました (Firefox バグ 1549176)。このメソッドは、先のコードを実行する前に promise のセットに含まれるすべての promise が解決または拒否されるまで待つことを容易にします。

#### 廃止

* Array の非標準のジェネリックメソッドを、Firefox 71 で削除しました (Firefox バグ 1222547)。これらは始めに Firefox 1.5 (JavaScript 1.6) で導入されて、Firefox 68 から非推奨になりました。配列状のオブジェクトで Array のジェネリックメソッドを使用している場合は、`Array.from()` を使用してオブジェクトを適切な配列に変換して、標準のメソッドを使用するようにしてください。
### MathML

* MathML 要素 が MathML DOM を実装しました。クラスは `MathMLElement` (en-US) です。例えば適切な MathML DOM と、`mathmlEl.style`、グローバルイベントハンドラーを使用できます。従来は MathML 要素が `Element` クラスのみ実装していました (Firefox バグ 1571487)。
### API

#### 新規 API

Media Session API を部分的に実装しました。この API は、メディアの再生状態に関するオペレーティングシステムの情報をコンテンツと共有するための標準的な仕組みを提供します。これはアーティスト、アルバム、トラック名、あるいはアルバムのアートワークといったメタデータを含みます (Firefox バグ 1580602)。

またこの API は、デバイスのメディア操作 (再生、停止、シークボタンなど) がユーザーによって行われたときに通知を受ける手段も提供します。このために `MediaSession` インターフェイスを部分的に実装して、現在再生しているメディアのメタデータを設定および取得する機能や `setActionHandler()` メソッドをサポートしました。`MediaSession` API へアクセスするには、`navigator.mediaSession` プロパティを使用してください。

#### DOM

* `StaticRange()` コンストラクターをサポートしました (Firefox バグ 1575980)。
* MathML の `MathMLElement` (en-US) インターフェイスを実装しました (Firefox バグ 1571487)。

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

* `MediaRecorder` インターフェイスに `audioBitsPerSecond` および `videoBitsPerSecond` プロパティを実装しました (Firefox バグ 1514158)。

#### Canvas と WebGL

* `OVR_multiview2` (en-US) および `OES_fbo_render_mipmap` (en-US) WebGL 拡張をデフォルトで公開しました (Firefox バグ 1584277, Firefox バグ 1583878)。

#### 廃止

`DataTransfer` の、非標準のメンバーを削除しました (Firefox バグ 1345192):

* `DataTransfer.mozItemCount`
* `DataTransfer.mozClearDataAt()`
* `DataTransfer.mozGetDataAt()`
* `DataTransfer.mozSetDataAt()`
* `DataTransfer.mozTypesAt()`
### WebDriver conformance (Marionette)

* `WebDriver:TakeScreenshot` および `WebDriver:TakeElementScreenshot` コマンドを、未処理のプロンプトの動作設定を尊重するように更新しました (Firefox バグ 1584927)。
* `Marionette:Quit` コマンドを、Firefox 以外の Gecko 駆動アプリケーションも終了または再起動できるように更新しました (Firefox バグ 1298921)。
* Android の GeckoView ベースブラウザーで、セッション機能で返される `browserName` が常に `firefox` になります (Firefox バグ 1587364)。
アドオン開発者向けの変更点
-------------

### API の変更点

* `downloads.download` が、以下の HTTP レスポンスコードをエラーとして識別および報告するようになりました:
    + 404 で `SERVER_BAD_CONTENT` を返します
    + 403 で `SERVER_FORBIDDEN` を返します
    + 402 および Proxy 407 で `SERVER_UNAUTHORIZED` を返します
    + 上記以外の 400 で `SERVER_FAILED` を返します (Firefox バグ 1576333)。
* `downloads.download` の省略可能な `options` 引数に、`allowHttpErrors` プロパティを含むようになりました。この `boolean` フラグを `true` に設定すると、HTTP エラーが発生した後もダウンロードを続けることができます。`false` に設定すると HTTP エラーが発生した際にダウンロードをキャンセルします。既定値は `false` です (Firefox バグ 1578955)。

#### 廃止

* `proxy.register()` (en-US) および `proxy.unregister()` (en-US) 関数を削除しました (Firefox バグ 1443259)。要求のプロキシ使用を制御するには `proxy.onRequest` (en-US) を使用してください。
関連情報
----

* Hacks ブログのリリース記事: Firefox 71: A year-end arrival
過去のバージョン
--------

* 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
* 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 121 for developers - Mozilla

Firefox 121 for developers
==========================

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

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

### HTML

* `<iframes>` の 遅延読み込み をサポートしました。特定の `<iframe>` が、表示されたときに限り読み込まれるべきであると開発者が示すことができます。これはページを読み込むときに取得しなければならないリソースを削減する (一部の `<iframes>` を取得する必要がない) ことで、最初の読み込み時間を短縮できます。
 このヒントは `<iframe>` 要素の `loading` 属性か、JavaScript で `HTMLIFrameElement.loading` (en-US) を使用して提供できます (Firefox bug 1622090)。
### CSS

* `text-wrap` (en-US) プロパティを、値 `balance` および `stable` をサポートするように更新しました。値 `balance` は見出しなど短いブロックのコンテンツで使用するもので、コンテンツが複数行にまたがるときにバランスがとれて読みやすくなります。値 `stable` は、編集可能なコンテンツをユーザーが編集するときにリフローしなくなります (Firefox bug 1731541)。
* よく親セレクターと呼ばれる、`:has()` セレクターをサポートしました。これは開発者が、関連する要素に基づいて要素にスタイルを適用することを可能にします。たとえば `li:has(ul)` はサブリストをを持つリストに、`h1:has(+ p)` は直後に段落を持つ見出しにマッチします。
* `text-indent` CSS プロパティで、値 `each-line` および `hanging` をサポートしました (Firefox bug 784648)。開発者は、特定のテキストインデントスタイルをより簡単に指定できます。また開発者はより創造的に、`text-indent` プロパティで複数の値を組み合わせることが可能になりました。例: `text-indent: 3em hanging each-line`
### JavaScript

* `Promise.withResolvers()` (en-US) 静的メソッドをサポートしました。これは戻り値の `Promise` と同じスコープで `resolve` および `reject` コールバック関数を公開して、Promise を構築した後に解決または拒否するコードを定義できます (Firefox bug 1845586)。
* `Date.parse()` が追加の日付形式をいくつか受け入れるようになりました。
    + `YYYY-MMM-DD` 形式で年が 9999 より大きい (例: `19999-Jan-01`) (Firefox bug 1858851)
    + `MMM-DD-YYYY` 形式 (例: `Jan-01-1970`) (Firefox bug 1863489)
    + ISO 形式でない日時でミリ秒 (例: `Jan 1 1970 10:00:00.050`) (Firefox bug 1863125)
    + 以前は拒否されていた、先頭に曜日がある形式。たとえば:
        - `Wed, 1970-01-01`
        - `Wed, 1970-Jan-01`曜日が正確である必要はありません。たとえば `foo 1970-01-01` は動作します (Firefox bug 1617562)。
* `Date.parse()` のその他の修正:
    + `YYYY-M-DD` および `YYYY-MM-D` 形式は、ISO 形式の日付 `YYYY-MM-DD` のように GMT であると想定しないようになりました (Firefox bug 1783731)。
    + すべての形式でミリ秒は四捨五入するのではなく、3 桁目より後を切り捨てるようになりました (Firefox bug 746529)。
### API

* `WebTransportSendStream` (en-US) インターフェイスの `sendOrder` (en-US) プロパティをサポートしました。WebTransport API (en-US) の *双方向* ストリームの相対的な送信優先度を、ストリームの作成後に取得および変更できます。このプロパティは一方向ストリームの優先度変更には使用できません。Firefox は一方向ストリームを `WebTransportSendStream` (en-US) ではなく `WritableStream` として実装しているためです (詳しくは Firefox bug 1853444 をご覧ください)。
### WebAssembly

* WebAssembly で、新たに `return_call` および `return_call_indirect` 命令が `call` (en-US) 命令をを置き換えることによって末尾呼び出し最適化をサポートしました。これはパフォーマンスの向上、スタック領域使用量の削減、末尾呼び出しを使用するプログラミング言語との互換性向上をもたらします。(Firefox bug 1858855).
### WebDriver conformance (WebDriver BiDi, Marionette)

#### WebDriver BiDi

* ブラウジングコンテキストが破棄されたときに発生する `browsingContext.contextDestroyed` イベントを追加しました (Firefox bug 1694390)。
* `script.callFunction` および `script.evaluate` コマンドの引数 `userActivation` をサポートしました。ユーザーアクションをエミュレートしている間に JavaScript を評価できます (Firefox bug 1845488)。
* `browsingContext.userPromptOpened` イベントの `defaultValue` フィールドをサポートしました。プロンプトの既定値をユーザーが取得できます (Firefox bug 1851761)。
* `browsingContext.captureScreenshot` コマンドの引数 `viewportOptions` を `boxOptions` に改名しました (Firefox bug 1859258)。
* `browsingContext.captureScreenshot` コマンドで引数 `origin` を採用して、`scrollIntoView` を削除しました (Firefox bug 1862649)。
* `browsingContext.captureScreenshot` コマンドで引数 `origin` をサポートしました。スクリーンショットの原点と範囲を定義できます。受け入れる値は `"document"` と `"viewport"` です (Firefox bug 1840999)。
* `Window` オブジェクトをシリアライズするとき、`Window` オブジェクトのコンテキスト ID を設定したプロパティ `context` が含まれるようになりました。これは特定のウィンドウやフレームを参照するために、Marionette との間で取り交わすことができます (Firefox bug 1841049)。
* データ構造 (配列やマップなど) へ入れ子になったノードのシリアライズが失敗する不具合を修正しました (Firefox bug 1861000)。
* `browsingContext.navigate` コマンドが誤ったナビゲーション ID を返す場合がある不具合を修正しました (Firefox bug 1861655)。

#### Marionette

* `Window` および `Frame` オブジェクトのシリアライズとデシリアライズをサポートしました (Firefox bug 1274251)。
実験的なウェブ機能
---------

以下の機能は Firefox 121 で新たに導入しましたが、デフォルトで無効です。これらを実験するには、`about:config` ページで適切な設定項目を検索して `true` に設定してください。実験的機能 のページで、さらに多くの機能を確認できます。

カスタム要素の状態の擬似クラス: `dom.element.customstateset.enabled`

カスタム要素は `states` (en-US) プロパティを通して、`CustomStateSet` (en-US) として内部状態を公開できます。`:--somestate` のような CSS のカスタム要素擬似クラスが、この要素の状態にマッチします。(Firefox bug 1861466)

HTML select 要素の `showPicker()` メソッド: `dom.select.showPicker.enabled`

`HTMLSelectElement.showPicker()` (en-US) メソッドはユーザー操作によって発生して、`<select>` 要素のブラウザーの選択ツールをプログラムから起動します。(Firefox bug 1854112)

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

* manifest.json の `background` キーに `service_worker` および `scripts` 宣言が含まれているとき、バックグラウンドページが開始しない具合を修正しました (Firefox bug 1860304)。

>
>
> **注記:** ちなみに Chrome 121 の変更で、`service_worker` プロパティとともに指定した `scripts` プロパティが無視されます。以前、Chrome は両方のプロパティを持つ拡張機能の読み込みを拒否していました (Chromium bug 1418934)。
>  詳しくは `background` マニフェストキーのブラウザーサポート をご覧ください。
>
>
>
>
過去のバージョン
--------

* Firefox 120 for developers
* Firefox 119 for developers
* Firefox 118 for developers
* Firefox 117 for developers
* Firefox 116 for developers
* Firefox 115 for developers
* Firefox 114 for developers
* Firefox 113 for developers
* Firefox 112 for developers
* Firefox 111 for developers
* 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 98 for developers - Mozilla

Firefox 98 for developers
=========================

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

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

### HTML

* HTML の `<dialog>` 要素をデフォルトで有効にしました。この要素とこれに関連づけられた DOM API は、HTML ベースのモーダルダイアログボックスを提供します (Firefox バグ 1733536)。
### CSS

* `hyphenate-character` プロパティで、ハイフネーションによる改行の末尾に置くハイフン記号 (`-`) の代わりに使用する文字列を設定できます (Firefox バグ 1751024)。
### JavaScript

変更なし。

### API

* `navigator.registerProtocolHandler()` で `ftp`、`sftp`、`ftps` スキームのプロトコルハンドラーを登録できるようになりました (Firefox バグ 1705202)。

#### DOM

* `HTMLElement.outerText` をサポートしました (Firefox バグ 1709790)。
* `colorSpaceConversion`、`resizeWidth`、`resizeHeight` プロパティを、`options` オブジェクトを使用して `createImageBitmap()` メソッドへ渡せるようになりました (Firefox バグ 1748868 および Firefox バグ 1733559)。

#### 廃止

* 非推奨の WebVR API を、すべてのビルドでデフォルトで無効にしました (以前は Windows、macOS およびすべての nightly/dev ビルドで有効でした)。
 これは `about:config` で、`dom.vr.enabled` を `true` に設定すると再び有効にできます (Firefox バグ 1750902)。
### WebDriver conformance (Marionette)

* 新たに開いたタブで、最初のページ読み込み確認を改良しました (Firefox バグ 1747359)。
アドオン開発者向けの変更点一覧
---------------

* `webRequest` を使用するウェブ拡張機能は Firefox が起動している間、初期に開始していました。これを、`webRequest` ブロッキング呼び出しを使用する拡張機能に限って早期スタートアップするように変更しました。ブロッキングでない呼出では、拡張機能の早期スタートアップが発生しません (Firefox バグ 1749871)。
* `userScripts.register` (en-US) に `cookieStoreId` を追加しました。これは、拡張機能がコンテナー特有のユーザースクリプトを登録できるようにします (Firefox バグ 1738567)。
過去のバージョン
--------

* 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 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 84 for developers - Mozilla

Firefox 84 for developers
=========================

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

**メモ:** Mozilla Hacks の And now for … Firefox 84 もご覧ください。

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

### 開発者ツール

* Firefox の アクセシビリティインスペクター で、ウェブページの タブオーダー の表示をサポートしました。ページがキー操作でどのようなナビゲーションになるかを、リンクをタブ移動するよりも高レベルな概要で示します (Firefox バグ 1654956)。
### HTML

*変更なし。*

### CSS

* `:not` 擬似クラスで、複雑なセレクターをサポートしました (Firefox バグ 933562)。

#### 廃止

* 独自仕様である `-moz-default-appearance` プロパティの値 `scrollbar-small` (代わりに `scrollbar-width: thin` を使用します) および `scrollbar` (macOS 限定。代わりに `scrollbar-horizontal` や `scrollbar-vertical` を使用します) を削除しました (Firefox バグ 1673132)。
### JavaScript

* `Intl.DateTimeFormat()` コンストラクター の引数として指定する独自の日時書式に、`fractionalSecondDigits` (秒の端数として表示する桁数) を含めることが可能になりました (Firefox バグ 1645107)。
### HTTP

*変更なし。*

### セキュリティ

* Firefox で `http://localhost/` や `http://dev.localhost/` のような `localhost` URL が、ローカルホストのループバックインターフェイス (例えば `http://127.0.0.1`) を参照するものとして保証されるようになりました。この結果、`localhost` から読み込まれるリソースが安全に提供された (安全なコンテキスト を参照) とみなされ、混在コンテンツ として扱われなくなります (Firefox バグ 1220810, Firefox バグ 1488740)。
### API

* Paint Timing API の `PerformancePaintTiming` インターフェイスをサポートしました (Firefox バグ 1518999)。
* `Navigator.registerProtocolHandler()` メソッドが、`scheme` と `url` の 2 つの引数のみ受け入れるようになりました。`title` は削除されました (Firefox バグ 1631464)。

#### Media、WebRTC、Web Audio

* `MediaRecorder.start()` メソッドで、記録されているストリームのいくつかのトラックが変更されたときに `InvalidModificationError` が発生するようになりました (Firefox バグ 1581139)。

#### 廃止

* アプリケーションキャッシュを削除しました。開発者は、代わりにサービスワーカー API を使用してください (Firefox バグ 1619673)。
### WebAssembly

*変更なし。*

### WebDriver conformance (Marionette)

* `WebDriver:PerformActions` および `WebDriver:ReleaseActions` に、chrome スコープのサポートを追加しました (Firefox バグ 1365886)。
* 新しい Fission 互換 API をデフォルトで有効にしました。以前の API に戻すには、設定項目 `marionette.actors.enabled` を `false` に設定します (Firefox バグ 1669169)。
* `WebDriver:SwitchToWindow` を、常にトップレベルのブラウジングコンテキストへ戻すように修正しました (Firefox バグ 1305822)。
* `WebDriver:SwitchToParentFrame` の、ブラウジングコンテキストの確認を改良しました (Firefox バグ 1671622)。
* `WebDriver:Back` で、現在選択されている `<iframe>` がアンロードされたときにハングアップする問題を修正しました (Firefox バグ 1672758)。

#### 既知の不具合

* ページナビゲーションの後、過去に取得した要素にアクセスすると常に "stale element" エラーが発生せず、"no such element" エラーが発生する場合があります。これを防ぐには、設定項目 `marionette.actors.enabled` を `false` に設定してください (Firefox バグ 1684827)。
アドオン開発者向けの変更点
-------------

* `browsingData.remove()` (en-US) API が、`cookieStoreId` でデータ型のサブセットの削除をサポートしました。
過去のバージョン
--------

* Firefox 83 for developers
* Firefox 82 for developers
* Firefox 81 for developers
* Firefox 80 for developers
* Firefox 79 for developers
* Firefox 78 for developers
* Firefox 77 for developers
* Firefox 76 for developers
* Firefox 75 for developers
* Firefox 74 for developers
* Firefox 73 for developers
* Firefox 72 for developers
* Firefox 71 for developers
* Firefox 70 for developers
* Firefox 69 for developers
* Firefox 68 for developers
* Firefox 67 for developers
* Firefox 66 for developers
* Firefox 65 for developers
* Firefox 64 for developers
* Firefox 63 for developers
* Firefox 62 for developers
* Firefox 61 for developers
* Firefox 60 for developers
* Firefox 59 for developers
* 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 26 for developers - Mozilla

Firefox 26 for developers
=========================

Firefox 26 は米国時間 2013 年 12 月 10 日にリリースされました。この記事では、ウェブ開発者だけでなく、 Firefox や Gecko の開発者やアドオン開発者にとっても有益な主な変更点を紹介します。

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

### CSS

* 現在も接頭辞付きである `text-decoration-line` プロパティは、`'blink'` を正しい値とみなすようになりました。ただし、コンテンツは点滅しません (Firefox バグ 812995)。
* 非標準の `-moz-text-blink` プロパティを削除しました (Firefox バグ 812995)。
* CSS Images & Values Level 4 バージョンにある、`from-image` キーワードと EXIF サポートを備えた `image-orientation` プロパティをサポートしました (Firefox バグ 825771)。
* `position: sticky` を実験的にサポートしました。設定 `layout.css.sticky.enabled` で有効にできます (Firefox バグ 886646)。
* `text-align` プロパティを `::-moz-placeholder` 疑似要素へ適用可能になりました (Firefox バグ 915551)。
### HTML

* `HTMLSelectElement.selectedOptions` プロパティを実装しました (Firefox バグ 596681)。
* type が `email` の `<input>` で、ドメインのラベルが 63 文字を超える値を正しいと考えないようになりました (Firefox バグ 884332)。
* `HTMLInputElement.width` プロパティおよび `height` プロパティは、`type` が `image` ではない場合に `0` を返すようになりました (Firefox バグ 905240)。
* 包含する要素のひとつが無効であるときに `<fieldset>` 要素が無効になり、`:invalid` 疑似クラスでスタイルを設定できます (Firefox バグ 717181)。
### JavaScript

EcmaScript 2015 の実装が続いています!

* ECMAScript 2015 に準拠した構文のジェネレーター (yield) を実装しました (Firefox バグ 666399)。
* ジェネレーター/イテレーターの結果が `{ value: foo, done: bool }` のように囲まれるようになりました (Firefox バグ 907744)。
* `Math` へ新たに、数値計算メソッドである `Math.fround()` を実装しました (Firefox バグ 900125)。
* 予約語を関数名に使用できません。使用すると `SyntaxError` が発生します (Firefox バグ 907958)。
* デフォルト引数の構文が、デフォルト引数の後にデフォルトのない引数を許容するように更新されました。 `function f(x=1, y)` のような形です。 Firefox バグ 777060 を参照してください。
* `GeneratorFunction` が実装されました (Firefox バグ 904701)。
### インターフェイス/API/DOM

* `DOMImplementation.createDocument` の最後の引数 (doctype) を省略可能にしました (Firefox バグ 909859)。
* 1 回の呼び出しで複数のクラスの追加や削除が可能な、新しい `element.classList` の仕様を実装しました (Firefox バグ 814014)。
* `URL()` コンストラクターを `URL` インタフェースに実装しました (Firefox バグ 887364)。
* `URLUtils.origin`, `URLUtils.password`, `URLUtils.username` の各プロパティが `URLUtils` を実装するすべてのインターフェイス、`URL`、`Location`、`HTMLAnchorElement`、`HTMLAreaElement` で利用可能になりました。 (Firefox バグ 887364)。
* `URL` インタフェースが、Web Workers からアクセス可能になりました (Firefox バグ 887364)。
* IndexedDB が「楽観的」なストレージ領域として使用できるようになりました。プロンプトを必要とせず、データは LRU 立ち退きポリシーでプールに保存され、短い一時的なストレージとなります (Firefox バグ 785884)。
* `WaveShaperNode.oversample` (en-US) についての対応が追加されました (Firefox バグ 875277)。
* 永続的なストレージのパスを `<profile>/indexedDB` から `<profile>/storage/persistent` に変更しました (b2g では `/data/local/indexedDB` から `/data/local/storage/persistent` に変更)。
* `Screen.orientation` プロパティおよび `Screen.lockOrientation()` メソッドで値 `default` をサポートしました。デバイスに応じて `portrait-primary` または `landscape-primary` が対応づけられます (Firefox バグ 908058)。
* `Event` コンストラクタを Web workers で使用できます (Firefox バグ 910910)。
* `<iframe>` に `sandbox` 属性がついている場合、埋め込まれているページで `Document.domain` プロパティを設定しようとすると、セキュリティエラーが発生するようになりました (Firefox バグ 907892)。
* `MessageEvent` インタフェースを、最新の仕様に準拠するように更新しました。`initMessageEvent` メソッドを削除した一方で、インタフェースがコンストラクタを持つようになりました (Firefox バグ 848294)。
* 設定 `dom.messageChannel.enabled` のもとで、HTML5 の `MessageChannel` API を実装しました (Firefox バグ 677638)。
* すべての WebVTT に関する実装と同様に、設定 `media.webvtt.enabled` のもとで `VTTCue` をサポートしました (Firefox バグ 868509)。
* Web Audio API が既定で利用できるようになりました (Firefox バグ 885505)。
### MathML

* `<mmultiscripts>`、`<msub>`、`<msup>`、`<msubsup>` の一貫性のないレンダリングを統一しました。また、これらの要素のエラー処理が改善しました (Firefox バグ 827713)。
### SVG

* OpenType 内への SVG グリフの包含である *SVG-in-OpenType* を、現行バージョンの仕様に適合するよう更新しました (Firefox バグ 906521)。
* `SVGElement.ownerSVGElement()` メソッドがエラーを発生させないようになりました (Firefox バグ 835048)。
開発ツール
-----

* インスペクターのリモートアクセスが可能になりました (Firefox バグ 805526).
* このリリースで、ウェブコンソールのテキストが選択可能になり、`::before` および `::after` が調査可能になり、そしてデバッガーやレスポンシブデザインビューの機能追加を計画しています。(https://hacks.mozilla.org/2013/09/new-features-in-the-firefox-developer-tools-episode-26/)
関連情報
----

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

* 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 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 17 for developers - Mozilla

Firefox 17 for developers
=========================

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

Want to help document Firefox 17? See the list of bugs that need to be written about and pitch in!

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

### HTML

* `<iframe>` 要素で `sandbox` 属性をサポートしました。(Firefox バグ 341604)
* `<input>` 要素で `inputmode` 属性をサポートしました。(注意: 現在 Gecko が提供する値は、WHATWG HTML 仕様書のものと異なります。) (Firefox バグ 746142)
### CSS

* CSS3 Conditional Rules 仕様書で定義されている `@supports` @-規則をサポートしました。これは既定で無効にされています。開発者の方は、`layout.css.supports-rule.enabled` を true に設定することで試すことができます (bug 649740)。
* 要素の表記方向を基にした要素選択を可能にする、CSS Selectors Level 4 の `:dir()` 疑似クラスをサポートしました。(bug 562169)
* CSS の`unicode-bidi` プロパティで新たに規定された値である `isolate-override` をサポートしました。(bug 774335)
* `box-sizing` の接頭辞付き実装が、`min-height` および `max-height` を考慮するようになりました。接頭辞が不要な実装に近づくステップのひとつです。(Firefox バグ 308801)
### DOM

* CSS3 Conditional Rules 仕様書で定義されている `CSSSupportsRule` インタフェースをサポートしました。(bug 649740)
* `WheelEvent` オブジェクトおよび `wheel` イベントをサポートしました (Firefox バグ 719320)。
* Linux において DOM Meta キーを再びサポートしました (Firefox バグ 751749)。
* `HTMLMediaElement` で、新たなメソッド `mozGetMetadata` をサポートしました (Firefox バグ 763010)。これは、再生しているメディアのリソースから得たメタデータを {key: value} の組として表すプロパティを持つ、JavaScript オブジェクトを返します。
### JavaScript

* `String` オブジェクトが Harmony の `startsWith`、`endsWith`、および `contains` メソッドを提供します。(bug 772733)
* strawman `ParallelArray` オブジェクトが試験的に実装されました。(Firefox バグ 778559)
* `Map` (en-US)/`Set` (en-US) のイテレートをサポートしました。(Firefox バグ 725909)
* Web コンテンツでは、デフォルトで E4X を無効にしました。(Firefox バグ 778851)
* Chrome JavaScript オブジェクトを content に公開するには、`__exposedProps__` の設定が必要になりました。`__exposedProps__` の設定なしに content から Chrome オブジェクトへのアクセスを試みても失敗します (Firefox バグ 553102)。
### WebGL

### SVG

### MathML

* `<mtable>` 要素の `align` 属性のパース処理を、任意のスペースをより正しく扱うように更新しました。
### XUL

* XUL の key 要素で、Win キー (Super または Hyper キー) の "os" モディファイアをサポートしました (Firefox バグ 751749)。
### ネットワーク

### 開発者ツール

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

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

`nsIInputStream`

`available()` メソッドは 32 ビット長ではなく 64 ビット長で値を返します。(Firefox バグ 215450)

`nsIDOMWindowUtils`

`sendMouseScrollEvent()` メソッドは `sendWheelEvent()` に置き換えられました。(Firefox バグ 719320)

`nsIFilePicker`

ファイルダイアログを非同期的に開くための `open()` メソッドを追加し、また `show()` メソッドは非推奨になりました。(Firefox バグ 731307)

`nsIScriptSecurityManager`

`checkLoadURIStr()` メソッドおよび `checkLoadURI()` メソッドが削除されました。(Firefox バグ 327244)

`nsIRefreshURI`

`setupRefreshURIFromHeader()` メソッドに引数 `principal` が追加されました。(Firefox バグ 327244)

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

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

以下のインタフェースが削除されました。

関連記事
----

* 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 75 for developers - Mozilla

Firefox 75 for developers
=========================

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

**付随する hacks ブログの記事「Firefox 75: Ambitions for April」もご覧ください。**

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

### 開発者ツール

* 測定ツール で長方形のリサイズが可能になりました (Firefox バグ 1152321)。
* インスペクター で、以前から使用できていた CSS セレクターに加えて、XPath の式を使用して要素を示すことが可能になりました (Firefox バグ 963933)。
* プレーンテキストによる検索に加えて、スラッシュの間に 正規表現 を記述することで WebSocket メッセージをフィルタリングできるようになりました (Firefox バグ 1593837)。
### HTML

* `<img>` 要素の `loading` 属性を実装しました。この文字列値は `lazy` を設定することで、画像を 遅延読み込み するべきであると示します (Firefox バグ 1542784)。
* `<style>` 要素の `type` 属性の値を、仕様書に従って `text/css` のみに限定しました (Firefox バグ 1614329)。
### CSS

* `min()`、`max()`、`clamp()` 関数を実装しました (Firefox バグ 1519519)。
* `text-decoration-skip-ink` プロパティの値 `all` を追加しました (Firefox バグ 1611965)。
### アクセシビリティ

ARIA annotations (en-US) に関する新しいロールやオブジェクトを、Windows および Linux の Firefox で公開しました (これらはスクリーンリーダーがサポートするまで使用できないことを覚えておいてください):

* `aria-description` (Firefox バグ 1608961)
* `role="mark"` (en-US) および `role="suggestion"` (en-US) (Firefox バグ 1608965)
* `role="comment"` (en-US) (Firefox バグ 1608969)
* `aria-details` で複数の ID (Firefox バグ 1608883)

**メモ:** macOS では、はじめに Apple が Safari で Apple 方式の属性として VoiceOver へ公開するものを定義することを待っており、それらに一式に従う計画です。

### JavaScript

* Public static class fields (en-US) をサポートしました (Firefox バグ 1535804)。
* `Intl.Locale` クラスをサポートしました (Firefox バグ 1613713)。
* `Function.caller` プロパティを、最新の ECMAScript 仕様の提案 に合わせて更新しました。呼び出し元が strict、async、あるいは generator 関数であった場合に、以前は `TypeError` が発生していましたが、`null` を返すようになりました (Firefox バグ 1610206)。
### API

#### DOM

* `HTMLFormElement` インターフェイスへ新たに `requestSubmit()` メソッドを追加しました。古い (現在も使用できる) `submit()` メソッドとは異なり、`requestSubmit()` はフォームのデータを宛先に送信するだけでなく、指定した送信ボタンがクリックされたかのように動作します。よって `submit` イベントが発生して、フォームはデータを送信する前に妥当性のチェックを受けます (Firefox バグ 1613360)。
* `submit` イベントが単なる `Event` ではなく、`SubmitEvent` 型のオブジェクトとして表すようになりました。`SubmitEvent` は新たに `submitter` プロパティを持っており、これはフォームの送信を発生させた `Element` です。このイベントにより送信イベントに対してひとつのハンドラーで、複数のボタンやリンクのうちどれがフォームの送信に使用されたかを見わけることが可能になります (Firefox バグ 1588715)。
* 切り離された (DOM ツリーの一部ではない) 要素で `click()` メソッドを呼び出すと、その要素に `click` イベントを送信するようになりました (Firefox バグ 1610821)。

#### Web animations API

Firefox 75 で、Web Animations API に複数の機能を追加しました:

* ほかの無期限に実行されるアニメーションによって置き換えられたアニメーションを自動的に削除するような、Implicit to/from keyframes をサポートしました (Firefox バグ 1618773)。これは以下のサポートを含みます:
    + `Animation.commitStyles()`
    + `Animation.onremove` (en-US)
    + `Animation.persist()`
    + `Animation.replaceState`
* `Animation.timeline` ゲッター、`Document.timeline`、`DocumentTimeline` (en-US)、`AnimationTimeline` (en-US) の機能をデフォルトで有効にしました (Firefox バグ 1619178)。
* `Document.getAnimations()` および `Element.getAnimations()` メソッドをデフォルトで有効にしました (Firefox バグ 1619821)。

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

* `RTCPeerConnection.setLocalDescription()` (en-US) メソッドを引数なしで呼び出せるようになりました。この場合、WebRTC ランタイムは新しいローカルセッションデスクリプション自体を作成しようとします (Firefox バグ 1568292)。
### HTTP

*変更なし。*

### セキュリティ

* CSS セレクターや `.getAttribute("nonce")` の呼び出しなど、スクリプト以外をソースとする CSP nonce が隠されるようになりました。代わりに、スクリプトから nonce へアクセスするには `.nonce` (en-US) プロパティを確認してください (Firefox バグ 1374612)。
### プラグイン

*変更なし。*

### WebDriver conformance (Marionette)

* Firefox が起動するとき常に Marionette の初期化が行われる不具合を修正しました。コマンドライン引数や環境変数で制限されるようになりました (Firefox バグ 1622012)。
* `WebDriver:Print` が、文書に余分なマージンを追加しないようになりました (Firefox バグ 1616932)。
* 投機的な接続を強制的に無効化するため `network.http.speculative-parallel-limit` の設定値を `0` に変更していた動作を修正しました (Firefox バグ 1617869)。
### その他

*変更なし。*

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

### API の変更点

* `browserSettings` に新たな設定を追加しました (Firefox バグ 1286953):
    + ズームがサイトごとかタブごとかを制御する `browserSettings.zoomSiteSpecific` (en-US)。
    + ズームがページ全体に適用されるかテキストのみに適用されるかを制御する `browserSettings.zoomFullPage` (en-US)。
* `tabs.saveAsPDF` (en-US) を使用して PDF 形式で保存するときに使用するファイル名を、`tabs.PageSettings` の `toFileName` で指定できるようになりました (Firefox バグ 1483590)。
### マニフェストの変更点

* "privacy" パーミッションが省略可能になりました (Firefox バグ 1618399)。
過去のバージョン
--------

* 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
* Firefox 46 for developers
* Firefox 45 for developers
* Firefox 44 for developers


Firefox 114 for developers - Mozilla

Firefox 114 for developers
==========================

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

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

### 開発者ツール

* アクセシビリティ調査ツール が、要素の ARIA ロールを正しく表示しない不具合を修正しました。これは、landmark ロール (en-US) の表示に影響します。
 ARIA にマッピングできないロールは、Gecko の内部ロール名を使用します (Firefox bug 1572512)。
### HTML

変更なし。

### CSS

* `:lang()` 疑似クラスで、言語コードのマッチングに接頭辞マッチング方式に代わって、文字列マッチング方式 (`*` ワイルドカードを含む) を使用するようになりました。
 また、複数の言語にマッチする、カンマ区切りの言語リストをサポートしました (Firefox bug 1121792)。
* 文字を記号に置き換えることができる、-webkit-text-security プロパティをサポートしました。このプロパティを使用して、伏せ字の表現を制御できます (Firefox bug 1826629)。
* `calc()` 関数内で、定数 `infinity` および `NaN` をサポートしました (Firefox bug 1830759)。
### JavaScript

* ワーカー で ECMAScript モジュール の読み込みをサポートしました。
 `Worker` および `SharedWorker` コンストラクター で `{type: "module"}` オプションを指定すると、ワーカーにモジュールを読み込めます。
 また、`import` および `import()` を使用して、ワーカースクリプトへ静的および動的にモジュールをインポートできます (Firefox bug 1812591)。
* ワークレット で、ECMAscript/JavaScript モジュール を静的にインポートする `import` が使用可能になりました (Firefox bug 1812591)。
### SVG

* `image` および `feImage` (en-US) 要素で `crossorigin` (en-US) 属性をサポートしました (Firefox bug 1240357)。
### API

* `Window.print()` が Android 版 Firefox で印刷ダイアログを開くようになり、現行の文書を印刷できるようになりました (Firefox bug 1809922)。
* WebTransport API (en-US) をサポートしました。`WebTransport` (en-US)、`WebTransportBidirectionalStream` (en-US)、`WebTransportDatagramDuplexStream` (en-US)、`WebTransportReceiveStream` (en-US)、`WebTransportDatagramDuplexStream` (en-US)、`WebTransportError` (en-US) インターフェイスをサポートしています。
 詳しくは Firefox bug 1692754、Firefox bug 1818754、Firefox bug 1791835 をご覧ください。
* `@import` アットルール を使用するときに指定した `supports()` 条件を取得する、`CSSImportRule.supportsText` が使用可能になりました (Firefox bug 1829590)。

#### DOM

変更なし。

#### Media、WebRTC、Web Audio

変更なし。

#### 廃止

* 非推奨かつ非標準の `mozImageSmoothingEnabled` プロパティを完全に削除しました。
 スケーリングされた画像の平滑化については、`imageSmoothingEnabled` プロパティをご覧ください (Firefox bug 1228850)。
### WebDriver conformance (WebDriver BiDi, Marionette)

#### WebDriver BiDi

* `input.performActions` および `input.releaseActions` コマンドをサポートしました。これらは、ウェブページ上の要素と対話するユーザー入力のエミュレーションに使用できます。Marionette と同様に、WebDriver の仕様で利用できるすべての入力ソース `key`、`pointer`、`wheel` をサポートしています (Firefox bug 1832380)。
* ブラウザー対クライアントの独自のメッセージをサポートしました。過去に `script.addPreloadScript` でインストールしたスクリプトから `script.message` イベントを発信できます (Firefox bug 1824187)。
* `script.evaluate` および `script.callFunction` で、`RemoteValue` のシリアライズを設定するための引数 `serializationOptions` をサポートしました (Firefox bug 1824953)。
* `script.evaluate` および `script.callFunction` コマンドで、拒否されたプロミスのスタックトレースが含まれず、また例外の詳細情報を適切に構築しない不具合を修正しました (Firefox bug 1829630)。
* `browsingContext.domContentLoaded` および `browsingContext.load` イベントで、ページで `<base>` メタタグを定義した場合に `url` が正しく報告されない不具合を修正しました (Firefox bug 1825634)。

#### Marionette

* `WebDriver:GetComputedRole` コマンドが、正しい WAI-ARIA ロールを返さない不具合を修正しました (Firefox bug 1822112)。
* 同じ `WebDriver:ElementSendKeys` コマンドで修飾キーを再び使用したときに、修飾キーがリセットされない不具合を修正しました (Firefox bug 1776190)。
アドオン開発者向けの変更点一覧
---------------

### 廃止

* Manifest V3 拡張機能で、`action` (en-US)、`options_ui`、`page_action`、`sidebar_action` マニフェストキーの `browser_style` (en-US) を非推奨にしました (Firefox bug 1827910)。Manifest V3 拡張機能の `browser_style` からの移行に関する情報は、Manifest v3 migration (en-US) をご覧ください。
過去のバージョン
--------

* Firefox 113 for developers
* Firefox 112 for developers
* Firefox 111 for developers
* 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 44 for developers - Mozilla

Firefox 44 for developers
=========================

Firefox の最新の開発者向け機能を試すには、 Firefox Developer Edition をインストールしてください。Firefox 44 は、米国時間 2016 年 1 月 26 日にリリースされました。この記事では、ウェブ開発者だけでなく、 Firefox や Gecko の開発者、アドオン開発者にとっても有用な主な変更点を挙げています。

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

### 開発者ツール

主要なもの:

* メモリーツール
* アニメーションインスペクターの改良
* 新しいウォーターフォールマーカー: DomContentLoaded、load、ワーカーメッセージ

Firefox 43 と Firefox 44 の間で修正された開発ツールのすべてのバグ。

### HTML

* `<link rel="prefetch">` が、`crossorigin` 属性に従うようになりました (Firefox バグ 1214819)。
### CSS

* `position: fixed;` が、常に新たな重ね合わせコンテキストを生成するようになりました (Firefox バグ 1179288)。
* `unicode-range` (en-US) の対応を、既定で有効にしました (Firefox バグ 1119062)。
* CSS 書字方向の実験的な実装を更新して、最新の仕様を反映しました。
    + `text-orientation` プロパティの値 `sideways` を実装して、`sideways-right` をこの値の別名にしました (Firefox バグ 1193488)。
    + `sideways-rl` および `sideways-lr` の値を`writing-mode` プロパティに実装しました (Firefox バグ 1193488 および Firefox バグ 1193519)。
* 非標準のプロパティ `-moz-math-display` および `-moz-window-shadow` は、ウェブコンテンツで使用できなくなりました (Firefox バグ 1207002、Firefox バグ 1211040、Firefox バグ 1212607)。
* `font-style` で、`oblique` と `italic` の両方を使用できる場合は、両者を区別するようになりました (Firefox バグ 543715)。
* 未対応であるにもかかわらず `@page/marks`、`orphans`、`page` (en-US)、`size`、`widows` の各プロパティがパースされ、`@supports` で誤って対応済みであると報告していました。この問題を修正してパースしないように、また対応済みとしないようになりました (Firefox バグ 1215702)。
* 内部で使用する値 `-moz-mac-unified-toolbar` を、`appearance` プロパティで使用できる値から外しました (Firefox バグ 1206468)。
* いくつかの `-webkit` 接頭辞付きプロパティおよび値を、ウェブ互換性のために対応しました。設定項目 `layout.css.prefixes.webkit` で制御しており、既定値は `false` です (Firefox バグ 837211)。
    + `-webkit-animation`
    + `-webkit-animation-delay`
    + `-webkit-animation-direction`
    + `-webkit-animation-duration`
    + `-webkit-animation-fill-mode`
    + `-webkit-animation-iteration-count`
    + `-webkit-animation-name`
    + `-webkit-animation-play-state`
    + `-webkit-animation-timing-function`
    + `-webkit-text-size-adjust`
    + `-webkit-transform`
    + `-webkit-transform-origin`
    + `-webkit-transform-style`
    + `-webkit-transition`
    + `-webkit-transition-delay`
    + `-webkit-transition-duration`
    + `-webkit-transition-property`
    + `-webkit-transition-timing-function`
    + `-webkit-border-radius`
    + `-webkit-border-top-left-radius`
    + `-webkit-border-top-right-radius`
    + `-webkit-border-bottom-left-radius`
    + `-webkit-border-bottom-right-radius`
    + `-webkit-appearance`
    + `-webkit-background-clip`
    + `-webkit-background-origin`
    + `-webkit-background-size`
    + `-webkit-border-image`
    + `-webkit-box-shadow`
    + `-webkit-box-sizing`
    + `-webkit-user-select`
    + `-webkit-linear-gradient()` Firefox バグ 1210575
    + `-webkit-radial-gradient"()` Firefox バグ 1210575
    + `-webkit-repeating-linear-gradient()` Firefox バグ 1210575
    + `-webkit-repeating-radial-gradient()` Firefox バグ 1210575
### JavaScript

#### 新規 API

* `Symbol.toPrimitive`、`Symbol.prototype[@@toPrimitive]`、`Date.prototype[@@toPrimitive]` を実装しました (Firefox バグ 1054756)。

#### 変更点

* グローバルレベルにおける `let` および `const` のバインディングを、ES2015 に準拠させました。Firefox バグ 589199 およびブログ記事 "Breaking changes in let and const in Firefox Nightly 44" をご覧ください。また、`let` が既定でウェブ JavaScript （厳格モードおよび非厳格モード）で使用できるようになり、バージョンのオプトインが不要になりました (Firefox バグ 932517)。
* 型付き配列 (`Int8Array` や `ArrayBuffer` など) のコンストラクターを `new` 演算子をつけずに関数として呼び出した場合に、ES6 仕様に従って `TypeError` が発生するようになりました (Firefox バグ 980945、Firefox バグ 1214936)。
* `RegExp` のスティッキーフラグが、ES2015 標準の anchored sticky regular expressions に従うようになりました (Firefox バグ 773687)。
* JavaScript シェル (SpiderMonkey の REPL) の既定 JS バージョンが、ウェブ互換の JS バージョンになりました (JS1.7 以降ではありません) (Firefox バグ 1192329)。

#### 廃止

* 非標準の `let` ブロックを廃止しました (Firefox バグ 1167029)。
* 非標準かつ非推奨である `Object.prototype.__noSuchMethod__` プロパティを削除しました (Firefox バグ 683218)。
### インターフェイス/API/DOM

#### DOM & HTML DOM

* 既存のサイトとの互換性を確保するため、 `Document.charset` を `Document.characterSet` の別名として実装しました (Firefox バグ 647621)。
* ウェブページから Sherlock プラグインをインストールすることを可能にする `window.sidebar.addSearchEngine()` メソッドの対応を廃止して、ウェブコンソールに警告を出力するようになりました (Firefox バグ 862148)。
* 望まないポップアップに対抗するため、対話がないページでは `beforeunload` イベントで要求されたプロンプトを表示しないようになりました (Firefox バグ 636905)。
* 非推奨メソッド `MessageEvent.initMessageEvent()` を、後方互換性のために再実装しました (Firefox バグ 949376)。
* 廃止した `DocumentType.internalSubset` プロパティを削除しました (Firefox バグ 801545)。
* 既存のサイトとの互換性を確保するため `Window.orientation` (en-US) プロパティ、`Window.onorientationchange` プロパティおよび `orientationchange` イベントを実装しました (Firefox バグ 920734)。
* 明示的に全画面表示を要求した `<iframe>` は、暗黙的に全画面表示が解除されないようになりました (Firefox バグ 1187801)。
* イベント `mouseover`, `mouseout`, `mouseenter`, `mouseleave`, `pointermove`, `pointerover`, `pointerout`, `pointerenter`, `pointerleave` が、無効化したフォーム要素で発生するようになりました (Firefox バグ 218093)。
* 相互運用性を高めるため、`Element.webkitMatchesSelector()` メソッドを追加しました (Firefox バグ 1216193)。
* 仕様書に合致させるため、`Document.createAttribute()` は入力内容を小文字に変換するようになりました (Firefox バグ 1176313)。
* `Window.open()` の非標準機能である `dialog` はウェブコンテンツで使用できなくなりました。拡張機能や chrome 特権を持つコードでは引き続き使用可能です (Firefox バグ 1095236)。

#### Canvas

* `OffscreenCanvas` (en-US) API の実験的な実装を追加し、レンダリングコンテキスト (WebGL など) がウェブワーカー内で実行することができるようになりました。この実験的な API を使用するには、about:config で `gfx.offscreencanvas.enabled` を `true` に設定してください (Firefox バグ 709490)。この API に含まれるものは以下のとおりです。
    + `OffscreenCanvas` (en-US) インターフェイス
    + `HTMLCanvasElement.transferControlToOffscreen()`
    + `WebGLRenderingContext.commit()`
    + この API を有効にすると、いくつかの WebGL インターフェイスもワーカーで使用可能になりました。

#### WebGL

* Uniform Buffer Objects を実装しました (Firefox バグ 1048747)。

#### IndexedDB

* `IDBIndex.getAll()` および `IDBIndex.getAllKeys()`、それに反対側の `IDBObjectStore` を既定で有効にしました (Firefox バグ 1196841)。

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

* `ServiceWorkerMessageEvent` および `ExtendableMessageEvent` インターフェイスを実装しました (Firefox バグ 1143717 および Firefox バグ 1207068)。
* `Headers` オブジェクトが組イテレーターに対応しました。すなわち、 `Headers.entries()`, `Headers.keys()`, `Headers.values()` の各メソッドが利用できるようになりました。 `Symbol.iterator` も既定のイテレーターを返すようになりました (Firefox バグ 1108181)。
* `XMLHttpRequest` API がサービスワーカーで無効化されました (Firefox バグ 931243)。
* `FetchEvent` インターフェイスが `ExtendableEvent` を継承するようになり、 `ExtendableEvent.waitUntil()` メソッドにアクセスできるようになりました (Firefox バグ 1214772)。
* 仕様書の最新の変更に従い、 `FetchEvent.client` が削除されました (Firefox バグ 1218135)。
* 最新の仕様書に一致するように、 `ServiceWorkerContainer.onreloadpage` が削除されました。 (Firefox バグ 1218139).
* `onbeforeevicted` および `onevicted` イベントハンドラーは、仕様書に準拠していなかったので削除されました。将来的に再導入される予定ですが、削除することで期待通りの機能検出が可能になります (Firefox バグ 1218142)。
* `FetchEvent()` コンストラクターで、 `isReload` が options 辞書に存在しなかった場合の既定値が `false` になりました (Firefox バグ 1216401)。
* `Client.frameType` プロパティが正しいインターフェイスに実装されました。以前は `WindowClient` にありました (Firefox バグ 1218146)。
* AppCache がページをオフラインに対応させるために使用された場合、コンソールに警告メッセージを表示し、開発者にサービスワーカーを使用するよう助言するようになりました (Firefox バグ 1204581)。
* Gecko で、サービスワーカーが既定で有効化されました。

#### WebRTC

* WebRTC インターフェイスの*接頭辞が外されました* (Firefox バグ 1155923)。具体的には、
    + `mozRTCPeerConnection` が `RTCPeerConnection` になりました。
    + `mozRTCIceCandidate` が `RTCIceCandidate` (en-US) になりました。
    + `mozRTCSessionDescription` が `RTCSessionDescription` になりました。
* `RTCDataChannel.bufferedAmountLowThreshold` (en-US) プロパティおよび `bufferedamountlow` (en-US) イベントを実装しました (Firefox バグ 1178091)。
* `RTCPeerConnection.canTrickleIceCandidates` 属性を追加して、非標準メソッド `RTCPeerConnection.updateIce()` を削除しました (Firefox バグ 1209744)。
* `MediaStream` インターフェイスで `MediaStream.addTrack()` および `MediaStream.removeTrack()` (en-US) メソッドに対応しました (Firefox バグ 1103188)。
* `MediaStream()` コンストラクタを実装しました (Firefox バグ 1070216)。
* `RTCOfferOptions` (en-US) の、非標準である制約的なオプションリストの対応を廃止しました。

#### 新規 API

* Workers での Canvas API を実験的に実装しました。 `OfflineCanvas` および `HTMLCanvasElement.transferControlToOffscreen()` が使用できます。設定項目 `gfx.offscreencanvas.enabled` で制御しており、現在は既定で無効化しています (Firefox バグ 709490)。
* Web Speech API の一部である Text2Speech API で、OS X のバックエンドに対応しました。ただし、既定で無効化しています (Firefox バグ 1003452)。

#### その他

* `URLSearchParams` オブジェクトで組イテレーターに対応しました。`URLSearchParams.entries()`、`URLSearchParams.keys()`、`URLSearchParams.values()` の各メソッドを使用できます。また `Symbol.iterator` は、既定のイテレーターを返すようになりました (Firefox バグ 1085284)。
* `FormData` オブジェクトで組イテレーターに対応しました。`FormData.entries()`、`FormData.keys`、`FormData.values()` の各メソッドを使用できます。また `Symbol.iterator` は、既定のイテレーターを返すようになりました (Firefox バグ 1127703)。
* `XMLHttpRequest.send()` を HTML 文書で使用したとき、`application/xml` に代わり `text/html` を使用するようになりました (Firefox バグ 918771)。
* 音声合成 (text-to-speech) を Mac および Linux 向けのデスクトップ版 Firefox に実装しました。ただし、`about:config` の `media.webspeech.synth.enabled` フラグで無効化しています (Firefox バグ 1003452、Firefox バグ 1003464)。詳しくは Web Speech API をご覧ください。
* `<frame>` または `<object>` の内部にある要素は、全画面表示できないようになりました (Firefox バグ 1212299)。
* WOFF フォントのサニタイズ処理を、少々強化しました。誤りがあるフォントをより多く拒否するようになりましたが、 Firefox 46 でやや緩和しました (Firefox バグ 1193050 および Firefox バグ 1244693)。
### MathML

*変更なし。*

### SVG

*変更なし。*

### Audio/Video

*変更なし。*

HTTP
----

* Brotli アルゴリズムに対応しました。また、 `Accept-Encoding` および `Content-Encoding` ヘッダーで値 `br` に対応しました (Firefox バグ 366559 および Firefox バグ 1211916)。
* 改行 (`'/n'`) を含む HTTP/2 ヘッダーについて、HTTP/1 とは異なり仕様書で許可されていないため、誤って対応していた箇所を削除しました (Firefox バグ 1197847)。
ネットワーク
------

*変更なし。*

セキュリティ
------

* Beta および Release 版のブラウザーでも、RC4 が既定で無効になりました (Firefox バグ 1201025)。また、ホワイトリストが既定で空になりました (Firefox バグ 1215796)。
アドオン開発者と Mozilla 開発者向けの変更点
--------------------------

### インターフェイス

*変更なし。*

### XUL

*変更なし。*

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

* Sqlite.jsm で `LIKE` に対応しました (Firefox バグ 1188760)。
* Snackbars.jsm モジュールを Android 版 Firefox に追加しました (Firefox バグ 1215026)。
### XPCOM

* `nsIDOMWindow` インターフェイスが空になりました。存在していたアイテムは使用されない、他のインターフェイスに移転、あるいは C++ に限り使用するものになりました。C++ コードから利用できるアイテムは、nsPIDOMWindow インターフェイスに存在しています (Firefox バグ 1216401)。
### その他

* Firefox 44 での大幅な変更 (bug 1202902) により、cfx でパックしたアドオンが動作しなくなります。再びアドオンが互換性を持つようにするために、jpm を使用してください。 *cfx* から *jpm* に移行する手順はこちらに記載しています。
過去のバージョン
--------

* 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 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 118 for developers - Mozilla

Firefox 118 for developers
==========================

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

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

### HTML

* `<search>` 要素をサポートしました。`<search>` 要素は、検索やフィルタリング操作に使用するすべての要素を包含する役割を持つグループ要素です (Firefox bug 1824121)。
### CSS

* `font-synthesis-position` (en-US) プロパティと、`font-synthesis` ショートハンドプロパティの値 `position` をサポートしました。これらは `font-variant-position` を使用しているときに、上付き文字や下付き文字のグリフを持たないフォントでそれらを無効にすることができます (Firefox bug 1849010)。
* 以下の CSS 数学関数 をサポートしました: `abs()` (en-US)、`sign()` (en-US)、`round()` (en-US)、`mod()` (en-US)、`rem()` (en-US)、`pow()` (en-US)、`sqrt()` (en-US)、`hypot()` (en-US)、`log()` (en-US)、`exp()` (en-US) (Firefox bug 1814589)。
* CSS `font-size-adjust` プロパティの新しいキーワード `from-font` で、最初に使用可能なフォントから望まれた `<font-metric>` を取得できるようになりました (Firefox bug 1708240)。
* CSS の `transform-box` プロパティで、値 `content-box` および `stroke-box` をサポートしました。値 `content-box` は content box を参照ボックスとして使用します。また、値 `stroke-box` は SVG の図形を包含するストロークのバウンディングボックスを参照ボックスとして使用します (Firefox bug 1819464)。
* CSS `font-size-adjust` プロパティで、最初に使用可能なフォントから望まれた `<font-metric>` を取得できるキーワード `from-font` をサポートしました (Firefox bug 1708240)。
### JavaScript

変更なし。

### HTTP

* HTTP `Permissions-Policy` ヘッダーの `publickey-credentials-get` (en-US) ディレクティブをサポートしました。これはクロスオリジンのインラインフレームで、公開鍵証明書を取得するために Web Authentication API インターフェイスを使用可能にします (Firefox bug 1460986)。
### MathML

* `<semantics>` および `<maction>` (en-US) 要素が、デフォルトで最初の子要素のみ表示するようになりました。設定項目 `mathml.legacy_maction_and_semantics_implementations.disabled` を削除しました (Firefox bug 1788223)。
* `mathvariant` で、`normal` を除くすべての値が非推奨になりました。また、この属性を使う要素が `<mi>` に限定されました (Firefox bug 1845461)。
### SVG

変更なし。

### セキュリティ

変更なし。

### API

* Windows の `⊞ Windows ロゴ` キーおよび macOS の `Command` キーについて、`KeyboardEvent.key` が値 `"OS"` ではなく `"Meta"` を、`KeyboardEvent.code` が値 `OSLeft`/`OSRight` ではなく `MetaLeft`/`MetaRight` を返すようになりました (Firefox bug 1232918)。
* `RTCRtpTransceiver.currentDirection` (en-US) および `RTCRtpTransceiver.direction` (en-US) プロパティで、トランシーバーが停止したかを示す値 `"stopped"` をサポートしました。これは、非推奨の `RTCRtpTransceiver.stopped` (en-US) プロパティに代わって使用するべきです (Firefox bug 1568296)。
* `RTCPeerConnection.getTransceivers()` (en-US) が返す配列で、停止したトランシーバーを除外するようになりました。同様に `RTCPeerConnection.getReceivers()` (en-US) および `RTCPeerConnection.getSenders()` (en-US) が、停止したトランシーバーに関連づけられたレシーバーおよびセンダーを除外します (Firefox bug 1568296)。
* `TextMetrics.emHeightDescent` (en-US) および `TextMetrics.emHeightAscent` (en-US) プロパティをサポートしました (Firefox bug 1841692)。
### WebDriver conformance (WebDriver BiDi, Marionette)

#### 一般

* WebDriver BiDi および Marionette で、返されたユーザープロンプトの文字列が空になる現象を引き起こす Android の内部競合を修正しました (Firefox bug 1848167)。
* Marionette の `WebDriver:PerformActions` コマンドおよび WebDriver BiDi の `browsingContext.performActions` コマンドで、高解像度ディスプレイが接続された環境で `wheel` 入力ソースによるスクロールが失敗する問題を修正しました (Firefox bug 1849229)。

#### WebDriver BiDi

* ユーザーが指定したバックグラウンドのタブをフォアグラウンドに移動できるコマンド `browsingContext.activate` を追加しました (Firefox bug 1841004)。
* 表示された `alert`、`confirm` または `prompt` 型のユーザープロンプトを受け入れるか拒否できるコマンド `browsingContext.handleUserPrompt` を追加しました (Firefox bug 1824197)。
* `alert`、`confirm` または `prompt` 型のユーザープロンプトが開いたときに発生するイベント `browsingContext.userPromptOpened` を追加しました (Firefox bug 1824224)。
* `event` メッセージまたはコマンドの成功状態を識別するためにクライアントへ返される JSON ペイロードに、`type` フィールドを追加しました。これは `success` または `error` のいずれかになります (Firefox bug 1844009)。

#### Marionette

* すべての Web Authentication 拡張機能コマンド をサポートしました。これは、ユーザーが公開鍵暗号の資格情報で自身を認証できるようにします (Firefox bug 1846574)。
アドオン開発者向けの変更点一覧
---------------

### 廃止

* Manifest V3 拡張機能向けの、`action` (en-US)、`options_ui`、`page_action`、`sidebar_action` マニフェストキーにおける `browser_style` (en-US) のサポートを廃止しました (Firefox bug 1830711)。Manifest V3 拡張機能で `browser_style` から移行するための情報について、詳しくは Browser Styles' Manifest v3 migration (en-US) をご覧ください。
過去のバージョン
--------

* Firefox 117 for developers
* Firefox 116 for developers
* Firefox 115 for developers
* Firefox 114 for developers
* Firefox 113 for developers
* Firefox 112 for developers
* Firefox 111 for developers
* 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 48 for developers - Mozilla

Firefox 48 for developers
=========================

Firefox の最新の開発者向け機能を試すには、Firefox Developer Edition をインストールしてください。 Firefox 48 は、米国時間 2016 年 8 月 2 日にリリースされました。このページでは、開発者に影響する Firefox 48 の変更点をまとめています。

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

### 開発者ツール

* コンテンツ内で要素の位置を変更できるようになりました (Firefox バグ 1139187)。
* コンソールの出力を消去するための `console.clear()` を実装しました (Firefox バグ 659625)。
* ウェブコンソールに HTTP ログの調査機能 を追加しました (Firefox バグ 1211525)。
* Firebug のテーマ を追加しました (Firefox バグ 1244054)。
* DOM 調査ツールを追加しました (Firefox バグ 1201475)。
* フォントインスペクターを、再びデフォルトで有効にしました (Firefox バグ 1280121)。
* CSS プロパティの補完機能を改良しました (Firefox バグ 1168246)。
* Cookie、ローカルストレージ、セッションストレージの項目を、ダブルクリックして編集できます (Firefox バグ 1231154、Firefox バグ 1231179、Firefox バグ 1231155)。
### HTML

* `<details>` および `<summary>` 要素を、Nightly および Aurora (DevTools) でデフォルトで有効にしました。Beta および Release では無効です:
    + これらの要素のデフォルトのスタイルが、仕様書に合致するようになりました (Firefox バグ 1258657)。
    + `toggle` イベントが、`<details>` 要素を開いたり閉じたりしたときに送られるようになりました (Firefox バグ 1225412)。
* `meta` 属性で、値 `no-referrer-when-downgrade` および `origin-when-cross-origin` をサポートしました (Firefox バグ 1178337)。
### CSS

* 仕様書に準拠するよう、`calc()` を改良しました。
    + `line-height` プロパティで `calc()` をサポートしました (Firefox バグ 594933)。
    + CSS `calc()` の入れ子をサポートしました (Firefox バグ 968761)。
* CSS グリッドの実験的な実装を更新しました。
    + グリッドレイアウトでフラグメンテーションを実装しました (Firefox バグ 1144096)。
    + [css-grid] グリッドコンテナーのサイズが不定である場合は、パーセンテージ指定されたトラックのサイズを `auto` として扱うようになりました (Firefox バグ 1264607)。
    + `<fieldset>` で grid および flex レイアウトをサポートしました (Firefox バグ 1230207)。
* `mask-mode` で値 `luminance` をサポートしました。また、仕様書に合わせて値 `auto` を `match-source` に改名しました (Firefox バグ 1228354)。
* CSS Animation および CSS Transition で、 `clip-path` の基本シェイプの補間処理をサポートしました (Firefox バグ 1110460)。
* `text-combine-upright` プロパティの値 `all` で縦中横 (*horizontal-in-vertical*) テキストをサポートしました (Firefox バグ 1097499).
* 画像や背景の印刷をページから許可できるようにするための `color-adjust` プロパティを実験的にサポートしました (Firefox バグ 1209273)。
* `::first-letter` 擬似要素が、実際の先頭文字の前または直後にあるタイプ Pd の句読点にも一致するようになりました。これは CSS Pseudo-element module level 4 の新たな要求です (Firefox バグ 1260366)。
* いくつかの `-webkit` 接頭辞付きプロパティおよび値を、ウェブの互換性のためにサポートしました。設定項目 `layout.css.prefixes.webkit` で制御しており、既定値は `false` です:
    + `-webkit-text-fill-color` (Firefox バグ 1247777)
    + `-webkit-text-stroke`, `-webkit-text-stroke-color`, `-webkit-text-stroke-width` (Firefox バグ 1248708)
    + `-webkit-background-clip` (background-clip として) の値 text (Firefox バグ 759568).
    + `-webkit-box-direction`、`-webkit-box-orient` (Firefox バグ 1262049.
    + `display` プロパティの値 `-webkit-inline-box` を、`inline-flex` の別名としてサポートしました (Firefox バグ 1257661)。
    + `-webkit-flex-direction`、`-webkit-flex-wrap`、`-webkit-flex-flow`、`-webkit-order`、`-webkit-flex`、`-webkit-flex-grow`、`-webkit-flex-shrink`、`-webkit-flex-basis`、`-webkit-justify-content`、`-webkit-align-items`、`-webkit-align-self`、`-webkit-align-content` を接頭辞なしプロパティの別名として、また `display` プロパティの値 `-webkit-flex` および `-webkit-inline-flex` を接頭辞なし値の別名として追加しました (Firefox バグ 1274096)。
    + `-webkit-box-flex`、`-webkit-box-ordinal-group`、`-webkit-box-align`、`-webkit-box-pack` プロパティおよび `display` プロパティの値 `-webkit-box` を、最新の CSS フレックスボックス の別名として追加しました (Firefox バグ 1208635)。
* `background-clip` の値 `text` が、(Release 以外のビルドだけでなく) すべてのタイプの Firefox で使用可能になりました (Firefox バグ 1263516)。
* `position` プロパティの値 `absolute` を、最上位レイヤーの要素でサポートしました (Firefox バグ 1236828)。
* 設定を検出するため、`@supports` の内部利用限定の構文をサポートしました (Firefox バグ 1259889)。
### JavaScript

#### 新規 API

* `String.prototype.padStart()` および `String.prototype.padEnd()` メソッドを実装しました (Firefox バグ 1260509)。
* ES2015 (ES6) の `Symbol.unscopables` および `Array.prototype[@@unscopables]` プロパティを実装しました (Firefox バグ 1054759 および Firefox バグ 1258163)。
* ES2015 (ES6) の `Symbol.isConcatSpreadable` シンボルを実装しました (Firefox バグ 1041586)。
* ES2015 (ES6) の `Array[@@species]` getter を実装しました (Firefox バグ 1165052)。
* ES2015 (ES6) の `ArrayBuffer[@@species]` getter および `%TypedArray%[@@species]` getter を実装しました (Firefox バグ 1165053)。
* ECMAScript Internationalization API 草案の `Intl.getCanonicalLocales()` メソッドを実装しました (Firefox バグ 1263040)。

#### 非推奨化および削除

* 非推奨の 古い Proxy API (`Proxy.create` および `Proxy.createFunction()`) を廃止しました。代わりに標準の `Proxy` オブジェクトを使用してください (Firefox バグ 892903)。
* `String.prototype.contains()` メソッドを削除しました (バージョン 40 より非推奨でした)。代わりに `String.prototype.includes()` メソッドを使用してください (Firefox バグ 1103588)。
* 非標準の `RegExp.multiline` プロパティ (`RegExp.prototype.multiline` ではありません) を削除しました。代わりに標準の m フラグ を使用してください (Firefox バグ 1219757)。
* `Object.prototype.__defineGetter__()` および `Object.prototype.__defineSetter__()` メソッドは、オブジェクトを伴わないグローバルスコープでは呼び出すことができなくなりました (Firefox バグ 1253016)。
### インターフェイス/API/DOM

#### DOM & HTML DOM

* `CSSKeyframeRule` および `CSSKeyframesRule` インターフェイスから "Moz" 接頭辞を削除しました (Firefox バグ 1256178)。
* `NavigatorConcurrentHardware` (en-US) mixin を実装しました。これは、`Navigator` インターフェイスに `window.navigator.hardwareConcurrency` (en-US) プロパティを追加します。このプロパティにより、`Worker` を実行できるプロセッシングコアがいくつあるか (少なくとも概算値) をウェブサイトやアプリが取得できます (Firefox バグ 1008453)。
* Firefox 10 で削除した `Node.isSameNode()` メソッドを再追加しました。仕様書に長く存在していませんでしたが、再び追加されました (Firefox バグ 1256299)。
* `Navigator.registerProtocolHandler()` を呼び出す際に誤りがあった場合に、Firefox が数値ではなく適切な例外を返すようになりました。
* `Element.animate()` をデフォルトで有効にしました (Firefox バグ 1245000)。
* `Element.insertAdjacentText()` および `Element.insertAdjacentElement()` メソッドを実装しました (Firefox バグ 811259)。
* `Document.scrollingElement` をデフォルトで有効にしました (Firefox バグ 1265032)。
* `Node.localName`、`Node.namespaceURI`、`Node.prefix` を `Element` および `Attr` API に移動しました (Firefox バグ 1055776)。
* 最新の仕様書に従って、以下のキーについて `KeyboardEvent.code` が返す値を変更しました (Firefox バグ 1264150 を参照):
    + `"OSLeft"` および `"OSRight"` が `"MetaLeft"` および `"MetaRight"` になりました。
    + `"VolumeDown"`、`"VolumeUp"`、`"VolumeMute"` が `"AudioVolumeDown"`、`"AudioVolumeUp"`、`"AudoVolumeMute"` になりました。
    + `"IntlHash"` を削除しました。
    + 以前のバージョンの Firefox で `code` の値が "" になっていたすべてのキーが、"Unidentified" を知らせるようになりました。

#### Canvas 2D

* `CanvasRenderingContext2D.ellipse()` メソッドを実装しました (Firefox バグ 910138)。

#### WebRTC

* `MediaStream.clone()` および `MediaStreamTrack.clone()` (en-US) メソッドを実装しました (Firefox バグ 1208371)。
* `iceRestart` 項目を `RTCOfferOptions` で対応しました。 `createOffer()` (en-US) で ICE の再開や更新を可能にします (Firefox バグ 906986)。
* `RTCPeerConnection.createOffer()` (en-US) メソッドが、デフォルトで VP9 動画コーデックを選択するようになりました。以前は VP8 を選択していました (Firefox バグ 1242324)。

#### その他

* Web Crypto API が Web workers で使用可能になりました (Firefox バグ 842818)。
* `CustomEvent` インターフェイスが Web Workers で使用可能になりました (Firefox バグ 1003432)。
* `DOMApplicationsManager.getNotInstalled()` メソッドを削除しました (Firefox バグ 1255036)。
* 誤ってウェブに公開されていた Firefox OS の API を、本来すべきであったとおりに隠蔽しました。対象は `mozContact`、`MozContactChangeEvent`、`navigator.mozContacts`、`MozPowerManager`、`MozSettingsEvent` です (Firefox バグ 1043562、Firefox バグ 1256414、Firefox バグ 1256046)。
* `TextEncoder` で UTF-16 のサポートを廃止しました (Firefox バグ 1257877)。
* `RTCStatsReport` (en-US) が真に `maplike` なインターフェイスになりました。`forEach()` (en-US)、`get()` (en-US)、`has()` (en-US) に加えて、`entries()` (en-US)、`values()` (en-US)、`keys()` (en-US) メソッド、および `size` (en-US) ゲッターを実装しました (Firefox バグ 906986)。
* キャッシュの動作 を制御できるようにするため、`Request.cache` プロパティを追加しました (Firefox バグ 1120715)。
* Mac OS X におけるデッドキーの扱いを、他のプラットフォームと同じ動作に変更しました。フォーカスがある要素が編集可能ではなく、テキストが生成されなかったときに `keypress` イベントは発生しません（フォーカスがある要素が編集可能であるとき、Mac OS X ではデッドキーでキーボードイベントではなく composition イベントが発生します）。また他のプラットフォームと同様に、ほかの状況でテキストを生成しないデッドキー押下について、`KeyboardEvent.key` の値が `"Dead"` になりました。
HTTP
----

* `Upgrade-Insecure-Requests` ヘッダーをサポートしました (Firefox バグ 1243586)。
* CSP ディレクティブ `block-all-mixed-content` を実装しました (Firefox バグ 1122236)。
アドオン開発者と Mozilla 開発者向けの変更点
--------------------------

* Social Worker API を削除しました。
* `-moz-bool-pref()` という CSS の `@supports` 関数を追加し、クロームスタイルシートの一部を論理環境設定に隠すことができるようになりました。 (Firefox バグ 1259889)
過去のバージョン
--------

* 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 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 32 for developers - Mozilla

Firefox 32 for developers
=========================

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

### 開発者ツール

ハイライト:

* Web Audio Editor
* *スクラッチパッドのコード補完とインラインドキュメント*
* インスペクターのルールビューでユーザエージェントのスタイルを表示
* 要素選択ボタンを移動
* インスペクターの情報バーにノードの寸法を追加
* ページ全体のスクリーンショットボタンを追加
* ツールに HiDPI 画像を追加
* インスペクタで、`display:none` が設定されているノードを異なる書式で表示

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

### CSS

* `mix-blend-mode` を既定で有効にしました (Firefox バグ 952643)。
* release ビルドで、position:sticky を既定で有効にしました (以前は Nightly および Aurora のみ有効) (Firefox バグ 916315)。
* `box-decoration-break` を実装して、非標準の `-moz-background-inline-policy` を削除しました (Firefox バグ 613659)。
* `flex-grow` および `flex-shrink` が、0 と 0 以外の値との間でトランジションすることが可能になりました (Firefox バグ 996945)。
### HTML

* `<img>` 要素の `srcset` プロパティを試験的に実装しました。`dom.image.srcset.enable` を `true` に設定すると有効になります (Firefox バグ 870021)。
* **id** および **class** が真のグローバル属性となり、名前空間の有無にかかわらず XML 要素にも適用されるようになりました (Firefox バグ 741295)。
### JavaScript

* 新たな ECMAScript 2015 の組み込みメソッドを実装しました。
    + `Array.from()` (Firefox バグ 904723)
    + `Array.prototype.copyWithin()` (Firefox バグ 934423)
    + `Number.isSafeInteger()` (Firefox バグ 1003764)
### インターフェイス/API/DOM

* `navigator.languages` プロパティおよび `languagechange` イベントを実装しました (Firefox バグ 889335)。
* `Navigator.vibrate()` メソッドの動作が最新の仕様に適合するようになりました。長すぎる振動は切り詰められます (Firefox バグ 1014581)。
* `KeyboardEvent.getModifierState()` メソッドおよび `MouseEvent.getModifierState()` メソッドを、`Accel` 仮想モディファイアをサポートするように拡張しました (Firefox バグ 1009388)。
* `KeyboardEvent.code` プロパティを試験的に実装しました。ただし、release ビルドでは無効化しています (Firefox バグ 865649)。
* `Document.querySelector()` および `Document.querySelectorAll()` で scope が設定されたセレクター (例えば `querySelector(":scope > li")`) を実装しました (Firefox バグ 528456)。
* ウェブアニメーション API に関して、`Document.timeline` インターフェイスを実験的に実装しました (Firefox バグ 998246)。これは設定項目 `layout.web-animations.api.enabled` で制御されており、現在は Nightly および Aurora のみで有効化しています。
* データストア API がウェブワーカーで使用可能になりました (Firefox バグ 949325)。ただし、認定アプリケーションにのみ有効化されています。
* サービスワーカーの `InstallPhaseEvent` インターフェイスおよび `InstallEvent` インターフェイスを実装しました (Firefox バグ 967264)。
* MSISDN Verification API を追加しました。特権アプリに対してのみ有効化されています (Firefox バグ 988469)。
* ゲームパッド APIを Android 版の Firefox が対応しました (Firefox バグ 852935)。
* 仕様や CSS 構文の発展に適合するよう、`CSS.escape()` を若干変更しました。識別子を `'--'` から始めることが可能になり、2 番目のダッシュ記号はエスケープされません。また、ベンダー識別子はエスケープしません。(Firefox バグ 1008719)
* Hit Regions の実装を完全にするために `MouseEvent.region` が実装されました (Firefox バグ 979692).
* `CanvasRenderingContext2D.drawFocusIfNeeded()` メソッドは既定では有効になりました (Firefox バグ 1004579)。
* `Navigator.doNotTrack` プロパティは `'yes'` や `'no'` の代わりに、HTTPの値を反映した `'1'` や `'0'` を返すようになりました (Firefox バグ 887703)。
* XMLHttpRequest.responseURL が実装されました (Firefox バグ 998076)。
### MathML

* `<menclose>` 要素の notation 属性で `phasorangle` をサポートしました。
### SVG

*変更なし。*

### WebRTC

* ストリームのサイズやフレームレートを制限するため、WebRTC の `getUserMedia()`、`width`、`height`、`framerate` に新たな制約を与えました (Firefox バグ 907352):

```js
{
  mandatory: {
    width: { min: 640 },
    height: { min: 480 },
  },
  optional: [
    { width: 650 },
    { width: { min: 650 }},
    { frameRate: 60 },
    { width: { max: 800 }},
  ]
}
```

* 前回までコールバック関数を引数として使用していた WebRTC のメソッドは、 JavaScript のプロミスでも利用できるようになりました。
### Audio/Video

*変更なし。*

セキュリティ
------

* 特権コードは JavaScript の `Object` および `Array` のインスタンスで Xray vision が適用されるようになりました。
アドオン開発者と Mozilla 開発者向けの変更点
--------------------------

DOM オブジェクトではない JavaScript オブジェクトに、Xray vision を適用するようになりました。 Xrays for JavaScript objects。

`getDataDirectory()` メソッドが `Addon` インスタンスに追加されました。このメソッドは、現在のプロファイル内で、アドオンがデータを格納するために好ましい場所を返します。

### Add-on SDK

#### ハイライト

* `PageMod` に `exclude` オプションを追加しました。
* `Request` に `anonymous` オプションを追加しました。
* アドオンデバッガーがコンソールとスクラッチパッドを含むようになりました。

#### 詳細

Firefox 31 から Firefox 32 の間に行われた GitHub コミット。この一覧は Aurora 移行後に上流で行われた内容が含まれていないでしょう。

Firefox 31 から Firefox 32 の間に解決したバグ。この一覧は Aurora 移行後に上流で行われた内容が含まれていないでしょう。

### XPCOM

* `nsIUDPSocket` インターフェイスは、新しい `nsIUDPSocket.multicastLoopback`、`nsIUDPSocket.multicastInterface`、`nsIUDPSocket.multicastInterfaceAddr` 属性と、 `nsIUDPSocket.joinMulticast()` および `nsIUDPSocket.leaveMulticast()` メソッド が追加されて、マルチキャストにも対応するようになりました。
### 過去のバージョン

* 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 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 79 for developers - Mozilla

Firefox 79 for developers
=========================

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

Mozilla hacks の記事「Firefox 79: The safe return of shared memory, new tooling, and platform updates」もご覧ください。

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

### 開発者ツール

#### コンソール

* レスポンスコードが 400-499 および 500-599 の範囲にあるネットワークメッセージを、エラーとみなすようになりました。また、要求や XHR のフィルターが無効であっても 表示するようになりました (Firefox バグ 1635460)。
* (ブラウザーや拡張機能によって) ブロックされた要求のネットワークメッセージが、コンソール で "禁止" アイコンがつくようになりました (Firefox バグ 1629875)。

#### デバッガー

* ソースファイルを "ブラックボックス化" を、ソースファイルを "無視" と呼ぶようになりました (Firefox バグ 1642811)。
* 例外 でインラインプレビューが可能になりました (Firefox バグ 1581708)。
* 監視式やスコープのセクションにある項目にマウスポインターを載せると、それらの値を表示するツールチップが現れるようになりました (Firefox バグ 1631545)。
* コールスタックセクション のコンテキストメニューの項目に、現在のスタックフレームをはじめから実行する **フレームを再実行** を追加しました (Firefox バグ 1594467)。

#### その他のツール

* 新たに アプリケーションパネル (en-US) が使用可能になりました。まずは service worker および ウェブアプリマニフェスト の調査やデバッグの機能を提供します。
* ネットワークモニターのメッセージタブを、応答タブ に統合しました (Firefox バグ 1636421)。
* アクセシビリティインスペクターが、タブにアクセスすると自動的に有効化します。明示的に有効化することが不要になりました (Firefox バグ 1602075)。
* レスポンシブデザインモード でタッチシミュレーションを有効にしたとき、マウスドラッグのイベントをタッチ & ドラッグまたはスワイプのイベントとして解釈するようになりました (Firefox バグ 1621781)。
* リモートデバッグ で、リモートブラウザーのナビゲーションを支援するための **戻る** および **進む** ボタンを URL バーに追加しました (Firefox バグ 1639425)。
### HTML

* `<iframe>` 要素の `sandbox` 属性で `allow-top-navigation-by-user-activation` トークンをサポートしました (Firefox バグ 1359867)。
* `<a>` および `<area>` 要素で `target="_blank"` を設定すると、`rel="noopener"` も指定したときと同じ動作を暗黙的に提供するようになりました (Firefox バグ 1522083)。
### CSS

* 外部スタイルシートが、ドキュメントグループごとにキャッシュされるようになりました (Firefox バグ 1599160)。同じオリジンのページへ移動するとき、Firefox はキャッシュされたスタイルシートの検索や再検証を最小限にします。単純な再読み込み (例えば
 `F5`
 ) では、キャッシュされた CSS ファイルを再検証しません。現在のバージョンのスタイルシートを読み込むには、キャッシュをバイパスしてページを再読み込みします (
 `Cmd`
 /
 `Ctrl`
 +
 `F5`
 )。

#### 廃止

* メディア特性 `prefers-color-scheme` の値 `no-preference` が、media queries 仕様書 および Firefox から削除されました (Firefox バグ 1643656)。
### JavaScript

* `SharedArrayBuffer` を、post-Spectre-safe な方法で再び有効化しました。クロスオリジン分離のサイトで使用できます (Firefox バグ 1619649)。
    + サイトをクロスオリジン分離にするには、新たに `Cross-Origin-Embedder-Policy` (COEP) および `Cross-Origin-Opener-Policy` (COOP) ヘッダーを設定することが必要です。
* `Promise.any()` が使用可能になりました (Firefox バグ 1599769)。
* `WeakRef` オブジェクトを実装しました (Firefox バグ 1639246)。
* Logical assignment operators をサポートしました (Firefox バグ 1639591)。
    + Logical nullish assignment (`??=`)
    + Logical AND assignment (`&&=`)
    + Logical OR assignment (`||=`)
* `Atomics` オブジェクトが、共有されていないメモリーでも動作するようになりました (Firefox バグ 1630706)。
* `Intl.DateTimeFormat()` コンストラクター で、`dateStyle` および `timeStyle` オプションをサポートしました (Firefox バグ 1557718)。
* `Intl.NumberFormat()` コンストラクター で、さらに多くの表記法をサポートしました (Firefox バグ 1413504)。
### HTTP

* 新たな `Cross-Origin-Embedder-Policy` (COEP) および `Cross-Origin-Opener-Policy` (COOP) ヘッダー使用する、クロスオリジン分離を実装しました。これは `SharedArrayBuffer` オブジェクトや `Performance.now()` の制限されていないタイマーといった、特定の機能へのアクセスを可能にします。
### API

#### DOM

* `FileReader` インターフェイスの `loadstart` イベント が、仕様書に従って非同期に発生するようになりました (Firefox バグ 1502403)。
* `CanvasPattern.setTransform()` が、入力パラメーターとして `SVGMatrix` オブジェクトと同様に `DOMMatrix` オブジェクトもサポートしました (Firefox バグ 1565997)。

#### Media、WebRTC、Web Audio

* `RTCStatsType` (en-US) が `remote-outbound-rtp` である統計レコードのリモートタイムスタンプを、Firefox でサポートしました。これらの統計情報を提供するために使用する `RTCRemoteOutboundRtpStreamStats` (en-US) ディクショナリーに、`remoteTimestamp` (en-US) プロパティが含まれるようになりました。これは統計値が収集または生成されたときの、リモートピアのタイムスタンプを表します (Firefox バグ 1615191)。

#### 廃止

* 偶然にもウェブに公開されていた複数の Gecko 内部のイベント (`DOMWindowClose` など) を、意図したとおり内部限定にしました (Firefox バグ 1557407)。
### WebAssembly

* WebAssembly の Bulk memory operations をサポートしました (Firefox バグ 1528294)。
* WebAssembly の Reference types をサポートしました (Firefox バグ 1637884)。
* WebAssembly の Threads (Shared memory および Atomics) をサポートしました (Firefox バグ 1389458, Firefox バグ 1648685)。
アドオン開発者向けの変更点
-------------

* 新しい API: `tabs.warmup()` (en-US) (Firefox バグ 1402256)
* ストレージのクォータが、`sync` ストレージ領域に適用されるようになりました (Firefox バグ 1634615) (addons.mozilla.org ブログの記事)
過去のバージョン
--------

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


Firefox 90 for developers - Mozilla

Firefox 90 for developers
=========================

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

**メモ:** Mozilla Hacks の Getting lively with Firefox 90 もご覧ください。

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

### 開発者ツール

* 応答ビューで Web フォントのプレビュー を表示するようになりました (Firefox バグ 872078)。
### HTML

* multipart/formdata 形式のフォームペイロードの、改行の正規化やエスケープに関する処理方法を修正しました。これは更新された仕様を満たしており、また他のブラウザーの実装に合致しています (Firefox バグ 1686765)。
* Firefox は画像の 内在サイズ や解像度を、EXIF 情報に基づいて設定するようになりました (EXIF 情報が提供されて、自己矛盾がない場合)。これは例えば、読み込みを高速化するためにサーバーが低品質のプレースホルダー画像を送信することを可能にします。また、ほかにもいくつかの利用方法 を実現できます (Firefox バグ 1680387)。
### CSS

* `-webkit-image-set()` を、標準化された `image/image-set()` 関数の別名として実装しました (Firefox バグ 1709415)。
### JavaScript

* プライベートスタティックフィールド、プライベートインスタンスフィールドおよびプライベートスタティックメソッド、プライベートインスタンスメソッド をデフォルトでサポートしました (Firefox バグ 1708235 および Firefox バグ 1708236)。
* `in` 演算子を、プライベートなメソッドやフィールドが定義されているかの確認 (en-US) に使用できるようになりました。これはコードを `try/catch` で包むこととは対照的に、未定義の可能性がある機能をよりコンパクトな方法で扱うことができます (Firefox バグ 1648090)。
* `Intl.DateTimeFormat()` コンストラクター のオプションとして指定する独自の日付や時刻のフォーマットに、`dayPeriod` を含めることが可能になりました。これは、1 日のうちのおおまかな時間帯 (例えば "朝" や "夜" など) を `narrow`、`short` または `long` の文字列として含めることを示します (Firefox バグ 1645115)。
* 相対的な位置を指定するメソッドである `at()` を `Array`、`String`、`TypedArray` グローバルオブジェクトに追加しました (Firefox バグ 1681371)。
### HTTP

* HTTP フェッチメタデータリクエストヘッダー (`Sec-Fetch-*`) をサポートしました。これらのヘッダーは、リクエストが同一オリジン、クロスオリジン、同一サイト、ユーザー起動であるかや、リクエストデータをどこでどのように使用するかといった、リクエストに関する追加のコンテキストをサーバーに提供します。これは、サーバーがいくつかの種類のクロスオリジン攻撃を軽減できます (Firefox バグ 1695911)。

#### 廃止

* FTP を Firefox から削除しました (Firefox バグ 1574475)。これは Firefox 88 で非推奨にした ことに続くものです。拡張機能は、引き続き自身を FTP プロトコルのハンドラー として登録できます。
### API

#### DOM

* 非推奨の `WheelEvent` プロパティである `WheelEvent.wheelDelta`、`WheelEvent.wheelDeltaX`、`WheelEvent.wheelDeltaY` をサポートしました。これにより最近行った `WheelEvent` の互換性向上により問題が発生したごく一部のページが、Firefox で動作するようになります (Firefox バグ 1708829)。
* `Canvas API` の `CanvasRenderingContext2D` インターフェイスで `createConicGradient()` (en-US) メソッドを提供するようになりました。これは既存の `linear` (en-US) および `radial` (en-US) グラデーションによく似ている `CanvasGradient` を返しますが、座標で定義した点の周りを回るグラデーションを生成できます。詳しくは Firefox バグ 1627014 をご覧ください。
* `matrix` プロトコルをサポートして、`Navigator.registerProtocolHandler()` メソッドへ有効なスキームとして渡すことが可能になりました。
### WebDriver conformance (Marionette)

* Marionette が、アクティブな WebDriver セッションを 1 つに制限するようになりました (Firefox バグ 1691047)。
* Firefox の新しいタイプのユーザープロンプトをサポートしました (Firefox バグ 1686741)。
* ウィンドウハンドルで一意の ID を使用するようになりました。また、cross-group navigations によって発生するプロセスの交換で ID を変更しないようになりました (Firefox バグ 1680479)。
* バックグラウンドのタブで新しいユーザープロンプトが開いたとき、現在の WebDriver のコマンドで不適切な中止が発生する問題を修正しました (Firefox バグ 1701686)。
* `WebDriver:GetWindowHandles` コマンドを、アンロードされたタブを適切に扱うように修正しました (Firefox バグ 1682062)。
* `WebDriver:NewSession` コマンドを、`proxy` 機能が空の場合でも常に返すように修正しました (Firefox バグ 1710935)。

#### 廃止

* Firefox Firefox 90 で FTP のサポートを廃止した ことに合わせて、`ftpProxy` 能力を評価しなくなりました。また、この能力を使用したときに `invalid argument` エラーが発生するようになりました (Firefox バグ 1703805)。
アドオン開発者向けの変更点
-------------

* `matrix` URI スキームをサポートして、拡張機能の `manifest.json` で `protocol_handlers` キーでプロトコルとして定義できるようになりました。
* 本バージョンから、Cache API を拡張機能のページやワーカーグローバルで使用できるようになりました。詳しくは (Firefox バグ 1575625) をご覧ください。
過去のバージョン
--------

* Firefox 89 for developers
* Firefox 88 for developers
* Firefox 87 for developers
* Firefox 86 for developers
* Firefox 85 for developers
* Firefox 84 for developers
* Firefox 83 for developers
* Firefox 82 for developers
* Firefox 81 for developers
* Firefox 80 for developers
* Firefox 79 for developers
* Firefox 78 for developers
* Firefox 77 for developers
* Firefox 76 for developers
* Firefox 75 for developers
* Firefox 74 for developers
* Firefox 73 for developers
* Firefox 72 for developers
* Firefox 71 for developers
* Firefox 70 for developers
* Firefox 69 for developers
* Firefox 68 for developers
* Firefox 67 for developers
* Firefox 66 for developers
* Firefox 65 for developers
* Firefox 64 for developers
* Firefox 63 for developers
* Firefox 62 for developers
* Firefox 61 for developers
* Firefox 60 for developers
* Firefox 59 for developers


Firefox 50 for developers - Mozilla

Firefox 50 for developers
=========================

Firefox の最新の開発者向け機能を試すには、Firefox Developer Edition をインストールしてください。Firefox 50 は、米国時間 2016 年 11 月 15 日にリリースされました。このページでは、開発者に影響する Firefox 50 の変更点をまとめています。

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

### HTML

* `<bdo>` の既定のスタイルで、`unicode-bidi` の値が `isolate-override` になりました (Firefox バグ 1249497)。
* `<track>` 要素の `src` 属性の設定が正しく動作するようになりました (Firefox バグ 1281418)。
* `<area>`、`<a>`、`<img>`、`<iframe>`、`<link>` 要素の `referrerpolicy` 属性を、デフォルトで有効化しました (Firefox バグ 1223838、Firefox バグ 1264165)。
### CSS

* dashed および dotted スタイルのボーダーに border-radius を設定したとき、角の部分を solid スタイルではなく指定したスタイルで描画するようになりました (Firefox バグ 382721)。
* 非標準の `:-moz-full-screen-ancestor` 疑似クラスセレクターを削除しました (Firefox バグ 1199529)。
* 仕様書から削除されたため、および実装していた主要ブラウザーが Firefox だけであったため、`box-sizing``: padding-box` を削除しました (Firefox バグ 1166728)。
* `unicode-bidi` プロパティの値 `isolate`、`isolate-override`、`plaintext` の接頭辞を削除しました (Firefox バグ 1141895)。
* Quirk モードでリストのビュレットが、標準準拠モードと同様にリストのサイズを継承するようになりました (Firefox バグ 648331)。
* `:in-range` および `:out-of-range` 疑似クラスが、無効状態または読み取り専用の input に一致しないように動作を変更しました (Firefox バグ 1264157)。
* `:any-link` 擬似クラスの接頭辞を削除しました (Firefox バグ 843579)。
* `border-image-repeat` で、値 `space` を実装しました (Firefox バグ 720531)。
### JavaScript

* ES2015 の `Symbol.hasInstance` プロパティを実装しました (Firefox バグ 1054906)。
* ES2017 の `Object.getOwnPropertyDescriptors()` メソッドを実装しました (Firefox バグ 1245024)。
* Unicode および ignoreCase フラグを使用する `RegExp` の、\W の動作を最新の仕様草案に合わせて変更しました。K、S、k、s、KELVIN SIGN (U+212A)、LATIN SMALL LETTER LONG S (U+017F) に一致しないようになりました (Firefox バグ 1281739)。
### 開発者ツール

* ウェブコンソールがソースマップを理解するようになりました。
* ストレージインスペクターで、IndexedDB のオブジェクトストアから個々のアイテムを削除できるようになりました。
* メモリーツールをデフォルトで有効化しました。
* ボックスモデルビューを計算済みビューに移動しました。
* ウェブコンソールで、XHR や Fetch() によるネットワークリクエストのスタックトレースを表示します。

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

### HTTP

* 実験的 (および非推奨) な SPDY 3.1 をデフォルトで無効にしました (Firefox バグ 1287132)。
* `X-Content-Type-Options` をサポートしました (Firefox バグ 471020)。
* cookie の `__Host-` および `__Secure-` 接頭辞を実装しました。`Set-Cookie` および Firefox バグ 1283368 をご覧ください。
* `Referrer-Policy` ヘッダーを実装しました (Firefox バグ 1264164)。
### セキュリティ

* `<a>` 要素の `ping` 属性が、`connect-src` CSP 1.1 ポリシーディレクティブに従うようになりました (Firefox バグ 1100181)。
* `sandbox` CSP ディレクティブをサポートしました (Firefox バグ 671389)。
* workers に content security policy を設定する ことが可能になりました (Firefox バグ 959388)。
* Content Security Policy の制限によりビーコンデータを送信できなかったとき、`Navigator.sendBeacon()` メソッドで例外が発生しないようになりました。代わりに、想定どおり `false` を返します (Firefox バグ 1234813)。
* RC4 暗号のサポートは Firefox 36 から非推奨にしており、Firefox 44 では既定で無効にしました。1 年間の猶予期間が終了しましたので、Firefox 50 で RC4 のサポートを全面的に廃止しました (Google Chrome は 2016 年 8 月に RC4 のサポートを廃止しました)。今後、Firefox は RC4 暗号に出くわすと常に `SSL_ERROR_NO_CYPHER_OVERLAP` エラーが発生します。
### ネットワーク

* 非同期 `XMLHttpRequest` でエラーが発生したとき、`XMLHttpRequest.getAllResponseHeaders()` メソッドが空文字列を返すようになりました (Firefox バグ 1286744)。
* CORS または他のネットワークの制約により失敗した非同期 `XMLHttpRequest` は `NetworkError` を返すのではなく、他のエラーと同様にキャッチ可能な `error` が発生するようになりました (Firefox バグ 709991)。
* `XMLHttpRequest.getResponseHeader()` および `XMLHttpRequest.getAllResponseHeaders()` が、デフォルトで空のヘッダーを返すようになりました。これは設定項目 `network.http.keep_empty_response_headers_as_empty_string` で制御しています (Firefox バグ 918721)。
* `Request.cache` に `only-if-cached` オプションを追加しました (Firefox バグ 1272436)。
### DOM

* `EventTarget.addEventListener()` の `once` オプションをサポートしました (Firefox バグ 1287706)。
* `NodeList` インターフェイスがイテレート可能になり、`forEach()`、`values()`、`NodeList.entries()`、`NodeList.keys()` の各メソッドが使用可能になりました (Firefox バグ 1290636)。
* `DOMTokenList` インターフェイスがイテレート可能になり、`forEach()`、`values()`、`DOMTokenList.entries()`、`DOMTokenList.keys()` の各メソッドが使用可能になりました (Firefox バグ 1290636)。
* `Document.createElement()` および `Document.createElementNS()` メソッドで、カスタム要素を作成するための省略可能な引数 `options` を追加しました (Firefox バグ 1276579)。
### SVG

* `allowReorder` 属性を廃止して、この属性に設定されていた動作を SVG `<switch>` 要素の既定の動作にしました (Firefox バグ 1279690)。
* 最新の SVG2 仕様に従って、SVG `<image>` 要素の `preserveAspectRatio (en-US)` 属性のキーワード `defer` を削除しました (Firefox バグ 1280425)。
### ドラッグ & ドロップ API

* HTML Drag and Drop API を使用してドラッグアンドドロップしている複数のアイテムにアクセスできる、`DataTransfer.items` プロパティを実装しました。これを可能にするため、`DataTransferItem` および `DataTransferItemList` インターフェイスもサポートしました(Firefox バグ 906420)。これはデフォルトで有効です。
* 古く廃止済みである、Firefox 固有のドラッグ & ドロップ API イベント `dragdrop` および `draggesture` のサポートを廃止しました。これらを使用し続けているコードは、 HTML ドラッグ & ドロップ API を使用するように更新してください (Firefox バグ 1162050。
### ポインターロック API

* ポインターロック API の接頭辞を削除しました (Firefox バグ 991899)。
* Firefox 50 より前のバージョンではドアハンガーを使用して `requestPointerLock()` を許可するかを問い合わせており、ユーザーが許可するまでポインターロックを有効化しませんでした。Firefox 50 より、ポインターロックは 全画面 API と同様に即座に許可されますが、終了方法をユーザーに説明する通知を表示します (Firefox バグ 1273351)。
### IndexedDB

* `close` イベントが、 `IDBDatabase` オブジェクトで対応するデータベースが意図せず閉じられたときに、送信されるようになりました (Firefox バグ 1151017)。
### Service Workers

* `WindowClient.navigate()` メソッドを実装しました。このメソッドで、Service Worker で制御されているクライアントウィンドウに、指定した URL を開くことができます (Firefox バグ 1218148)。
### WebGL

* `EXT_shader_texture_lod` (en-US) WebGL 拡張を実装しました (Firefox バグ 1111689)。
* PBO (`PIXEL_UNPACK_BUFFER`) を実装するため、WebGL 2 (en-US) 向けに texImage 関係のメソッドを更新しました (Firefox バグ 1280499)。
### WebRTC

* `MediaStream` にトラックを追加すると、仕様書で示されているように `addtrack` イベントが発生するようになりました。このイベントは `MediaStreamTrackEvent` (en-US) タイプであり、トラックが追加されたストリームで発生します。`"addtrack"` イベントを扱うために、`MediaStream.addEventListener('addtrack', ...)` または `onaddtrack` プロパティを使用できます。
* `MediaStreamTrack` インターフェイスが、 `ended` イベントおよびそのイベントハンドラーをサポートしました。
* Firefox で `MediaStreamTrack.readyState` プロパティをサポートしました。これは、トラックが生存中であるか永久に終了した状態であるかを示します。
* `MediaStreamTrack` の `getConstraints()` (en-US) および `getSettings()` (en-US) メソッドを実装しました。それぞれ、カスタマイズしたプロパティ制約で直近に適用された値のセットを取得する、およびトラックで制限可能なすべてのプロパティの実際の値を取得するメソッドです。付随するデータ型もドキュメントに記載しています。
* `RTCDataChannel.stream` (en-US) プロパティを削除しました。これは Firefox 24 で `RTCDataChannel.id` (en-US) に置き換えられましたが、後方互換性のためにサポートしていました。まだ `id` プロパティを使用するようにコードを更新していない場合は、必ず更新してください。
### ウェブオーディオ API

* `PannerNode` インターフェイスで、オーディオソースの位置 (`PannerNode.positionX` (en-US)、`PannerNode.positionY` (en-US)、`PannerNode.positionZ` (en-US)) や方向性 (`PannerNode.orientationX`、`PannerNode.orientationY` (en-US)、`PannerNode.orientationZ` (en-US)) に関する 3D 直交座標系のプロパティをサポートしました。
* 一般的な 無限インパルス応答 (IIR) フィルターを生成する、`IIRFilterNode` インターフェイスを実装しました。
* `setInterval()` および `setTimeout()` で作成したタイマーをバッググラウンドのタブで抑制する機能は、ウェブオーディオ API の `AudioContext` がアクティブで音声を再生しているときに実施しないようになりました。これは、タイミングに敏感な音声再生 (タイマーを使用して個々の音を生成する音楽プレイヤーなど) をバックグラウンドで行う際の問題を避ける助けになります (Firefox バグ 1181073)。
### Audio/Video

* `AlignSetting` 列挙型 (`VTTCue.align` で使用可能な値を表す) が以前、誤って `"center"` ではなく `"middle"` を含んでいました。この問題を修正しました (Firefox バグ 1276130)。
* 非標準かつ実験的な `HTMLMediaElement.seekToNextFrame()` メソッドが、メディア内の次のフレームを同期的ではなく非同期的にシークするようになりました。また、シークが完了すると fulfill になる `Promise` を返します。
* `HTMLTrackElement` の実装を、ドキュメント内にない場合でも `<track>` 要素がリソースを読み込めるように修正しました (Firefox バグ 871747)。
### バッテリー API

* Firefox 43 から非推奨にしていた `navigator.battery` プロパティを廃止および削除しました。代わりに、バッテリーの `Promise` を取得する `navigator.getBattery()` メソッドを使用してください。これは `BatteryManager` (en-US) が使用可能になったときに完了します。`BatteryManager` (en-US) は、promise が成功した場合のハンドラに渡されます (Firefox バグ 12593355)。
### ファイルとディレクトリー

* 以前は Google Chrome との互換性しか有していなかったサイトとの互換性を向上するため、ファイルとディレクトリー項目 API のサブセットを実装しました (Firefox バグ 1265767)。
    + 非同期 API インターフェイスを実装しましたが、ファイルの読み取りしかサポートしませんので注意してください。例えば `FileSystemFileEntry.createWriter()` メソッドは何も行いません。
    + 以下のインターフェイスを実装しました:
        - `FileSystem`
        - `FileSystemEntry` (en-US) (プロパティのみ。メソッドは未実装)
        - `FileSystemFileEntry` (`createWriter()` を除く)
        - `FileSystemDirectoryEntry` (`removeRecursively()` (en-US) を除く)
        - `FileSystemDirectoryReader` (en-US)
    + `<input>` 要素の `webkitdirectory` 属性および `HTMLInputElement.webkitdirectory` を実装しました。ファイルではなくディレクトリーを受け入れるように、file 型の input を設定できます (Firefox バグ 1258489)。
    + `HTMLInputElement.webkitEntries` を実装しました。これは、選択されたアイテムを表す `FileSystemEntry` (en-US) ベースのオブジェクトの配列を返します。
    + `File.webkitRelativePath` を実装しました。これは、`HTMLInputElement.webkitGetEntries()` が返すリスト内のアイテムのひとつである `FileSystemDirectoryEntry` に含まれているルートに対して相対的な、ファイルのパスを持ちます。
    + この API で何をサポートしているかについて、詳しくは Firefox におけるファイルとディレクトリー項目 API をご覧ください。
    + これらの API はデフォルトで有効です。一部の API は以前から使用できましたが、設定で無効化されていました (Firefox バグ 1288683)。
* ファイルとディレクトリー項目 API の一部として、`DataTransferItem.webkitGetAsEntry()` を実装しました。これは、ドロップされたファイルを表す `FileSystemEntry` (en-US) を取得できます (Firefox バグ 1289255)。これはデフォルトで有効です。
* ディレクトリーアップロード API 提案の一部である `HTMLInputElement.directory` プロパティを `allowdirs` に改名しました (Firefox バグ 1288681)。このプロパティは設定で無効化しています。
過去のバージョン
--------

* 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 23 for developers
* Firefox 22 for developers
* Firefox 21 for developers
* Firefox 20 for developers
* Firefox 19 for developers


Firefox 100 for developers - Mozilla

Firefox 100 for developers
==========================

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

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

### HTML

変更なし。

### CSS

* `dynamic-range` (en-US) および `video-dynamic-range` (en-US) 向けの CSS メディア特性をサポートしました。`dynamic-range` を使用して、ユーザーエージェントや出力デバイスが輝度、コントラスト比、色深度の組み合わせをサポートしているかを確認できます。また `video-dynamic-range` は、ビデオプレーンで確認できます (Firefox バグ 1751217)。
### JavaScript

変更なし。

### HTTP

#### 廃止

* 非標準の `Large-Allocation` (en-US) HTTP ヘッダーを削除しました (Firefox バグ 1598759)。
### API

* `WritableStream`、`WritableStreamDefaultWriter`、`WritableStreamDefaultController`、`ReadableStream.pipeTo()` をサポートしました (Firefox バグ 1759597)。

#### DOM

* コードで `AbortSignal.timeout()` 静的メソッドが使用可能になりました。
 これは、指定した時間の後に `TimeoutError` で操作を自動的に中止するために使用できる `AbortSignal` を返します (Firefox バグ 1753309)。
### WebAssembly

* WebAssembly で、WebAssembly または Javascript (あるいは他のランタイム) のどちらかでスローおよびキャッチでき、処理されない場合は環境の境界を越える例外をサポートしました。
 WebAssembly の例外を JavaScript で表したものが、WebAssembly.Exception (en-US) および WebAssembly.Tag (en-US) です (Firefox バグ 1759217)。
### WebDriver conformance (Marionette)

* Android でユーザープロンプト (たとえば `alert`) をサポートしました (Firefox バグ 1708105)。
過去のバージョン
--------

* 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 73 for developers
* Firefox 72 for developers
* Firefox 71 for developers
* Firefox 70 for developers
* Firefox 69 for developers


Firefox 88 for developers - Mozilla

Firefox 88 for developers
=========================

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

**メモ:** Mozilla Hacks の Never too late for Firefox 88 もご覧ください。

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

### 開発者ツール

* 生の応答ビューと整形済みの応答ビューを切り替えるボタンを実装しました (Firefox バグ 1693147)。例えば、ネットワークリクエストの詳細 > 応答タブ をご覧ください。
### HTML

*変更なし。*

### CSS

* `:user-valid` および `:user-invalid` 疑似クラスを実装しました (Firefox バグ 1694141)。
* `image-set()` 関数表記を有効にしました (Firefox バグ 1698133)。また、`content` および `cursor` で使用可能になりました (Firefox バグ 1695402 および Firefox バグ 1695403)。
* MacOS の既定の `monospace` フォントを Menlo に変更しました (Firefox バグ 1342741)。
* `visibility` の値 `collapse` を、ルビに実装しました (Firefox バグ 1697529)。
* `ruby-position` の値 `alternate` を実装して、プロパティの新たな初期値に設定しました (Firefox バグ 1694748)。
* `outline` CSS プロパティを、`border-radius` で作成したアウトラインに従うように更新しました。この作業の一環で、非標準の `-moz-outline-radius` プロパティを削除しました。(Firefox バグ 315209 および Firefox バグ 1694146.)

#### 廃止

* `:-moz-submit-invalid` 疑似クラスを設定項目で無効化したため、ウェブコンテンツで使用できなくなりました (Firefox バグ 1694129)。
* 非標準の `:-moz-ui-invalid` (en-US) および `:-moz-ui-valid` の、既定のスタイルを削除しました (Firefox バグ 1693969)。
### JavaScript

* RegExp match indices をサポートしました (Firefox バグ 1519483)。
* `Intl.DisplayNames()` および `Intl.ListFormat()` で、コンストラクターに渡す `options` が オブジェクト であるかを厳密に確認して、文字列や他のプリミティブ値を使用した場合に例外が発生するようになりました (Firefox バグ 1696881)。
### HTTP

* Firefox 90 で FTP を完全に削除するため、すべてのリリースで FTP を無効にしました (設定項目 `network.ftp.enabled` の既定値を `false` にします) (Firefox バグ 1691890)。この変更に伴って拡張機能の設定 `browserSettings.ftpProtocolEnabled` (en-US) が読み取り専用になり、ブラウザー拡張機能が自身を FTP の プロトコルハンドラー として登録できるようになります (Firefox バグ 1626365)。
### セキュリティ

*変更なし。*

### API

#### DOM

* すでに `aborted` が設定されている `AbortSignal` を返す静的メソッド `AbortSignal.abort()` が使用可能になりました (Firefox バグ 1698468).
### WebDriver conformance (Marionette)

* `--marionette` コマンドライン引数または `MOZ_MARIONETTE` 環境変数が指定されていなければ、Marionette が有効にならないようになりました。よって、設定項目 `marionette.enabled` を使用しなくなりました。この変更に伴って、`navigator.webdriver` の状態が、Marionette の有効状態を正しく反映するようになりました (Firefox バグ 1593343)。
* `down` および `up` 以外のポインターアクションが、不適切にボタンを押す結果になっていた不具合を修正しました (Firefox バグ 1686361)。
* `WebDriver:GetCurrentURL` で競合状態が発生して、コマンドが過去に開いたページの URL を返したり、Marionette がハングアップしたりする不具合を修正しました (Firefox バグ 1664881)。
アドオン開発者向けの変更点
-------------

* `tabs.onUpdated` (en-US) イベントが発生するプロパティを制限するために、`url` を使用できるようになりました (Firefox バグ 1680279)。
過去のバージョン
--------

* Firefox 87 for developers
* Firefox 86 for developers
* Firefox 85 for developers
* Firefox 84 for developers
* Firefox 83 for developers
* Firefox 82 for developers
* Firefox 81 for developers
* Firefox 80 for developers
* Firefox 79 for developers
* Firefox 78 for developers
* Firefox 77 for developers
* Firefox 76 for developers
* Firefox 75 for developers
* Firefox 74 for developers
* Firefox 73 for developers
* Firefox 72 for developers
* Firefox 71 for developers
* Firefox 70 for developers
* Firefox 69 for developers
* Firefox 68 for developers
* Firefox 67 for developers
* Firefox 66 for developers
* Firefox 65 for developers
* Firefox 64 for developers
* Firefox 63 for developers
* Firefox 62 for developers
* Firefox 61 for developers
* Firefox 60 for developers
* Firefox 59 for developers
* Firefox 58 for developers
* Firefox 57 for developers


Firefox 3 for developers - Mozilla

Firefox 3 for developers
========================

もしあなたが開発者で、Firefox 3 における新機能全体について情報を得ようとしているなら、ここは理解を深めるのに最も適した場所です。この記事は、Firefox 3 に追加された機能をカバーする新しい記事の一覧を提供します。小さな変更が必ずしもすべてカバーされているわけではありませんが、主要な改善を学ぶ助けにはなるでしょう。

Firefox 3 の開発者向け新機能
-------------------

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

Firefox 3 のためのウェブアプリケーションの更新

Firefox 3 における新機能を活用するためにウェブサイトやウェブアプリケーションで必要となるかもしれない変更についての情報を提供します。

オンライン・オフラインイベント

Firefox 3 は WHATWG のオンライン・オフラインイベントをサポートします。これは、ウェブアプリケーションや拡張機能から、インターネットに接続しているかどうかや、接続開始・終了のタイミングを検出できるようにします。

ウェブベースのプロトコルハンドラー

`navigator.registerProtocolHandler()` メソッドを利用して、ウェブアプリケーションをプロトコルハンドラーとして登録できるようになりました。

キャンバスを使用したテキストの描画

Firefox 3 でサポートされた標準化されていない API を利用して、キャンバス内にテキストを描画できるようになりました。

キャンバスの座標変換の対応

Firefox がキャンバスの `transform()` と `setTransform()` メソッドをサポートするようになりました。

マイクロフォーマットの使用

Firefox にマイクロフォーマットを扱うための API が実装されました。

ドラッグ & ドロップイベント

Firefox 3 は、ドラッグが開始されるときと終了したときにドラッグ操作に対するソースノードへ送られる新しいイベントをサポートします。

HTML でのフォーカス管理

新しい HTML 5 の `activeElement` 及び `hasFocus` 属性がサポートされます。

Firefox でのオフラインリソース

Firefox で、ウェブアプリケーションがオフラインの間でも使えるようにするキャッシュリソースをリクエストできるようになりました。

Firefox 3 での CSS の改良

Firefox 3 は、CSS サポートにおける数々の改善を行っています。

Firefox 3 での DOM の改良

Firefox 3 は、DOM 実装において、いくつかの Internet Explorer 独自拡張を含む、多くの新機能を提供します。

JavaScript 1.8 対応

Firefox 3 は JavaScript 1.8 をサポートします。

EXSLT support

Firefox 3 は、 XSLT の拡張となる EXSLT の実質的なサブセットのサポートを提供します。

Firefox 3 での SVG の改良

Firefox 3 での SVG サポートは、24 を超える新しいフィルタ、いくつかの新しい要素と属性、そして、その他の改良を含み、大幅に強化されました。

アニメーション PNG グラフィック

Firefox 3 は、アニメーション PNG (APNG) 画像形式をサポートしています。

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

#### 重要な変更と改良

Firefox 3 のための拡張機能の更新

拡張機能を Firefox 3 に対応させるにあたって必要となることのガイドを提供します。

Firefox 3 での XUL の改良

Firefox 3 は、新しいスライドスケール、日付と時刻の選択ウィジェット、スピンボタンを含む、多くの新しい XUL 要素を提供します。

Firefox 3 でのテンプレート

テンプレートは Firefox 3 で大幅に改善されました。主な改善は、独自のクエリープロセッサーを使って、RDF 以外の種類のデータソースも扱えるようになったことです。

安全な更新

ユーザにより安全な更新を提供するため、アドオンの更新をインストールする前に、安全な手段を使って更新情報を取得することが必須となりました。Firefox Add-ons に登録されているアドオンは、自動でこの手段を提供します。

位置情報のマイグレーションガイド

既存の拡張機能を Places API に対応させる方法についての記事。

Firefox 3 でのダウンロードマネージャーの改良

Firefox 3 のダウンロードマネージャーには、複数のプログレスリスナーへのサポートを含む、新たな API や改善された API が含まれています。

nsILoginManager の使用

パスワードマネージャーは、新しいログインマネージャーに置き換えられました。

埋め込み XBL バインディング

XBL バインディングを、別の XML ファイルから読み込む代わりに、Chrome コードから `data:` URL スキーマを使って直接組み込むことができるようになりました。

拡張機能の説明のローカライズ

Firefox 3 では、アドオンのメタデータをローカライズする新しい方法がサポートされました。これにより、アドオンのダウンロード直後や無効時にローカライズされた詳細説明が表示されるようになりました。

ローカライズと複数形

Firefox 3 では、新しい PluralForm モジュールがサポートされました。このモジュールは、複数のローカライゼーションで複数形の単語を正しく扱うためのツールを提供します。

Firefox 3 でのテーマの変更

Firefox 3 向けのテーマを作成したい方々にとって役立つ注意と情報です。

#### 新しいコンポーネントと機能

FUEL Library

FUEL は、XPCOM の形式的な部分を少なくし、いくつかの "モダンな" JavaScript のアイデアを追加することによって、拡張機能の開発をより生産的にします。

Places

履歴とブックマークの API は、新しい Places API で完全に置き換えられます。

アイドルサービス

Firefox 3 では、ユーザが最後にキーを入力、もしくは、マウスを動かしてからどのくらいの時間が経過しているかを拡張機能が測定できるようにする、新しい `nsIIdleService` インタフェースが追加されました。

ZIP ライター

新しい `nsIZipWriter` インタフェースによって拡張機能は ZIP アーカイブを作れるようになります。

フルページズーム

Firefox 3 では、テキストのみのズームに加えて、フルページズームが追加されたことで、ユーザ体験が改善されています。

XPCOM サイクルコレクターとのインターフェイス

XPCOM コードが、使われていないメモリをリークする代わりに解放させるようにする「サイクルコレクター」を活用できるようになりました。

スレッドマネージャー

Firefox 3 は、自作コードの中でスレッドを作成、管理する際に役立つ便利な方法を提供する、スレッドとスレッドイベント関連の新しいインタフェースとともに、新たな `nsIThreadManager` インタフェースを提供します。

JavaScript モジュール

Firefox 3 は、共有ライブラリーのように、拡張機能や ウェブアプリケーションから読み込んで利用できる JavaScript モジュールを簡単に作成できるようにする、新たな共有コードモジュール機構を提供します。

`nsIJSON` インターフェイス

Firefox 3 は、JSON 文字列の高パフォーマンスなエンコードとデコードを提供する、新しい `nsIJSON` インタフェースを提供します。

`nsIParentalControlsService` インターフェイス

Firefox 3 では、Microsoft Windows Vista の保護者による制限機能がサポートされ、その機能とやり取りするためのコードが使用できるようになります。

コンテンツ設定の使用

Firefox 3 には、拡張機能およびコアコードが各サイト用のユーザ設定を保存するために利用できる、任意のサイトごとの設定を取得または設定する新しいサービスが含まれています。

プラグインモニタリング

プラグインシステムの新しいコンポーネントとして、プラグイン（例えば、Macromedia Flash) がどのくらい実行されているかを調べることができるコンポーネントが利用可能になりました。

#### 修正されたバグ

Firefox 3 で修正された主なバグ

この記事は、Firefox 3 で修正されたバグについての情報を提供します。

エンドユーザ向け新機能
-----------

### ユーザ体験

* **より簡単なパスワード管理** - コンテンツ上部に表示される情報バーを使って、ログインが成功した後にパスワードを保存できるようになりました。
* **簡素化されたアドオンのインストール** - アドオンダウンロードサイトのホワイトリストが削除されたおかげで、サードパーティのダウンロードサイトからも、より少ないクリック回数で拡張機能をインストールできるようになりました。
* **新しいダウンロードマネージャー** - ダウンロードしたファイルを見つけやすくなりました。
* **再開可能なダウンロード** - ブラウザーの再起動後や、ネットワーク接続をリセットした後、ダウンロードを再開できるようになりました。
* **フルページズーム** - ［表示］メニューから、あるいはキーボードショートカットを使って、ページのコンテンツ全体を拡大・縮小できるようになりました。文字だけでなく、レイアウト全体や画像も併せて拡大・縮小できます。
* **タブのスクロールとクイックメニュー** - 新しいタブのスクロールとクイックメニュー機能で、目的のタブをより簡単に探せるようになりました。
* **作業の保存と復元** - Firefox 3 は、終了時に開いているタブの状態を保存するかどうか尋ねるダイアログを表示します。
* **タブを開く動作の最適化** - ブックマークフォルダーをタブに開く際、既存のタブを置き換える代わりに、新しいタブを追加するようになりました。
* **ロケーションバーと検索バーのサイズ調整** - ロケーションバーと検索バーの幅を、間にある小さなリサイズハンドルを使って簡単に変えられるようになりました。
* **文字列選択の改良** - Ctrl キー (Mac では Command キー) を使って、複数の文字列範囲を選択できるようになりました。また、文字列をダブルクリックした後にドラッグを開始すると、単語ごとに選択範囲が拡大・縮小されます。トリプルクリックした場合は段落全体が選択されます。
* **ページ内検索バー** - ページ内検索が、現在の選択範囲から開始されるようになりました。
* **プラグイン管理** - アドオンマネージャーでプラグインを個別に無効化できるようになりました。
* **Windows Vista との統合** - Firefox のメニューが Vista のネイティブテーマで表示されるようになりました。
* **Mac OS X との統合** - ダウンロード完了や更新の通知に Growl をサポートしました。
* **スターボタン** - ロケーションバーに表示される新しいスターボタンを使って、ワンクリックでブックマークを追加できるようになりました。もう一度クリックすると、その新しいブックマークを指定の場所に保存したり、タグを付けることができます。
* **タグ** - ブックマークにタグを関連付けて、トピックごとに簡単に分類できるようになりました。
* **ロケーションバーの自動補完** - ロケーションバーにページのタイトルやタグを入力するだけで、履歴やブックマークから目的のページをすばやく探し出せるようになりました。お気に入りアイコン、ブックマーク、タグも併せて表示されるので、それぞれの項目がどこから検索されたのかが分かりやすくなっています。
* **スマートブックマークフォルダー** - Firefox の新しい「スマートブックマークフォルダー」から、最近ブックマークしたりタグを付けたページ、あるいはよく訪れるページにすばやくアクセスできます。
* **ブックマークと履歴の整理** - 統合された新しいブックマークと履歴の管理画面では、複数の表示形式や、よく使う検索語を保存できるスマートフォルダーを使って、履歴やブックマークを簡単に検索できます。
* **ウェブベースのプロトコルハンドラー** - ページ上の `mailto:` リンクを開く際、デスクトップアプリケーションの代わりに、お気に入りの ウェブメールサービスなど、ウェブアプリケーションを使えるようになりました。他のプロトコルについても同様のサポートが提供されます。(なお、ウェブアプリケーションを連携させるには、最初にそれらを Firefox に登録する必要があります)
* **より便利になったダウンロードアクション** - 新しい「アプリケーション」設定画面は、様々なファイル形式やプロトコルスキーマの処理方法を設定するための、改良されたユーザインタフェースを提供します。
* **ルック＆フィールの改善** - グラフィックとフォント処理が改良され、ウェブページが画面上でより美しく表示されるようになりました。例えば、テキストの描画がよりシャープになり、リガチャや複雑な筆記体活字を含むフォントのサポートも改善されています。さらに、Mac と Linux (Gnome) では、新たなネイティブテーマが採用されたことで、Firefox の見た目がかつてなくネイティブアプリケーションに近づきました。
* **カラーマネジメントのサポート** - `about:config` の設定で `gfx.color_management.enabled` を設定すると、画像に埋め込まれたカラープロファイルを使って、コンピュータの画面に適したカラー調節が行われます。
* **オフラインサポート** - ウェブアプリケーションが、インターネットに接続していないときでも利用できるようにした新機能を活用できるようになりました。
### プライバシーとセキュリティ

* **サイト情報をワンクリックで表示** - 訪れたサイトに関する詳しい情報を知りたいときは、ロケーションバーに表示されるサイトアイコンをクリックすれば、サイトの所有者を確認することができます。識別情報がはっきりと表示され、前より分かりやすくなりました。
* **悪意のあるソフトウェアからの保護** - ウイルス、スパイウェア、トロイの木馬などの危険なソフトウェア (総称してマルウェア＝悪意のあるソフトウェアと呼ばれます) をインストールさせようとすることが知られているサイトを訪れてしまった場合、Firefox 3 は警告を表示します。
* **フィッシング詐欺サイトからの保護の改良** - フィッシング詐欺 (偽装) サイトと思われるページを開いてしまった場合、ページの内容とともに警告が表示されるのではなく、特別なページが表示されるようになりました。
* **より分かりやすくなった SSL エラー** - 不正な SSL 証明書に遭遇したときに表示されるエラーの内容がより明確になり、どのような問題が起きているのか分かりやすくなりました。
* **古いアドオンからの保護** - Firefox 3 は、アドオンやプラグインのバージョンを自動的に確認し、古い安全でないバージョンを無効化します。
* **安全なアドオンの更新** - 安全でない更新方法を用いているアドオンのインストールを禁止することで、アドオンの更新を行う際の安全性が向上しました。
* **ウイルス対策ソフトの統合** - Firefox 3 は、実行可能ファイルをダウンロードした際、ウイルス対策ソフトに通知を行い、即座にスキャンを開始できるようにします。
* **Windows Vista の保護者による制限機能のサポート** - Firefox 3 は、ファイルダウンロードの無効化に、Vista のシステム全体の保護者による制限 (ペアレンタルコントロール) 設定をサポートしました。
### パフォーマンス

* **信頼性** - Firefox 3 は、ブックマーク、履歴、Cookie、個人設定をトランザクション上安全なデータベース形式で保存します。つまり、システムがクラッシュした場合も、プロファイルデータが失われずに済みます。
* **高速化** - Firefox 3 では、画面上の描画処理と、ページレイアウトの処理を行う部分を完全に書き換えることで、パフォーマンスが劇的に向上しました。
* **メモリ使用量の削減** - Firefox 3 では、300 以上のメモリ「リーク」バグの修正に加えて、リークしたメモリブロックを自動的に特定、処理する新機能によって、メモリ効率が大幅に向上しました。
関連記事
----

* Firefox 2 for developers
* Firefox 1.5 for developers