Релиз Firefox 88
19 апреля 2021 года
Состоялся релиз web-браузера Firefox 88. Кроме того, сформировано обновление ветки с длительным сроком поддержки 78.10.0. На стадию бета-тестирования переведена ветка Firefox 89, релиз которой намечен на 1 июня.
- В просмотрщике PDF добавлена поддержка интегрированных в PDF-файлы форм ввода, в которых для обеспечения интерактивного взаимодействия с пользователем используется JavaScript.
- В системе вывода на печать выполнена локализация единиц измерения, используемых для задания полей.
- Введено ограничение на интенсивность показа запроса полномочий для доступа к микрофону и камере. Подобные запросы не будут показываться, если в течение последних 50 секунд пользователь уже предоставлял доступ к тому же устройству для того же сайта и той же вкладки.
- Вызов инструмента для создания скриншотов удалён из меню "Page Actions", показываемого при нажатии на многоточие в адресной строке. Для создания скриншотов рекомендуется вызывать соответствующий инструмент для контекстного меню, показываемого при клике правой кнопкой мыши или разместить ярлык в панели через интерфейс настройки внешнего вида.
- Добавлена поддержка масштабирования щипком на тачпадах в Linux с графическими окружениями на базе протокола Wayland.
- Включена по умолчанию поддержка формата изображений AVIF (AV1 Image Format), в котором задействованы технологии внутрикадрового сжатия из формата кодирования видео AV1.
- При запуске Firefox в окружениях Xfce и KDE активировано использование движка композитинга WebRender. В Firеfox 89 ожидается включение WebRender для всех остальных пользователей Linux, включая все версии Mesa и системы с драйверами NVIDIA (ранее webRender был включён только для GNOME при наличии драйверов Intel и AMD). WebRender написан на языке Rust и позволяет добиться существенного увеличения скорости отрисовки и снижения нагрузки на CPU за счёт выноса на сторону GPU операций отрисовки содержимого страницы, которые реализованы через выполняемые в GPU шейдеры. Для принудительного включения в about:config следует активировать настройку "gfx.webrender.enabled" или запустить Firefox с выставленной переменной окружения MOZ_WEBRENDER=1.
- Началось поэтапное включение протоколов HTTP/3 и QUIC. Вначале поддержка HTTP/3 будет активирована лишь для небольшого процента пользователей и, если не возникнет непредвиденных проблем, будет доведена до всех к концу мая. Для использования HTTP/3 требуется поддержка на стороне клиента и сервера одной и той же версии чернового стандарта QUIC и HTTP/3, которая указывается в заголовке Alt-Svc (Firefox поддерживает черновики спецификации с 27 по 32).
- Отключена по умолчанию поддержка протокола FTP. Настройка network.ftp.enabled по умолчанию установлена в значение false, а параметр для расширений browserSettings.ftpProtocolEnabled переведён в режим только для чтения. В следующем выпуске будет удалён весь код, связанный с FTP. В качестве причины называется снижение рисков атак на старый, имеющий историю выявления уязвимостей и имеющий проблемы с сопровождением код с реализацией поддержки FTP. Также упоминается избавление от протоколов, не поддерживающих шифрование, которые незащищены от модификации и перехвата транзитного трафика при совершении MITM-атак.
- Для блокирования возможных межсайтовых утечек обеспечена изоляция значения свойства "window.name" первичным сайтом, с которого открыта страница.
- В JavaScript для результата выполнения регулярных выражений добавлено свойство "indices", которое содержит массив c начальными и конечными позициями групп совпадений. Свойство заполняется только при выполнении регулярного выражения с флагом "/d".
let re = /quick\s(brown).+?(jumps)/igd; let result = re.exec('The Quick Brown Fox Jumps Over The Lazy Dog'); // result.indices[0] === Array [ 4, 25 ] // result.indices[1] === Array [ 10, 15 ] // result.indices[2] === Array [ 20, 25 ]
- В Intl.DisplayNames() и Intl.ListFormat() ужесточена проверка того, что опции, передаваемые в конструктор, являются объектами. При попытке передачи строк или других примитивов будет генерироваться исключения.
- Для DOM предоставлен новый статический метод AbortSignal.abort(), возвращающий AbortSignal, для которой уже выставлен параметр aborted.
- В CSS реализованы новые псевдо-классы ":user-valid" ":user-invalid", определяющие состояние проверки элемента формы, для которого после взаимодействия пользователя с формой была выполнена проверка корректности указанных значений.
- Для содержимого и курсора реализована CSS-функция image-set(), позволяющая выбрать изображение из набора вариантов с разным разрешением, наиболее подходящее для текущих параметров экрана и пропускной способности сетевого подключения.
- В CSS-свойстве outline обеспечено соответствие контуру, установленному при помощи свойства border-radius.
- Для macOS моноширинный шрифт по умолчанию изменён на Menlo.
- В инструментах для web-разработчиков в панели инспектирования сети появилась новая кнопка для переключения между показом HTTP-ответов в формате JSON и в неизменном виде, так как ответы переданы по сети.
Кроме новшеств и исправления ошибок в Firefox 88 устранено 17 уязвимостей, из которых 9 помечены как опасные. 5 уязвимостей (собраны под CVE-2021-29947) вызваны проблемами работы с памятью, такими как переполнения буферов и обращение к уже освобождённым областям памяти. Потенциально данные проблемы способны привести к выполнению кода злоумышленника при открытии специально оформленных страниц.
Источники
править
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.