Chrome sürümü 106

Компания Google представила релиз web-браузера Chrome 106. Одновременно доступен стабильный выпуск свободного проекта Chromium, выступающего основой Chrome. Браузер Chrome отличается от Chromium использованием логотипов Google, наличием системы отправки уведомлений в случае краха, модулями для воспроизведения защищённого от копирования видеоконтента (DRM), системой автоматической установки обновлений, постоянным включением Sandbox-изоляции, поставкой ключей к Google API и передачей при поиске RLZ-параметров. Для тех, кому необходимо больше времени на обновление, отдельно поддерживается ветка Extended Stable, сопровождаемая 8 недель. Следующий выпуск Chrome 107 запланирован на 25 октября.

Chrome 106'deki önemli değişiklikler:

  • Для пользователей сборок для настольных систем включён по умолчанию механизм Prerender2 для упреждающей отрисовки содержимого рекомендаций в адресной строке Omnibox. Упреждающая отрисовка дополняет ранее доступную возможность загрузки наиболее вероятных для перехода рекомендаций не дожидаясь клика пользователя, Помимо загрузки, содержимое связанных с рекомендациями страниц теперь может отрисовываются в буфере (в том числе выполняются скрипты и формируется дерево DOM), что позволяет обеспечить мгновенное отображение рекомендаций после клика.
  • Предоставлена возможность поиска в истории, закладках и вкладках непосредственно из адресной строки Omnibox. Для локализации поиска предложены управляющие теги @history, @bookmarks и @tabs. Например, для поиска в закладках необходимо ввести «@bookmarks поисковая фраза». Для отключения поиска из адресной строки в настройках поиска предусмотрена специальная опция.
    Chrome sürümü 106
    Chrome sürümü 106
  • Отключена по умолчанию поддержка технологии Server Push, которая определена в стандартах HTTP/2 и HTTP/3, и позволяет серверу отправить ресурсы клиенту, не дожидаясь их явного запроса. В качестве причины прекращения поддержки упоминается излишнее усложнение реализации технологии при наличии более простых и не менее эффективных альтернатив, таких как тег <link rel=»preload»>, HTTP-ответ 103 и протокол WebTransport. По статистике Google в 2021 году около 1.25% сайтов, работающих по HTTP/2, использовали Server Push, а в 2022 году данный показатель снизился до 0.7%. Технология Server Push также присутствует в спецификации HTTP/3, но на практике многие серверные и клиентские программные продукты, включая браузер Chrome, изначально не реализовали её.
  • Отключена возможность использования не-ASCII символов в доменах, указываемых в заголовке Cookie (для IDN-доменов следует указывать домены в формате punycode). Изменение приводит браузер в соответствие с требованиями RFC 6265bis и поведением, реализованным в Firefox.
  • Предложены более ясные метки для идентификации экранов в многомониторных конфигурациях. Подобные метки могут выводиться в диалогах предоставления полномочий для открытия окна на внешнем экране. Например, вместо номера внешнего экрана (‘External Display 1’) теперь будет показываться название модели монитора (‘HP Z27n’).
  • Android sürümündeki iyileştirmeler:
    • На странице с историей посещений обеспечена поддержка механизма «Journey», обобщающего прошлую активность через группировку сведений о ранее выполненных поисковых запросах и просмотренных страницах. При вводе ключевых слов в адресной строке, если они ранее использовались в запросах, предлагается продолжить поиск с прерванной позиции.
    • На устройствах с платформой Android 11 предоставлена возможность блокировки страницы, открытой в режиме инкогнито, после переключения на другое приложение. Для продолжения просмотра после блокировки требуется прохождение аутентификации. По умолчанию блокировка отключена и требует активации в настройках приватности.
    • При попытке загрузки файлов из режима инкогнито, обеспечен вывод дополнительного запроса подтверждения сохранения файла и предупреждения о том, что загруженный файл смогут увидеть другие пользователи устройства, так как он будет сохранён в области менеджера загрузок.
      Chrome sürümü 106
  • Прекращено предоставление API chrome.runtime для всех сайтов. Данный API теперь предоставляется только при наличии подключаемых к нему браузерных дополнений. Ранее chrome.runtime был доступен для всех сайтов так как его использовало встроенное дополнение CryptoToken с реализацией API U2F, поддержка которого прекращена.
  • Origin Trials moduna birkaç yeni API eklendi (ayrı etkinleştirme gerektiren deneysel özellikler). Origin Trial, localhost veya 127.0.0.1'den indirilen uygulamalardan veya belirli bir site için sınırlı bir süre için geçerli olan özel bir belirteç kaydettikten ve aldıktan sonra belirtilen API ile çalışabilme becerisini ifade eder.
    • Концепция анонимных iframe, позволяющих загрузить документ в отдельном контексте, не связанном с другими iframe и основным документом.
    • API Pop-Up для организации вывода элементов интерфейса поверх других элементов, например, для организации работы интерактивных меню, подсказок, инструментов выбора содержимого и обучающих систем. Для показа элемента на самом верхнем слое используется новый атрибут «popup». В отличие от диалогов, создаваемых при помощи элемента <dialog> новый API позволяет создавать немодальные диалоги, обрабатывать события, использовать анимацию и создавать гибкие средства управления всплывающей областью.
  • Для свойств ‘grid-template-columns’ и ‘grid-template-rows’, применяемых в CSS Grid, реализована поддержка интерполяции для организации плавного перехода между разными состояниями сетки.
  • В CSS-свойство ‘forced-color-adjust’ добавлена поддержка значения ‘preserve-parent-color’, при установке которого свойство «color» заимствует своё значение из родительского элемента.
  • Свойство «-webkit-hyphenate-character» избавлено от префикса «-webkit-» и теперь доступно по именем «hyphenate-character». Указанное свойство можно использовать для установки строки, используемой вместо символа переноса конца слова на другую строку («-«).
  • Реализована третья редакция API Intl.NumberFormat, в котором появились новые функции formatRange(), formatRangeToParts() и selectRange(), группировка множеств, новые опции округления и задания точности, возможность интерпретации строк как десятичных чисел.
  • В API ReadableStream добавлена поддержка эффективной прямой передачи бинарных данных из последовательного порта в обход внутренних очередей и буферов. Прямая переча включается через задание режима BYOB — «port.readable.getReader({ mode: ‘byob’ })».
  • В программные интерфейсы для работы со звуком и видео (AudioDecoder, AudioEncoder, VideoDecoder и VideoEncoder) добавлена поддержка события «dequeue» и связанных с ним callback-вызовов, активируемых когда кодек начнёт выполнение поставленных в очередь задач кодирования или декодирования содержимого.
  • В API WebXR Device реализована возможность raw-доступа к текстурам изображений с камеры, синхронизированным с текущей позицией в виртуальном окружении.
  • Внесены улучшения в инструменты для web-разработчиков. В панели Sources появилась возможность группировки файлов по источнику. Улучшена трассировка стека для асинхронных операций. Появилась возможность автоматического игнорирования при отладке известных сторонних скриптов. Добавлена возможность скрытия игнорируемых файлов в меню и панелях. Улучшена работа со стеком вызовов в отладчике.
    Chrome sürümü 106

    В панели Performance добавлен новый трек Interactions для визуализации взаимодействия со страницей и выявления потенциальных проблем с отзывчивостью интерфейса.

    Chrome sürümü 106

Кроме нововведений и исправления ошибок в новой версии устранено 20 уязвимостей. Многие из уязвимостей выявлены в результате автоматизированного тестирования инструментами AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer и AFL. Критических проблем, которые позволяют обойти все уровни защиты браузера и выполнить код в системе за пределами sandbox-окружения, не выявлено. В рамках программы по выплате денежного вознаграждения за обнаружение уязвимостей для текущего релиза компания Google выплатила 16 премий на сумму 38500 долларов США (по одной премии в $9000,m $7500, $7000, $5000, $4000, $3000, $2000 и $1000). Размер восьми вознаграждений пока не определён.

Kaynak: opennet.ru

Yorum ekle