La société Google a présenté la version 108 de son navigateur web Chrome. En même temps, une version stable du projet open source Chromium, qui est la base de Chrome, est également disponible. Le navigateur Chrome se distingue de Chromium par l'utilisation des logos Google, la présence d'un système d'envoi de notifications en cas de crash, des modules pour la lecture de contenu vidéo protégé (DRM), un système de mise à jour automatique des versions, une isolation Sandbox toujours activée, la fourniture de clés pour l'API Google et le passage de paramètres RLZ lors de la recherche. Pour ceux qui ont besoin de plus de temps pour passer à la mise à jour, une branche Extended Stable est maintenue, accompagnée de 8 semaines de support. La prochaine version de Chrome 109 est prévue pour le 10 janvier.
Les principales modifications dans Chrome 108 :
- L'interface du dialogue de gestion des cookies et des données des sites a été modifiée (accessible via le lien Cookies après avoir cliqué sur le cadenas dans la barre d'adresse). Le dialogue a été simplifié et affiche maintenant les informations organisées par sites.

- Deux nouveaux modes d'optimisation du fonctionnement du navigateur ont été proposés — Économie de mémoire (Memory Saver) et Économie d'énergie (Energy Saver), qui sont disponibles dans les paramètres de performance (Paramètres > Performances). Pour l'instant, ces modes ne sont disponibles que sur les plateformes ChromeOS, Windows et macOS.
- Dans le gestionnaire de mots de passe, il est désormais possible d'ajouter une note pour chaque mot de passe enregistré. Comme pour le mot de passe, la note ne s'affiche sur une page séparée qu'après authentification.
- Dans la version pour Linux, un client DNS intégré est activé par défaut, qui était auparavant utilisé uniquement dans les versions pour Windows, macOS, Android et ChromeOS.
- Sur la plateforme Windows, l'icône pour lancer Chrome est maintenant automatiquement épinglée à la barre des tâches lors de l'installation.
- Une fonctionnalité de suivi des variations de prix pour des produits favoris dans certains magasins en ligne (Shopping List) a été ajoutée. En cas de baisse de prix, l'utilisateur reçoit une notification ou un email (dans Gmail). L'ajout d'un produit à suivre se fait en cliquant sur le bouton « Track price » dans la barre d'adresse lorsque l'on se trouve sur la page du produit. Les produits suivis sont enregistrés avec les signets. Cette fonctionnalité est uniquement disponible pour les utilisateurs ayant un compte Google actif, avec la synchronisation activée et le service « Web & App Activity » activé.

- La possibilité de visualiser les résultats de recherche dans le panneau latéral tout en consultant une autre page est activée (dans une même fenêtre, vous pouvez voir à la fois le contenu de la page et le résultat d'une requête à un moteur de recherche). Après avoir accédé à un site à partir d'une page de résultats de recherche Google, une icône avec la lettre « G » apparaît devant le champ de saisie dans la barre d'adresse, en cliquant dessus, le panneau latéral s'ouvre avec les résultats de la recherche précédente.

- Dans l'API File System Access, qui permet aux applications web de lire et d'écrire des données directement dans des fichiers et des répertoires sur l'appareil de l'utilisateur, les méthodes getSize(), truncate(), flush() et close() de l'objet FileSystemSyncAccessHandle ont été converties du modèle asynchrone en modèle synchrone, à l'instar des méthodes read() et write(). Ce changement a permis de fournir une API FileSystemSyncAccessHandle entièrement synchronisée, augmentant ainsi la performance des applications basées sur WebAssembly (WASM).
- Ajout de la prise en charge de nouvelles tailles de zone de visualisation (viewport) : « small » (s), « large » (l) et « dynamic » (d), ainsi que des unités de mesure associées : « *vi » (vi, svi, lvi et dvi), « *vb » (vb, svb, lvb et dvb), « *vh » (svh, lvh, dvh), « *vw » (svw, lvw, dvw), « *vmax » (svmax, lvmax, dvmax) et « *vmin » (svmin, lvmin et dvmin). Ces nouvelles unités permettent de lier la taille des éléments à la plus petite, la plus grande et la taille dynamique de la zone de visualisation en pourcentage (la taille varie en fonction de l'affichage, du masquage et de l'état de la barre d'outils).

- Ajout de la prise en charge des polices vectorielles de couleur variable au format COLRv1 (un sous-ensemble de polices OpenType contenant, en plus des glyphes vectoriels, une couche avec des informations de couleur).
- Pour vérifier la prise en charge des polices de couleur, les règles CSS @supports ont été ajoutées avec les fonctions font-tech() et font-format(), et la fonction tech() a été ajoutée aux règles @font-face.
- Un API de gestion des identifiants fédérés (FedCM) a été proposé, permettant de créer des services d'identification unifiés, garantissant la confidentialité et fonctionnant sans mécanismes de suivi intersites, tels que le traitement des cookies tiers.
- Il est désormais possible d'appliquer la propriété CSS existante « overflow » à des éléments remplacés, affichés en dehors du contenu, ce qui, associé à la propriété object-view-box, peut être utilisé pour créer des images avec une ombre personnalisée.
- Ajout des propriétés CSS break-before, break-after et break-inside, permettant de configurer le comportement des ruptures lors de l'affichage fragmenté à travers les pages, colonnes et régions individuelles. Par exemple, «figure { break-inside: avoid; }» empêchera la rupture de la page à l'intérieur d'une figure.
- Dans les propriétés CSS align-items, justify-items, align-self et justify-self, la possibilité d'utiliser la valeur «last baseline» a été fournie pour l'alignement par rapport à la dernière ligne de base dans la mise en page flex ou grid.
- Ajout de l'événement ContentVisibilityAutoStateChanged, généré pour les éléments avec la propriété «content-visibility: auto» lors du changement de l'état de rendu de l'élément.
- Accès à l'API Media Source Extensions a été rendu possible dans le contexte des workers, ce qui peut être utilisé, par exemple, pour améliorer les performances de la lecture en mémoire tampon des données multimédias en créant un objet MediaSource dans un worker distinct et en diffusant les résultats de son travail dans un HTMLMediaElement dans le thread principal.
- Dans l'en-tête HTTP Permissions-Policy, utilisé pour déléguer des autorisations et activer des fonctionnalités avancées, l'utilisation de masques est autorisée, par exemple, «https://*.bar.foo.com/».
- Les API obsolètes window.defaultStatus, window.defaultstatus, ImageDecoderInit.premultiplyAlpha, navigateEvent.restoreScroll() et navigateEvent.transitionWhile() ont été supprimées.
- Améliorations apportées aux outils pour les développeurs web. Des conseils pour les propriétés CSS inactives ont été ajoutés dans le panneau Styles. Le panneau Recorder réalise désormais l'identification automatique des sélecteurs XPath et text. Le débogueur permet de parcourir étape par étape les expressions séparées par des virgules. Les paramètres «Settings > Ignore List» ont été étendus.
En plus des nouveautés et des corrections de bogues, la nouvelle version corrige 28 vulnérabilités. Beaucoup de vulnérabilités ont été découvertes grâce à des tests automatisés avec les outils AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer et AFL. Aucun problème critique permettant de contourner tous les niveaux de protection du navigateur et d'exécuter du code dans le système en dehors de l'environnement sandbox n'a été identifié. Dans le cadre du programme de récompense pour la découverte de vulnérabilités pour la version actuelle, Google a versé 10 primes pour un total de 74 000 dollars (une prime de 15 000 $, 11 000 $ et 6 000 $, cinq primes de 5 000 $, trois primes de 3 000 $ et 2 000 $, deux primes de 1 000 $). Le montant de 6 récompenses n'a pas encore été déterminé.
Source : opennet.ru




