Firefox 102 for developers
==========================

This article provides information about the changes in Firefox 102 that will affect developers. Firefox 102 was released on June 28, 2022.

Changes for web developers
--------------------------

### HTML

No notable changes.

### CSS

The `update` media feature that can be used to query the ability of the output device to modify the appearance of content after it is rendered is now available by default (Firefox bug 1422312).

### JavaScript

No notable changes.

### APIs

* The non-standard interfaces `IDBMutableFile`, `IDBFileHandle`, `IDBFileRequest`, and the method `IDBDatabase.createMutableFile()` have been disabled by default in preparation for removal in a future release (Firefox bug 1764771).
* Transform streams are now supported, allowing you to pipe from `ReadableStream` to a `WritableStream`, executing a transformation on the chunks.
 The update includes the new interfaces `TransformStream` and `TransformStreamDefaultController` and the method `ReadableStream.pipeThrough()` (Firefox bug 1767507).
* Readable byte streams are now supported, allowing efficient zero-byte transfer of data from an underlying byte source to a consumer (bypassing the stream's internal queues).
 The new interfaces are `ReadableStreamBYOBReader`, `ReadableByteStreamController` and `ReadableStreamBYOBRequest` (Firefox bug 1767342).
### Security

* Support of the `wasm-unsafe-eval` CSP policy directive has been implemented.
 A document with a CSP that restricts scripts will no longer load and execute WebAssembly unless the CSP uses `'wasm-unsafe-eval'` or the existing `'unsafe-eval'` keyword (Firefox bug 1740263).

#### DOM

* The Firefox-only property `Window.sidebar` has been moved behind a preference (and permanently removed in version 119) (Firefox bug 1768486).
### WebDriver conformance

#### WebDriver BiDi

* There are some improvements to Webdriver BiDi's `browsingContext.navigate`
    + Fixed edge cases where the navigation could incorrectly timeout (Firefox bug 1766217).
    + Added support for hash changes (Firefox bug 1763127).
    + Added support navigation to error pages (Firefox bug 1763124).

#### Marionette

* Allow marionette to connect to a windowless instance of Firefox (Firefox bug 1726465).
* Fixed issue where `WebDriver:Navigate` with a PageLoadStrategy of "none" returns before navigation has started (Firefox bug 1754132).
* Fixed a potential race condition in `WebDriver:SwitchToWindow` when switching to a different tab (Firefox bug 1749666).
Changes for add-on developers
-----------------------------

* The `scripting` API, which provides features to execute script, insert and remove CSS, and manage the registration of content scripts is available to Manifest V2 extensions (Firefox bug 1766615).
* The `nonPersistentCookies` option of the `privacy.websites` `cookieConfig` property has been deprecated (Firefox bug 1754924).
* Manifest V3 preview features:
    + With the introduction of support for the 'wasm-unsafe-eval' CSP keyword in Firefox (Firefox bug 1740263), Manifest V3 extensions are now required to specify this keyword in the content\_security\_policy manifest key to use WebAssembly. For backwards-compatibility, Manifest V2 extensions can still use WebAssembly without the keyword (Firefox bug 1766027).
Older versions
--------------

* Firefox 101 for developers
* Firefox 100 for developers
* Firefox 99 for developers
* Firefox 98 for developers
* Firefox 97 for developers
* Firefox 96 for developers
* Firefox 95 for developers
* Firefox 94 for developers
* Firefox 93 for developers
* Firefox 92 for developers
* Firefox 91 for developers
* Firefox 90 for developers
* Firefox 89 for developers
* Firefox 88 for developers
* Firefox 87 for developers
* Firefox 86 for developers
* Firefox 85 for developers
* Firefox 84 for developers
* Firefox 83 for developers
* Firefox 82 for developers
* Firefox 81 for developers
* Firefox 80 for developers
* Firefox 79 for developers
* Firefox 78 for developers
* Firefox 77 for developers
* Firefox 76 for developers
* Firefox 75 for developers
* Firefox 74 for developers
* Firefox 73 for developers
* Firefox 72 for developers
* Firefox 71 for developers