Google выпустила релиз браузера Chrome 105. Также стал доступен стабильный выпуск свободного проекта Chromium.
Основные изменения в Chrome 105 включают:
прекращение поддержки специализированных web-приложений Chrome Apps. Их заменят обособленные web-приложения на базе технологии Progressive Web Apps и стандартных Web API. В Chrome 109 возможность выполнения Chrome Apps будет отключена;
внедрение дополнительной изоляции процесса "renderer", который отвечает за отрисовку. Данный процесс будет выполняться в дополнительном контейнере (App Container) поверх существующей системы sandbox-изоляции;
появление собственного унифицированного хранилища корневых сертификатов удостоверяющих центров (Chrome Root Store). До окончания внедрения сертификаты продолжат проверяться с использованием специфичного для каждой операционной системы хранилища;
подготовку к прекращению поддержки API Web SQL. В Chrome 105 запрещено обращение к Web SQL из кода, загруженного без использования HTTPS, а также добавлен вывод в DevTools предупреждения об устаревании технологии. В 2023 году API Web SQL планируют удалить. Его заменит аналог на базе WebAssembly;
прекращение поддержки синхронизации с Chrome 73 и более ранними выпусками в Chrome sync;
активацию встроенного просмотрщика сертификатов для платформ macOS и Windows, который заменил вызов интерфейса ОС;
добавление настроек для управления API "Topics & Interest Group" в версию для платформы Android. Это позволяет определять категории интересов пользователя и использовать их вместо отслеживающих cookie;
сбор телеметрии об установленных дополнениях, обращении к API и соединении с внешними сайтами при включении расширенной защиты браузера;
перевод в категорию устаревших возможности использования не-ASCII символов в доменах, указываемых в заголовке Cookie (для IDN-доменов следует указывать домены в формате punycode). В выпуске Chrome 106 эту возможность заблокируют;
внедрение API Custom Highlight для произвольного изменения стиля выделенных областей текста, который позволяет не ограничиваться предоставляемым браузером фиксированным стилем для выделенных областей (::selection, ::inactive-selection) и подсветки синтаксических ошибок (::spelling-error, ::grammar-error);
добавление запроса "@container" в CSS, который позволяет формировать стиль элементов в зависимости от размера родительского элемента;
добавление CSS-псевдокласса ":has()" для проверки с учётом наличия дочернего элемента в родительском;
внедрение API HTML Sanitizer, который позволяет вырезать из содержимого элементы, влияющие на отображение и исполнение при выводе через метод setHTML();
возможность использования API Streams (ReadableStream) для отправки fetch-запросов до загрузки тела ответа;
возможность изменения оформления области заголовка окна при помощи компонентов Window Controls Overlay для PWA, позволяющая придать web-приложению вид обычного настольного;
стабилизацию возможности доступа к Media Source Extensions из выделенных worker-ов (в контексте DedicatedWorker) для повышения производительности буферизированного воспроизведения мультимедийных данных и не только;
поддержку свойства Sec-CH-Viewport-Heigh в API Client Hints, который развивается для замены заголовка User-Agent и позволяет выборочно отдавать данные о конкретных параметрах браузера и системы. Это позволит получить сведения о высоте видимой области;
возможность создания глобальных обработчиков событий onbeforeinput (document.documentElement.onbeforeinput), при помощи которых приложения могут переопределить поведение при редактировании текста в блоках <input>, <textarea> и других элементах с установленным атрибутом "contenteditable" на стадии до изменения браузером содержимого элемента и дерева DOM;
расширенные возможности API Navigation, позволяющего приложениям перехватывать операции навигации в окне, инициировать переход и анализировать историю действий с приложением;
добавление статического метода Response.json(), позволяющего формировать тело ответа на основе данных с типом JSON;
улучшения в инструментах для разработчиков. В отладчике при срабатывании точки останова разрешено редактирование верхней в стеке функций без прерывания отладочного сеанса. В панели Recorder реализована поддержка точек останова, пошагового воспроизведения и записи событий наведения мыши;
добавление метрик LCP (Largest Contentful Paint) в панели анализа производительности для выявления задержек при отрисовке крупных элементов в видимой области, таких как изображения, видео и блочные элементы.
В Chrome 105 также устранили 24 уязвимости. Одной из них (CVE-2022-3038) присвоен критический уровень опасности. Детали по данной уязвимости пока не разглашаются, известно только, что она вызвана обращением к освобождённому блоку памяти (use-after-free) в Network Service.
Следующий выпуск Chrome 106 запланирован на 27 сентября.
8 августа Google опубликовала релиз браузера Chrome 104.