files/en-us/mozilla/firefox/releases/129/index.md
This article provides information about the changes in Firefox 129 that affect developers. Firefox 129 was released on August 6, 2024.
display: none; is not supported (Firefox bug 1834876 and Firefox bug 1834877).allow-discrete. (Firefox bug 1901645).-webkit-font-feature-settings has been implemented as an alias of the standard {{cssxref("font-feature-settings")}} property (Firefox bug 1595620).Float16Array values from a {{jsxref("DataView")}}, and the {{jsxref("Math.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.)beforeinput event supersedes textInput, and should always be used by new applications.
(Firefox bug 1901923.).toJSON() methods {{domxref("GeolocationCoordinates.toJSON()")}} and {{domxref("GeolocationPosition.toJSON()")}} are now supported, enabling serialization of GeolocationCoordinates and GeolocationPosition objects with {{jsxref("JSON.stringify()")}} (Firefox bug 1890706).CSSPageDescriptors only exposes the @page related properties, rather than all properties, and also resolves an issue where setting the page size in a CSS @page at-rule was not reflected in CSSPageRule.style.
(Firefox bug 1890842, Firefox bug 1867106.)keySystemConfiguration on the method's configuration argument that defines the properties of the key system used to encrypt the media, and a new keySystemAccess property on the returned object, which is a {{domxref('MediaKeySystemAccess')}} object that can be used to create keys and decode the content for playback. (Firefox bug 1898344).XMLHttpRequest. 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" behavior for a synchronous XMLHttpRequest. Please file a bug if your website should have been fixed by this change but still appears to have related issues. (Firefox bug 697151.)remote.active-protocols preference. You can learn more about this on the following blog post. (Firefox bug 1882089)network.setCacheBehavior command, which allows to configure the browser to bypass the network cache either globally or for a set of top level browsing contexts. (Firefox bug 1901032 and Firefox bug 1906100)beforeUnload which can now be handled in the same way as other user prompts. (Firefox bug 1824220)network.provideResponse command when used in the beforeRequestSent phase, such as the body parameter which allows to return mock responses. (Firefox bug 1853882)browsingContext.userPromptOpened now includes the handler field which contains the user prompt handler configured for the prompt which triggered the event. (Firefox bug 1904822)BrowsingContextInfo type will now provide an originalOpener field which is the context id of the "opener" browsing context. This will be set for instance if the new context was created by using a link (even with rel=noopener), window.open etc. If the new browsing context has no relevant opener, the field will be set to null. (Firefox bug 1898004)beforeRequestSent, responseStarted and responseCompleted) are now created for requests to data URLs. In Firefox 129, only navigation requests will be listed. (Firefox bug 1805176)promptUnload argument for browsingContext.close, which allows to bypass "beforeunload" prompts when closing a context via this command. (Firefox bug 1862380)network.continueRequest where you could not set multiple values for the same header. (Firefox bug 1904379)unhandledPromptBehavior capability, which could not be used with BiDi only sessions. (Firefox bug 1907935)session.end and browser.close which would unexpectedly fail when no Marionette client was connected. (Firefox bug 1890091)browsingContext.navigate which would fail to resolve if a same-document navigation started on "beforeunload". (Firefox bug 1879163)browser.close command to discard all "beforeunload" prompts when closing the top-level browsing contexts. (Firefox bug 1873196)browsingContext.userPromptOpened event, which would unexpectedly miss the defaultValue field (Firefox bug 1859814)network.responseCompleted event during authentication flows, which was emitted too many times compared to the specifications. Only one responseCompleted (or fetchError) event is expected for the whole HTTP authentication flow. (Firefox bug 1906106)browser.removeUserContext command to skip all "beforeunload" prompts. (Firefox bug 1876062)