Основные новшества в Firefox 120:
- В контекстное меню добавлена операция «Copy Link Without Site Tracking», позволяющая скопировать URL выбранной ссылки в буфер обмена, предварительно вырезав из него опции, которые используются для отслеживания переходов между сайтами. Например, при копировании ссылки будут удалены параметры mc_eid и fbclid, применяемые при переходе со страниц Facebook. Для пользователей из Германии дополнительно включено вырезание отслеживающих параметров при переходе по ссылке на странице и при открытии ссылки в адресной строке в режиме приватного просмотра или при выборе усиленного режима (strict) защиты от отслеживания перемещений (ETP, Enhanced Tracking Protection). Остальные пользователи могут включить данную возможность через настройку privacy.query_stripping.enabled в about:config. Для вырезания задействован чёрный список, охватывающий известные параметры отслеживания перехода между сайтами.
- В раздел настроек конфиденциальности и безопасности (Privacy & Security) добавлена опция для включения механизма GPC (Global Privacy Control), пришедшего на смену заголовку «DNT» (Do Not Track) и позволяющего информировать сайты о запрете продажи персональных данных и их использования для отслеживания предпочтений или перемещений между сайтами.
- В усиленном режиме (strict) защиты от отслеживания перемещений (ETP, Enhanced Tracking Protection) и в режиме приватного просмотра усилена защита от пассивной идентификации пользователя через API Canvas.
- Для пользователей из Германии включено по умолчанию автоматическое закрытие всплывающих диалогов (Cookie Banner Blocker), показываемых на сайтах для получения подтверждения о возможности сохранения идентификаторов в Cookie в соответствии с требованиями по защите персональных данных в Европейском Союзе (GDPR). Так как подобные всплывающие баннеры отвлекают внимание, перекрывают содержимое и требуют траты времени пользователя на закрытие, разработчики Firefox посчитали целесообразным автоматически отклонять подобные запросы.
Блокировку можно включить в настройках в разделе «Безопасность и приватность» или через параметр «cookiebanners.service.mode» в about:config (0 — отключает автозакрытие Cookie-баннеров; 1 — во всех случаях отклоняет запрос полномочий и игнорирует баннеры, допускающие только согласие; 2 — когда это возможно отклоняет запрос полномочий, а когда отклонить невозможно соглашается с сохранением Cookie). В отличие от похожего режима, предоставляемого в браузере Brave и в блокировщиках рекламы, Firefox не скрывает блок, а автоматизирует действие с ним пользователя. Доступно два режима обработки баннеров — симуляция нажатия мышью (cookiebanners.bannerClicking.enabled) и подстановка Cookie c флагом выбранного режима (cookiebanners.cookieInjector.enabled).
- В Windows, macOS и Android по умолчанию включён импорт TLS-сертификатов из хранилища корневых сертификатов операционной системы. При необходимости указанную возможность можно отключить в настройках
(Preferences → Privacy & Security → Certificates). - Добавлены клавиатурные комбинации для редактирования (Alt + enter) и удаления (Alt + Backspace) выбранных учётных записей в интерфейсе about:logins.
- В поставляемых в Ubuntu сборках Firefox в формате Snap реализована поддержка импорта данных из браузера Chromium, также установленного в формате snap.
- На платформах Linux и Windows реализована возможность притягивания к углам экрана (автоматического выравнивания по углам) окна с видео в режиме «картинка в картинке» при удержании клавиши Ctrl при его перемещении.
- Началась интеграция нового переносимого компонента для вывода контекстных подсказок в адресной строке, переписанного на языке Rust.
- Добавлен API User Activation (navigator.userActivation), позволяющий определить взаимодействовал ли раньше пользователь со страницей (например, щёлкал мышью), взаимодействует ли в настоящий момент или ничего не делал на странице (страница лишь загружена и остаётся нетронутой).
- Добавлена поддержка нового кода ответа HTTP — 103 («Early Hints»), который может использоваться для упреждающего вывода заголовков. Код 103 позволяет информировать клиента о содержании некоторых HTTP-заголовков сразу после запроса, не дожидаясь пока сервер выполнит все связанные с запросом операции и начнёт отдачу контента. Подобным образом можно сообщать подсказки о связанных с отдаваемой страницей элементах, которые могут быть предварительно загружены (например, могут быть приведены ссылки на используемые на странице CSS и JavaScript). Получив информацию о подобных ресурсах браузер приступит к их загрузке не дожидаясь окончания отдачи основной страницы, что позволяет сократить общее время обработки запроса.
- В CSS добавлены новые единицы измерения размера lh и rlh, позволяющие указать размер, соответствующий линейной высоте (CSS-свойство line-height) элемента или корневого элемента.
- В CSS добавлена функция light-dark() для выставления цветов сразу для светлой и тёмной цветовой схемы без применения media-запроса prefers-color-scheme.
- В JavaScript-функцию Date.parse() добавлена поддержка дополнительных вариантов форматирования даты, например, «01-12-1999», «1999-1-5», «10000-01-12», «99-01-05»,
«1999-01-05 10:00:00» - Обеспечена поддержка атрибута media в элементе ‹source›, вложенном в элементы ‹picture›, ‹audio› и ‹video›.
- Включена по умолчанию поддержка расширения WasmGC, упрощающего портирование в WebAssembly программ, написанных на языках программирования, использующих сборщик мусора (Kotlin, Dart и т.п.). WasmGC добавляет новые типы структур и массивов, для которых может применяться нелинейное выделение памяти.
- В инструменты для web-разработчиков добавлена возможность симуляции работы вкладок в offline-режиме.
- В панель редактирования стилей добавлена кнопка «Pretty Print» для форматирования и приведения в наглядную форму минифицированной таблицы стилей (ранее минифицированные стили форматировались автоматически).
- В инструментах для разработчиков значительно (до 70%) ускорена работа отладчика при большом объёме исходных текстов. Проведён рефакторинг отладчика, нацеленный на корректное срабатывание точек останова, привязанных к событию «unload».
- В версии для Android устранена ошибка, приводившая к закрытию вкладок при их выделении. Продолжена работа по формированию открытой экосистемы браузерных дополнений для мобильной редакции Firefox. К официальному запуску экосистемы, запланированному на декабрь, в каталоге addons.mozilla.org (AMO) будет доступно более 200 дополнений, пригодных для установки в Firefox для Android.
Кроме новшеств и исправления ошибок в Firefox 120 устранено 19 уязвимостей. 14 уязвимостей (11 объединено под CVE-2023-6212 и CVE-2023-6213), которые помечены как опасные, вызваны проблемами работы с памятью, такими как переполнения буферов и обращение к уже освобождённым областям памяти. Потенциально данные проблемы способны привести к выполнению кода злоумышленника при открытии специально оформленных страниц. Ещё одна опасная уязвимость (CVE-2023-6206) позволяет путём кликджекинга обеспечить подтверждение запросов предоставление полномочий.
Бета-выпуск Firefox 121 примечателен возможностью принудительного включения подчёркивания ссылок, независимо от настроек CSS (может быть полезно для людей, имеющих проблемы с восприятием цветов). В Linux по умолчанию включено использование композитного сервера Wayland вместо XWayland, что позволило решить проблемы с работой тачпада, поддержкой жестов на сенсорных экранах и выставлением DPI для каждого монитора в окружениях на базе Wayland. Использование Wayland также демонстрирует повышение производительности работы с графикой. При этом из-за ограничений протокола Wayland имеются проблемы с выводом окна «картинка в картинке» на передний план.
Источник: http://www.opennet.ru/opennews/art.shtml?num=60160