Firefox Tomorrow
Stable 124.0

Firefox 124.0

Tuesday, March 19, 2024 35 changes 5 categories

TL;DR

5 new features, 30 other changes. Highlight: Caret browsing mode now also works in the PDF viewer. ( Learn more )

New 5 items
  1. 01

    Caret browsing mode now also works in the PDF viewer. ( Learn more )

  2. 02

    In Firefox View, open tabs can now be sorted by either recent activity or tab order. Recent activity is the default setting.

  3. 03

    Firefox now populates the Windows taskbar jump list more efficiently, which should allow for a smoother overall browsing experience.

  4. 04

    Firefox on Mac now uses the macOS fullscreen API for all types of fullscreen windows. This should better match the expected macOS user experience for fullscreen spaces, menubar and the Dock.

  5. 05

    As of Firefox 124, Qwant's availability has been expanded to all languages in the France region along with Belgium, Italy, Netherlands, Spain, and Switzerland.

Security 1 item
  1. 01

    Various security fixes.

Enterprise 1 item
  1. 01

    You can find information about policy updates and enterprise specific bug fixes in the Firefox for Enterprise 124 Release Notes .

Developer 5 items
  1. 01

    Developer Information

  2. 02

    With the release of Firefox 124, we are pleased to welcome the developers who contributed their first code change to Firefox in this release, 12 of whom were brand new volunteers! Please join us in thanking each of these diligent and enthusiastic individuals, and take a look at their contributions: Dave Vandyke: 1861445

  3. 03

    Adds the runtime.onPerformanceWarning event that enables extensions to obtain information when the browser detects that the extension has a runtime performance issue such as a slow-running content script ( Firefox bug 1861445 ).

  4. 04

    Growable SharedArrayBuffer : javascript.options.experimental.sharedarraybuffer_growable . The SharedArrayBuffer is now growable using the SharedArrayBuffer.prototype.grow() method. The maximum allowed size of the buffer is specified using the options.maxByteLength parameter to the SharedArrayBuffer() constructor . The SharedArrayBuffer.prototype.growable and SharedArrayBuffer.prototype.maxByteLength properties indicate whether the buffer can be grow, and its maximum allowed size, respectively. ( Firefox bug 1842773 .)

  5. 05

    Resizable ArrayBuffer : javascript.options.experimental.arraybuffer_resizable . The ArrayBuffer can now be resized using the ArrayBuffer.prototype.resize() method. The maximum allowed size of the buffer is specified using the options.maxByteLength parameter to the ArrayBuffer() constructor . The ArrayBuffer.prototype.resizable and ArrayBuffer.prototype.maxByteLength properties indicate whether the buffer can be resized, and its maximum allowed size, respectively. ( Firefox bug 1842773 .)

Web Platform 23 items
  1. 01

    Added support for AbortSignal.any .

  2. 02

    You can now use HTTP(S) and relative URLs when creating WebSockets.

  3. 03

    The text-wrap property has now been converted to a shorthand property and covers the constituent properties text-wrap-mode and text-wrap-style . ( Firefox bug 1758391 ).

  4. 04

    The ::first-letter and ::first-line CSS pseudo-elements can now be applied to the <text> SVG element. This allows you to change the fill, stroke or font of the first letter/line of a <text> element using CSS, for example. ( Firefox bug 1302722 ).

  5. 05

    AbortSignal.any() is now supported, allowing a composite signal to be created that can be used to abort an operation from multiple signal sources. ( Firefox bug 1830781 ).

  6. 06

    The WebSocket() constructor now allows HTTPS, HTTP, and relative URLs. They are often more ergonomic than using WS and WSS URLs ( Firefox bug 1797449 ).

  7. 07

    Implemented the storage.getCookies command, which allows users to retrieve cookies. This command accepts two optional arguments. Clients can provide the filter argument to only return cookies matching specific criteria. And the partition argument can be used to build the partition key and retrieve cookies owned by the corresponding partition . ( Firefox bug 1854580 )

  8. 08

    Implemented the storage.setCookie command, which creates a new cookie. Users can provide information about the cookie in the cookie parameter, and optionally a partition parameter to build the partition key of the partition which should own the cookie. ( Firefox bug 1854582 )

  9. 09

    Implemented various commands to intercept requests:

  10. 10

    network.addIntercept which allows users to define URL patterns which will be used to intercept network requests during various phases of a network event lifecycle. This command returns the unique id generated for the created network intercept. ( Firefox bug 1826192 )

  11. 11

    network.removeIntercept allows to remove intercepts based on their unique id. ( Firefox bug 1826193 )

  12. 12

    network.continueWithAuth allows to resume requests intercepted in the AuthRequired phase. Using the "action" argument, clients can either "cancel", "provideCredentials" with username and password, or fallback to "default" to let the browser display the authentication prompt.( Firefox bug 1826196 )

  13. 13

    network.failRequest allows to cancel requests intercepted in the BeforeRequestSent or the ResponseStarted phases.( Firefox bug 1853883 )

  14. 14

    network.continueRequest , network.continueResponse and network.provideResponse are also available, but at the moment they only support the "request" argument and will only allow to resume a blocked request. In future releases, additional arguments will allow to modify the request and response. ( Firefox bug 1874206 and Firefox bug 1853882 )

  15. 15

    Implemented several commands around "user contexts", implemented as containers in Firefox:

  16. 16

    browser.createUserContext creates a new user context and returns the unique id of the new user context. ( Firefox bug 1870848 )

  17. 17

    browser.removeUserContext can be used to remove any non-default user context, by specifying its unique id. ( Firefox bug 1870849 )

  18. 18

    browser.getUserContexts allows clients to retrieve the list of all available user contexts, including the default user context. ( Firefox bug 1870847 )

  19. 19

    Added support for the "userContext" argument to the browsingContext.create command, which allows to assign a new browsing context (tab or window) to a specific user context (Firefox container). ( Firefox bug 1874918 )

  20. 20

    Updated the browsingContext.Info type to include the "userContext" field, which is the unique id of the user context owning the tab for this browsing context. ( Firefox bug 1874920 )

  21. 21

    Added support for the "contexts" argument to the script.addPreloadScript command, this allows clients to add preload scripts only to specific browsing context trees (tabs) by specifying their top-level browsing context. ( Firefox bug 1858458 )

  22. 22

    Fixed a bug where browsingContext.close would not be able to close the last tab of a window. ( Firefox bug 1873948 )

  23. 23

    Fixed an issue with Get Element Text , which ignored the slot value of a web component when no custom text is specified. ( Firefox bug 1865381 )