Firefox 103 release notes for developers
This article provides information about the changes in Firefox 103 that will affect developers. Firefox 103 was released on July 26, 2022.
Changes for web developers
>HTML
Removals
- Support for the
<menuitem>element has been removed along with thedom.menuitem.enabledpreference. For more details, see Bug 1372276.
MathML
Removals
- The deprecated
scriptminsizeandscriptsizemultiplierattributes have been removed (Firefox bug 1772697).
CSS
- The
backdrop-filterproperty (which can be used to apply graphical effects such as blurring or color shifting to the area behind an element) is now available by default. It was earlier behind a preference setting (Firefox bug 1578503). - The
scroll-snap-stopproperty is now available (Firefox bug 1312165). You can use this property'salwaysandnormalvalues to specify whether or not to pass the snap points, even when scrolling fast. - Support has been added for the
:modalpseudo class. It selects all elements that are in a state in which they exclude all interaction with other elements until the interaction has been dismissed (Firefox bug 1768535). - The
stylevalue for thecontainproperty is now supported. You can use this value for properties that can have effects on more than just an element and its descendants for effects don't escape the containing element. For more information, see (Firefox bug 1463600).
JavaScript
- Native Error types can now be serialized using the structured clone algorithm.
This includes
Error,EvalError,RangeError,ReferenceError,SyntaxError,TypeError,URIErrorandAggregateError. Serialized properties include thename,message,cause,fileName,lineNumberandcolumnNumber. ForAggregateErrorthemessage,name,causeanderrorsproperties are serialized. See Firefox bug 1556604 for more details.
APIs
-
ReadableStream,WritableStream,TransformStreamare now Transferable objects, which means that ownership can be transferred when sharing the objects between a window and workers usingpostMessage, or when usingstructuredClone()to copy an object. After transferring, the original object cannot be used. See Firefox bug 1659025 for more details. -
Window.caches,WorkerGlobalScope.caches,CacheStorage, andCachenow require a secure context; the properties/interfaces are not defined if used in an insecure context. Previouslycachewould return aCacheStoragethat would throw an exception if used outside of a secure context. See Firefox bug 1112134 for more details.
WebDriver conformance (WebDriver BiDi, Marionette)
WebDriver BiDi
- Added a preference to disable experimental BiDi commands and events
remote.experimental.enabled(Firefox bug 1777951). - Added a
scriptmodule with an experimental implementation of theevaluatecommand. Only available ifremote.experimental.enabledis set totrue(Firefox bug 1742979). - Added serialization support for collections with simple values and complex objects, used for instance for the event data of
log.entryAddedor the return value ofscript.evaluate(Firefox bug 1770752). - Fixed an edge case for
browsingContext.navigatewhen navigating to a cached image (Firefox bug 1763133).
Marionette
- Updated the
platformVersioncapability to be returned asmoz:platformVersion(Firefox bug 1771760). - Removed support for
ChromeElement; all elements are now serialized asWebElement(Firefox bug 1775036 and Firefox bug 1775064).
Changes for add-on developers
>Removals
- Removed the ServiceWorker API in WebExtensions (
'serviceWorker' in navigatornow returnsfalsewhen run inside an extension) (Firefox bug 1593931).