Sortie du navigateur Web Firefox 94. De plus, une mise à jour de la branche de support à long terme a été créée - 91.3.0. La branche Firefox 95 est passée en phase de test bêta dont la sortie est prévue pour le 7 décembre.
Principales nouveautés :
- Une nouvelle page de service « about:unloads » a été implémentée sur laquelle l'utilisateur, afin de réduire la consommation de mémoire, peut décharger de force les onglets les plus gourmands en ressources de la mémoire sans les fermer (le contenu sera rechargé lors du passage à l'onglet) . La page "about:unloads" répertorie les onglets disponibles par ordre de priorité pour la préemption lorsque la RAM est insuffisante. La priorité dans la liste est sélectionnée en fonction de l'heure d'accès à l'onglet, et non en fonction des ressources consommées. Lorsque vous appuyez sur le bouton Décharger, le premier onglet de la liste sera supprimé de la mémoire, la prochaine fois que vous appuierez dessus, le deuxième sera supprimé, etc. Il n'est pas encore possible de déloger un onglet de votre choix.

- Lors du premier lancement après l'installation de la mise à jour, une nouvelle interface est lancée pour sélectionner six thèmes de couleurs saisonnières, pour lesquels trois niveaux de teinte sombre sont proposés, affectant l'affichage de la zone de contenu, des panneaux et de la barre de changement d'onglet dans des tons sombres.

- Un régime d'isolement strict du site, développé dans le cadre du projet Fission, est proposé. Contrairement à la répartition aléatoire du traitement des onglets précédemment utilisée dans le pool de processus disponible (8 par défaut), le mode d'isolement strict place le traitement de chaque site dans son propre processus distinct, séparé non pas par des onglets, mais par des domaines (suffixe public). . Le mode n'est pas activé pour tous les utilisateurs ; la page « about:preferences#experimental » ou le paramètre « fission.autostart » dans about:config peuvent être utilisés pour le désactiver ou l'activer.
Le nouveau mode offre une protection plus fiable contre les attaques de classe Spectre, réduit la fragmentation de la mémoire et vous permet d'isoler davantage le contenu des scripts externes et des blocs iframe. renvoie la mémoire plus efficacement au système d'exploitation, minimise l'impact du garbage collection et des calculs intensifs sur les pages d'autres processus, augmente l'efficacité de la répartition de la charge sur différents cœurs de processeur et améliore la stabilité (le crash du processus traitant l'iframe ne ralentira pas le site principal et les autres onglets). Le coût est une augmentation globale de la consommation de mémoire lorsqu'il existe un grand nombre de sites ouverts.
- Les utilisateurs se voient proposer l'extension Multi-Account Containers, qui met en œuvre le concept de conteneurs contextuels permettant une isolation flexible de sites web. Les conteneurs offrent la possibilité d'isoler différents types de contenu sans créer de profils distincts, ce qui permet de séparer les informations provenant de groupes de pages spécifiques. Par exemple, vous pouvez créer des espaces distincts pour la communication personnelle, le travail, les achats et les opérations bancaires, ou encore organiser l'utilisation simultanée de différents comptes utilisateurs sur un même site. Chaque conteneur utilise un espace de stockage distinct pour les cookies, l'API Local Storage, IndexedDB, le cache et le contenu OriginAttributes. De plus, lors de l'utilisation de Mozilla VPN Un serveur VPN différent peut être utilisé pour chaque conteneur.

- Suppression de la demande de confirmation de l'opération lors de la sortie du navigateur ou de la fermeture de la fenêtre via le menu et des boutons de fermeture de la fenêtre. Ceux. Un clic erroné sur le bouton « [x] » dans le titre de la fenêtre entraîne désormais la fermeture de tous les onglets, y compris ceux avec des formulaires d'édition ouverts, sans afficher au préalable un avertissement. Une fois la session restaurée, les données des formulaires Web ne sont pas perdues. Appuyer sur Ctrl+Q continue d’afficher un avertissement. Ce comportement peut être modifié dans les paramètres (Panneau Général / Section Onglets / Paramètre « Confirmer avant de fermer plusieurs onglets »).

- Dans les assemblages pour la plateforme Linux Pour les environnements graphiques utilisant le protocole X11, un nouveau moteur de rendu est activé par défaut. Il utilise l'interface EGL au lieu de GLX pour la sortie graphique. Ce moteur prend en charge les pilotes OpenGL Mesa 21.x (open source) et les pilotes propriétaires NVIDIA 470.x. Les pilotes OpenGL propriétaires d'AMD ne sont pas encore pris en charge. L'utilisation d'EGL résout les problèmes liés aux pilotes graphiques et étend la gamme de périphériques compatibles avec l'accélération vidéo et WebGL. Ce nouveau moteur est une version dérivée du moteur DMABUF, initialement conçu pour Wayland et permettant l'écriture directe des images dans la mémoire du GPU. Ces images peuvent ensuite être mappées sur le tampon d'images EGL et rendues comme une texture lors de la fusion des éléments de la page web.
- Dans les assemblées pour Linux Une couche résolvant les problèmes de presse-papiers dans les environnements Wayland est activée par défaut. Ce paquet inclut également des modifications relatives à la gestion des fenêtres contextuelles dans ces mêmes environnements. Wayland impose une hiérarchie stricte pour ces fenêtres : une fenêtre parente peut créer une fenêtre enfant avec une fenêtre contextuelle, mais toute fenêtre contextuelle ultérieure lancée depuis cette fenêtre doit être liée à la fenêtre enfant d'origine, formant ainsi une chaîne. Dans Firefox, en revanche, chaque fenêtre peut générer plusieurs fenêtres contextuelles sans hiérarchie. Le problème était que, sous Wayland, la fermeture d'une seule fenêtre contextuelle nécessitait de reconstruire toute la chaîne de fenêtres avec les autres fenêtres contextuelles. Avoir plusieurs fenêtres contextuelles ouvertes est fréquent, car les menus, les infobulles, les boîtes de dialogue des modules complémentaires, les demandes d'autorisation, etc., sont implémentés sous forme de fenêtres contextuelles.
- Réduction des frais généraux lors de l'utilisation des API performance.mark() et performance.measure() avec un grand nombre de métriques analysées.
- Le comportement de rendu lors du chargement des pages a été modifié pour améliorer les performances de chargement à chaud des pages précédemment ouvertes en mode verrouillage.
- Pour accélérer le chargement des pages, la priorité de chargement et d'affichage des images a été augmentée.
- Dans le moteur JavaScript, la consommation de mémoire a été légèrement réduite et les performances d'énumération des propriétés ont été améliorées.
- Amélioration des opérations de planification du garbage collector, ce qui a réduit les temps de chargement des pages dans certains tests.
- Charge CPU réduite lors de l'interrogation des sockets lors du traitement des connexions HTTPS.
- L'initialisation du stockage a été accélérée et le temps de démarrage initial a été réduit en réduisant les opérations d'E/S sur le thread principal.
- La fermeture des outils de développement garantit que davantage de mémoire est libérée qu'auparavant.
- La règle CSS @import ajoute la prise en charge de la fonction layer(), qui génère les définitions d'une couche en cascade spécifiée à l'aide de la règle @layer.
- La fonction structuréClone() prend en charge la copie d'objets JavaScript complexes.
- Pour les formulaires, l'attribut « enterkeyhint » a été implémenté, qui permet de définir le comportement lorsque vous appuyez sur la touche Entrée du clavier virtuel.
- La méthode HTMLScriptElement.supports() a été implémentée, qui peut être utilisée pour vérifier si le navigateur prend en charge certains types de scripts, tels que les modules JavaScript ou les scripts classiques.
- Ajout de la propriété ShadowRoot.delegatesFocus pour vérifier si la propriété déléguésFocus est définie dans un Shadow DOM distinct.
- la plate-forme Windows Au lieu d'interrompre les utilisateurs en leur demandant d'installer une mise à jour, le navigateur se met désormais à jour en arrière-plan lorsqu'il est fermé. Windows 11 a implémenté la prise en charge du nouveau système de menus (Snap Layouts).
- Dans les assemblées pour macOS Le mode basse consommation est activé pour la vidéo en plein écran.
- Dans la version de la plateforme Android:
- Il est plus facile de revenir au contenu précédemment consulté et fermé : la nouvelle page d'accueil de base offre la possibilité d'afficher les onglets récemment fermés, les signets ajoutés, les recherches et les recommandations Pocket.
- Offre la possibilité de personnaliser le contenu affiché sur la page d'accueil. Par exemple, vous pouvez choisir d'afficher les listes de vos sites les plus fréquemment visités, des onglets récemment ouverts, des signets récemment enregistrés, des recherches et des recommandations Pocket.
- Ajout de la prise en charge du déplacement des onglets inactifs depuis longtemps vers une section Onglets inactifs distincte pour éviter d'encombrer la barre d'onglets principale. Les onglets inactifs contiennent des onglets qui n'ont pas été consultés depuis plus de 2 semaines. Ce comportement peut être désactivé dans les paramètres « Paramètres->Onglets->Déplacer les anciens onglets vers inactifs. »
- Les heuristiques d'affichage des recommandations lors de la saisie dans la barre d'adresse ont été étendues.
En plus des innovations et des corrections de bugs, Firefox 94 a corrigé 16 vulnérabilités, dont 10 sont marquées comme dangereuses. 5 vulnérabilités sont causées par des problèmes de mémoire, tels que des débordements de tampon et l'accès à des zones mémoire déjà libérées. Potentiellement, ces problèmes peuvent conduire à l'exécution de code d'un attaquant lors de l'ouverture de pages spécialement conçues.
Source: opennet.ru
