Firefox 157 release notes for developers (Stable)
このページでは、開発者に影響する Firefox 157 の変更点をまとめています。 Firefox 157 は、米国時間 2026 年 9 月 29 日 にリリースされました。
ウェブ開発者向けの変更点一覧
>HTML
変更なし。
CSS
@supportsアットルールの内のat-rule()関数により、指定した CSS アットルールをブラウザーがサポートしているかを確認できます (例:@supports at-rule(@scope))。これは@importCSS アットルールのsupports()関数でも動作します (Firefox bug 2060755)。overscroll-behaviorショートハンドプロパティおよびoverscroll-behavior-block、overscroll-behavior-inline、overscroll-behavior-x、overscroll-behavior-yロングハンドプロパティでchain値をサポートしました。chain値はスクロールを別のスクロール領域に連鎖させることができますが、境界に達したときにブラウザーのデフォルトのオーバースクロール動作 ("バウンス" など) は許可しません (Firefox bug 2036966)。
JavaScript
変更なし。
API
- WebGPU の
TRANSIENT_ATTACHMENTテクスチャ使用タイプ をサポートしました。これは現在のレンダーパスに限って使用する、メモリー効率が高いアタッチメントを作成できます。関係のあるレンダーパスの操作はタイルメモリーに保持されるため、VRAM 転送が不要になりテクスチャ用の VRAM 割り当てを回避できます (Firefox bug 2005061)。
DOM
Animation.reverse()メソッドおよびAnimation.playbackRateプロパティが、2 つのケースでWeb Animations 仕様に準拠するようになりました。第一に、playbackRateが0であるアニメーションでreverse()を呼び出すと、アニメーションを再生するようになりました。これはplaybackRateを0にしたままで、startTimeおよびcurrentTimeを更新します。以前は、この呼び出しに効果がありませんでした。第二に、スクロール駆動アニメーション でplaybackRateを正の値と負の値の間で切り替えると、アニメーションのstartTimeをタイムラインの反対側の端に反映するようになりました。その結果、逆再生されたアニメーションもスクロール範囲に収まるようになります。以前はstartTimeが変更されないままであり、DocumentTimelineのような時間ベースのタイムラインに限って正しい動作でした。この調整は、アニメーションにstartTimeと有限の継続時間がある場合に適用されます (Firefox bug 2046973)。
WebDriver への適合 (WebDriver BiDi, Marionette)
一般
- 今後、推奨される設定はシャットダウン中の別の段階で復元されるようになります (Firefox bug 2066531)。
WebDriver BiDi
browser.setDownloadBehaviorコマンドを、type="allowed"を指定して呼び出す場合はdestinationFolder引数が必須になるように更新しました。 これにより仕様に準拠します。フォルダーの指定が必須でないデフォルトの動作に戻すためには、クライアントが null を指定してbrowser.setDownloadBehaviorを呼び出すことが必要です (Firefox bug 2069952)。
アドオン開発者向けの変更点一覧
alarms.clearAll()が、プロミスをブール値ではなくundefinedで履行するようになりました (Firefox bug 2067229)。
実験的なウェブ機能
以下の機能は Firefox 157 で導入しましたが、デフォルトで無効です。
これらを実験するには、about:config ページで適切な設定項目を検索して true に設定してください。
実験的機能 のページで、さらに多くの機能を確認できます。
-
export * from "mod"にデフォルトエクスポートを含める:javascript.options.experimental.export_star_defaultTC39 の export
*default 提案 により、現在は除外されているモジュールのデフォルトエクスポートがexport * from "mod"でも提供されます。 この設定は Nightly ビルドに限り設定できることに注意してください (Firefox bug 2065611)。 -
通知の
navigateオプション:dom.webnotifications.navigate.enabledNotification()コンストラクターおよびServiceWorkerRegistration.showNotification()のnavigateオプションは、ユーザーが通知をクリックしたときに開く URL を指定します。これにより、ページを開くためだけのクリックハンドラーが不要になります。新たな読み取り専用のNotification.navigateプロパティが URL を返します。オプションを設定すると、clickおよびnotificationclickイベントが通知に対して発生しなくなります。actionsオプションの各項目に個別のnavigateURL を設定することが可能で、未設定のアクションボタンは通知の URL を使用せずにnotificationclickが発生します (Firefox bug 2066184)。 -
解析中の HTML サニタイズ:
dom.security.sanitizer.while-parsingElement.setHTML()などの HTML Sanitizer API で HTML をサニタイズするメソッドが、はじめにすべてのマークアップを解析して後から結果の DOM ツリーをクリーンアップするのではなく、マークアップを解析しながら不要な要素や属性を削除するようになりました。結果は同じですが、隣接するテキストが複数のテキストノードに分割されるのではなく、1 つのテキストノードになることが異なります (Firefox bug 2062652). -
Web Crypto の鍵カプセル化:
dom.webcrypto.encapsulation.enabledWeb Crypto API で、2 つの当事者が共有の秘密鍵に合意できるアルゴリズムである ML-KEM をサポートしました。これは量子コンピューターによる攻撃に対して安全性を維持するように設計されています。
SubtleCryptoへ新たに、鍵の用途に一致するencapsulateKey()、encapsulateBits()、decapsulateKey()、decapsulateBits()メソッドを追加しており、サポートするアルゴリズム名はML-KEM-512、ML-KEM-768、ML-KEM-1024です。SubtleCrypto.importKey()およびSubtleCrypto.exportKey()も、新たにraw-publicおよびraw-seed鍵形式を受け入れます。この機能は、Nightly ビルドではデフォルトで有効です (Firefox bug 1943614)。