Вышел релиз браузера Firefox 100. Ветку Firefox 101 перевели на стадию бета-тестирования, релиз намечен на 31 мая.
![](https://habrastorage.org/getpro/habr/upload_files/e0a/2d4/1c8/e0a2d41c8c623122d29b3bb69ef7fdd2.png)
В Firefox 100 включили следующие обновления:
возможность одновременного использования словарей для разных языков при проверке правописания и активацию сразу нескольких языков;
в Linux и Windows включили по умолчанию плавающие полосы прокрутки, когда полноценная полоса прокрутки появляется только при подведении курсора мыши. Для отключения скрытых полос прокрутки под Windows используются настройки ОС («System Settings > Accessibility > Visual Effects > Always show scrollbars»), в Linux можно использовать настройки самого браузера (General > Browsing > Always show scrollbars);
обеспечили показ субтитров в режиме «картинка в картинке» при просмотре видео с YouTube, Prime Video и Netflix, а также на сайтах, использующих формат WebVTT (Web Video Text Track), например, на Coursera.org;
добавлена проверка соответствия языка сборки Firefox с установками операционной системы при первом запуске;
на macOS добавили поддержку видео с расширенным динамическим диапазоном на системах с экранами, поддерживающими HDR (High Dynamic Range);
на Windows по умолчанию включили аппаратное ускорение декодирования видео в формате AV1 на компьютерах с GPU Intel Gen 11+ и AMD RDNA 2 (кроме Navi 24 и GeForce 30) при наличии в системе AV1 Video Extension. В Windows для GPU Intel по умолчанию включили оверлейный режим вывода (Video overlay), чтобы снизить потребление энергии при воспроизведении видео;
для британских пользователей обеспечили поддержку автоматического заполнения и запоминания номеров кредитных карт в web-формах;
при отрисовке и обработке событий обеспечили более равномерное распределение ресурсов, чтобы, например, решить проблемы с запаздыванием реакции ползунка громкости в Twitch;
для загружаемых с других сайтов субресурсов и iframe включили игнорирование выставления через HTTP-заголовок Referrer-Policy политик «no-referrer-when-downgrade», «origin-when-cross-origin» и «unsafe-url», что позволяет в обход настройкам по умолчанию вернуть передачу сторонним сайтам полного URL в заголовке «Referer». Ещё в Firefox 87 c целью блокирования потенциальных утечек конфиденциальных данных по умолчанию была активирована политика «strict-origin-when-cross-origin», подразумевающая вырезание путей и параметров из «Referer» при отправке запроса на другие хосты при обращении по HTTPS, передача пустого «Referer» при переходе с HTTPS на HTTP и передачу полного «Referer» для внутренних переходов в рамках одного сайта;
ввели новый индикатор фокуса для ссылок (например, при переборе ссылок клавишей Tab). Теперь они обрамляются сплошной синей линией аналогично тому, как помечаются активные поля web-форм;
Firefox теперь можно выбрать в качестве просмотрщика PDF по умолчанию;
добавили API WritableStreams, предоставляющий дополнительный уровень абстракции для организации записи потоковых данных в канал со встроенными средствами ограничения потока. Добавлен метод pipeTo() для создания неименованных каналов (pipe) между ReadableStreams и WritableStreams, а также интерфейсы WritableStreamDefaultWriter и WritableStreamDefaultController;
в WebAssembly реализовали поддержку исключений (WASM Exceptions), позволяющих добавлять обработчики исключений для C++ и применять семантику раскрутки стека вызовов (unwind) без привязки к дополнительным обработчикам на JavaScript;
повысили производительность элементов «display: grid» с высоким уровнем вложенности;
в CSS добавили поддержку media-запросов 'dynamic-range' и 'video-dynamic-range' для определения наличия экрана, поддерживающего HDR (High Dynamic Range);
прекратили поддержку нестандартного HTTP-заголовка Large-Allocation.
В Firefox для Android реализовали следующее:
режим HTTPS-only, при включении которого все выполняемые без шифрования обращения автоматически перенаправляются на защищённые варианты страниц («http://» заменяется на «https://»);
возможность поиска в закладках и в истории посещений;
на странице просмотра истории посещений доступна группировка похожих страниц;
на домашней странице появилась новая секция с выборкой из истории посещений;
новые обои для фона домашней страницы.
![](https://habrastorage.org/getpro/habr/upload_files/d67/dfa/939/d67dfa93918884390d2e93ed97f1c4f6.png)
В Firefox 100 устранили 24 уязвимости, из которых 21 помечены как опасные. 17 уязвимостей (CVE-2022-29918 и CVE-2022-29917) вызваны проблемами работы с памятью, в том числе переполнением буферов и обращением к уже освобождённым областям памяти. Потенциально они могли привести к выполнению кода злоумышленника при открытии специально оформленных страниц.
В феврале этого года Mozilla предложила веб-разработчикам проверить свои сайты и убедиться, что версии Firefox 100 и Chrome 100 будут запускаться там без ошибок и корректно отрабатывать данные о версии браузера из строки User-Agent. Например, трехзначный индекс браузера из User-Agent на веб-сайте, созданном на конструкторе Duda, в некоторых случаях будет откидывать последнюю цифру индекса версии. Веб-сервер примет клиента за версию браузера 10 и выдаст ошибку, так как он поддерживает минимум версию 40.
В начале апреля вышла версия браузера Firefox 99. В ней реализовали поддержку родных контекстных меню GTK, плавающие полосы прокрутки GTK, усиленную изоляцию песочниц на платформе Linux и т.д.
В конце апреля Google выпустила релиз версии браузера Chrome 101. Он получил новый интерфейс загрузок, сохранение групп вкладок, изменения в менеджере паролей и т.д.