Firefox 117 for developers

This article provides information about the changes in Firefox 117 that affect developers. Firefox 117 was released on August 29, 2023.

Changes for web developers

HTML

No notable changes.

CSS

JavaScript

No notable changes.

SVG

  • Inline SVGs now support <script> elements with type="module", defer, and async attributes. This allows SVGs to use modern JavaScript features, including ES modules, and to load scripts asynchronously (Firefox bug 1839954).

HTTP

  • Fixed a bug where the Content-Security-Policy 'strict-dynamic' source expression was not being enforced in default-src directives. The behavior now matches the specification where default-src directive values are used as a fallback when script-src is not provided (Firefox bug 1313937).

  • The Range header is now a CORS-safelisted request header when the value is a single byte range (e.g., bytes=100-200). This allows the Range header to be used in cross-origin requests without triggering a preflight request, which is useful for requesting media and resuming downloads (Firefox bug 1733981).

APIs

WebDriver conformance (WebDriver BiDi, Marionette)

WebDriver BiDi

  • Added the browser.close command that allows users to terminate all WebDriver sessions and close the browser (Firefox bug 1829334).
  • Added the browsingContext.setViewport command that allows users to change the dimensions of a top level browsing context (Firefox bug 1838664).
  • Added the browsingContext.fragmentNavigated event which is emitted for same-document navigations (Firefox bug 1841039).
  • Added support for the background argument of the browsingContext.create command, which will force the new context to be created in the background. This argument is optional and defaults to false, meaning that browsingContext.create now opens new contexts in the foreground by default (Firefox bug 1843507).
  • Added support for the clip argument of the browsingContext.captureScreenshot command, which allows to restrict the screenshot either to a specific area or to an element. When clipping to an element, you can optionally scroll the element into view before taking the screenshot (Firefox bug 1840998).
  • All commands and events related to a navigation will now provide a navigation id, which is a UUID identifying a specific navigation. This property is available in the browsingContext.navigate response, in the browsingContext.load, browsingContext.domContentLoaded, browsingContext.fragmentNavigated events, as well as in all network events created for a navigation request (Firefox bug 1763122, Firefox bug 1789484, Firefox bug 1805405).
  • headers and cookies in network events are now serialized as network.BytesValue, which will provide a better support for non-UTF8 values (Firefox bug 1842619).
  • The browsingContext.create command will now wait until the created context has a valid size (Firefox bug 1847044).

Developer tools

Older versions