Abandon et suppression d'API dans Chrome 57

Joe Medley
Joe Medley

Dans presque toutes les versions de Chrome, un nombre important de mises à jour des améliorations apportées au produit, à ses performances, ainsi qu'aux fonctionnalités du Web Plate-forme. Cet article décrit les abandons et les suppressions dans Chrome 57, en version bêta début février. Cette liste est susceptible d'être modifiée à tout moment. en temps réel.

Supprimer l'attribut BluetoothDevice.uuids

L'attribut BluetoothDevice.uuids est supprimé pour afficher API Web Bluetooth dans avec la spécification actuelle. Vous pouvez récupérer tous les services GATT autorisés en appelant device.getPrimaryServices().

Bug Chromium

Supprimer l'élément de génération de clé

Depuis Chrome 49, le comportement par défaut de <keygen> consiste à renvoyer le champ vide à moins qu'une autorisation ait été accordée pour cette page. IE et Edge ne sont pas compatibles <keygen> et n'ont pas indiqué que les signaux publics étaient compatibles avec <keygen>. Firefox bloque déjà <keygen> derrière un geste de l'utilisateur, mais est public soutenant leur suppression. Safari transporte <keygen> et n'a pas exprimé l’opinion publique du public concernant son soutien continu. Avec Chrome 57, cet élément est supprimé.

Projet de suppression | Chromestatus Tracker | Bug Chromium

Suppression de l'API de gestion des tampons de temps de ressource préfixée

Deux méthodes et un gestionnaire d'événements, webkitClearResourceTimings(), webkitSetResourceTimingBufferSize() et onwebkitresourcetimingbufferfull sont obsolètes et spécifiques au fournisseur. La les versions standards de ces API, sont compatibles depuis Chrome 46, et les fonctions avec préfixe ont été obsolète dans cette version également. Ces fonctionnalités étaient à l'origine implémentés dans WebKit, mais Safari ne les a pas activés. Firefox, IE 10+ et Edge possède uniquement une version sans préfixe de l'API. Par conséquent, les versions de Webkit sont en cours de suppression.

Projet de suppression | Chromestatus Tracker | Bug Chromium

Suppression de ServiceWorkerMessageEvent au profit de MessageEvent.

La spécification HTML a étendu MessageEvent pour permettre le type ServiceWorker pour l'attribut source. client.postMessage() et création d'un message personnalisé les événements utilisent MessageEvent au lieu de ServiceWorkerMessageEvent. ServiceWorkerMessageEvent a été supprimé.

Projet de suppression | Chromestatus Tracker | Bug Chromium

Suppression des alias globaux IndexedDB avec préfixe webkit

Le point d'entrée IndexedDB et les constructeurs globaux ont été exposés avec webkit préfixes quelque part autour de Chrome 11. Les versions sans préfixe ont été ajoutées dans Chrome 24 et les versions avec préfixe ont été abandonnés dans Chrome 38. La les interfaces suivantes sont concernées:

  • webkitIndexedDB (point d'entrée principal)
  • webkitIDBKeyRange (constructeur global non appelable, mais doté de méthodes statiques utiles)
  • webkitIDBCursor
  • webkitIDBDatabase
  • webkitIDBFactory
  • webkitIDBIndex
  • webkitIDBObjectStore
  • webkitIDBRequest
  • webkitIDBTransaction (constructeurs globaux non appelables)

Projet de suppression | Chromestatus Tracker | Bug Chromium

WebAudio: suppression des préfixes AudioContext et OfflineAudioContext

Chrome est compatible avec WebAudio depuis mi-2011, y compris AudioContext. OfflineAudioContext a été ajouté l'année suivante. Compte tenu de la durée pendant laquelle la norme ont été prises en charge, et l'objectif à long terme de Google de supprimer les préfixes les versions préfixées de ces interfaces sont obsolètes fin 2014 et sont désormais supprimées.

Projet de suppression | Chromestatus Tracker | Bug Chromium

Abandon et suppression de webkitCancelRequestAnimationFrame

La méthode webkitCancelRequestAnimationFrame() est obsolète. l'API spécifique au fournisseur, et l'cancelAnimationFrame() standard a une longue durée compatibles avec Chromium. Par conséquent, la version de Webkit est en cours de suppression.

Projet de suppression | Chromestatus Tracker | Bug Chromium

Abandon de la mise en correspondance non sensible à la casse pour l'attribut usemap

L'attribut usemap était auparavant défini comme étant sans casse. Malheureusement sa mise en œuvre était suffisamment compliquée pour qu'aucun navigateur ne l'ait implémentée. correctement. Des études suggèrent qu'un algorithme aussi complexe n'est pas nécessaire, et même la correspondance ASCII non sensible à la casse n'est pas nécessaire.

Par conséquent, la spécification a été mise à jour de sorte que la correspondance sensible à la casse soit appliquée. L'ancien comportement est obsolète dans Chrome 57 et devrait être supprimé dans Chrome 58.

Projet de suppression | Chromestatus Tracker | Bug Chromium

Abandon de FileReaderSync dans les service workers

Spécification Service Worker a toujours reçu la note (non normative) que "tout de requêtes synchrones ne doivent pas être lancées au sein d'un service worker", pour éviter de bloquer le service worker. Bloquer le service worker bloque toutes les requêtes réseau provenant de pages contrôlées. Malheureusement, le L'API FileReaderSync est disponible depuis longtemps dans les service workers.

Actuellement, seuls Firefox et Chrome exposent FileReaderSync dans les service workers. Pour consulter les spécifications de Firefox, reportez-vous à la discussion sur les spécifications. que cela devrait être corrigé. La suppression est prévue dans Chrome 59.

Projet de suppression | Chromestatus Tracker | Bug Chromium

Abandon de l'ancien appelant pour HTMLEmbedElement et HTMLObjectElement

Si une interface dispose d'un ancien appelant, une instance peut être appelée en tant que . Actuellement, HTMLEmbedElement et HTMLObjectElement acceptent ce de Google Cloud. Dans Chrome 57, cette fonctionnalité est obsolète. Après la suppression, c'est-à-dire attendu dans Chrome 58, l'appel renverra une exception.

Cette modification permet d'aligner Chrome sur les récentes modifications apportées aux spécifications. Ancien comportement n'est pas pris en charge dans Edge ou Safari, et qu'il est en cours supprimé de Firefox.

Projet de suppression | Chromestatus Tracker | Bug Chromium

Abandon de RTCRtcpMuxPolicy de "négocier"

Le rtcpMuxPolicy est utilisé par Chrome pour spécifier sa règle préférée concernant du multiplexage RTP/RTCP. Dans Chrome 57, nous avons modifié rtcpMuxPolicy pour "nécessite" et abandonne la fonction "négocier" pour les raisons suivantes:

  • Le RTCP non multiple utilise des ressources réseau supplémentaires.
  • Suppression de "négocier" simplifieront la surface de l'API, &quot;RtpSender&quot;/&quot;RtpReceiver&quot; n'aura alors qu'un seul moyen de transport.

Dans Chrome 57, "négocier" est obsolète. Nous pensons qu'il s'agit d'un changement non destructive car l'utilisateur recevra un message d'abandon, et RTCPeerConnection pourra toujours doit être créée. La suppression est disponible dans Chrome 63.

Projet d'abandon | Bug Chromium

Arrêt de la prise en charge des identifiants intégrés dans les requêtes de sous-ressources

Le codage en dur des identifiants dans les demandes de sous-ressources est problématique dans un du point de vue de la sécurité, car elle permet aux pirates de forcer les identifiants par force brute le passé. Ces risques sont exacerbés pour les requêtes de sous-ressources avec identifiants. qui atteignent des plages d'adresses IP internes (vos routeurs, etc.). Étant donné la faible utilisation, fermer cette (petite) faille de sécurité semble tout à fait raisonnable.

Les développeurs peuvent intégrer des ressources qui ne nécessitent pas une authentification de base/digeste, en s'appuyant sur sur les cookies et autres mécanismes de gestion des sessions.

Projet de suppression | Chromestatus Tracker | Bug Chromium