The release of the Firefox 121 web browser has taken place, and an update branch with long-term support — 115.6.0 — has been created. The Firefox 122 branch has entered the beta testing stage, with a release scheduled for January 23.
Key innovations in Firefox 121:
- On Linux, the use of composite Wayland is enabled by default instead of XWayland, which has resolved issues with touchpad functionality, gesture support on touch screens, and setting DPI for each monitor in Wayland-based environments. The use of Wayland also demonstrates improved graphics performance. However, due to the limitations of the Wayland protocol, there are issues with bringing the 'picture-in-picture' window to the foreground. server In the settings under the General/Browsing section, an option has been added to enforce the underlining of links regardless of the CSS settings on the site (which may be useful for people with color perception issues).
- In the PDF viewer, a floating button has been implemented to delete drawings, text, and images added during PDF editing.

- On the Windows platform, a prompt for installing the AV1 Video Extension package has been implemented, enabling hardware acceleration for video decoding in the AV1 format.

- On the macOS platform, support for voice command control has been added.
- Support for lazy loading of iframe blocks has been added, allowing content outside the visible area not to load until the user scrolls to a location immediately preceding the element. To control the lazy loading of pages, the 'loading' attribute has been added to the 'iframe' tag, which can take the value 'lazy' (<iframe loading=lazy>). Lazy loading will help reduce memory consumption, lower traffic, and speed up the initial page opening.
- The CSS property text-indent has been enhanced with 'hanging' and 'each-line' parameters, simplifying the styling of paragraphs, such as bibliographies and poetry. It is also now permitted to combine multiple text-indent parameters in a single expression, for example, 'text-indent: 3em hanging each-line'.
- The CSS pseudo-class «:has()» has been added to check for the presence of a child element in the parent. For example, «p:has(span)» covers elements <p>, which contain an element <span>.
- The CSS property text-indent has added parameters "hanging" and "each-line", simplifying the styling of paragraph formats, such as bibliographies and poetry. It also allows for the combination of multiple text-indent parameters in a single expression, for example, "text-indent: 3em hanging each-line".
- The CSS property text-wrap has been updated with parameters: "balance" (improves the uniform styling of multi-line text blocks, such as long headings) and "stable" (prevents content reformatting during editing).
- The Date.parse() function has added support for additional formats, such as MMM-DD-YYYY, specifying milliseconds, setting the day of the week before the date ("Wed, 1970-01-01"), and ignoring errors in spelling the day of the week ("foo 1970-01-01").
- A static method Promise.withResolvers() has been added, allowing the use of resolve and reject callback functions for setting handlers that fulfill or reject Promise definitions after its creation.
- Support for return_call and return_call_indirect instructions has been added to WebAssembly for optimizing tail recursion, which helps reduce memory usage on the stack, improve performance, and enhance support for functional programming languages.
- In the WebTransport API, designed for sending and receiving data between the browser and proxy server, a sendOrder property has been added, allowing the setting of individual priorities for sending and receiving in bidirectional streams.
- In developer tools, efforts have been made to enhance accessibility, such as standardizing and increasing the focus indicator across various tools. The embedded JavaScript debugger has added an option "Pause on debugger statement" to disable the debugger.

- In the Android version, crashes occurring during copying to the clipboard and displaying full-screen notifications have been resolved. Issues with rendering on Google Pixel 8 and Samsung Galaxy S22 smartphones have been addressed. An add-ons catalog has been introduced. In private browsing mode, third-party Cookies and access to local storage are blocked. In manual configuration mode, Enhanced Tracking Protection includes blocking code for tracking movements used in social media.
In addition to new features and bug fixes, Firefox 121 addresses 27 vulnerabilities. Thirteen vulnerabilities (11 consolidated under CVE-2023-6864 and CVE-2023-6873), marked as critical, are due to memory handling issues such as buffer overflows and access to already freed memory areas. These issues could potentially allow an attacker to execute malicious code by opening specially crafted web pages. Another critical vulnerability (CVE-2023-6135) is related to the NSS library's susceptibility to the 'Minerva' attack, which can recreate a private key by analyzing data through side channels.
Source: opennet.ru



