Бета-версия Chrome 99 была выпущена 3 февраля 2022 года и, как ожидается, станет стабильной версией в начале марта 2022 года.
Удалить API состояния батареи в небезопасном источнике
API состояния батареи больше не поддерживается для небезопасных источников , таких как HTTP-страницы или HTTPS-iframe, встроенные в HTTP-страницы. API состояния батареи позволяет веб-разработчикам, среди прочего, получать доступ к уровню зарядки батареи системы и узнать, заряжается ли она. Это мощная функция, которая существует уже более десяти лет и поэтому изначально разрабатывалась с различными ограничениями безопасности.
Удалить семейство шрифтов -webkit-standard
В этой версии Chrome удалена поддержка значения font-family
"-webkit-standard"
. Это значение является просто псевдонимом проприетарного ключевого слова "-webkit-body"
и доступно только потому, что оно унаследовано от WebKit. Удаление этого улучшает соответствие спецификациям CSS и Firefox.
Удалить список геймпадов
Метод navigator.getGamepads()
теперь возвращает массив объектов Gamepad
вместо GamepadList . GamepadList
больше не поддерживается в Chrome. Это приводит Chrome в соответствие со спецификацией, а также с Gecko и Webkit. Дополнительную информацию о геймпадах см. в разделе «Играйте в динозавровую игру Chrome с помощью геймпада ».
Обновите WebCodecs, чтобы они соответствовали спецификации.
Chrome удалил два элемента из-за недавних изменений в спецификации WebCodecs.
Метод EncodedVideoChunkOutputCallback()
принимает словарь EncodedVideoChunkMetadata
. Ранее член с именем temporalLayerId
находился по адресу EncodedVideoChunkMetadata.temporalLayerId
. В соответствии со спецификацией он теперь расположен по адресу EncodedVideoChunkMetadata.SvcOutputMetadata.temporalLayerId
.
Спецификация требует, чтобы конструктор VideoFrame()
включал аргумент метки времени ( VideoFrameInit.timestamp
) для типов CanvasImageSource
, которые неявно не имеют метки времени (например, HTMLCanvasElement
). Если не включить временную метку, это должно привести к ошибке TypeError
, но Chrome ранее по умолчанию установил для временной метки нулевое значение. Это кажется полезным, но проблематично, если вы затем отправляете VideoFrame
в VideoEncoder
, где временные метки используются для управления битрейтом.
Политика прекращения поддержки
Чтобы поддерживать работоспособность платформы, мы иногда удаляем из веб-платформы API, которые отработали свой срок. Может быть много причин, по которым мы должны удалить API, например:
- Они заменены более новыми API.
- Они обновляются с учетом изменений в спецификациях, чтобы обеспечить согласованность и согласованность с другими браузерами.
- Это ранние эксперименты, которые так и не были реализованы в других браузерах и, таким образом, могут увеличить нагрузку на веб-разработчиков.
Некоторые из этих изменений затронут очень небольшое количество сайтов. Чтобы устранить проблемы заранее, мы стараемся заранее уведомлять разработчиков, чтобы они могли внести необходимые изменения для поддержания работоспособности своих сайтов.
В настоящее время в Chrome существует процедура прекращения поддержки и удаления API , по сути:
- Объявите об этом в списке рассылки Blink-dev .
- Устанавливайте предупреждения и указывайте временные рамки в консоли Chrome DevTools, когда на странице обнаруживается использование.
- Подождите, отслеживайте, а затем удаляйте эту функцию по мере снижения ее использования.
Вы можете найти список всех устаревших функций на сайте chromestatus.com, используя устаревший фильтр , а также удаленные функции, применив удаленный фильтр . В этих постах мы также попытаемся обобщить некоторые изменения, рассуждения и пути миграции.