Publié le 5 février 2025
Sauf indication contraire, les modifications suivantes s'appliquent à la dernière version bêta de Chrome pour Android, ChromeOS, Linux, macOS et Windows. Pour en savoir plus sur les fonctionnalités listées ici, consultez les liens fournis ou la liste sur ChromeStatus.com. Chrome 134 est en version bêta depuis le 5 février 2025. Vous pouvez télécharger la dernière version sur Google.com pour ordinateur ou sur le Google Play Store pour Android.
CSS
Cette version ajoute cinq nouvelles fonctionnalités CSS et d'UI.
Propriété CSS "dynamic-range-limit"
Permet à une page de limiter la luminosité maximale du contenu HDR.
Élément <select> personnalisable
Ajoutez la possibilité de personnaliser les éléments <select> HTML en activant le nouveau comportement avec la valeur base-select de appearance. Une fois que vous avez activé cette fonctionnalité, vous pouvez ajouter du contenu enrichi, y compris des images, et mettre en forme les options.
Fermeture de la boîte de dialogue par clic en dehors
L'une des fonctionnalités intéressantes de l'API Popover est son comportement de fermeture légère. Cette fonctionnalité apporte la même capacité à <dialog>. Un nouvel attribut closedby contrôle le comportement :
<dialog closedby=none>: aucune fermeture de boîte de dialogue déclenchée par l'utilisateur.<dialog closedby=closerequest>: appuyer surESC(ou sur un autre déclencheur de fermeture) ferme la boîte de dialogue.<dialog closedby=any>: cliquer en dehors de la boîte de dialogue ou appuyer sur Échap la ferme. Même comportement quepopover=auto.
Héritage de la mise en surbrillance CSS
Avec l'héritage de la mise en surbrillance CSS, les pseudo-classes de mise en surbrillance CSS, telles que ::selection et ::highlight, héritent de leurs propriétés via la chaîne de mise en surbrillance pseudo, plutôt que via la chaîne d'éléments. Résultat : le modèle d'héritage des propriétés de mise en surbrillance est plus intuitif.
Pour en savoir plus, consultez l'article de blog Inheritance changes for CSS selection styling (Modifications apportées à l'héritage pour le style de sélection CSS) rédigé par Stephen Chenney d'Igalia.
Pseudo-classe :has-slotted
La pseudo-classe :has-slotted représente un élément d'emplacement avec du contenu inséré, tel qu'un nœud de texte ou un élément. Cela peut être utilisé pour styliser des éléments en fonction de l'utilisation ou non d'un contenu de remplacement pour un emplacement.
API Web
Fonctionnalité Attribution Reporting : supprimer la limite de rapports agrégables lorsque l'ID de contexte de déclencheur n'est pas nul
Ce changement est basé sur les commentaires des appelants d'API et sur la nécessité de pouvoir mesurer un plus grand nombre d'événements de conversion pour certains parcours utilisateur.
Actuellement, l'API est limitée à 20 rapports agrégables par enregistrement de source, ce qui est restrictif pour les cas d'utilisation où un utilisateur peut avoir un parcours utilisateur plus long. Cette modification supprime la limite de rapports agrégables lorsqu'un ID de contexte de déclencheur est fourni lors de l'enregistrement. La suppression de cette limite n'est autorisée que lorsque l'ID de contexte du déclencheur est spécifié. En effet, lorsque c'est le cas, l'API applique un taux plus élevé de rapports nuls, ce qui permet de se protéger contre les fuites d'informations multisites via le nombre de rapports.
De plus, les rapports agrégables seront toujours soumis à d'autres limites qui restreignent la quantité totale d'informations pouvant être mesurées, comme le budget de contribution L1 (65 536) par source et la limite de taux d'attribution.
Partitionnement des URL blob : extraction/navigation
Dans le cadre de la proposition Storage Partitioning, implémente le partitionnement de l'accès aux URL blob par clé de stockage (site de premier niveau, origine des frames et valeur booléenne has-cross-site-ancestor), à l'exception des navigations de niveau supérieur qui ne seront partitionnées que par origine de frame. Ce comportement est semblable à celui actuellement implémenté par Firefox et Safari, et aligne l'utilisation des URL blob sur le schéma de partitionnement adopté par d'autres API de stockage dans le cadre de Storage Partitioning. De plus, Chrome appliquera "noopener" aux navigations de niveau supérieur initiées par le moteur de rendu sur des URL blob lorsque le site correspondant est de type intersites par rapport au site de premier niveau effectuant la navigation. Cela permet à Chrome d'adopter un comportement semblable à celui de Safari. Les spécifications concernées ont été mises à jour pour refléter ces changements.
Vous pouvez annuler temporairement cette modification en définissant la règle PartitionedBlobURLUsage. Cette règle sera abandonnée lorsque les autres règles d'entreprise liées au partitionnement du stockage seront abandonnées.
Document-Policy : expect-no-linked-resources
Le point de configuration expect-no-linked-resources dans Document-Policy permet à un document d'indiquer à l'agent utilisateur d'optimiser sa séquence de chargement, par exemple en n'utilisant pas le comportement d'analyse spéculative par défaut (également appelé scanner de préchargement).
Les agents utilisateur ont implémenté l'analyse spéculative du code HTML pour récupérer de manière spéculative les ressources présentes dans le balisage HTML, afin d'accélérer le chargement des pages. Pour la grande majorité des pages Web dont les ressources sont déclarées dans le balisage HTML, l'optimisation est bénéfique et le coût payé pour déterminer ces ressources constitue un bon compromis. Toutefois, les scénarios suivants peuvent entraîner un compromis de performances sous-optimal par rapport au temps passé explicitement à analyser le code HTML pour déterminer les sous-ressources à récupérer :
- Pages pour lesquelles aucune ressource n'est déclarée dans le code HTML.
- Pages HTML volumineuses avec des chargements de ressources minimes ou inexistants, qui pourraient contrôler explicitement le préchargement des ressources à l'aide d'autres mécanismes de préchargement disponibles.
expect-no-linked-resources Document-Policy indique à l'agent utilisateur qu'il peut choisir d'optimiser le temps passé à déterminer ces sous-ressources.
Gestion explicite des ressources (asynchrone et synchrone)
Ces fonctionnalités répondent à un modèle courant de développement logiciel concernant la durée de vie et la gestion de diverses ressources (par exemple, la mémoire et les E/S). Ce modèle inclut généralement l'allocation d'une ressource et la possibilité de libérer explicitement les ressources critiques.
Étendre l'API console.timeStamp pour prendre en charge les mesures et les options de présentation
Cette fonctionnalité étend l'API console.timeStamp() de manière rétrocompatible afin de fournir une méthode hautes performances pour instrumenter les applications et afficher les données de timing dans le panneau "Performances" des outils de développement.
Les entrées de timing ajoutées avec l'API peuvent avoir un code temporel, une durée et des options de présentation personnalisés (piste, couloir et couleur).
OffscreenCanvas getContextAttributes
Ajoute l'interface getContextAttributes de CanvasRenderingContext2D à OffscreenCanvasRenderingContext2D.
API Private Aggregation : limites de contribution par contexte pour les appelants Shared Storage
Permet aux appelants Shared Storage de personnaliser le nombre de contributions par rapport Private Aggregation.
Cette fonctionnalité permet aux appelants de Shared Storage de configurer des limites de contribution par contexte avec un nouveau champ, maxContributions. Les appelants définissent ce champ pour remplacer le nombre par défaut de contributions par rapport. Les nombres plus grands et plus petits sont autorisés. Chrome accepte les valeurs maxContributions comprises entre 1 et 1 000 inclus. Les valeurs supérieures seront interprétées comme 1 000.
En raison du remplissage, la taille de la charge utile de chaque rapport sera à peu près proportionnelle au nombre de contributions choisi par rapport. Nous prévoyons que l'activation de rapports plus volumineux augmentera le coût d'exploitation du service d'agrégation.
Les appelants Protected Audience ne seront pas affectés par cette fonctionnalité. Toutefois, nous prévoyons d'ajouter la possibilité de personnaliser le nombre de contributions pour les rapports Protected Audience dans de futures fonctionnalités.
Compatibilité avec ImageSmoothingQuality dans PaintCanvas
Ajout de la prise en charge de l'attribut imageSmoothingQuality sur Paint Canvas. Il permet à un développeur Web de choisir le compromis entre qualité et performances lors de la mise à l'échelle des images.
Il existe trois options valides pour imageSmoothingQuality : low, medium et high.
Sous-groupes WebGPU
Ajoute la fonctionnalité de sous-groupes à WebGPU. Les opérations de sous-groupe effectuent des opérations SIMT pour assurer une communication et un partage de données efficaces entre les groupes d'invocations. Ces opérations peuvent être utilisées pour accélérer les applications en réduisant les frais généraux de mémoire occasionnés par la communication entre les appels.
Nouvelles phases d'évaluation
Dans Chrome 134, vous pouvez activer les nouvelles versions d'essai d'origine suivantes.
API Digital Credential
Les sites Web peuvent obtenir des identifiants à partir d'applications de portefeuille mobile par le biais de divers mécanismes aujourd'hui, par exemple, des gestionnaires d'URL personnalisés et le scan de codes QR. Cette fonctionnalité permet aux sites de demander des informations d'identité aux portefeuilles à l'aide du système IdentityCredential CredMan d'Android. Il est extensible pour prendre en charge plusieurs formats d'identifiants (par exemple, ISO mDoc et identifiant vérifiable W3C) et permet d'utiliser plusieurs applications de portefeuille. Des mécanismes sont en cours d'ajout pour aider à réduire le risque d'utilisation abusive de l'identité réelle à l'échelle de l'écosystème.
La phase d'évaluation de l'origine qui commence dans Chrome 134 ajoute la prise en charge de cette API sur la plate-forme pour ordinateur, où Chrome sur ordinateur communiquera de manière sécurisée avec le portefeuille numérique sur le téléphone Android pour récupérer les identifiants demandés.
Arrêts et suppressions
Cette version de Chrome introduit les abandons et les suppressions listés ci-dessous. Consultez ChromeStatus.com pour obtenir la liste des abandons planifiés, des abandons en cours et des suppressions précédentes.
Cette version de Chrome supprime une fonctionnalité.
Suppression des contraintes audio non standards pour getUserMedia
Blink acceptait déjà plusieurs contraintes non standards avec le préfixe goog pour getUserMedia avant qu'elles ne soient normalisées.
L'utilisation de ces contraintes a considérablement diminué (d'environ 0,000001 % à 0,0009 %, selon la contrainte), et certaines d'entre elles n'ont même plus d'effet en raison de modifications apportées à la pile de capture audio Chromium. D'ici peu, elles seront toutes sans effet en raison d'autres modifications à venir.
Nous ne prévoyons aucune régression majeure à la suite de ce changement. Les applications qui utilisent ces contraintes continueront de fonctionner, mais elles recevront l'audio avec les paramètres par défaut (comme si aucune contrainte n'avait été transmise). Elles peuvent choisir de migrer vers des contraintes standards.