Релиз Firefox 147

Новости мира unix. Хотите узнать секрет вечного счастья? Откройте страницу 246.
Ответить
acolyte
Аватара пользователя
Сообщения: 904
Зарегистрирован: 20.08.2022

#

Релиз Firefox 147
Дата публикации:Tue, 13 Jan 2026 20:16:30 +0300

Состоялся релиз web-браузера Firefox 147 и сформированы обновления прошлых веток с длительным сроком поддержки - 140.7.0 и 115.32.0. На стадию бета-тестирования переведена ветка Firefox 148, релиз которой намечен на 24 февраля.
Основные новшества в Firefox 147 (1, 2, 3):
  • Добавлена поддержка спецификации Freedesktop.org XDG Base Directory и возможность использования каталога "~/.config/mozilla" для хранения профилей, дополнений, настроек и внутренних БД. Поддержка размещения данных в старом каталоге "~/.mozilla" сохранена в качестве опции, активируемой при запуске с переменной окружения "MOZ_LEGACY_HOME=1". Добавлена поддержка механизма "Compression Dictionary Transport" (RFC 9842), позволяющего сократить размер данных, передаваемых между клиентом и сервером, за счёт использования алгоритмов сжатия Zstandard (Content-Encoding: dcz) и Brotli (Content-Encoding: dcb) в сочетании со сжатием типовых конструкций с использованием словарей. Доступно два сценария использования Compression Dictionary Transport - сжатие контента по предварительно переданным сервером словарям и использование ранее переданного контента в качестве словаря для сжатия его новой версии (дельта-сжатие, при котором передаются только изменения по сравнению с имеющейся версией). Например, при запросе "GET /index.html" сервер может передать сведения о наличии словаря, вернув путь к нему в заголовке 'Link: <.../dict>; rel="compression-dictionary"'. При загрузке клиентом словаря ".../dict" сервер выдаст информацию об его применении к HTML-файлам, выставив заголовок 'Use-As-Dictionary: match="/*html"'. При следующем запросе html-ресурса, например, "GET /index2.html", клиент укажет сведения о наличии у него словаря через заголовок 'Available-Dictionary: хэш_словаря"'. Если сервер имеет на своей стороне словарь с данным хэшем, то вернёт содержимое index2.html, сжатое с использованием данного словаря.
    Для дельта-сжатия разных версий JavaSсript-файлов в ответ на запрос "GET /app.v1.js" сервер может выставить заголовок 'Use-As-Dictionary: match="/app*js"', информирующий что возвращённый контент в дальнейшем можно использовать в качестве словаря для путей "/app*js". При последующем запросе файла, соответствующего данной маске, например, "GET /app.v2.js", клиент передаст хэш имеющегося словаря через заголовок "Available-Dictionary:", а сервер вернёт лишь изменения между файлами app.v1.js и app.v2.js.
    Добавлена страница about:keyboard для настройки комбинаций клавиш и переопределения имеющихся горячих клавиш, например, для задания более привычных для себя вариантов или исключения конфликтов с другими программами.
    Изображение
    Оптимизировано воспроизведение видео с использованием аппаратного ускорения декодирования на GPU AMD. На системах с GPU AMD аппаратно декодированное видео теперь воспроизводится без дополнительного копирования данных (режим zero-copy), как это ранее было реализовано для систем с GPU Intel и NVIDIA. Для версии 5 обновлена реализация протокола Safe Browsing, применяемого для проверки URL на предмет наличия в списках небезопасных ресурсов (фишинговые сайты, страницы с вредоносным ПО и т.п.), предоставляемых Google. Новая версия протокола позволяет загружать списки блокировки для использования на локальной системе (БД с префиксами хэшей SHA256 проблемных URL), которые теперь применяются в Firefox. Добавлена опция для автоматического продолжения воспроизведения видео в режиме "картинка в картинке" в случае переключения вкладки. В режиме усиленной защиты от отслеживания перемещений (ETP, Enhanced Tracking Protection => Strict) включено по умолчанию применение спецификации LNA (Local Network Access) для ограничения обращений к локальной системе (loopback, 127.0.0.0/8) или внутренней сети (192.168.0.0/16, 10.0.0.0/8 и т.п.) при взаимодействии с публичными сайтами. Обращение к внутренним ресурсам используются злоумышленниками для осуществления CSRF-атак на маршрутизаторы, точки доступа, принтеры, корпоративные web-интерфейсы и другие устройства и сервисы, принимающие запросы только из локальной сети. Кроме того, сканирование внутренних ресурсов может использоваться для косвенной идентификации или сбору сведений о локальной сети. На Linuх-системах с GNOME и композитным сервером Mutter решена проблема с нечётким отображением контента при использовании дробного уровня масштабирования. На компьютерах Apple с чипами Apple Silicon и ОС macOS включена поддержка API WebGPU. Выставляемые в HTTP-заголовке Accept-Language приоритеты выбора языка (q-параметры) синхронизированы со значениями, выставляемыми другими браузерами, что решило некоторые проблемы с переносимостью. Например, для второго языка теперь выставляется приоритет q=0.9 вместо q=0.5, а для каждого последующего языка приоритет уменьшается на 0.1. Библиотека ICU обновлена до версии 78 с поддержкой Unicode 17 и обновлением данных локалей. В Service Worker-ах разрешено использование JavaScript-модулей ESM (ECMAScript Module), импортируемых и экспортируемых через выражения import и export. Добавлена поддержка спецификации CSS Module Scripts, позволяющей использовать систему модулей JavaScript для импорта CSS-ресурсов. Например: import styles from "./styles.css" with { type: "css" }; В псевдо-элементе "::marker", позволяющем настроить параметры чисел и точек для перечислений в блоках <ul> и <ol>, разрешено использовать CSS-свойства "counter-*" и "quotes". В API CompressionStream и DecompressionStream добавлена поддержка формата сжатия Brotli. В API View Transitions, применяемом для создания анимационных эффектов при переключении между разными состояниями DOM, добавлено свойство "type", содержащее массив с типами переходов. Также добавлен соответствующий CSS-селектор ":active-view-transition-type" и свойство document.activeViewTransition, возвращающее экземпляр активного для документа объекта ViewTransition. Включён набор CSS-свойств для управления показом элементов, привязанных к местоположению других элементов (CSS Anchor Positioning), без использования JavaScript, например, для прикрепления к элементам всплывающих окон (popover), появляющихся по аналогии со всплывающими подсказками. Реализована спецификация "Storage Access Headers", определяющая заголовок запроса "Sec-Fetch-Storage-Access" и заголовок ответа "Activate-Storage-Access" для получения доступа к сторонним Cookie без вызова метода document.requestStorageAccess(). Сервер может запросить доступ к Cookie через заголовок "Activate-Storage-Access" и он будет отправлен клиентом, если ранее пользователь подтверждал предоставление доступа к хранилищу Cookie через API Storage Access. В CSS-свойство "root-font-relative" добавлена поддержка относительных единиц измерения rcap, rch, rex и ric. Реализован API Navigation, позволяющий web-приложениям перехватывать операции навигации в окне, инициировать переход и анализировать историю действий с приложением. API предоставляет альтернативу свойствам window.history и window.location, оптимизированную для одностраничных web-приложений. В инструментах для web-разработчиков в панели с правилами CSS реализована поддержка редактирования и добавления селекторов псевдоэлементов. В интерфейс для просмотра данных в формате JSON добавлена кнопка для импорта ресурса в систему профилирования (Firefox Profiler) для определения информации о его размере. В панелях инспектирования HTML-элементов и анимации обеспечено отображение псевдоэлементов View Transitions. В панели с правилами CSS реализовано отображение правил @position-try, применяемых для управления показом элементов, привязанных к местоположению других элементов (CSS Anchor Positioning). В версии Firefox для Android добавлена защита от атак по сторонним каналам, таким как Spectre, применяемым для обхода изоляции между сайтами. Ранее подобная защита была доступа только в сборках для десктоп-систем.
Кроме новшеств и исправления ошибок в Firefox 147 устранено 23 уязвимости. 10 уязвимостей вызваны проблемами работы с памятью, такими как переполнения буферов и обращение к уже освобождённым областям памяти. Потенциально данные проблемы способны привести к выполнению кода злоумышленника при открытии специально оформленных страниц. 3 уязвимости позволяют обойти sandnox-изоляцию из-за некорректной проверки границ и целочисленного переполнения в компоненте для работы с графикой.

Новость позаимствована с opennet.ru
Ссылка на оригинал: https://www.opennet.ru/opennews/art.shtml?num=64601

Жизнь за Нер'зула!

Ответить