Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.

View in English Always switch to English

Firefox 158 note de version pour les développeurs

Cet article présente les informations concernant les changements de Firefox 158 qui concernent les développeur·euse·s. Firefox 158 est sorti le 13 octobre 2026 (angl.).

Changements pour les développeur·euse·s web

Accessibilité

  • L'attribut aria-busy est désormais pris en charge dans Firefox pour Android (la prise en charge sur ordinateur de bureau est disponible depuis longtemps). Cet état ARIA indique si un élément est en cours de modification. Il permet aux technologies d'assistance d'attendre que les modifications du contenu soient terminées avant d'informer les utilisateur·ice·s de la mise à jour. Par exemple, un lecteur d'écran peut attendre qu'une région dynamique ait fini de se mettre à jour avant d'annoncer les changements. (bogue Firefox 908042 (angl.)).

HTML

Pas de changements notables.

CSS

  • L'arithmétique typée CSS est désormais prise en charge, ce qui permet d'utiliser des fonctions telles que calc() pour diviser deux valeurs du même type de données, même si elles utilisent des unités différentes. Les quotients sans unité résultants peuvent ensuite être convertis en d'autres types de données, créant des relations utiles entre différentes valeurs sur une page. (bogue Firefox 2067411 (angl.)).

JavaScript

Pas de changements notables.

HTTP

APIs

DOM

Média, WebRTC et Web Audio

  • Lors de l'envoi de vidéo H.264 ou AV1 avec WebRTC, Firefox réduit désormais la résolution et la fréquence d'images au besoin afin de respecter le niveau de codec négocié avec le pair distant, défini par le paramètre profile-level-id pour H.264 et level-idx pour AV1. Par conséquent, MediaCapabilities.encodingInfo() indique désormais qu'une configuration webrtc est prise en charge même si sa résolution et sa fréquence d'images dépassent le niveau de son contentType. (bogue Firefox 2013936 (angl.)).

Conformité WebDriver (WebDriver BiDi, Marionette)

Général

  • Ajout de la prise en charge de la définition des permissions camera et microphone avec la commande permissions.setPermission dans WebDriver BiDi et la commande WebDriver:SetPermission dans Marionette. Cela permet aux tests d'autoriser ou de refuser l'accès aux appareils multimédias sans solliciter l'utilisateur·ice. (bogue Firefox 2070577 (angl.)).
  • Les tolérances de début et de déplacement du toucher passent à zéro en automatisation, afin que les actions tactiles fassent défiler la page exactement depuis la position où elles sont déclenchées, sans absorber les petits déplacements initiaux. (bogue Firefox 2055661 (angl.)).

WebDriver BiDi

  • Ajout de la prise en charge de l'argument imageSize à la commande browsingContext.captureScreenshot, qui permet aux clients de définir la taille maximale de l'image de capture d'écran obtenue. (bogue Firefox 2069002 (angl.)).
  • Ajout de la prise en charge de l'argument destinationFolder à la commande browsingContext.startScreencast, qui permet aux clients de choisir le dossier où le fichier vidéo enregistré est sauvegardé. (bogue Firefox 2072616 (angl.)).

Marionette

  • Correction de la commande WebDriver:TakeScreenshot afin qu'elle retourne une erreur unable to capture screen lorsque la largeur ou la hauteur de l'image capturée est égale à zéro. (bogue Firefox 1492357 (angl.)).

Autre

  • La prise en charge du format d'image JPEG XL (image/jxl) est désormais activée par défaut. JPEG XL est un format d'image matricielle libre de droits qui prend en charge la compression avec et sans perte, la transparence, l'animation et la HDR. Il peut aussi transcoder sans perte les images JPEG existantes. (bogue Firefox 2065096 (angl.)).

Changements pour les développeur·euse·s d'extensions

Fonctionnalités web expérimentales

Ces fonctionnalités sont disponibles dans Firefox 158 mais sont désactivées par défaut. Pour les tester, recherchez la préférence appropriée dans la page about:config et définissez-la sur true. Vous pouvez en trouver d'autres sur la page Fonctionnalités expérimentales.

  • La fonction CSS random() : layout.css.random.enabled

    La fonction CSS random() génère une valeur aléatoire dans une plage définie, avec la possibilité de limiter les valeurs disponibles à des intervalles de taille déterminée entre ces limites. Un paramètre facultatif <random-key> détermine quelles fonctions random() partagent une valeur aléatoire, par exemple entre plusieurs éléments ou propriétés. (bogue Firefox 2071165 (angl.)).

  • Les propriétés corner-shape : layout.css.corner-shape.enabled

    La propriété raccourcie corner-shape et ses propriétés longues constitutives sont désormais prises en charge dans Nightly. Elles permettent de personnaliser la forme des coins à l'aide d'une des clés et valeurs de <corner-shape-value> ou de la fonction superellipse(). (bogue Firefox 2070927 (angl.)).

  • Évaluation différée des modules (Nightly) : javascript.options.experimental.defer_import_eval

    La déclaration import defer et la syntaxe import.defer() sont désormais disponibles dans Nightly derrière une préférence. Elles chargent un module et ses dépendances en amont, mais n'exécutent le code du module que lorsqu'un de ses exports est consulté pour la première fois. Les modules qui ne sont pas nécessaires immédiatement ne ralentissent donc pas le démarrage. Les modules qui utilisent await au niveau supérieur s'exécutent tout de même immédiatement. (bogue Firefox 1952263 (angl.)).

  • La reconnaissance vocale sur l'appareil : media.webspeech.recognition.enable

    La reconnaissance vocale sur l'appareil est désormais prise en charge dans Nightly, uniquement sur bureau. Cela vous permet d'effectuer la reconnaissance vocale par le biais de l'API Web Speech directement dans le navigateur, plutôt que de dépendre d'un service cloud. (bogue Firefox 2069803 (angl.)).

  • Règles de spéculation : anticipation modérée : dom.speculation_rules.enabled

    L'API Speculation Rules fournit un mécanisme permettant d'améliorer les performances des navigations futures en définissant quelles ressources doivent être préchargées ou pré-rendues en fonction de facteurs tels que le comportement de l'utilisateur·ice vis-à-vis des liens. Firefox 158 Nightly ajoute la prise en charge de la propension moderate : un préchargement correspondant démarre une fois que l'utilisateur·ice survole un lien pendant un court instant (200 millisecondes par défaut). (bogue Firefox 2061013 (angl.)).

  • Les corps de requête en flux : dom.fetch.streaming_upload

    Activée uniquement dans Nightly, cette fonctionnalité permet de définir un ReadableStream comme corps de requête (par exemple, avec le constructeur Request() ou la méthode Window.fetch()). Vous pouvez ainsi envoyer les données progressivement au lieu d'attendre que le corps entier soit disponible. (bogue Firefox 1594633 (angl.)).

  • CSSNumericValue.equals() : layout.css.typed-om.enabled

    La méthode CSSNumericValue.equals() de l'API CSS Typed Object Model est désormais prise en charge dans Nightly. Elle retourne true si chaque valeur qui lui est passée est identique à la valeur numérique sur laquelle elle est appelée, et false sinon. Les valeurs sont comparées telles qu'elles sont écrites, sans conversion d'unités. Par exemple, 1in et 2.54cm sont différentes, tout comme calc(1px + 2px) et calc(2px + 1px). (bogue Firefox 2074503 (angl.)).