Firefox 94
Доступен релиз Firefox 94.
- Ускорена работа браузера:
- Сокращены накладные расходы при использовании API-интерфейсов performance.mark () и performance.measure () с большими наборами записей о производительности.
- Изменено подавление отрисовки во время загрузки, благодаря чему значительно ускорена тёплая загрузка в режиме изоляции сайтов.
- Немного уменьшено потребление памяти скриптами.
- Ускорено перечисление свойств JavaScript.
- Улучшено планирование сборки мусора, что принесёт немного очков в тестах, связанных со скоростью загрузки страниц.
- Снижена нагрузка на процессор при опросе сокетов HTTPS-соединений.
- Ускорена инициализация хранилища.
- Ускорен холодный запуск (снижено число операций ввода-выода главного потока).
- При закрытии инструментов разработчика теперь высвобождается больше памяти.
- Ускорена загрузка страниц (больший приоритет выделяется загрузке и отрисовке изображений).
- Добавлено множество монохромных тем.
- Появилась страница
about:unloads
(аналогchrome://discards
), на которой можно вручную выгрузить вкладки, чтобы не закрывать их, но освободить ресурсы. - Менеджер паролей научился работать с мультистраничными формами входа (когда поле ввода пароля появляется после успешного ввода логина).
- Добавлена возможность работы в виде фонового процесса (основной процесс браузера запускается без создания окна и не завершается при закрытии последней вкладки, а висит в фоне). Для этого следует запускать браузер с параметром
MOZ_APP_SILENT_START=1
. - Добавлено системное дополнение Proxy Failover, которое предотвращает некорректное использование API Proxy криво написанными дополнениями. Необходимость в нём возникла после того, как были обнаружены дополнения, разработчики которых, в погоне за своими целями, случайно заблокировали пользователям доступ к обновлениям браузера и обновлениям списка вредоносных дополнений. Проблемные дополнения уже исключены из каталога дополнений, а Proxy Failover гарантирует, что подобное не повторится вновь.
- Пользователям предложено дополнение Firefox Multi-Account Containers значительно упрощающее работу со встроенными в браузер контейнерами. Кроме того, оно умеет работать совместно с Mozilla VPN, позволяя пустить трафик определённого контейнера через определённый VPN-сервер.
- Возвращена пропавшая в прошлом выпуске кнопка очистки поля поиска в закладках.
- Клавиша
Esc
теперь снова очищает содержимое панели поиска (это сломалось 15 лет назад). - Панель закладок больше не отображается при добавлении новой вкладки, если включена настройка «Никогда не отображать».
- Большему (по сравнению с прошлым выпуском, числу пользователей будет включена изоляция сайтов (проект Fission). Вкладки, относящиеся к разным доменам, будут размещены в отдельных процессах (по процессу на домен, в отличие от текущей ситуации, когда все вкладки ютятся в 8 процессах). Только так можно гарантированно защититься от атак по сторонним каналам (Meltdown, Spectre), а также дополнительно изолировать содержимое внешних скриптов и фреймов. Платой за это является некоторое общее увеличение потребления памяти, но оно компенсируется плюсами: снижается фрагментация памяти, браузер получает возможность эффективнее возвращать память операционной системе (нет необходимости ждать закрытия всех вкладок, достаточно дождаться закрытия вкладок, относящихся к домену), эффективнее распределяется нагрузка на ядра процессора, повышается стабильность (падение вкладки сайта не утащит за собой вкладки с другими сайтами).
- Сетевое разделение, дебютировавшее в Firefox 85, теперь затрагивает кеш OSCP (пока лишь в режиме приватного просмотра).
- Включено кеширование токенов TLS.
- Исправлена проблема, из-за которой в создаваемые скриншоты не попадали элементы с
position: fixed
, а такжеcanvas
. - Исправлена ошибка, из-за которой при отключении настройки «Предлагать в адресной строке ссылки из журнала посещений» переставали предлагаться и открытые вкладки.
- Исправлена ощибка, из-за которой заблокированные (например, дополнением) запросы достигали DNS-резолвера, если было включено использование DNS-over-HTTPS.
- Исправлена ошибка, из-за которой воспроизведение медиа-файлов продолжалось, даже если пользователь вернулся на предыдущую страницу.
- Включено автоопределение изменений состояния сети, связанных с IPv6. По ошибке оно годами было отключено не только в Windows XP, как задумывалось, но во всех версиях Windows.
- Удалена настройка
layout.css.font-visibility.level
, ограничивающая число доступных шрифтов. Вместо неё предложены настройкиlayout.css.font-visibility.standard
,layout.css.font-visibility.trackingprotection
,layout.css.font-visibility.resistFingerprinting
,layout.css.font-visibility.private
, позволяющие управлять доступными шрифтами более гибко (теперь можно устанавливать разные значения в зависимости от выбранного режима защиты). - Убрано предупреждение, появляющееся при закрытии браузера с несколькими открытыми вкладками. Оно оставлено лишь в Linux и macOS, и только при закрытии браузера сочетанием клавиш
Ctrl+Q
, поскольку его легко перепутать с другой горячей клавишей —Ctrl+Tab
. При закрытии браузера прочими способами (кнопкой в заголовке окна / через пункт меню / сочетанием трёх клавиш) пользователь осознанно хочет закрыть браузер, и к чему раздражать его лишними вопросами. Для тех, кому это предупреждение всё же нужно, сделана специальная настройка. Кроме того, удалена настройка «Предупреждать при выходе из браузера» (работавшая совместно с «Восстанавливать предыдущую сессию при запуске»), поскольку новая настройка полностью её заменяет. - Настройка «Восстанавливать предыдущую сессию при запуске» переименована в «Открыть предыдущие окна и вкладки».
- Отключена по умолчанию поддержка оппортунистического шифрования при использовании HTTP (так называемого «TLS для http://»). В нём больше нет смысла, так как если владелец ресурса хочет настроить защищённое соединение, то настроит HTTPS (получить сертификат для домена сейчас намного проще, чем 7 лет назад), а если ресурс до сих пор работает по HTTP, то его владелец вряд ли заинтересован в поддержке безопасного соединения.
- macOS: при воспроизведении видео с YouTube и Twitch в полноэкранном режиме Firefox теперь задействует режим энергосбережения. В системах с процессорами M1 исправлено падение при переходе в полноэкранный режим при использовании программного декодирования видео.
- Windows 11: Добавлена поддержка макетов окон.
- Windows: при перезапуске браузера (например, после обновления) окна будут размещены на тех же виртуальных рабочих столах, что и до перезапуска.
- Windows 10+: добавлена настройка
clipboard.copyPrivateDataToClipboardCloudOrHistory
, позволяющая при копировании текста не сохранять его в истории буфера обмена (если история буфера обмена включена). - Доступны установщики в формате MSIX.
- X11:
- Задействован EGL-бэкенд вместо применявшегося ранее GLX. Пока поддерживаются лишь свободные драйверы Mesa 21. Поддержка проприетарного драйвера NVIDIA пока отключена, так как он не поддерживает
EGL_GENERATE_RESET_ON_VIDEO_MEMORY_PURGE_NV
. - Теперь используется Xrandr, что позволяет корректно обрабатывать ситуации, когда рабочий стол составлен из нескольких дисплеев (до этого они определялись как один большой).
- Задействован EGL-бэкенд вместо применявшегося ранее GLX. Пока поддерживаются лишь свободные драйверы Mesa 21. Поддержка проприетарного драйвера NVIDIA пока отключена, так как он не поддерживает
- Wayland:
- Включена поддержка буфера обмена Wayland (который работает в асинхронном режиме).
- Решена проблема со всплывающими окнами (всплывающие подсказки, диалоги, запросы разрешений, меню).
- WebRender:
- Включён на системах с Xwayland.
- Аппаратный WebRender Включён для встроенной графики Ryzen 5000G.
- Отключён на системах с DDX драйвером Intel (вместо него следует использовать драйвер modesetting).
- CSS:
- Правило @import теперь поддерживает функцию
layout()
. - Убран префикс у -moz-fit-content.
- Правило @import теперь поддерживает функцию
- API:
- Реализована глобальная функция structuredClone (), позволяющая копировать сложные объекты JavaScript.
- DOM:
- Добавлены свойство HTMLElement.enterKeyHint и глобальный атрибут enterkeyhint.
- Реализована поддержка статического метода HTMLScriptElement.supports () (простой и унифицированный способ проверки того, поддерживает ли браузер определенные типы скриптов, такие как модули JavaScript или классические скрипты.
- Появилась поддержка свойства ShadowRoot.delegatesFocus (позволяет коду проверить, было ли установлено свойство
delegatesFocus
при присоединении теневой DOM.
- Инструменты разработчика:
- Отладчик теперь показывает все вхождения выбранного токена.
- Сетевой монитор научился показывать запросы, заблокированные политикой Same Origin.
>>> Примечания к выпуску для разработчиков
>>> Все закрытые в этом выпуске баги
>>> Подробности