Chrome 115 bêta

Plusieurs mots clés pour la propriété d'affichage CSS, WGSLLanguageFeatures pour WebGPU, mises à niveau HTTPS, etc.

Sauf indication contraire, les modifications décrites 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, cliquez sur les liens fournis ou consultez la liste sur ChromeStatus.com. Chrome 115 est en version bêta depuis le 31 mai 2023. Vous pouvez télécharger la dernière version sur Google.com sur un ordinateur ou sur le Google Play Store sur Android.

CSS

Cette version inclut trois nouvelles fonctionnalités CSS.

Plusieurs valeurs de la propriété display

La propriété CSS display accepte désormais plusieurs mots clés en tant que valeur, en plus des anciens mots clés précomposés. Les deux premiers mots clés représentent les valeurs externe et interne de l'affichage, il existe des options facultatives pour list-item, des valeurs internes telles que table-cell, ainsi que les valeurs de zone de contents et none.

Les mots clés externe et interne vous permettent de définir le comportement du cadre extérieur (bloc ou intégré) et celui des enfants internes, par exemple flex, grid ou flow. Par conséquent, display: flex devient display: block flex et display: block devient display: block flow. Consultez MDN pour obtenir la liste des mappages courants et plus d'informations.

Requêtes de conteneur de style de contexte booléen

Chrome 115 accepte les requêtes de conteneur style() sans valeur de déclaration, uniquement avec un nom de propriété, comme moyen de mettre en correspondance les valeurs non initiales. Auparavant, vous deviez utiliser not style(--my-property: initial). Vous pouvez maintenant utiliser style(--my-property) pour correspondre à n'importe quelle valeur non initiale.

Animations liées au défilement

ScrollTimeline et ViewTimeline sont une extension de la spécification Web Animations. Elles permettent aux développeurs d'utiliser la position d'un conteneur de défilement ou la position d'un élément dans un conteneur de défilement comme "heure" d'entrée plutôt que comme heure d'horloge monotone par défaut. Cela permet d'accélérer les animations basées sur le défilement, comme la réduction de la barre de navigation, sans nécessiter l'exécution de script utilisateur. Elles peuvent être déclarées et instanciées via CSS et JavaScript, utilisés dans les animations CSS et les animations Web.

Pour en savoir plus, consultez Animer des éléments lors du défilement avec des animations liées au défilement.

Correction de la régression où les éléments comportant display: contents n'étaient plus affichés dans l'arborescence d'accessibilité

Une régression a été introduite : les éléments comportant display: contents perdaient des informations sémantiques et n'étaient plus représentés correctement dans l'arborescence d'accessibilité. Chrome 115 inclut un correctif.

API Web

Augmentation à 8 Mo de la taille maximale d'un WebAssembly.Module() sur le thread principal

Le constructeur WebAssembly.Module() compile un module WebAssembly binaire de manière synchrone, ce qui peut bloquer le thread principal. Pour éviter cela, la taille maximale d'un module WebAssembly pouvant être compilé avec ce constructeur est limitée à 8 Mo. Les modules plus volumineux peuvent être compilés de manière asynchrone sur le thread principal avec WebAssembly.compile() ou de manière synchrone sur un thread de nœud de calcul. La limite de 8 Mo est une extension de la limite initiale de 4 Ko. Cette extension est possible grâce aux améliorations apportées à la version 8 de l'environnement d'exécution WebAssembly. La limite de 8 Mo a été déterminée grâce aux mesures des performances d'un téléphone Google Pixel 1, actuellement considéré comme un téléphone bas de gamme représentatif. Les futurs développements dans la version 8 ou dans le matériel pourraient permettre d'étendre cette limite à d'autres.

FedCM: Exigences de médiation pour la gestion des identifiants pour la réauthentification automatique

Compatible avec les exigences de médiation pour la gestion des identifiants afin de fournir une expérience de réauthentification simplifiée aux utilisateurs qui ont créé des comptes fédérés sur des sites Web avec l'API FedCM.

Mises à niveau HTTPS

Mise à niveau automatique et optimiste de toutes les navigations du mainframe vers HTTPS, avec remplacement rapide au protocole HTTP.

Partitionner les API Storage, Service Worker et Communication

Pour empêcher certains types de suivi intersite sur canal secondaire, Chrome partitionne les API de stockage et de communication dans des contextes tiers. Cela inclut le stockage géré par quota, les service workers et les API de communication (telles que BroadcastChannel). Pour plus de détails, consultez la documentation sur le partitionnement du stockage.

Temps de réponse des ressources: affichage de temps de réponse provisoires

Exposez PerformanceResourceTiming.firstInterimResponseStart lorsqu'une extraction de navigation ou de sous-ressource rencontre une réponse 1xx provisoire. Par exemple, avec 100 indications "continue" ou 103 indications initiales, firstInterimResponseStart correspond désormais à l'heure de cette première réponse provisoire, tandis que responseStart correspond à la réponse finale, par exemple avec l'état 200.

Mise à jour de la gestion du préfixe "xml" dans lookupNamespaceURI() et createNSResolver()

Node.lookupNamespaceURI() accepte par défaut les préfixes "xml" et "xmlns". La fonction renvoie pour ces chaînes des chaînes d'espace de noms fixes. Document.createNSResolver() et XPathEvaluator.createNSResolver() s'arrêtent pour encapsuler le nœud spécifié afin d'ajouter la gestion du préfixe "xml". Elles renvoient le nœud spécifié tel quel. Les développeurs Web peuvent désormais utiliser un élément en tant que XPathNSResolver sans l'encapsuler avec createNSResolver().

VisibilityStateEntry

Expose l'état de visibilité (visible ou masqué) dans la chronologie des performances. La chronologie présente toujours une entrée dont l'état de visibilité est défini sur startTime et l'état de visibilité initial, ainsi que les entrées correspondant à tout changement d'état de visibilité.

WGSLLanguageFeatures pour WebGPU

Ajout du getter wgslLanguageFeatures sur l'objet GPU pour WebGPU et du type WGSLLanguageFeatures correspondant.

Commandes WebDriver pour interagir avec les boîtes de dialogue FedCM

Cela expose plusieurs commandes WebDriver pour permettre à l'automatisation du navigateur, comme les tests automatisés, d'interagir avec les boîtes de dialogue FedCM.

Essais d'origine en cours

Dans Chrome 115, vous pouvez activer les nouvelles phases d'évaluation suivantes.

Calculer la pression

L'API Compute Pressure fournit des informations très générales sur l'état actuel du matériel de l'appareil. Elle permet aux sites de trouver le juste équilibre entre la puissance de traitement disponible et la mise à l'épreuve du système. Calculer la pression est un terme générique de conception. Pour le moment, elle est calculée en fonction de la charge du processeur, mais nous prévoyons d'utiliser par exemple les signaux de température et d'état de la batterie. Pour en savoir plus, consultez Annonce de la deuxième phase d'évaluation de Compute Pressure.

S'inscrire à la phase d'évaluation de Compute Pressure

Suggestions explicites de compilation avec des commentaires magiques

Autorise l'ajout en pièce jointe d'informations sur les fonctions à analyser et compilées dans des fichiers JavaScript. Les informations seront encodées sous forme de commentaires magiques. Nous allons tester différents formats de commentaires magiques. Par exemple, vous pouvez marquer toutes les fonctions dans un fichier en vue d'une compilation rapide, ou ne marquer qu'un sous-ensemble de fonctions.

Inscrivez-vous aux suggestions de compilation explicites avec la phase d'évaluation des commentaires magiques.

API Long Animation Frames

Il s'agit d'une extension de l'API Long Tasks. Elle mesure la tâche ainsi que sa mise à jour de rendu ultérieure, en ajoutant des informations telles que les scripts de longue durée, le temps d'affichage et le temps passé dans la mise en page et le style forcés, appelés thrashing de mise en page. Les développeurs peuvent s'en servir pour diagnostiquer la "lenteur", mesurée par l'Interaction to Next Paint (INP), en identifiant les causes de la congestion du thread principal, qui est souvent à l'origine d'un INP incorrect.

S'inscrire à la phase d'évaluation de Long Animation Frames

API Storage Buckets

Grâce aux buckets de stockage, les sites peuvent créer plusieurs buckets de stockage pour organiser leurs données. Les user-agents peuvent ainsi supprimer chaque bucket indépendamment des autres. Chaque bucket de stockage peut stocker des données associées à des API de stockage établies telles que IndexedDB et CacheStorage. S'inscrire à la phase d'évaluation de l'API Storage Buckets

Abandons et suppressions

Cette version de Chrome présente les abandons et suppressions listés ci-dessous. Accédez à ChromeStatus.com pour consulter la liste des abandons prévus, des abandons actuels et des suppressions précédentes.

Cette version de Chrome abandonne deux fonctionnalités.

Abandon du setter document.domain

Le setter document.domain est obsolète, car il permet aux développeurs d'assouplir la règle de même origine. Il complique donc la limite de sécurité fondamentale que nous cherchons à maintenir, et empêche les modifications post-Spectre du modèle de processus de Chromium. Consultez Chrome désactive la modification de document.domain pour découvrir des alternatives à l'utilisation de document.domain. Dans la plupart des cas d'utilisation, l'API postMessage() multi-origine ou l'API Channel Messaging peut remplacer document.domain. En dernier recours, vous pouvez activer le domaine du document via des clusters d'agents selon l'origine. Le setter est conservé, mais l'origine reste inchangée.

Abandonner les événements de mutation

Les événements de mutation, y compris DOMSubtreeModified, DOMNodeInserted, DOMNodeRemoved, DOMNodeRemovedFromDocument et DOMNodeInsertedIntoDocument, ont été abandonnés dans la spécification en 2011 et ont été remplacés en 2012 par l'API Mutation Observer. Vous devez migrer les événements de mutation obsolètes vers Mutation Observer avant de les supprimer dans Chrome 127 (20 juillet 2024).

En savoir plus sur l'abandon des événements de mutation