Abandons et suppressions dans Chrome 99

La version bêta de Chrome 99 a été publiée le 3 février 2022 et devrait devenir la version stable début mars 2022.

Supprimer l'API Battery Status pour les origines non sécurisées

L'API Battery Status n'est plus compatible avec les origines non sécurisées, telles que les pages HTTP ou les iFrames HTTPS intégrés à des pages HTTP. L'API Battery Status permet aux développeurs Web d'accéder, entre autres, au niveau de charge de la batterie d'un système et à son état de charge. Il s'agit d'une fonctionnalité puissante qui existe depuis plus d'une décennie et, à ce titre, a été conçue à l'origine avec différentes contraintes de sécurité.

Supprimer font-family -webkit-standard

Cette version de Chrome supprime la prise en charge de la valeur font-family "-webkit-standard". Cette valeur est simplement un alias pour le mot clé propriétaire "-webkit-body". Elle n'est divulguée que car elle est héritée de WebKit. Cette suppression permet d'améliorer l'alignement avec les spécifications CSS et Firefox.

Supprimer la GamepadList

La méthode navigator.getGamepads() renvoie désormais un tableau d'objets Gamepad au lieu d'une liste GamepadList. GamepadList n'est plus compatible avec Chrome. Chrome est ainsi conforme aux spécifications, avec Gecko et Webkit. Pour obtenir des informations générales sur les manettes de jeu, consultez l'article Jouer au jeu du dinosaure de Chrome avec une manette.

Mettre à jour les codecs Web pour qu'ils correspondent à la spécification

Chrome a supprimé deux éléments en raison de modifications récentes apportées à la spécification WebCodecs.

La méthode EncodedVideoChunkOutputCallback() utilise un dictionnaire EncodedVideoChunkMetadata. Auparavant, un membre appelé temporalLayerId se trouvait à EncodedVideoChunkMetadata.temporalLayerId. Conformément à la spécification, elle se trouve désormais à l'emplacement EncodedVideoChunkMetadata.SvcOutputMetadata.temporalLayerId.

La spécification nécessite que le constructeur VideoFrame() inclue un argument de code temporel (VideoFrameInit.timestamp) pour les types CanvasImageSource qui n'ont pas implicitement de code temporel (par exemple, HTMLCanvasElement). Si vous n'incluez pas le code temporel, une TypeError devrait être générée, mais Chrome a précédemment défini le code temporel par défaut sur zéro. Cela semble utile, mais pose problème si vous envoyez ensuite le VideoFrame à un VideoEncoder, où les horodatages sont utilisés pour guider le contrôle du débit.

Règlement relatif aux abandons

Pour que la plate-forme reste opérationnelle, nous supprimons parfois de la plate-forme Web les API qui ont terminé leur cours. Nous pouvons supprimer une API pour de nombreuses raisons, par exemple:

  • Elles sont remplacées par des API plus récentes.
  • Ils sont mis à jour pour refléter les modifications apportées aux spécifications afin d'assurer leur alignement et leur cohérence avec les autres navigateurs.
  • Il s'agit des premiers tests qui n'ont jamais abouti dans d'autres navigateurs et qui peuvent donc alourdir le travail des développeurs Web.

Certaines de ces modifications auront une incidence sur un très petit nombre de sites. Pour pallier ce problème, nous essayons d'en informer les développeurs à l'avance afin qu'ils puissent apporter les modifications nécessaires afin que leurs sites continuent de fonctionner.

Chrome propose actuellement un processus d'abandon et de suppression des API, essentiellement:

  • Faites des annonces sur la liste de diffusion blink-dev.
  • Définissez des avertissements et indiquez des échelles de temps dans la console des outils pour les développeurs Chrome lorsque l'utilisation est détectée sur la page.
  • Attendez, surveillez la fonctionnalité, puis supprimez-la lorsque son utilisation diminue.

Vous pouvez trouver une liste de toutes les fonctionnalités obsolètes sur chromestatus.com à l'aide du filtre obsolète et des fonctionnalités supprimées en appliquant le filtre supprimé. Nous allons également essayer de résumer certains des changements, raisonnements et parcours de migration dans ces articles.