La société Google la sortie du navigateur web . En même temps version stable du projet open source , qui sert de base à Chrome. Le navigateur Chrome par l'utilisation des logos Google, la présence d'un système d'envoi de notifications en cas de crash, la possibilité de télécharger le module Flash sur demande, des modules pour la lecture de contenu vidéo protégé (DRM), un système de mise à jour automatique et la transmission lors des recherches La prochaine version de Chrome 78 est prévue pour le 22 octobre.
:
- Une note distincte pour les sites avec des certificats de niveau EV (Validation Étendue). Les informations concernant l'utilisation des certificats EV s'affichent maintenant uniquement dans le menu déroulant qui apparaît lors d'un clic sur l'icône de connexion sécurisée. Le nom de l'entreprise vérifié par l'autorité de certification associée au certificat EV ne sera plus affiché dans la barre d'adresse.
- Renforcement de l'isolation des gestionnaires de sites. Une protection a été ajoutée pour les données intersites, telles que les cookies et les ressources HTTP, obtenues à partir de sites tiers contrôlés par des attaquants. L'isolation fonctionne même si l'attaquant découvre une erreur dans le processus responsable du rendu et tente d'exécuter du code dans son contexte.
- Ajout d'une nouvelle page d'accueil pour les nouveaux utilisateurs (chrome://welcome/), affichée à la place de l'interface standard d'ouverture d'un nouvel onglet après le premier lancement de Chrome. La page permet d'ajouter aux favoris les services populaires de Google (GMail, YouTube, Maps, News et Translate), d'épingler des raccourcis sur la page du nouvel onglet, de se connecter à un compte Google pour activer la synchronisation Chrome et de définir Chrome par défaut dans le système.
- Dans le menu de la page du nouvel onglet, affiché en haut à droite, il est désormais possible de télécharger une image de fond, ainsi que d'avoir des options pour choisir un thème et personnaliser le bloc de raccourcis pour un accès rapide (sites les plus visités, sélection manuelle de l'utilisateur et masquage des blocs de raccourcis). Les paramètres sont actuellement positionnés comme expérimentaux et nécessitent d'être activés via les flags «chrome://flags/#ntp-customization-menu-v2» et «chrome://flags/#chrome-colors-custom-color-picker»;
- Une animation de l'icône du site dans l'en-tête de l'onglet a été mise en place pour signaler que la page est en cours de chargement;
- Ajout du flag «—guest», permettant de lancer Chrome à partir de la ligne de commande en mode invité (sans connexion à un compte Google, sans enregistrement de l'activité de navigation sur le disque et sans conservation de la session);
- Poursuite du nettoyage des flags dans chrome://flags initié dans la version précédente. Au lieu des flags pour configurer le comportement du navigateur, il est maintenant recommandé d'utiliser des ensembles de règles;
- Dans le menu contextuel de la page, des onglets et de la barre d'adresse, un bouton « Envoyer vers vos appareils » a été ajouté, permettant d'envoyer un lien vers un autre appareil via Chrome Sync. Après avoir sélectionné l'appareil de destination associé au même compte et envoyé le lien, une notification s'affichera sur l'appareil cible pour ouvrir le lien.
- Dans la version Android, la page de la liste des fichiers téléchargés a été entièrement repensée. Au lieu d'un menu déroulant avec des sections de contenu, des boutons ont été ajoutés pour filtrer la liste générale par type de contenu, et les vignettes des images téléchargées sont désormais affichées sur toute la largeur de l'écran.
- de nouvelles métriques pour évaluer la vitesse de chargement et de rendu du contenu dans le navigateur, permettant aux développeurs web de déterminer à quel point le contenu principal de la page devient rapidement accessible à l'utilisateur. Les outils de contrôle de rendu proposés auparavant permettaient seulement de juger du fait que le rendu avait commencé, mais pas de la préparation globale de la page. Dans Chrome 77, une nouvelle API a été introduite , permettant de savoir le temps de rendu des éléments majeurs (visibles par l'utilisateur) dans la zone visible, tels que des images, des vidéos, des éléments de bloc et l'arrière-plan de la page.
- Une API a été ajoutée : , fournissant des informations sur le délai avant la première interaction de l'utilisateur (par exemple, une pression sur une touche du clavier ou de la souris, un clic ou un mouvement de la souris). La nouvelle API est un sous-ensemble de l'API EventTiming, permettant d'obtenir des informations supplémentaires pour mesurer et optimiser la réactivité de l'interface.
- de nouvelles possibilités pour les formulaires, simplifiant l'utilisation de contrôles de formulaires personnalisés (champs de saisie non standard, boutons, etc.). Le nouvel événement « formdata » permet d'utiliser des gestionnaires en JavaScript pour ajouter des données au formulaire au moment de son envoi sans avoir besoin de stocker les données dans des éléments input cachés.
La deuxième nouveauté est le support de la création d'éléments personnalisés associés aux formulaires, qui agissent comme des contrôles intégrés de formulaires, y compris la prise en charge de fonctionnalités telles que la validation des saisies et l'initiation de l'envoi de données au serveur. Pour marquer un élément comme un composant d'interface de formulaire, la propriété formAssociated a été introduite, et pour accéder à des méthodes de gestion de formulaire supplémentaires, comme setFormValue() et setValidity(), un appel à attachInternals() a été ajouté;
- En mode (fonctionnalités expérimentales nécessitant une activation distincte) un nouvel API a été ajouté , permettant à l'utilisateur de choisir des enregistrements dans son carnet d'adresses et de transmettre certains détails sur ceux-ci au site. Lors de la requête, une liste des propriétés à obtenir est déterminée (par exemple, nom complet, email, numéro de téléphone). Ces propriétés sont clairement affichées à l'utilisateur, qui prend la décision finale d'envoyer ou non les données. L'API peut être utilisée, par exemple, dans un client web de messagerie pour sélectionner des destinataires pour un email envoyé, dans une application web avec une fonction VoIP pour initier un appel à un numéro particulier ou dans un réseau social pour rechercher des amis déjà enregistrés.
L'Essai d'Origine implique la possibilité d'utiliser l'API indiquée à partir d'applications chargées depuis localhost ou 127.0.0.1, ou après enregistrement et obtention d'un jeton spécial, valide pour une durée limitée sur le site spécifique.
- Pour les formulaires, un attribut «« a été implémenté, permettant de définir le comportement lors de l'appui sur la touche Entrée sur le clavier virtuel. L'attribut peut prendre les valeurs enter, done, go, next, previous, search et send;
- Règle ajoutée , régissant l'accès à la propriété «document.domain». Par défaut, l'accès est autorisé, mais si cela est interdit, toute tentative de modification de la valeur «document.domain» entraînera un message d'erreur;
- Dans l'API Performance, un appel à , permet de suivre le changement de position des éléments DOM à l'écran.
- La taille de l'en-tête HTTP «Referer» est limitée à 4 Ko, au-delà de cette valeur, le contenu est réduit au nom de domaine;
- L'argument url dans la fonction registerProtocolHandler() est limité à l'utilisation uniquement des schémas http:// et https:// et ne permet plus les schémas «data:» et «blob:».
- Dans le méthode Ajout de la prise en charge du formatage des unités de mesure, des devises, des notations scientifiques et compactes (par exemple, «Intl.NumberFormat(‘en’, {style: ‘unit’,
unit: ‘meter-per-second’}»); - Nouvelles propriétés CSS ajoutées pour contrôler le comportement de défilement à la limite logique de la zone de défilement ;
- Pour la propriété CSS white-space la prise en charge de la valeur break-spaces ;
- Dans les Service Workers prise en charge de l'authentification HTTP Basic et affichage d'une boîte de dialogue standard pour la saisie des paramètres de connexion ;
- L'API Web MIDI peut désormais être utilisée uniquement dans le cadre d'une connexion sécurisée (https, fichier local ou localhost) ;
- L'API WebVR 1.1 a été déclarée obsolète, remplacée par l'API , permettant d'accéder aux composants pour créer des réalités virtuelles et augmentées, et unifier le travail avec différentes classes d'appareils, des casques de réalité virtuelle stationnaires aux solutions mobiles.
- Dans les outils de développement la possibilité de copier dans le presse-papier les propriétés CSS des nœuds DOM via le menu contextuel accessible par un clic droit sur un nœud dans l'arbre DOM. Une interface (Afficher les régions de rendu/décalage de mise en page) a été ajoutée pour suivre les décalages de mise en page en raison de l'absence de contournements pour les publicités et les images (lors de la visualisation, le chargement d'une image suivante déplace le texte vers le bas). Le panneau d'audit a été mis à jour vers la version . Activation automatique du mode sombre de DevTools lors de l'utilisation du thème sombre dans le système d'exploitation. En mode d'inspection réseau, ajout d'un indicateur de chargement de ressource à partir du cache de préchargement (prefetch cache). Dans le panneau Application, prise en charge de l'affichage des notifications et des messages push. Dans la console web, les champs privés des classes apparaissent désormais lors de l'aperçu des objets ;
- Dans le moteur JavaScript V8, optimisation du stockage des statistiques sur les types d'opérandes passés à différentes opérations (permet d'optimiser l'exécution de ces opérations en tenant compte des types spécifiques). Pour réduire la consommation de mémoire, les vecteurs pour le suivi des types sont désormais stockés en mémoire uniquement après l'exécution d'un certain volume de bytecode, ce qui exclut l'application de l'optimisation pour les fonctions à court temps de vie. Ce changement permet d'économiser 1 à 2 % de mémoire dans la version pour systèmes de bureau et 5 à 6 % pour les appareils mobiles.
L'évolutivité de la compilation WebAssembly en arrière-plan a été améliorée : plus il y a de cœurs de processeur dans le système, plus les gains grâce aux optimisations ajoutées sont importants. Par exemple, sur un ordinateur avec un processeur Xeon à 24 cœurs, le temps de compilation de l'application de démonstration Epic ZenGarden a été réduit de moitié.

En plus des nouveautés et des corrections de bogues, la nouvelle version corrige . De nombreuses vulnérabilités ont été identifiées grâce à des tests automatisés réalisés avec des outils , , , et . Un problème (CVE-2019-5870) est étiqueté comme critique, c'est-à-dire qu'il permet de contourner tous les niveaux de protection du navigateur et d'exécuter du code sur le système en dehors de l'environnement sandbox. Les détails sur la vulnérabilité critique ne , il est seulement connu qu'elle peut entraîner un accès à une zone mémoire déjà libérée dans le code de traitement des données multimédias. Dans le cadre du programme de récompenses pour la découverte de vulnérabilités pour la version actuelle, Google a versé 38 primes d'un montant total de 33 500 dollars (une prime de 7 500 dollars, quatre primes de 3 000 dollars, trois primes de 2 000 dollars, quatre primes de 1 000 dollars et huit primes de 500 dollars). Le montant de 18 des récompenses n'est pas encore déterminé.
Source : opennet.ru

