Дата публикации:Wed, 06 Aug 2025 12:30:04 +0300
Компания Google опубликовала релиз web-браузера Chrome 139. Одновременно доступен стабильный выпуск свободного проекта Chromium, выступающего основой Chrome. Браузер Chrome отличается от Chromium использованием логотипов Google, наличием системы отправки уведомлений в случае краха, модулями для воспроизведения защищённого от копирования видеоконтента (DRM), системой автоматической установки обновлений, постоянным включением Sandbox-изоляции, поставкой ключей к Google API и передачей RLZ-параметров при поиске. Для тех, кому необходимо больше времени на обновление, отдельно поддерживается ветка Extended Stable, сопровождаемая 8 недель. Следующий выпуск Chrome 140 запланирован на 2 сентября.
Основные изменения в Chrome 139:
- Добавлена возможность использования AI-модели для формирования поисковых рекомендаций в адресной строке и на странице открытия новой вкладки. Для показа подобных AI-рекомендаций в адресную строку добавлена кнопка "AI Mode", а в списке рекомендаций вывод от AI помечен или выделен в отдельную секцию. Возможность пока активирована по умолчанию только для части пользователей. В централизованно управляемых системах расширена возможность создания собственных ярлыков быстрого поиска через адресную строку (можно создать ярлык "@имя" для поиска на определённом сайте). В новой версии добавлена дополнительная настройка, позволяющая разрешить переопределение, удаление или отключение пользователем ярлыков, заданных администратором. В версии для Android в режимах стандартной и расширенной защиты Google Safe Browsing реализована проверка безопасности загружаемых APK-пакетов. Проверка осуществляется через обращение к серверам Google. В случае, если файл признан опасным пользователю выводится соответствующее предупреждение, а доступ к файлу блокируется (в интерфейсе предусмотрена отдельная возможность доступа в обход блокировки). Удалена настройка ExtensionManifestV2Availability, позволявшая вернуть поддержку второй версии манифеста Chrome, определяющего возможности и ресурсы, доступные для дополнений, написанных с использованием API WebExtensions. В браузере теперь возможно использование только дополнений на базе третьей версии манифеста. В официальных стабильных сборках Chrome прекращена поддержка опций командной строки "--extensions-on-chrome-urls" и "--disable-extensions-except", позволявших отключить блокировку установки рискованных дополнений, например, подставляемых в браузер без спроса пользователя. В Chromium и тестовых сборках Chrome поддержка указанных опций сохранена. На странице открытия новой вкладки реализована нижняя панель, на которой показывается информация о дополнениях, влияющих на содержимое страницы новой вкладки, а также сведения о применяемых политиках централизованного управления. Добавлена защита от случайного удаления сохранённых паролей при выборе операции полной очистки данных. При наличии сохранённых паролей браузер теперь направляет пользователя на страницу менеджера паролей, на которой можно осмысленно и по-отдельности удалить пароли и ключи passkey. Отключена возможность автоматического отката на использование для WebGL системы программной отрисовки SwiftShader, программно реализующей API Vulkan. В случае отсутствия должного бэкенда на базе GPU создание контекста WebGL теперь будет возвращать ошибку, а не переключаться на SwiftShader. Прекращение использования SwiftShader позволит повысить безопасность, благодаря исключению выполнения сгенерированного JIT-компилятором кода в процессе, отвечающем за взаимодействие с GPU. На платформах Linux и macOS системы без GPU больше не смогут использовать WebGL. В Windows поддержка SwiftShader оставлена только для устройств без GPU или с проблемными GPU, добавленными в чёрный список. Во встроенном хранилище корневых сертификатов (Chrome Root Store) прекращено доверие к удостоверяющим центрам Chunghwa Telecom и Netlock из-за нарушений требований к удостоверяющим центрам. В связи с отсутствием действий по устранению выявленных недостатков, TLS-сертификаты, выданные Chunghwa Telecom и Netlock после 31 июля 2025 года, теперь воспринимаются в Chrome как не заслуживающие доверия. Сертификаты, выпущенные до 31 июля, продолжают восприниматься как нормальные. В API Web Speech добавлена поддержка распознавания речи, используя локально доступные на устройстве движки. Сайт может запросить наличие движков распознавания для необходимого языка, выбрать между локальными и облачными сервисами, запросить установку необходимых ресурсов для локального распознавания и убедиться, что распознавание будет выполнено на устройстве пользователя без отправки данных во внешние сервисы. В CSS, помимо задания радиуса скругления при помощи свойства border-radius, реализовано свойство "corner-shape" для управления формой и кривизной углов прямоугольных элементов. Например, при помощи "corner-shape" можно делать плавные переходы от квадрата к кругу (squircle), вогнутые углы (scoop), срезать фаску (bevel) и делать вырезы (notch), а также анимировать изменение формы углов. Добавлена поддержка спецификации Custom Functions, позволяющей создавать собственные функции для CSS, действующие по аналогии с собственными параметризованными CSS-свойствами. Отличие сводится к тому, что CSS-свойства могут вернуть только одно фиксированное значение, а CSS-функции могут возвращать значения на основе других собственных CSS-свойств, параметров и условий. Для определения CSS-функций добавлено правило "@function". @function --negative(--value) { result: calc(-1 * var(--value)); } @function --shadow(--shadow-color <color> : inherit) { result: 2px 2px var(--shadow-color, black); } Добавлено CSS-свойство "caret-animation", позволяющее управлять анимацией изменения курсора в полях ввода (например, мигание курсора можно заменить на собственную анимацию). С целью соблюдения спецификации и улучшения совместимости с другими браузерами добавлено CSS-свойство "font-width", аналогичное ранее доступному свойству "font-stretch". При блокировке Service Worker-а из-за срабатывания правил CSP (Content Security Policy) теперь в асинхронном режиме отправляется событие "error", вместо генерации исключения SecurityError сразу после вызова конструктора "new Worker(url)" или "new SharedWorker(url)". Предоставлена возможность создания единого web-приложения, работающего с несколькими доменами верхнего уровня или разными поддоменами. Для настройки привязки к доменам в манифесте предусмотрено поле "scope_extensions". { "name": "Example", "display": "standalone", "start_url": "/index.html", "scope_extensions": [ { "origin": "https://*.example.com" }, { "origin": "https://example.co.uk" }, { "origin": "https://*.example.co.uk" } ] } Реализовано определение всех корректных MIME-типов для данных JSON, отмеченных в спецификации WHATWG MIME Sniffing. В дополнение к традиционным MIME-типам "application/json" и "text/json" добавлена поддержка составных MIME-типов, таких как "text/html+json" и "image/svg+json". В API Invoker Commands добавлена команда "request-close" для принудительного закрытия диалога на базе HTML-элемента <dialog>, действие которой аналогично вызову JavaScript-метода requestClose(). В WebGPU добавлена поддержка 3D-текстур, сжатых с использованием форматов BC и ASTC. Также добавлен экспериментальный (Origin Trial) режим обеспечения совместимости, предоставляющий урезанный API WebGPU, пригодный для работы с устаревшими графическими API, такими как OpenGL и Direct3D11. Для SVG-элементов <script> (SVGScriptElement) добавлена поддержка атрибута "async" для выполнения скриптов в асинхронном режиме. Для усложнения пассивной идентификации экземпляра браузера в HTTP-заголовке Accept-Language теперь перечисляются не все выбранные пользователем языки, а только наиболее приоритетные языки. Добавлен экспериментальный (Origin trials) API Prompt, предоставляющий вызовы для взаимодействия с большими языковыми моделями, позволяющие использовать в запросах текст, изображения и звуковой ввод. Результат возвращается в удобном для разбора структурированном виде. Среди примеров использования упоминаются генерация описания изображений, визуальный поиск, транскрибирование речи, классификация звуков, генерация текста по заданной инструкции и извлечение информации из текста. В инструментах для web-разработчиков проведена работа по устранению известных проблем c функциональностью и недоработок в интерфейсе пользователя. Благодаря проделанной работе, число открытых уведомлений о проблемах сокращено на 27%. Во встроенный AI-ассистент добавлена поддержка загрузки произвольных изображений. В панели инспектирования сети реализована возможность добавления столбцов для отображения состояния произвольных HTTP-заголовков. Прекращена поддержка операционной системы macOS 11, для работы теперь требуется как минимум выпуск macOS 12. В версии для Android прекращена поддержка платформ Android 8 (Oreo) и Android 9 (Pie).
Дополнительно можно отметить включение в кодовой базе, на основе которой формируется выпуск Chrome 140, режима OverrideDefaultOzonePlatformHintToAuto, активирующего автоматический выбор бэкенда в прослойке Ozone, абстрагирующей взаимодействие с графической подсистемой. Изменение позволит адаптивно активировать Wayland-бэкенд на системах с поддержкой Wayland, не привязываясь по умолчанию с бэкенду X11. Вручную включить автоматический выбор бэкенда можно и в выпуске Chrome 139 при помощи настройки "chrome://flags/#ozone-platform-hint" или флага командной строки "--ozone-platform-hint=auto".
Новость позаимствована с opennet.ru
Ссылка на оригинал: https://www.opennet.ru/opennews/art.shtml?num=63690