Firefox 39 for developers
=========================

Firefox 39 est sorti le 2 juillet 2015. Cet article répertorie les modifications clés qui sont utiles non seulement pour les développeurs Web, mais également pour les développeurs Firefox et Gecko ainsi que pour les développeurs d'add-on.

Changements pour les développeurs Web
-------------------------------------

### Outils de développement

Points forts:

* WebIDE prend désormais en charge le débogage des appareils Firefox OS via Wi-Fi
* WebIDE soutient désormais les projets Cordova
* Affichage des animations: rembobinage, avance rapide et passage à une heure spécifique
* L'éditeur de courbe de Bézier cubique comprend désormais 31 préréglages
* Glissez et déposez des éléments dans l'inspecteur de page
* L'historique des commandes de la console Web est désormais conservé entre les sessions
* Commande $\_ console pour imprimer le dernier résultat évalué
* Meilleur mise en évidence du modèle de boîte pour les éléments en ligne

Tous les bogues de devtools corrigés entre Firefox 38 et Firefox 39.

### CSS

* Prise en charge du type `<string>` sur `list-style-type`, ainsi que sa propriété abrégée `list-style` a été implémenté (bug Firefox 1144607).
* CSS Scroll Snapping a été implémenté (bug Firefox 945584 et bug Firefox 1138658).
* La cascade des animations CSS et des transitions CSS a été réécrite pour correspondre à la dernière spécification (bug Firefox 1125455).
* La prise en charge des scripts verticaux, avec le `writing-mode` est maintenant activée par défaut sur Nightly et Developer Edition, mais pas sur Firefox Beta et Firefox Release (bug Firefox 1099032). Notez que l'implémentation n'est pas encore terminée et que certains widgets, comme les tables, n'obéiront pas à toutes les valeurs.
### HTML

* Un nouveau rôle ARIA, `switch`, est maintenant supporté (bug Firefox 1136563).
* Le support de `<link rel="preconnect">` permettant d'anticiper une future connexion sans révéler aucune information a été implémenté (bug Firefox 1135160).
### JavaScript

* Le constructeur `RegExp` ne se lance plus lorsque le premier argument est un `RegExp` et que le second argument `flags` est présent (bug Firefox 1108949).
* La propriété `Object.prototype.__noSuchMethod__` est désormais obsolète et émet un avertissement de console (voir bug Firefox 1140428 et cette annonce de plate-forme).
* L'implémentation de l'objet `Proxy` a été mise à jour pour se conformer davantage à la spécification ES6 :
    + Les gestionnaires `defineProperty` (en-US) et `set` (en-US) doivent maintenant renvoyer explicitement `true` pour réussir, sinon une exception `TypeError` sera lancée en mode strict (bug Firefox 1132522).
    + Si l'objet `window` est défini comme cible, ces gestionnaires lancent désormais une `TypeError` (bug Firefox 828137).
* Lors de l'utilisation des fonctions fléchées (`=>`), un terminateur de ligne (`\n`) n'est plus autorisé après les arguments de fonction fléchée (`() \n => {}`) (bug Firefox 1141392).
* `RegExp.prototype.toString` est maintenant une fonction générique (bug Firefox 1079919).
* L'argument de `flags` non standard de `String.prototype.match()`, `String.prototype.search()`, et `String.prototype.replace()` est désormais obsolètee et émet un avertissement de console (bug Firefox 1142351).
* Le comportement try/catch de `Object.assign()` a été supprimé pour se conformer au dernier projet ES6 (bug Firefox 1103344).
### Interfaces/APIs/DOM

* La méthode expérimentale `CanvasRenderingContext2D.addHitRegion()` accepte désormais une option de `path`, qui vous permet d'ajouter des régions hit aux objets `Path2D` (en-US) (bug Firefox 1129147).
* De nouvelles méthodes ont été ajoutées pour manipuler les objets `FormData` (bug Firefox 1085283) et `FormData` est désormais supporté par les workers Web (bug Firefox 739173).
* La méthode non standard `XMLHttpRequest.sendAsBinary()` a été supprimée (bug Firefox 853162).
* Progression dans notre implémentation expérimentale des animations Web : `AnimationPlayer.startTime` (en-US) est désormais accessible en écriture (bug Firefox 1073379).
* Progression de notre implémentation expérimentale de Service Workers (en-US): les interfaces `Cache` et `CacheStorage` sont désormais implémentées (bug Firefox 940273).
* L'API Fetch expérimentale a été activée par défaut (bug Firefox 1133861).
* Progression de notre implémentation expérimentale de WebGL2: `WebGLSync` (en-US) est maintenant implémenté (bug Firefox 1048721).
* La prise en charge de `MouseEvent.offsetX` et `MouseEvent.offsetY` a été ajoutée sur le desktop (bug Firefox 69787, mais pas sur Firefox pour Android ou Firefox OS (ils seront ajoutés dans Firefox 43 (en-US)).
### MathML

*Pas de changement.*

### SVG

*Pas de changement.*

### Audio/Video

*Pas de changement.*

### Miscelleanous

* Le support des polices WOFF2 (en-US) est désormais activé par défaut dans la version finale de Firefox (Beta et Release, en plus de Nightly et Developer Edition) (bug Firefox 1084026).
* L'option de ligne de commande `-remote` (en-US) a été supprimée (bug Firefox 1080319).
* Prise en charge des nouveaux emoji de couleur chair Unicode 8.0 (bug Firefox 1153460).
La mise en réseau
-----------------

* La prise en charge de SSLv3 a été complètement supprimée (bug Firefox 1106470).
Sécurité
--------

*Pas de changement.*

Changements pour les développeurs d'add-on et de Mozilla
--------------------------------------------------------

*Pas de changement.*

Anciennes versions
------------------

* Firefox 38 pour les développeurs
* Firefox 37 pour les développeurs
* Firefox 36 pour les développeurs
* Firefox 35 pour les développeurs
* Firefox 34 pour les développeurs
* Firefox 33 pour les développeurs
* Firefox 32 pour les développeurs
* Firefox 31 pour les développeurs
* Firefox 30 pour les développeurs
* Firefox 29 pour les développeurs
* Firefox 28 pour les développeurs
* Firefox 27 pour les développeurs
* Firefox 26 pour les développeurs
* Firefox 25 pour les développeurs
* Firefox 24 pour les développeurs
* Firefox 23 pour les développeurs
* Firefox 22 pour les développeurs
* Firefox 21 pour les développeurs
* Firefox 20 pour les développeurs
* Firefox 19 pour les développeurs
* Firefox 18 pour les développeurs
* Firefox 17 pour les développeurs
* Firefox 16 pour les développeurs
* Firefox 15 pour les développeurs
* Firefox 14 pour les développeurs
* Firefox 13 pour les développeurs
* Firefox 12 pour les développeurs
* Firefox 11 pour les développeurs
* Firefox 10 pour les développeurs
* Firefox 9 pour les développeurs
* Firefox 8 pour les développeurs