Firefox 29 note de version pour les développeurs
Firefox 29 est sorti le 29 Avril, 2014. Cet article répertorie les modifications clés qui sont utiles non seulement pour les développeur·euse·s Web, mais aussi pour es développeur·euse·s Firefox et Gecko ainsi que pour les développeur·euse·s d'add-on.
Changements pour les développeur·euse·s Web
>Outils de développement
Les principaux changements comprennent:
- Console web largement améliorée - Les tableaux sont affichés en ligne sans cliquer pour faire apparaître l'inspecteur de droite, les objets de fenêtre affichent leur URL, etc.
- Ajout de l'API console aux Web Workers (bogue 620935 (angl.)). Vous pouvez désormais consigner les messages dans la console Web à partir de Web Workers.
- L'outil Moniteur réseau (angl.) affiche désormais des statistiques de performances à l'aide de graphiques à secteurs (bogue Firefox 846601 (angl.)).
- Sur l'inspecteurhttps://firefox-source-docs.mozilla.org/devtools-user/network_monitor/index.html, des info-bulles d'aperçu des transformations CSS sont désormais disponibles (bogue Firefox 726427 (angl.)).
- Les éléments DOM vus dans le débogueur et la console peuvent être supprimés ou inspectés directement, sur les nouveaux boutons à droite de la liste des variables.
- Une carte source CSS est désormais prise en charge par l'éditeur de style (angl.) (bogue Firefox 926014 (angl.)).
- L'Autocompletion des propriétés et valeurs CSS a été ajoutée à l'éditeur de style (angl.) (bogue Firefox 717369 (angl.)).
Consultez l'article du blog Mozilla Hacks (angl.) pour plus de détails et d'autres changements mineurs.
CSS
- Des variables CSS ont été implémentées (bogue Firefox 773296 (angl.)). L'article des variables CSS dans Firefox Nightly (angl.) sur Mozilla Hacks donne plus de détails. Elles sont activées par défaut uniquement pour les versions de développement (pour les versions finales, définissez la préférence
layout.css.variables.enabledsurtruesi vous souhaitez les tester). - Les Flexbox prennent désormais en charge
visibility: collapse(bogue Firefox 783470 (angl.)). - La propriété
box-sizingn'a pas de préfixe (bogue Firefox 243412 (angl.)). - La propriété
will-change, un indice indiquant que quelque chose va s'animer a été ajoutée. La préférencelayout.css.will-change.enableddoit être définie surtruepour l'activer. (bogue Firefox 940842 (angl.)) - La notation exponentielle scientifique, comme
3e1ou10e+0, est désormais prise en charge pour les valeurs et les dérivés<number>, comme<percentage>et les valeurs unitaires, mais pas<integer>(bogue Firefox 964529 (angl.)). - Les images de type
<gradient>sont désormais prises en charge dansborder-image(bogue Firefox 709587 (angl.)). - La propriété
touch-actiona été implémentée. Elle n'est pas activée par défaut ; la préférencelayout.css.touch_action.enabledla contrôle. (bogue Firefox 795567 (angl.)) - Supprimez le style par défaut redondant pour l'élément
<pre>de quirk.css (bogue Firefox 948914 (angl.)). - Les variables CSS ne sont pas correctement implémentées (cycles primaires) (bogue Firefox 950497 (angl.)).
@supportsles conditions avec des jetons après que la propriété d'une déclaration doit être évaluée à false (bogue Firefox 909170 (angl.)).
HTML
<input type=color>et<input type=number>sont disponibles par défaut.- La prise en charge des
<pre cols>non standard a été supprimée, ainsi que l'effet de mise en page de<pre wrap>. Les deux effets peuvent et doivent être obtenus en utilisant CSS. (bogue Firefox 949879 (angl.))
JavaScript
-
Nouvelles méthodes de chaîne de caractères ECMAScript 2015 :
String.prototype.codePointAt()etString.prototype.fromCodePoint()ont été implémentées (bogue Firefox 918879 (angl.)). -
L'API d'internationalisation ECMAScript (ECMA-402) (angl.) a été implémentée et est désormais activée par défaut dans Firefox Desktop (bogue Firefox 853301 (angl.)):
-
Pour correspondre au projet de spécification ECMAScript6 mis à jour, les objets
MapetSettraitent désormais-0et+0comme étant identiques lors de la vérification de l'égalité des clés et des valeurs. -
La
Promisea été activée par défaut (bogue Firefox 918806 (angl.)). -
Les générateurs terminés retournent maintenant un objet
IteratorResultau lieu de lancer (bogue Firefox 958951 (angl.)). -
Une chaîne de caractères JSON malformée analysée par
JSON.parse()retourne désormais un message d'erreur plus détaillé contenant le numéro de ligne et de colonne à l'origine de l'erreur d'analyse. Ceci est utile lors du débogage de données JSON volumineuses. -
La méthode
ArrayBuffer.isView()a été ajoutée (bogue Firefox 896105 (angl.)).
Interfaces/APIs/DOM
- Un nouveau type de workers,
SharedWorker, est désormais disponible par défaut (bogue Firefox 924089 (angl.)). - L'interface
URLprend désormais en charge la propriétésearchParamsretournant un objetURLSearchParams, permettant de modifier les paramètres de recherche d'une URL (bogue Firefox 887836 (angl.)). Le constructeurURLSearchParams()permet une analyse plus facile des chaînes de caractères de requête. - La propriété
navigator.onLineest désormais prise en charge surWorkerNavigator, permettant de connaître le statut en ligne/hors ligne dans les workers (bogue Firefox 925437 (angl.)). - Dans le cadre de la mise en œuvre des Web Components, l'interface
HTMLShadowElementa été implémentée derrière le paramètredom.webcomponents.enabled. Activez-le àtruesi vous souhaitez l'utiliser. (bogue Firefox 887538 (angl.)) - La propriété en lecture seule
HTMLIFrameElement.sandboxn'est plus une chaîne de caractères mais unDOMTokenList(bogue Firefox 845057 (angl.)). - Sur
HTMLCanvasElement.getContext(), la valeurmoz-webgln'est plus prise en charge. Utilisez la valeur standardwebgl(bogue Firefox 913597 (angl.)). - Le constructeur pour
ImageDataa été ajouté. Cette interface peut être utilisée dans unWorker. (bogue Firefox 959958 (angl.)) - La propriété
location.originest désormais disponible dans les workers (parWorkerLocation) (bogue Firefox 964148 (angl.)). - La propriété
ValidityState.badInputa été implémentée (bogue Firefox 827161 (angl.)). - La propriété obsolète
Window.pkcs11a été supprimée ; elle retournaitnulldepuis Firefox 3.0.14. (bogue Firefox 964964 (angl.)) - Les méthodes
Node.cloneNode()etDocument.importNode()prennent l'argument booléendeep. Jusqu'à présent, si omis, ces méthodes agissaient comme si la valeur dedeepétaittrue. Mais ce comportement a été modifié conformément à la dernière spécification, et si omis, les méthodes agissent comme si la valeur étaitfalse. (bogue Firefox 937461 (angl.)) Window._contentn'est plus disponible pour le contenu Web (bogue Firefox 946564 (angl.)).- Le comportement de
URLUtils.porta été légèrement modifié : défini sur''le définit sur le port par défaut associé au protocole, et0sur0. (bogue Firefox 930450 (angl.)) Document.referrerest désormais basé sur le script en cours (bogue Firefox 887928 (angl.)).- L'API Gamepad est activée par défaut (bogue Firefox 878828 (angl.)).
- La méthode
CanvasRenderingContext2D.drawSystemFocusRing()a été renommée enCanvasRenderingContext2D.drawFocusIfNeeded()(bogue Firefox 959820 (angl.)).
MathML
Pas de changement.
SVG
Pas de changement.
Sécurité
- La directive expérimentale de
hash-sourceCSP 1.1 a été implémentée. La préférencesecurity.csp.experimentalEnableddoit être définie surtruepour activer cette fonctionnalité (bogue Firefox 883975 (angl.)).
Modifications pour les développeur·euse·s de Mozilla et d'extensions
- Un changement majeur de thème Firefox affecte la plupart des extensions qui interagissent avec l'interface utilisateur de Firefox.
nsISecurityCheckedComponenta été supprimé (bogue Firefox 794943 (angl.)). La plupart des consommateurs peuvent simplement supprimernsISecurityCheckedComponentde leur définition d'interface et ils continuent à fonctionner.