04.07.2022

Firefox 97

Доступен релиз Firefox 97.

  • Linux:
    • WebRender включён на мобильных процессорах Ryzen 5000. Разработчиков не устраивает ситуация, когда WebRender приходится явно включать для каждого нового семейства процессоров, поэтому они планируют перейти к концепции «чёрного списка», когда WebRender будет включён всегда, кроме устройств из чёрного списка.
    • Исправлены прямые углы окон в elementary OS 6 (теперь они скруглены).
    • Удалена возможность генерировать PostScript-документы для печати (это не касается печати на PostScript-принтерах).
  • Снижена нагрузка на графический процессор (увеличенная в Firefox 94). На очень слабых процессорах (наподобие Intel Gemini Lake) она приводила к троттлингу.
  • WebRTC: включена поддержка аппаратного кодирования видео (с откатом на программное в случае неудачи).
  • Убраны цветные темы, предложенные в Firefox 94 (они изначально задумывались, как временная акция). Тем не менее, если у пользователя включена одна из этих тем, она сохранится.
  • «Из коробки» включена изоляция сайтов (проект Fission, см. описание в примечаниях к прошлым выпускам). В будущем она станет неотключаемой. Пользователям, которые опасаются возросшего потребления памяти, предложен ряд настроек, хотя разработчики отмечают, что опасения беспочвенны — в среднем потребление увеличилось лишь на ничтожные 3%.
  • Поле поиска в менеджере паролей теперь поддерживает больше операций с помощью клавиатуры: навигацию по результатам поиска (стрелки), отображение выбранного (Enter), очистку набранного текста (Esc).
  • На страницу about:webrtc добавлена настройка, позволяющая отключить автообновление содержимого.
  • Повышена точность значений нагрузки на процессор, отображаемых на странице about:processes.
  • Горизонтальные линии (<hr>) теперь удаляются однократным нажатием Backspace, если курсор стоит в начале следующей строки. Пример: если курсор стоит перед «4», то Backspace удалит черту, а не поместит курсор после черты, как раньше.
  • Режим «Только HTTPS» теперь корректно распознаёт попытки определить captive portal и не пытается соединиться со страницей http://detectportal.firefox.com/canonical.html по HTTPS.
  • Поскольку доля сайтов, использующих TLS 1.0/1.1, крайне мала, Firefox, столкнувшись с таким сайтом, больше не будет предлагать включить поддержку этих устаревших протоколов. Поддержку по-прежнему можно включить, но только через about:config.
  • Максимальный размер data: URL ограничен 32 мегабайтами, поскольку большие значения приводят к аварийному завершению работы браузера.
  • Исправлена проблема, из-за которой сетевые принтеры могли быть недоступны.
  • Исправлено получение значения TTL через DNS-over-HTTPS (из-за ошибки значение TTL всегда равнялось 60 секундам).
  • Исправлено падение при попытке сделать скриншот страницы, открытой по протоколу IPv6.
  • macOS: ускорена загрузка системных шрифтов, что положительно сказалось на скорости открытия новых вкладок.
  • Windows 11: теперь используются системный стиль полос прокрутки.
  • CSS:
    • <length> и <length-percentage> теперь поддерживают единицы измерения cap и ic.
    • Реализована поддержка правила @scroll-timeline и свойства animation-timeline (привязка анимации AnimationTimeline к прокрутке, а не ко времени).
    • Свойство color-adjust переименовано в print-color-adjust.
    • Включена поддержка каскадных слоёв. Правило @layer задаёт каскадный слой, импортируемый через правило @import с помощью функции layer().
    • Добавлена поддержка свойства scrollbar-gutter (резервирование места под полосу прокрутки).
    • Реализована поддержка revert-layer.
  • SVG:
    • Атрибут d теперь может использоваться в качестве CSS-свойства.
    • Отключена по умолчанию поддержка ряда API SVGPathSeg: SVGPathSegList, SVGPathElement.getPathSegAtLength(), SVGAnimatedPathData. В будущем они будут удалены.
  • В DedicatedWorkerGlobalScope добавлена поддержка AnimationFrameProvider (позволяет использовать методы requestAnimationFrame и cancelAnimationFrame в отдельных воркерах).
  • DOM:
    • Интерфейс ElementInternals обзавёлся методом reportValidity().
    • Методы AbortController.abort() и AbortSignal.abort() теперь позволяют установить причину прерывания сигнала, которая будет доступна через свойство AbortSignal.reason. Причиной по умолчанию является DOMException «AbortError».
    • Реализован метод AbortSignal.throwIfAborted(), позволяющий проверить, был ли сигнал прерван, и выбросить AbortSignal.reason().Это упрощает обработку сигналов прерывания в случаях, когда разработчик не можете просто передать сигнал прерываемому методу.
  • Инструменты разработчика:
    • Реализована поддержка указания цвета в формате hwb().
    • В консоль добавлено меню, позволяющее выбрать контекст, в котором будет выполнен JS-код.

>>> Примечания к выпуску для разработчиков

>>> Все исправленные в этом выпуске ошибки

>>> Подробности

Источник.