Firefox 129 for developers
This article provides information about the changes in Firefox 129 that affect developers. Firefox 129 is the current Beta version of Firefox and ships on August 6, 2024.
Changes for web developers
Developer Tools
HTML
Removals
CSS
- The @starting-style CSS at-rule is supported. This lets you define starting values for properties set on an element that you want to transition from when the element receives its first style update. Currently animating from
display: none;
is not supported (Firefox bug 1834876 and Firefox bug 1834877). - The
transition-behavior
CSS property is supported. This lets you specify if descrete properties, such asdisplay
andoverlay
, can be transitioned by setting the value toallow-descrete
. (Firefox bug 1901645). -webkit-font-feature-settings
has been implemented as an alias of the standardfont-feature-settings
property (Firefox bug 1595620).
Removals
JavaScript
Float16Array
typed arrays are now supported, along withDataView.prototype.getFloat16()
andDataView.prototype.setFloat16()
for reading and settingFloat16Array
values from aDataView
, and theMath.f16round()
static method, which can be used to round numbers to 16 bits. The new type is useful for sharing data with a GPU, in particular for use cases where it makes sense to trade off precision for memory consumption. (Firefox bug 1903329.)- Regular expressions can now use the same name for named capturing groups in different disjunction alternatives. This is allowed because only one alternative in a disjunction will match, so a name declared in several alternatives can only reference one captured group. The names must still be unique within a particular alternative, and across the rest of the pattern. (Firefox bug 1903288.)
Removals
SVG
Removals
HTTP
Removals
Security
Removals
APIs
-
The deprecated
textInput
event is now supported, enabling web apps that use legacy libraries or frameworks that rely on these events. Thebeforeinput
event supersedestextInput
, and should always be used by new applications. (Firefox bug 1901923.) - The default
.toJSON()
methodsGeolocationCoordinates.toJSON()
andGeolocationPosition.toJSON()
are now supported, enabling serialization ofGeolocationCoordinates
andGeolocationPosition
objects withJSON.stringify()
(Firefox bug 1890706). -
CSSPageDescriptors
is now supported, and is used as the type forCSSPageRule.style
instead ofCSSStyleDeclaration
— matching the current specification. This ensures thatCSSPageDescriptors
only exposes the@page
related properties, rather than all properties, and also resolves an issue where setting the pagesize
in a CSS@page
at-rule was not reflected inCSSPageRule.style
. (Firefox bug 1890842, Firefox bug 1867106.) MediaCapabilities.decodingInfo()
can now get decoding information for a particular encrypted media configuration as well unencrypted media, allowing applications to tell ahead of time if the configuration is supported, and whether it will play the content smoothly and be power efficient. Changes include a new propertykeySystemConfiguration
on the method'sconfiguration
argument that defines the properties of the key system used to encrypt the media, and a newkeySystemAccess
property on the returned object, which is aMediaKeySystemAccess
object that can be used to create keys and decode the content for playback. (Firefox bug 1898344).- Firefox now fires events for a synchronous
XMLHttpRequest
before firing the events for any ongoing asynchronousXMLHttpRequest
. This fixes a long-standing behavioral difference with other browsers. Note that while this should fix some sites, it may also cause degraded performance on sites that expect the old "non-blocking" behaviour for a synchronousXMLHttpRequest
. Please file a bug if your website should have been fixed by this change but still appears to have related issues. (Firefox bug 697151.)
DOM
Media, WebRTC, and Web Audio
Removals
WebAssembly
Removals
- The
Navigator.vibrate()
method has been removed (Firefox bug 1653318, Firefox bug 1900037).
WebDriver conformance (WebDriver BiDi, Marionette)
General
WebDriver BiDi
Marionette
Changes for add-on developers
Removals
Other
Experimental web features
These features are newly shipped in Firefox 129 but are disabled by default. To experiment with them, search for the appropriate preference on the about:config
page and set it to true
. You can find more such features on the Experimental features page.
Older versions
- Firefox 128 for developers
- Firefox 127 for developers
- Firefox 126 for developers
- Firefox 125 for developers
- Firefox 124 for developers
- Firefox 123 for developers
- Firefox 122 for developers
- Firefox 121 for developers
- Firefox 120 for developers
- Firefox 119 for developers
- Firefox 118 for developers
- Firefox 117 for developers
- Firefox 116 for developers
- Firefox 115 for developers
- Firefox 114 for developers
- Firefox 113 for developers
- Firefox 112 for developers
- 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