Firefox 111 for developers
==========================

This article provides information about the changes in Firefox 111 that affect developers. Firefox 111 was released on March 14, 2023.

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

### HTML

* The `autocapitalize` global attribute is now supported by default. The default value for the attribute is `none`, so no capitalization occurs (Firefox bug 1692007).
* The `translate` global attribute is now supported (Firefox bug 1418449).
### CSS

* CSS color functions `color()`, `lab()`, `lch()`, `oklab()`, and `oklch()` are now supported.
 These features are disabled by default and can be enabled by setting the preference `layout.css.more_color_4.enabled` to true.
 For more information, see the CSS color value documentation (Firefox bug 1352757 and Firefox bug 1128204).
### JavaScript

No notable changes.

### SVG

* The `context-stroke` and `context-fill` values are now supported inside `<marker>` elements.
 For more information on using these values with `fill` and `stroke` properties, see the `<marker>` documentation (Firefox bug 752638).
### HTTP

* The HTTP `Authorization` header is removed from cross origin redirects.
 See Firefox bug 1802086 for more details.
### APIs

* Origin private file system (OPFS) is now supported when using the File System API.
 The data in this file system is origin-specific: permission prompts are not required to access files, and clearing data for the site/origin deletes the storage.
 The OPFS is accessed with the `StorageManager.getDirectory()` method, by calling `navigator.storage.getDirectory()` in a worker or the main thread.
 See Firefox bug 1785123 for more details.
* The HTTP `Authorization` header is removed from `fetch()` and `XMLHttpRequest` requests that are redirected cross-origin (`fetch()` headers may be added by developers using the `option.headers` argument).
 See Firefox bug 1802086 for more details.

#### DOM

* The `FormData` constructor now accepts a second optional `submitter` parameter to specify a submit button. If the button has a name or is an image button, it will contribute to the form data set. This makes it possible to create a `FormData` object with the same data set as a vanilla form submission triggered by the button. See Firefox bug 1812696 for more details.

#### Media, WebRTC, and Web Audio

* `RTCInboundRtpStreamStats.trackIdentifier` is now supported.
 This allows developers to associate `inbound-rtp` statistics with a particular track when using `RTCPeerConnection.getStats()`.
 (For more information see Firefox bug 1804676.)
### WebDriver conformance (WebDriver BiDi, Marionette)

#### WebDriver BiDi

* Changed the behaviors for handling stale elements checks based on recently updated WebDriver classic specification. See Firefox bug 1808894 for more details.

#### Marionette

* Fixed an issue where returning a ShadowRoot from `WebDriver:ExecuteScript` causes a `cyclic object value` error. See Firefox bug 1764594 for more details.
Changes for add-on developers
-----------------------------

* `matchDiacritics` has been added to the `Find.find` API. This option enables searches to distinguish between accented letters and their base letters. For example, when set to `true`, searching for "résumé" does not find a match for "resume" Firefox bug 1680606.
* `search.query` has been added, providing search API compatibility with Chromium-based browsers Firefox bug 1804357.
* The `disposition` property has been added to `search.search`, enabling results to be displayed in a new tab or window Firefox bug 1811274.
Older versions
--------------

* 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 82 for developers
* Firefox 81 for developers
* Firefox 80 for developers