Firefox 108 release notes for developers
This article provides information about the changes in Firefox 108 that will affect developers. Firefox 108 was released on December 13, 2022.
Changes for web developers
>HTML
- The
<source>element supportsheight&widthattributes when it is a child of a<picture>element. This functionality can be configured via thedom.picture_source_dimension_attributes.enabledpreference which is now set totrueby default (Firefox bug 1795953).
CSS
- Trigonometric functions are now enabled with the
layout.css.trig.enabledpreference set totrueby default. This allows the use ofsin(),cos(),tan(),asin(),acos(),atan(), andatan2()functions (Firefox bug 1774589, Firefox bug 1787070). - CSS
<calc-constant>type is implemented to allow for well-known constants such aspiandewithin math functions (Firefox bug 1682444, Firefox bug 1787070). - Container query length units are now supported via the
layout.css.container-queries.enabledpreference, which is set tofalseby default. Setting this preference totrueallows the use ofcqw,cqh,cqi,cqb,cqmin, andcqmaxunits of length which are relative to the size of a query container. For more information on these units, see the CSS Container Queries documentation (Firefox bug 1744231). - The
font-variant-emojiproperty is now supported via thelayout.css.font-variant-emoji.enabledpreference, which is set tofalseby default. This property allows you to set a default presentation style for displaying emojis (Firefox bug 1461589).
JavaScript
No notable changes
HTTP
Content-Security-PolicyHTTP header directivesstyle-src-elemandstyle-src-attrare now supported. A server can use these to specify valid sources for stylesheet<style>elements and<link>elements withrel="stylesheet", and for styles applied to individual elements, respectively (Firefox bug 1529338).Content-Security-PolicyHTTP header directivesscript-src-elemandscript-src-attrare now supported. A server can use these to specify valid sources for JavaScript<script>elements, and for inline script event handlers likeonclick, respectively (Firefox bug 1529337).Content-Security-Policyviolation reports now includeeffective-directiveandstatus-codeproperties. For more information, see Violation report syntax (Firefox bug 1192684).
APIs
- Import maps are now supported. Import maps provide flexibility and additional control over how browsers resolve module specifiers when importing JavaScript modules. (Firefox bug 1795647).
Media, WebRTC, and Web Audio
- The Web MIDI API is now available in secure contexts.
Calls to
navigator.requestMIDIAccess()will prompt users with active MIDI devices to install a Site Permission Add-On, which is required to enable the API. For more information see Firefox bug 1795025.
WebDriver conformance (WebDriver BiDi, Marionette)
WebDriver BiDi
- Following a change in the specification, log entry level
"warning"was renamed to"warn"(Firefox bug 1797115). - When using
script.evaluateandscript.callFunctionwith a sandbox name equal to an empty string, the evaluation will now be done using the default realm (Firefox bug 1793589). - Added support for the
browsingContext.domContentLoadedevent (Firefox bug 1756610).
Marionette
- Added support for the
tiltX,tiltYandtwistproperties of pointer actions forWebDriver:PerformActions(Firefox bug 1793832). - Fixed a bug where
WebDriver:GetElementTextwasn't returning the element text for pretty-printed XML (Firefox bug 1794099). HTMLDocumentis no longer serialized as aWebElementreference (Firefox bug 1793920).WebDriver:NewWindownow opens a window with anabout:blanktab instead ofabout:newtab(Firefox bug 1533058).
Changes for add-on developers
- Firefox now issues a warning when an extension is installed if its version number doesn't follow the recommended format (Firefox bug 1793925).