Переезды
Удалить AppCache из небезопасных контекстов
При использовании в незащищенных контекстах AppCache потенциально допускает постоянные онлайн- и офлайн-атаки с использованием межсайтовых сценариев. Это серьезная эскалация по сравнению с обычным межсайтовым скриптингом.
Чтобы снизить эту угрозу, AppCache теперь поддерживается только в источниках, которые обслуживают HTTPS.
Разработчикам, которые ищут альтернативу AppCache, рекомендуется использовать сервис-воркеров. Для облегчения этого перехода доступна экспериментальная библиотека .
Намерение удалить | Трекер Chromestatus | Ошибка хрома
Удалить анонимный метод получения для HTMLFrameSetElement
Анонимный метод получения HTMLFrameSetElement
нестандартен и поэтому удаляется. Эта функция была добавлена 13 лет назад для решения проблемы совместимости, которая тогда существовала, но сейчас ее нет. Поскольку это нестандартная функция, альтернативы ей нет. Использование достаточно низкое, поэтому мы не ожидаем, что это станет проблемой.
Намерение удалить | Трекер Chromestatus | Ошибка хрома
Устареть и удалить Gamepads.item()
Устаревший метод доступа item()
удален из массива Gamepads
. Это изменение улучшает совместимость с Firefox, который на данный момент является единственным браузером, реализующим GamepadList
.
Трекер Chromestatus | Ошибка хрома
Устаревания
Устаревшие пользовательские элементы v0
Пользовательские элементы — это технология веб-компонентов, которая позволяет создавать новые теги HTML, расширять существующие теги или расширять компоненты, созданные другими разработчиками. Пользовательские элементы v1 были реализованы в Chrome, начиная с версии 54, выпущенной в октябре 2016 года. Пользовательские элементы v0 были экспериментальной версией, не реализованной в других браузерах. Таким образом, он устарел, и его удаление ожидается в Chrome 80 примерно в феврале 2020 года.
Намерение прекратить поддержку | Трекер Chromestatus | Ошибка хрома
Устаревший импорт HTML
Импорт HTML позволяет импортировать HTML из одного документа в другой. Эта функция была частью ранней экспериментальной версии веб-компонентов, не реализованной в других браузерах. Таким образом, он устарел, и его удаление ожидается в Chrome 73 примерно в апреле 2019 года. Сайты, зависящие от импорта HTML, уже требуют полифилла в браузерах, отличных от Chromium. Когда импорт HTML будет удален, сайты с полифилом продолжат работать в Chrome.
Намерение прекратить поддержку | Трекер Chromestatus | Ошибка хрома
Устаревший Shadow DOM v0
Shadow DOM — это технология веб-компонентов, которая использует поддеревья с ограниченной областью действия внутри элементов. Shadow DOM v1 реализован в Chrome начиная с версии 53, выпущенной в августе 2016 года. Shadow DOM v0 был экспериментальной версией, не реализованной в других браузерах. Таким образом, он устарел, и его удаление ожидается в Chrome 73 примерно в апреле 2019 года. Сайты, зависящие от Shadow DOM v0, уже требуют полифила в браузерах, отличных от Chromium. Когда импорт HTML будет удален, сайты с полифилом продолжат работать в Chrome.
Намерение прекратить поддержку | Трекер Chromestatus | Ошибка хрома
Устаревший SpeechSynthesis.speak() без активации пользователя
Интерфейс SpeechSynthesis
активно используется в сети. Есть неофициальные свидетельства того, что, поскольку другие возможности автозапуска закрываются, злоупотребления переходят на Web Speech API , который не следует правилам автозапуска.
Функция speechSynthesis.speak()
теперь выдает ошибку, если документ не получил пользовательской активации. Удаление ожидается в Chrome 71 где-то в конце ноября.
Намерение прекратить поддержку | Трекер Chromestatus | Ошибка хрома
Политика прекращения поддержки
Чтобы поддерживать работоспособность платформы, мы иногда удаляем из веб-платформы API, которые отработали свой срок. Может быть много причин, по которым мы должны удалить API, например:
- Они заменены более новыми API.
- Они обновляются с учетом изменений в спецификациях, чтобы обеспечить согласованность и согласованность с другими браузерами.
- Это ранние эксперименты, которые так и не были реализованы в других браузерах и, таким образом, могут увеличить нагрузку на веб-разработчиков.
Некоторые из этих изменений затронут очень небольшое количество сайтов. Чтобы устранить проблемы заранее, мы стараемся заранее уведомлять разработчиков, чтобы они могли внести необходимые изменения для поддержания работоспособности своих сайтов.
В настоящее время в Chrome существует процедура прекращения поддержки и удаления API , по сути:
- Объявите об этом в списке рассылки Blink-dev .
- Устанавливайте предупреждения и указывайте временные рамки в консоли Chrome DevTools, когда на странице обнаруживается использование.
- Подождите, отслеживайте, а затем удаляйте эту функцию по мере снижения ее использования.
Вы можете найти список всех устаревших функций на сайте chromestatus.com, используя устаревший фильтр , а также удаленные функции, применив удаленный фильтр . В этих постах мы также попытаемся обобщить некоторые изменения, рассуждения и пути миграции.
,Переезды
Удалить AppCache из небезопасных контекстов
При использовании в незащищенных контекстах AppCache потенциально допускает постоянные онлайн- и офлайн-атаки с использованием межсайтовых сценариев. Это серьезная эскалация по сравнению с обычным межсайтовым скриптингом.
Чтобы снизить эту угрозу, AppCache теперь поддерживается только в источниках, которые обслуживают HTTPS.
Разработчикам, которые ищут альтернативу AppCache, рекомендуется использовать сервис-воркеров. Для облегчения этого перехода доступна экспериментальная библиотека .
Намерение удалить | Трекер Chromestatus | Ошибка хрома
Удалить анонимный метод получения для HTMLFrameSetElement
Анонимный метод получения HTMLFrameSetElement
нестандартен и поэтому удаляется. Эта функция была добавлена 13 лет назад для решения проблемы совместимости, которая тогда существовала, но сейчас ее нет. Поскольку это нестандартная функция, альтернативы ей нет. Использование достаточно низкое, поэтому мы не ожидаем, что это станет проблемой.
Намерение удалить | Трекер Chromestatus | Ошибка хрома
Устареть и удалить Gamepads.item()
Устаревший метод доступа item()
удален из массива Gamepads
. Это изменение улучшает совместимость с Firefox, который на данный момент является единственным браузером, реализующим GamepadList
.
Трекер Chromestatus | Ошибка хрома
Устаревания
Устаревшие пользовательские элементы v0
Пользовательские элементы — это технология веб-компонентов, которая позволяет создавать новые теги HTML, расширять существующие теги или расширять компоненты, созданные другими разработчиками. Пользовательские элементы v1 были реализованы в Chrome, начиная с версии 54, выпущенной в октябре 2016 года. Пользовательские элементы v0 были экспериментальной версией, не реализованной в других браузерах. Таким образом, он устарел, и его удаление ожидается в Chrome 80 примерно в феврале 2020 года.
Намерение прекратить поддержку | Трекер Chromestatus | Ошибка хрома
Устаревший импорт HTML
Импорт HTML позволяет импортировать HTML из одного документа в другой. Эта функция была частью ранней экспериментальной версии веб-компонентов, не реализованной в других браузерах. Таким образом, он устарел, и его удаление ожидается в Chrome 73 примерно в апреле 2019 года. Сайты, зависящие от импорта HTML, уже требуют полифилла в браузерах, отличных от Chromium. Когда импорт HTML будет удален, сайты с полифилом продолжат работать в Chrome.
Намерение прекратить поддержку | Трекер Chromestatus | Ошибка хрома
Устаревший Shadow DOM v0
Shadow DOM — это технология веб-компонентов, которая использует поддеревья с ограниченной областью действия внутри элементов. Shadow DOM v1 реализован в Chrome начиная с версии 53, выпущенной в августе 2016 года. Shadow DOM v0 был экспериментальной версией, не реализованной в других браузерах. Таким образом, он устарел, и его удаление ожидается в Chrome 73 примерно в апреле 2019 года. Сайты, зависящие от Shadow DOM v0, уже требуют полифила в браузерах, отличных от Chromium. Когда импорт HTML будет удален, сайты с полифилом продолжат работать в Chrome.
Намерение прекратить поддержку | Трекер Chromestatus | Ошибка хрома
Устаревший SpeechSynthesis.speak() без активации пользователя
Интерфейс SpeechSynthesis
активно используется в сети. Есть неофициальные свидетельства того, что, поскольку другие возможности автозапуска закрываются, злоупотребления переходят на Web Speech API , который не следует правилам автозапуска.
Функция speechSynthesis.speak()
теперь выдает ошибку, если документ не получил пользовательской активации. Удаление ожидается в Chrome 71 где-то в конце ноября.
Намерение прекратить поддержку | Трекер Chromestatus | Ошибка хрома
Политика прекращения поддержки
Чтобы поддерживать работоспособность платформы, мы иногда удаляем из веб-платформы API, которые отработали свой срок. Может быть много причин, по которым мы должны удалить API, например:
- Они заменены более новыми API.
- Они обновляются с учетом изменений в спецификациях, чтобы обеспечить согласованность и согласованность с другими браузерами.
- Это ранние эксперименты, которые так и не были реализованы в других браузерах и, таким образом, могут увеличить нагрузку на веб-разработчиков.
Некоторые из этих изменений затронут очень небольшое количество сайтов. Чтобы устранить проблемы заранее, мы стараемся заранее уведомлять разработчиков, чтобы они могли внести необходимые изменения для поддержания работоспособности своих сайтов.
В настоящее время в Chrome существует процедура прекращения поддержки и удаления API , по сути:
- Объявите об этом в списке рассылки Blink-dev .
- Устанавливайте предупреждения и указывайте временные рамки в консоли Chrome DevTools, когда на странице обнаруживается использование.
- Подождите, отслеживайте, а затем удаляйте эту функцию по мере снижения ее использования.
Вы можете найти список всех устаревших функций на сайте chromestatus.com, используя устаревший фильтр , а также удаленные функции, применив удаленный фильтр . В этих постах мы также попытаемся обобщить некоторые изменения, рассуждения и пути миграции.