Firefox 112 for developers
This article provides information about the changes in Firefox 112 that affect developers. Firefox 112 was released on April 11, 2023.
Changes for web developers
HTML
- The
HTMLElement
propertyinert
is now fully enabled. It allows the browser to ignore content or interactive elements that are within an HTMLElement with theinert
attribute. See Firefox bug 1764263 for more details.
CSS
-
Exponential functions are now enabled by default.
This allows the use of
pow()
,sqrt()
,hypot()
,log()
andexp()
functions (Firefox bug 1814469). - The
overlay
keyword value for theoverflow
property is now supported as a legacy alias of the keyword valueauto
(Firefox bug 1817189). - The
<ray_size>
parameter is now optional in theray()
function that is used to define anoffset-path
. If no<ray_size>
parameter is provided, it has a default value ofclosest-side
(Firefox bug 1820071). -
The
linear()
easing function is now supported. This defines easing functions that interpolate linearly between a set of points and is useful for approximating complex animations (Firefox bug 1819447, Firefox bug 1764126).
JavaScript
No notable changes.
APIs
-
navigator.getAutoplayPolicy()
is now supported, allowing developers to configure autoplay of media elements and audio contexts based on whether autoplay is allowed, disallowed, or only allowed if the audio is muted. See Firefox bug 1773551 for more details. -
Rounded rectangles can now be drawn in 2D canvases using
CanvasRenderingContext2D.roundRect()
,Path2D.roundRect()
andOffscreenCanvasRenderingContext2D.roundRect()
. See Firefox bug 1756175 for more details. - The deprecated and non-standard
CanvasRenderingContext2D.mozTextStyle
attribute is now disabled by default (Firefox bug 1818409).
Removals
-
Removes support for
IDBMutableFile
,IDBFileRequest
,IDBFileHandle
, andIDBDatabase.createMutableFile()
. These interfaces are not present in any specification, have been behind a preference since version 102, and have been removed from the other main browser engines for some years. (Firefox bug 1500343.)
WebDriver conformance (WebDriver BiDi, Marionette)
WebDriver BiDi
- Implemented the
browsingContext.print
command, which allows clients to request a rendered PDF document of the browsing context, represented as a Base64-encoded string. See Firefox bug 1806810 for more details. - Implemented
script.addPreloadScript
andscript.removePreloadScript
commands, which let test clients inject a functionality that's guaranteed to be available for any content scripts that are subsequently loaded, and before any later scripts that WebDriver injects into the context. See Firefox bug 1806420 and Firefox bug 1806465 for more details. Element
andShadowRoot
references as stored in the node cache can now be used in both Marionette and WebDriver BiDi by their exact same unique reference. See Firefox bug 1770733 for more details.- Removed
isRedirect
from the network events base parameters (Firefox bug 1819875).
Marionette
- Fixed an issue where the payload of a response was not wrapped within a
value
field based on certain data type. (Firefox bug 1819029). - Fixed an issue where
WebDriver:ElementClear
was emitting an extrachange
event for content editable elements (Firefox bug 1744925).
Changes for add-on developers
- The properties
usedDelegatedCredentials
,usedEch
,usedOcsp
, andusedPrivateDns
have been added towebRequest.SecurityInfo
. These properties provide information about the security of the connection used for a web request (Firefox bug 1804460). - The property
"type"
is supported in the"background"
manifest key. Setting this key to"module"
loads background scripts specified with"scripts"
as ES modules, avoiding the need to switch to background pages to use ES modules (Firefox bug 1811443).
Older versions
- 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 82 for developers
- Firefox 81 for developers