Релиз Firefox 129

Состоялся релиз web-браузера Firefox 129 и сформированы обновления прошлых веток с длительным сроком поддержки — 115.14.0 и 128.1.0. На стадию бета-тестирования переведена ветка Firefox 130, релиз которой намечен на 3 сентября.

Основные новшества в Firefox 129:

  • По умолчанию активирован режим HTTPS-First, при котором при попытке открытия страницы по HTTP без шифрования браузер вначале попытается обратиться к сайту по HTTPS («http://» заменяется на «https://») и если попытка оказывается неудачной автоматически обращается к сайту без шифрования. Для отключения режима в about:config следует использовать опцию «dom.security.https_first». В отличие от включаемого в настройках опционального режима «HTTPS Only» режим HTTPS-First не применяется к загрузке субресурсов, таких как изображения, скрипты и таблицы стилей, а действует только при попытке открытия сайта после перехода по ссылке или наборе URL в адресной строке.
  • На платформах Linux, Windows 11 и Android 10+ предоставлена возможность использования системного резолвера для определения DNS-записей, через которые передаётся информация об открытом ключе для механизма ECH (Encrypted Client Hello), который продолжает развитие технологии ESNI (Encrypted Server Name Indication) и обеспечивает шифрование информации о параметрах TLS-сеансов, таких как запрошенное доменное имя. Ключевое отличие ECH от ESNI в том, что в ECH вместо шифрования на уровне отдельных полей целиком шифруется всё TLS-сообщение ClientHello, что позволяет блокировать утечки через поля, которые не охватывает ESNI, например, поле PSK (Pre-Shared Key). Изменение также позволяет использовать протокол HTTP/3 без использования заголовка Alt-Svc. Ранее для получения ключа к ECH требовалось включение «DNS over HTTPS». Скрытие домена в HTTPS-трафике, среди прочего, в некоторых случаях приводит к решению проблем с падением скорости при просмотре YouTube, наблюдаемого последнее время у пользователей российских провайдеров.
  • В режиме читателя (Reader View) расширены возможности меню для настройки отображения текста и компоновки страницы — добавлена возможность регулирования отступов между символами и словами, а также выбора метода выравнивания текста.

  • В режим читателя добавлено новое меню «Theme» для настройки цветов фона, текста и ссылок при просмотре, а также для выбора базовых режимов отображения (тёмный, оттенки серого, светлый, контрастный, сепия).

  • Включено отображение эскизов содержимого вкладок при наведении мыши на кнопки вкладок. Помимо эскиза в информационный блок о вкладке также добавлено упоминание показанной во вкладке ссылки. Предполагается, что изменение упростит определение искомой вкладки, исключив необходимость переключения между вкладками. Для тех кого раздражают лишние автоматически всплывающие окна, могут отключить новую возможность при помощи настройки «browser.tabs.hoverPreview.enabled» в about:config.

  • Для пользователей из Франции и Германии включено по умолчанию
    автоматическое заполнение в web-формах полей с адресами. Ранее данная возможность была включена только для пользователей из США и Канады. Для включения режима в других странах можно использовать настройку «extensions.formautofill.addresses.supportedCountries» на странице about:config. Для редактирования адреса, который будет добавляться в формы, в секции Autofill в настройках «Конфиденциальность и Безопасность» можно использовать кнопку редактирования сохранённых адресов.

  • Добавлена экспериментальная реализация боковой панели и возможность вертикального размещения вкладок, что позволяет выделить дополнительное экранное пространство для просмотра содержимого сайтов на широкоформатных экранах. Для включения вертикальных вкладок следует активировать параметры sidebar.revamp и sidebar.verticalTabs на странице about:config. Боковая панель может отображаться как в развёрнутом, так и в свёрнутом виде. В развёрнутом виде показывается часть заголовков страниц во вкладках и названия вынесенных в боковую панель операций, а в свёрнутом — видны только пиктограммы сайтов и операций.

  • В CSS добавлено @-правило «@starting-style» для применения стиля к элементу при его первой отрисовке, что может применяться для создания переходной анимации на стадии до открытия элемента на странице (в состоянии «display: none») или при добавлении элемента в DOM.
  • Добавлено CSS-свойство «transition-behavior» для применения переходной анимации к дискретным свойствам, таким как «display».
  • Реализовано событие textInput, которое не определено в стандарте, но используется вместо события «beforeinput» в некоторых web-приложениях на базе старых фреймфорков.
  • В JavaScript добавлена поддержка типизированных массивов Float16Array, а также методов DataView для чтения и установки значений с типом Float16, и метода Math.f16round() для округления чисел до 16-битной точности. Тип Float16 может оказаться полезным при работе с GPU для сокращения потребления памяти по сравнению с типами Float32 и Float64.
  • В API mediaCapabilities.decodingInfo() реализована возможность декодирования конфигурации воспроизводимого шифрованного контента и получения информации об используемой для шифрования системы ключей.
  • В API Web Crypto добавлена поддержка цифровых подписей на базе алгоритма Ed25519, который может использоваться в методах SubtleCrypto methods: sign(), verify(), generateKey(), importKey() и exportKey().
  • В инструментах для web-разработчиков реализованы новые предупреждения о проблемах с CSS, показываемые при некорректном использовании свойств resize и float, при использовании свойства box-sizing с элементами игнорирующими изменение высоты и ширины, а также при применении специфичных для таблиц CSS-свойств с элементами, не связанными с таблицами.

    В панели анализа сетевой активности функция блокировки (Network Blocking) теперь применяется не только к HTTP-ответам, но и к HTTP-запросам. В режиме инспектирования в боковой панели Rules добавлен показ правил «@starting-style» и реализованы всплывающие подсказки для функции var(), показывающие значения собственных CSS-свойств «@starting-style».

  • В версии для платформы Android предоставлена возможность загрузки языковых пакетов для перевода текста в режиме offline.

Кроме новшеств и исправления ошибок в Firefox 129 устранено 14 уязвимостей. 11 уязвимостей помечены как опасные, из которых 6 вызваны проблемами работы с памятью, такими как переполнения буферов и обращение к уже освобождённым областям памяти. Потенциально данные проблемы способны привести к выполнению кода злоумышленника при открытии специально оформленных страниц.

Источник: http://www.opennet.ru/opennews/art.shtml?num=61666