Доступен Firefox 84.
- Последний выпуск с поддержкой Adobe Flash. В следующем выпуске планируется удаление поддержки NPAPI, поскольку Flash является единственным NPAPI-плагином, работа которого разрешена в Firefox.
- Расширено число систем, где включён WebRender:
- Linux: GNOME/X11 (кроме систем с проприетарными драйверами NVIDIA, а также с сочетанием «графика Intel и разрешение >= 3440x1440). В следующем выпуске намечено включение WebRender для сочетания GNOME/Wayland (кроме XWayland)
- macOS: Big Sur
- Android: GPU Mali-G.
- Windows: графика Intel 5 и 6 поколения (Ironlake и Sandy Bridge). Кроме того, WebRender отключён для владельцев видеокарт NVIDIA, использующих несколько мониторов, которые имеют разную частоту обновления.
- Firefox научился использовать PipeWire. Поддержка PipeWire добавлена в WebRTC.
- В Linux применены новые методы выделения разделяемой памяти, что увеличило производительность и улучшило совместимость с Docker.
- Реализована нативная поддержка процессоров Apple Silicon. По сравнению с эмулятором Rosetta 2 нативный билд запускается в 2.5 раза быстрее, а отзывчивость веб-приложений удваивается. Тем не менее, для воспроизведения DRM-содержимого всё ещё требуется эмулятор.
- Антивирусное программное обеспечение Cylance в macOS может ошибочно расценить Firefox как вредоносное ПО, нарушив его установку.
- Добавлен менеджер процессов (страница
about:processes
), позволяющая оценить потребление ресурсов каждым потоком. В будущем планируется вывод дополнительных сведений. - Режим „картинка в картинке“ научился запоминать размер и положение окна. Кроме того, окно „картинка в картинке“ теперь открывается на том же мониторе, где открыто окно браузера (до этого оно всегда открывалось на основном мониторе).
- В раздел экспериментальных настроек (чтобы их увидеть, нужно включить
browser.preferences.experimental
и открыть страницуabout:preferences#experimental
) добавлена настройка, позволяющая задействовать одновременно несколько окон „картинка в картинке“. - Появилась возможность менять масштаб созданных дополнениями панелей, всплывающих окон и боковых панелей (Ctrl+колесо мыши).
- После импорта данных из другого браузера Firefox автоматически включит показ панели закладок, если в другом браузере она была включена и на ней имелись закладки.
- На странице управления дополнениями (
about:addons
) теперь показываются не только основные, но и дополнительные разрешения (которые дополнение запрашивает не при установке, а в момент включения той или иной настройки, для которой эти разрешения нужны). До этого дополнительные разрешения не отображались, их невозможно было отозвать. - При создании нового профиля сведения о всех доверенных промежуточных центрах сертификации будут загружены с серверов Mozilla в тот же день, а не в течение нескольких недель, как ранее. Это повышает вероятность того, что новый пользователь Firefox не столкнётся с ошибками безопасности при посещении неправильно настроенных веб-сайтов.
- Реализована защита от уязвимостей, подобных найденной полтора года назад в клиенте Zoom. Например, если раньше опция „всегда использовать Zoom Meetings, чтобы открывать ссылки zoommtg://“ распространялась на все сайты (при нажатии на такую ссылку с любого сайта открывался клиент Zoom), то теперь опция работает лишь в пределах домена (если включить её на example1.com, то при нажатии на ссылку zoommtg:// с сайта anothersite.com окно с запросом появится снова). Чтобы не создавать пользователям слишком больших неудобств, защита (управляется настройкой
security.external_protocol_requires_permission
) не распространяется на некоторые популярные схемы типа tel: и mailto: - В случае, если SSL-сертификат выдан только для
www.example.com
, а пользователь пытается зайти наhttps://example.com
, Firefox автоматически перейдёт наhttps://www.example.com
(до этого пользователи в таких случаях получали ошибку
).SSL_ERROR_BAD_CERT_DOMAIN
- Firefox теперь всегда воспринимает адреса
localhost
(http://localhost/ и http://dev.localhost/) как ссылающиеся на интерфейс loopback (т.е. http://127.0.0.1). Таким образом, ресурсы, загружаемые с localhost, больше не воспринимаются как смешанное содержимое. - Файлы в формате PDF, офисные документы и медиафайлы теперь всегда сохраняются с правильным расширением (иногда они сохранялись без расширения).
- Максимально допустимое число неудачных попыток использования DoH (после достижения которого браузер автоматически переключается на обычный DNS) увеличено с 5 до 15.
- На платформе Windows ускорение Canvas 2D теперь выполняется средствами графического процессора.
- CSS:
- Псевдокласс :not() обзавёлся поддержкой сложных селекторов.
- Проприетарное свойство
-moz-default-appearance
лишилось поддержки значенийscrollbar-small
(вместо него следует использоватьscrollbar-width: thin
) иscrollbar
(только в macOS; вместо него следует использоватьscrollbar-horizontal
иscrollbar-vertical
).
- JavaScript: кастомные форматы даты и времени, указанные в качестве параметра конструктора Intl.DateTimeFormat(), теперь поддерживают указание количество цифр, используемых для представления долей секунды (
fractionalSecondDigits
). - API:
- API Paint Timing: добавлен интерфейс PerformancePaintTiming (отслеживание времени отрисовки различных частей страницы).
- Метод Navigator.registerProtocolHandler() теперь принимает только два параметра:
scheme
andurl
. Параметрtitle
больше не поддерживается. - Метод MediaRecorder.start() теперь выбрасывает
.InvalidModificationError
, если количество треков в записываемом потоке изменилось. - Из-за опасений межсайтового скриптинга удалена поддержка кэширования приложений (использовалась для работы приложений в оффлайн-режиме). Вместо него следует использовать API Service Worker.
- Инструменты разработчика:
- Панель «Сеть» теперь может обрабатывать внезапные сбои и отображать полезные подробности для отладки, такие как трассировка стека. Упрощена отправка сообщений об ошибках — достаточно нажать на ссылку.
- Инспектор доступности научился показывать порядок обхода элементов страницы клавишей Tab. Таким образом, разработчики могут оценить удобство навигации с клавиатуры.
>>> Примечания к выпуску для разработчиков
>>> Подробности