Google выпустила стабильную версию браузера Chrome 152 для Windows, macOS и Linux. Обновление вышло 25 августа и постепенно раскатывается на пользователей десктопных версий браузера. Главными новшествами релиза стали инструмент для определения производительности процессора устройства и механизм контроля исходящих сетевых соединений, а также крупный пакет исправлений безопасности.
CPU Performance API: сайты научились подстраиваться под слабые процессоры
В Chrome 152 появился CPU Performance API, который позволяет веб-приложениям определять уровень производительности процессора устройства пользователя. Веб-приложения могут использовать эту информацию об уровне производительности, чтобы адаптировать пользовательский опыт под возможности устройства — например, снижать графическую детализацию, регулировать объем тяжелых вычислений или подстраивать фоновые задачи.
Технически новинка реализована через свойство navigator.cpuPerformance — это доступное только для чтения целое число от 1 (слабое устройство) до 4 (быстрое), при этом значение 0 означает, что уровень определить не удалось. Опираясь на эти данные, сайт может отказаться от тяжелых анимаций или предложить облегченный медиапоток на слабом оборудовании.
Разработчики могут использовать API как отдельно, так и в связке с уже существующим Compute Pressure API. Этот API также можно использовать в сочетании с Compute Pressure API, который предоставляет данные о нагрузке и загрузке процессора в реальном времени.
Контроль над новой функцией предоставлен как рядовым пользователям, так и корпоративным администраторам. Пользователи могут переопределить сообщаемый уровень производительности в настройках браузера через раздел «Производительность» → «Скорость» → «Переопределить уровень производительности ЦП». Администраторы также могут управлять этим поведением с помощью корпоративной политики CpuPerformanceTierOverride.
Connection Allowlists — новый барьер против нежелательных подключений
Вторым заметным нововведением стала функция контроля сетевых соединений. Chrome 152 включает Connection Allowlists — механизм безопасности, который обеспечивает явный контроль над внешними конечными точками, ограничивая сетевые соединения, инициируемые документом или веб-воркером. По сути, речь идет о списке разрешенных адресов, которым сайт может отправлять запросы через Fetch API и другие сетевые интерфейсы платформы — все прочие соединения блокируются.
Исправление 327 уязвимостей
Помимо новых функций для веб-разработчиков, релиз содержит крупный пакет исправлений безопасности. В общей сложности устранено 327 уязвимостей: 10 критических, 61 высокой степени опасности, 184 средней и 72 низкой. Среди ключевых исправлений — ошибки использования освобожденной памяти (use-after-free) в компонентах ANGLE, Aura и Chromecast.
Другие изменения и переход на новый график релизов
Помимо CPU Performance API и Connection Allowlists, в Chrome 152 расширена поддержка CSS-псевдоэлементов, добавлен HTML-атрибут autocorrect и функция subgroup-size-control для WebGPU. Кроме того, расширена поддержка псевдоэлементов CSS, добавлен HTML-атрибут autocorrect, а также представлена функция subgroup-size-control для WebGPU. Google также объявила об удалении ряда API Privacy Sandbox, включая Private Aggregation API.
Начиная со следующей версии браузера Google меняет подход к выпуску обновлений. Начиная с Chrome 153, цикл выпуска сократится до двух недель, а выход стабильной версии запланирован на 8 сентября. Это означает, что новые функции и исправления безопасности будут доходить до пользователей заметно быстрее, чем при прежнем четырехнедельном графике обновлений.