Le navigateur web a été publié , ainsi que la version mobile pour la plateforme Android. La version Firefox 78 est classée dans la catégorie des branches à long terme de support (ESR), dont les mises à jour sont publiées pendant un an. De plus, une mise à jour précédente a été formée avec un support prolongé (deux autres mises à jour 68.11 et 68.12 sont attendues par la suite). Prochainement, la branche Firefox 79 passera en phase prévue pour le 28 juillet.
:
- La page récapitulative (Protections Dashboard) a été élargie avec des rapports sur l'efficacité des mécanismes de protection contre le suivi, la vérification des compromissions de données d'identification et la gestion des mots de passe. La nouvelle version permet de visualiser des statistiques sur l'utilisation des données d'identification compromises, ainsi que de suivre d'éventuelles intersections des mots de passe enregistrés avec des fuites de bases de données d'utilisateurs connues. La vérification est effectuée via une intégration avec la base de données du projet haveibeenpwned.com, qui comprend des informations sur 9,7 milliards de comptes compromis à la suite du piratage de 456 sites. Un résumé est fourni sur la page « about:protections » ou via le menu accessible en cliquant sur l'icône de bouclier dans la barre d'adresses (au lieu de Afficher le rapport, le Protections Dashboard s'affiche désormais).

- Dans le programme de désinstallation a été ajoutée un bouton ««, permettant de réinitialiser les paramètres par défaut et de supprimer toutes les extensions sans perdre les données accumulées. En cas de problèmes, les utilisateurs essaient souvent de les résoudre en réinstallant le navigateur. Le bouton Refresh permettra d'obtenir un effet similaire sans perdre les signets, l'historique de navigation, les mots de passe sauvegardés, les cookies, les dictionnaires connectés et les données de remplissage automatique de formulaires (lorsqu'on appuie sur le bouton, un nouveau profil est créé et les bases de données mentionnées sont transférées vers celui-ci). Après avoir cliqué sur Refresh, les extensions, thèmes, informations sur les droits d'accès, moteurs de recherche connectés, stockages DOM locaux, certificats, paramètres modifiés et styles personnalisés (userChrome, userContent) seront perdus.

- Le menu contextuel affiché pour les onglets a été complété avec des éléments pour annuler la fermeture de plusieurs onglets, ainsi que pour fermer les onglets à droite de l'onglet actuel et fermer tous les onglets sauf l'actuel.

- La désactivation du déclenchement de l'économiseur d'écran pendant les appels vidéo et les conférences basées sur WebRTC a été assurée.
- Sur la plateforme Windows pour les GPU Intel, quelle que soit la résolution d'écran système de composition , écrit en langage Rust et permettant d'augmenter considérablement la vitesse de rendu et de réduire la charge sur le CPU. WebRender déplace vers le GPU les opérations de rendu du contenu de la page, qui sont réalisées via des shaders exécutés dans le GPU. Auparavant, WebRender était activé sur la plateforme Windows 10 pour les GPU Intel lors de l'utilisation de petites résolutions d'écran, ainsi que sur les systèmes avec APU AMD Raven Ridge, AMD Evergreen et sur les ordinateurs portables avec des cartes graphiques NVIDIA. Sur Linux, WebRender est actuellement activé uniquement pour les cartes Intel et AMD dans les versions nocturnes et n'est pas supporté pour les cartes NVIDIA. Pour l'activer manuellement dans about:config, il faut activer les paramètres « gfx.webrender.all » et « gfx.webrender.enabled » ou lancer Firefox avec la variable d'environnement MOZ_WEBRENDER=1.
- Jusqu'à 100 % des utilisateurs au Royaume-Uni pour lesquels le contenu recommandé par le service Pocket est affiché sur la page de nouvel onglet. Auparavant, de telles pages n'étaient montrées qu'aux utilisateurs des États-Unis, du Canada et d'Allemagne. Les blocs sponsorisés ne s'affichent qu'aux États-Unis et sont clairement étiquetés comme publicité. La personnalisation liée à la sélection de contenu se fait côté client sans transmettre les informations sur l'utilisateur à des tiers (la liste complète des liens recommandés du jour est chargée dans le navigateur, qui est classée côté utilisateur en se basant sur l'historique des visites). Pour désactiver le contenu recommandé par Pocket, il existe un paramètre dans le configurateur (Firefox Home Content/Recommended by Pocket) et l'option « browser.newtabpage.activity-stream.feeds.topsites » dans about:config.
- patches qui affectent la performance et la stabilité de l'accélération matérielle du décodage vidéo via VA-API (pris en charge uniquement dans les environnements basés sur Wayland).
- Les exigences pour les composants système Linux ont été augmentées. Pour exécuter Firefox sur Linux, il faut désormais au moins Glibc 2.17, libstdc++ 4.8.1 et GTK+ 3.14.
- Conformément au plan visant à cesser de prendre en charge les anciens algorithmes cryptographiques, tous les ensembles de chiffrement TLS basés sur DHE (TLS_DHE_*, protocole d'échange de clés Diffie-Hellman) sont par défaut désactivés. Pour atténuer l'impact négatif potentiel de la désactivation de DHE, deux nouveaux ensembles de chiffrement AES-GCM basés sur SHA2 ont été ajoutés.
- des protocoles TLS 1.0 et TLS 1.1 a été désactivé. Pour accéder aux sites via une connexion sécurisée, le serveur doit prendre en charge au moins TLS 1.2. Selon Google, environ 0,5 % des chargements de pages web continuent actuellement à utiliser des versions obsolètes de TLS. La désactivation a été effectuée selon IETF (Internet Engineering Task Force). La raison pour laquelle le support de TLS 1.0/1.1 a été abandonné est l'absence de prise en charge des algorithmes modernes (comme ECDHE et AEAD) et l'exigence de prise en charge des algorithmes obsolètes, dont la fiabilité est remise en question à l'ère actuelle de l'informatique (par exemple, la prise en charge de TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA, où MD5 et SHA-1 sont utilisés pour l'intégrité et l'authentification). La possibilité de travailler avec les anciennes versions de TLS peut être rétablie via la configuration security.tls.version.enable-deprecated = true ou en utilisant le bouton sur la page d'erreur affichée lors de l'accès à un site avec l'ancien protocole.
- La qualité du travail avec les lecteurs d'écran pour les personnes malvoyantes a été considérablement améliorée (les problèmes de positionnement du curseur ont été résolus, les blocages ont été éliminés, le traitement des très grands tableaux a été accéléré, etc.). Pour les utilisateurs souffrant de migraines et d'épilepsie, les effets d'animation tels que la mise en surbrillance des onglets et l'expansion de la barre de recherche ont été réduits.
- De nouvelles règles pour la configuration des applications externes, la désactivation du mode image dans l'image, et l'obligation de définir un mot de passe principal ont été ajoutées aux politiques de groupe pour les entreprises.
- Dans le moteur JavaScript SpiderMonkey la sous-système de traitement des expressions régulières, qui est synchronisé avec l'implémentation du moteur JavaScript V8 utilisé dans les navigateurs basés sur le projet Chromium. Ce changement permet d'implémenter la prise en charge des fonctionnalités suivantes liées aux expressions régulières :
- permettent de lier les parties de chaîne correspondantes à une expression régulière à des noms spécifiques au lieu de numéros d'ordre de correspondance (par exemple, au lieu de «/(\d{4})-(\d{2})-(\d{2})/», on peut spécifier «/(?\d{4})-(?\d{2})-(?\d{2})/» et accéder à l'année non pas par result[1], mais par result.groups.year).
- de caractères Unicode ajoute les constructions \p{…} et \P{…}, par exemple, \p{Number} définit tous les symboles qui ont l'apparence de chiffres (y compris les symboles tels que ①), \p{Alphabetic} — les lettres (y compris les idéogrammes), \p{Math} — les symboles mathématiques, etc.
- Drapeau fait que le masque «.» fonctionne également pour les caractères de nouvelle ligne.
- Mode permet de déterminer dans une expression régulière qu'un modèle précède un autre (par exemple, faire correspondre un montant en dollars sans capturer le signe dollar).
- Les pseudo-classes CSS ont été mises en œuvre et pour lier des règles CSS à un ensemble de sélecteurs. Par exemple, au lieu de
header p:hover, main p:hover, footer p:hover {…}
vous pouvez spécifier
:is(header, main, footer) p:hover {…}
- Les pseudo-classes CSS ont été incluses et pour lier à des éléments de formulaire (input ou textarea) qui sont interdits ou autorisés à être modifiés.
- Le support de la méthode a été ajoutée pour créer des listes localisées (par exemple, remplacer «or» par «ou», «and» par «et»).
const lf = new Intl.ListFormat(‘fr’);
lf.format([‘Frank’, ‘Christine’, ‘Flora’]);
// → ‘Frank, Christine, and Flora’
// при локали «ru» будет ‘Frank, Christine и Flora’ - Le support pour le formatage des unités de mesure, des devises, des notations scientifiques et compactes a été ajouté à la méthode (par exemple, «Intl.NumberFormat(‘fr’, {style: ‘unit’, unit: ‘meter-per-second’}»);
- Méthode ajoutée , permettant de remplacer ou de nettoyer un nœud enfant existant.
- La branche ESR a ajouté le support des Service workers et du Push API (qui étaient désactivés dans la version ESR précédente).
- WebAssembly a ajouté le support de l'importation et de l'exportation de paramètres de fonction de type entier 64 bits, utilisant le type BigInt de JavaScript. Un extension a également été mise en œuvre pour WebAssembly , aux fonctions de retourner plus d'une valeur.
- Dans la console pour les développeurs web la journalisation détaillée des erreurs liées aux Promises a été améliorée, incluant des informations sur les noms, les traces et les propriétés, ce qui facilite grandement le débogage des erreurs lors de l'utilisation de frameworks comme Angular.
- Les outils pour les développeurs web ont considérablement amélioré la performance de la navigation dans le DOM lors de l'inspection de sites utilisant de nombreux styles CSS.
- Le débogueur JavaScript a mis en œuvre la possibilité de révéler des noms de variables abrégés basés sur les source-maps lors de l'utilisation (Log points), permettant de décharger des informations sur le numéro de ligne dans le code et les valeurs des variables dans la console web au moment où l'étiquette se déclenche.
- Dans l'interface d'inspection réseau, des informations sur les extensions, les mécanismes de protection contre le suivi et les restrictions CORS (Cross-Origin Resource Sharing) qui ont provoqué le blocage de la requête ont été ajoutées.
En plus des nouveautés et des corrections de bugs dans Firefox 78
a été corrigée , dont lesquels plusieurs sont marqués comme critiques, c'est-à-dire susceptibles de permettre l'exécution de code malveillant lors de l'ouverture de pages spécialement conçues. Actuellement, les informations détaillées sur les problèmes de sécurité corrigés ne sont pas disponibles, et il est prévu que la liste des vulnérabilités sera publiée dans quelques heures.
Source : opennet.ru



