URL: https://linuxfr.org/news/firefox-46-version-suedee
Title: Firefox 46 (version suédée)
Authors: antistress
Davy Defaud, M5oul, Adrien Dorsaz, bubar🦥, ariasuni, Nils Ratusznik, Benoît Sibaud, goofy_fr, palm123, Sylvestre Ledru et Jiehong
Date: 2016年04月09日T17:34:58+02:00
License: CC By-SA
Tags: gtk3, electrolysis, servo, rust, extension, firefox et firefoxos
Score: 57
La 46^(e) version de Firefox est sortie le 26 avril 2016 avec, parmi les nouveautés :
* version bureau : le passage à la boite à outils graphiques GTK+ 3 sous GNU/Linux (enfin !), des améliorations de sécurité dans le traitement du JavaScript et des gains de performance et de stabilité avec WebRTC ;
* version pour Android : Firefox gagne la possibilité, en étant hors ligne, d’afficher des pages précédemment visitées ;
* côté coulisses : le moteur de rendu maison (Gecko) accepte désormais de traiter des propriétés CSS préfixées pour les moteurs concurrents WebKit et Blink !
Sans plus attendre, voici le détail des nouveautés pour les versions de bureau et mobile, ainsi que pour les développeurs. Suit une revue des choses à attendre par la suite pour votre navigateur préféré.

----
[Notes de la version bureau](https://www.mozilla.org/en-US/firefox/46.0/releasenotes/)
[Notes de versions pour développeurs](https://developer.mozilla.org/en-US/Firefox/Releases/46)
[Notes de la version mobile pour Android](https://www.mozilla.org/en-US/firefox/android/46.0/releasenotes/)
[Précédente dépêche, pour la version 45 ESR](https://linuxfr.org/news/firefox-45-esr-et-autres-actualites-mozilliennes)
[Liste des systèmes d’exploitation pris en charge par cette version](https://www.mozilla.org/en-US/firefox/46.0/system-requirements/)
[Liste des indicatifs téléphoniques internationaux](https://fr.wikipedia.org/wiki/Liste_des_indicatifs_t%C3%A9l%C3%A9phoniques_internationaux_par_pays)
----
# Bureau (mais ça marche aussi à la maison)
Firefox gagne une meilleure sécurité dans le traitement du [[JavaScript]], ceci est expliqué en détail dans ce [billet de blogue](http://jandemooij.nl/blog/2015/12/29/wx-jit-code-enabled-in-firefox/), et profite de gains de performance et de stabilité avec [[WebRTC]], qui sont détaillés dans les [notes de version spécifiques](https://wiki.mozilla.org/Media/WebRTC/ReleaseNotes/46).
Autre nouveauté marquante : le portage tant attendu de la version GNU/Linux sur [GTK+ 3](https://fr.wikipedia.org/wiki/GTK%2B) !

Pour savoir si la version de Firefox compilée par votre distribution roule bien la version 3 de GTK+, tapez `about:buildconfig` dans la barre d’adresse et cherchez l’argument `--enable-default-toolkit=cairo-gtk3`.
Le passage à GTK+ 3 rend possible tout un tas de changements futurs, comme théoriquement de changer de bibliothèque d’affichage sans pénalité de performance (historiquement, la version GNU/Linux utilise [Cairo](https://fr.wikipedia.org/wiki/Cairo_%28logiciel%29), mais [[Skia]] — déjà utilisé par Firefox sur d’autres plates‐formes — est une alternative) [[_rapport de bogue correspondant_](https://bugzilla.mozilla.org/show_bug.cgi?id=1038800)] et nous rapprochera d’une version de Firefox pour [Wayland](https://linuxfr.org/tags/wayland/public) [[_rapport de bogue correspondant_](https://bugzilla.mozilla.org/show_bug.cgi?id=635134)].
N. B. : Le cousin [Thunderbird](//linuxfr.org/tags/thunderbird/public), quant à lui, sauterait le pas [à l’occasion de la prochaine version](https://bugzilla.mozilla.org/show_bug.cgi?id=1234220) (soit _a priori_ la 52, qui succédera à l’actuelle version 45 au [rythme des ESR](https://www.mozilla.org/en-US/firefox/organizations/faq/)).
# Mobile
Firefox gagne donc la possibilité, en étant hors ligne, d’afficher des pages précédemment visitées, comme illustré dans [ce billet de blogue](https://blog.mozilla.org/futurereleases/2016/03/09/viewing-cached-tabs-offline-ready-for-testing-in-firefox-for-android-beta/).
En tapant dans la barre d’adresse, Firefox offre une auto‐complétion des noms de domaines précédemment visités. Désormais, lorsqu’il n’y a pas d’historique, Firefox recherche dans une [liste de domaines par défaut](https://gecko.readthedocs.org/en/latest/mobile/android/fennec/defaultdomains.html).
Cette version sait également tirer parti du nouveau système de permissions d’[Android Marshmallow (6.0)](https://fr.wikipedia.org/wiki/Android_Marshmallow).
Firefox Mobile ne permettra plus d’utiliser _Firefox Sync 1.1_ pour synchroniser votre navigateur mobile avec vos autres périphériques. Il est donc nécessaire de passer à _Firefox Account_ pour pouvoir encore bénéficier de la synchronisation. Si vous ne souhaitez pas utiliser le service proposé par Mozilla, vous pouvez [installer votre propre serveur _Firefox Account_](http://linuxfr.org/users/richarddern/journaux/installer-un-serveur-firefox-accounts-et-firefox-sync).
Hormis cela, vous pouvez vous référer à la liste des nouveautés dans les [notes de version](https://www.mozilla.org/en-US/firefox/android/46.0/releasenotes/).
# Commun
Comme nous vous l’annoncions il y a deux dépêches de cela, désormais Firefox accepte les préfixes `webkit-` ([bogue n^(o) 1213126](https://bugzilla.mozilla.org/show_bug.cgi?id=1213126)). On ne dira pas merci aux webmestres qui ne se préoccupent que des ~~iPhones~~ navigateurs Chrome et Safari, sans égard pour l’interopérabilité ([Microsoft avec Edge a dû faire les mêmes concessions](https://msdn.microsoft.com/en-us/library/mt270097%28v=vs.85%29.aspx)). Malheureusement l’histoire bégaie et nous ressert le même plat qu’au temps d’Internet Explorer 6. :/
Toutefois la multiplication de préfixes propriétaires semble bel et bien terminée car deux des principaux navigateurs, Chromium et Firefox, [n’utiliseront plus cette technique pour introduire de nouvelles directives CSS](https://www.chromium.org/blink/developer-faq#TOC-Will-we-see-a--chrome--vendor-prefix-now-).

# Pour les développeurs
Firefox 46 apporte de nouveaux outils pour analyser l’utilisation mémoire de vos développements.
Lorsque vous aurez pris une capture d’utilisation mémoire de votre application Web, vous pourrez dorénavant l’[analyser](https://developer.mozilla.org/en-US/docs/Tools/Memory#Analyzing_snapshots) avec la [vue _Dominators_](https://developer.mozilla.org/en-US/docs/Tools/Memory/Dominators_view). Elle vous permettra de comprendre la taille mémoire utilisée par chacun des objets instanciés. L’affichage permettra de voir la taille de l’objet lui‐même et la taille des autres objets utilisés par référence.
Cette dernière information est très intéressante, car elle permet de comprendre pourquoi le ramasse‐miettes décide de ne pas faire la suppression automatique d’un objet de la mémoire. Ceci permet d’alléger les applications puisque le développeur pourra s’assurer que ses objets soient correctement libérés après leur utilisation ou bien de savoir quelle référence empêche cette libération.
Une nouvelle vues dans la partie _Performance_ des outils de développement fait également son apparition : [_Allocations_](https://developer.mozilla.org/en-US/docs/Tools/Performance/Allocations). Elle permet d’analyser le nombre d’allocations mémoire demandées par chaque fonction du site Web et la quantité de mémoire utilisée pendant la période d’analyse des performances.
De plus, la vue _Chronologie_ affiche dorénavant le suivi des actions du ramasse‐miettes afin d’analyser les évènements qui ont provoqué le réveil des opérations de nettoyage de la mémoire et permet d’accéder directement à la nouvelle vue _Allocations_ pour le temps sélectionné.
Vous pouvez vous référer aux [notes de version](https://developer.mozilla.org/fr/Firefox/Releases/46) pour la liste des autres nouveautés de cette version.
# Installer Firefox
La version bureau de Firefox est disponible [en 32 ou 64 bits pour systèmes GNU/Linux, Mac OS X 10.6 ou supérieur, Windows XP SP2 ou supérieur](https://www.mozilla.org/en-US/firefox/46.0/system-requirements/) (par comparaison, Chrome fonctionne sur [un nombre plus restreint de systèmes](http://www.nextinpact.com/news/99409-chrome-fin-support-pour-windows-xp-vista-snow-leopard-et-linux-32-bits.htm), laissant de côté Windows XP et Vista, Mac OS X 10.6 _Snow Leopard_, 10.7 _Lion_ et 10.8 _Mountain Lion_ et les distributions GNU/Linux 32 bits).
La version mobile de Firefox délaisse [Android _Honeycomb_ (version 3)](https://fr.wikipedia.org/wiki/Android_Honeycomb) à compter de cette version, de sorte qu’[_Ice Cream Sandwich_ (4.0)](https://fr.wikipedia.org/wiki/Android_Ice_Cream_Sandwich) devient le nouveau point d’entrée.
# Prochaines versions
## Modification de la politique de programmation des publications
Il a été décidé de donner un peu plus de flexibilité au rythme de sortie des versions de Firefox : il y a quatre ans, Mozilla avait décidé de changer son système de publication pour sortir des nouvelles éditions toutes les six semaines. Ainsi, les utilisateurs n’avaient plus besoin d’attendre parfois jusqu’à une année avant de recevoir de nouvelles fonctionnalités et des mises à jour majeures (le pire ayant été le développement de [la version 4, sortie presque deux ans après la version 3.5](https://www.mozilla.org/en-US/firefox/releases/), et qui avait rendu nécessaire la publication d’une version 3.6 intermédiaire).
Après une prise de recul face à ce système, il a été décidé de l’adapter pour passer d’une édition toutes les six semaines fixes à une fourchette de publication de six à huit semaines, afin de pouvoir s’adapter aux besoins des utilisateurs et marchés émergeants, de pouvoir aussi s’assurer d’avoir six semaines complètes de jours ouvrables pour chaque version et de s’adapter aux périodes de vacances de la communauté Mozilla. La planification pour 2016 est disponible sur l’[article annonçant ces changements](https://blog.mozilla.org/futurereleases/2016/02/04/update-on-2016-firefox-release-schedule/).
## Firefox 47
[Il ne sera plus possible de désactiver l’obligation de recourir à des extensions signées](https://blog.mozilla.org/addons/2016/04/20/add-ons-update-80/).
## Projet Electrolysis, APZ
Le projet [Electrolysis](https://wiki.mozilla.org/Electrolysis), alias _e10s_, consiste à décomposer le fonctionnement de Firefox en différents processus pour de meilleures performances et une sécurité accrue.
Mozilla [explique](http://www.developpez.com/actu/86595/Mozilla-prepare-Firefox-au-multiprocessus-dans-le-cadre-du-projet-Electrolysis-les-onglets-et-l-IU-vont-s-executer-sur-des-processus-differents/) que « dans les versions actuelles de Firefox sur ordinateur de bureau, le navigateur tout entier fonctionne dans un seul processus du système d’exploitation. En particulier, le JavaScript qui exécute l’interface utilisateur du navigateur fonctionne dans le même processus que le code dans les pages Web. » Aussi, « les futures versions de Firefox vont exécuter l’interface utilisateur du navigateur dans un processus distinct du contenu Web. Dans la première itération de cette architecture, tous les onglets du navigateur vont s’exécuter dans le même processus, et l’interface utilisateur du navigateur, quant à elle, s’exécutera dans un processus différent. Dans les versions futures, nous nous attendons à avoir plus d’un processus de contenu. »
C’est le plus gros changement architectural jamais entrepris sur Firefox (vous en saurez tous les détails en lisant — en anglais — [ce billet de blogue](https://billmccloskey.wordpress.com/2013/12/05/multiprocess-firefox/) et en suivant les deux liens donnés à la fin dudit billet).
La [feuille de route a été actualisée le 8 avril](https://wiki.mozilla.org/E10s/Status/April8). Pour l’instant, l’expérimentation continue sur le canal bêta afin de corriger les instabilités résultant de ce changement très invasif. A également été décidé à cette occasion que la fonctionnalité [_asynchronous panning and zooming_ (APZ)](https://hacks.mozilla.org/2016/02/smoother-scrolling-in-firefox-46-with-apz/) pouvait finalement être lancée sans attendre l’activation d’_e10s_, le défilement étant amélioré par APZ dans la plupart des cas.
Les extensions n’ayant pas été initialement conçues pour le multi‐processus, les utilisateurs (vous, nous !) [sont invités](https://cpeterso.com/blog/02014/07/testing-add-on-compatibility-with-multi-process-firefox/) à rapporter les bogues rencontrés lors de l’activation d’_e10s_ en se rendant sur le site dédié :