Firefox 76 for developers
=========================

This article provides information about the changes in Firefox 76 that will affect developers. Firefox 76 was released on May 5, 2020.

**See also the accompanying hacks post — Firefox 76: Audio worklets and other tricks.**

Changes for web developers
--------------------------

### Developer tools

#### Debugger

* You can now enable/disable blackboxing of source groups and folders listed in the Source list pane via context menu options (Firefox bug 1118152).
* The Call stack pane's *Copy stack trace* context menu option now copies full URLs, not just filenames (Firefox bug 1619039).

#### Network monitor

* In the network request list, you can now double-click a column divider to resize the column to the left of it to fit its contents (Firefox bug 1615102).
* The network request *Copy > Copy as cURL* context menu option has a new option available, `--globoff`, which suppresses cURL's globbing (wildcard matching) feature if the copied URL includes square bracket characters (Firefox bug 1549773).
* The *Messages* tab of the details pane for web socket requests has a new filter — *Control* — for showing control frames, and the filters are now grouped together into a selection list (Firefox bug 1566780).

#### Web console

* In multi-line mode, code snippets longer than five lines are abbreviated to five lines, preceded by a disclosure triangle (or "twisty"), and followed by an ellipsis (…). You can click anywhere in this area to show the code, and click again in that area to collapse it (Firefox bug 1578212).
* DOM element references outputted into the console now have a "Reveal in inspector" context menu option, which shows the element in the HTML pane of the Page inspector (Firefox bug 1612276).

#### Remote debugging

* Because of differences in DevTools versions, it is not possible to debug releases of Firefox for Android that are based on version 68, from desktop Firefox versions 69 or later. When attempting to do this, the Firefox desktop browser will now show a message informing the user of this problem, and offering possible next steps (Firefox bug 1625906). See Connection to Firefox for Android 68 for more information.
### HTML

* The `<input>` element's `min` and `max` attributes now work correctly when the value of `min` is greater than the value of `max` for control types whose values are periodic (that is, values that wrap around at some point). This is particularly helpful, for example, with date and time inputs, where you might want to specify a time range of 11 PM to 2 AM (Firefox bug 1608010).
### CSS

* Firefox now supports CSS colors level 4 system colors (Firefox bug 1590894).
### SVG

*No changes.*

### JavaScript

* The `numberingSystem` and `calendar` options of the `Intl.NumberFormat`, `Intl.DateTimeFormat`, and `Intl.RelativeTimeFormat` constructors are now enabled by default (Firefox bug 1625975).
### APIs

#### New APIs

* Firefox now supports audio worklets by default, with support for `AudioContext.audioWorklet`, which lets you use the `AudioWorkletProcessor` and `AudioWorkletNode` interfaces to process audio in real time off the main thread (Firefox bug 1616725).

#### DOM

* UI-parts related items in the `windowFeatures` parameter of `window.open()` can no longer control the visibility of each UI part separately, but become a condition for whether to open a popup or not (Firefox bug 1507375).
* Attempts to navigate to an unknown protocol using methods such as `location.href` or `<meta http-equiv="refresh">` are now blocked (see Firefox bug 1528305.
* The `IntersectionObserver()` constructor now accepts a `Document` object as its `root`, as well as an `Element` object (Firefox bug 1623623). This lets you explicitly use a window's entire content area as the intersection bounds.
* The Fetch API now supports the `audioworklet` `destination` for requests. This causes received data to be dispatched to an `AudioWorklet` (Firefox bug 1402784).

#### Removals

* We've completely removed the Window `appinstalled` event (and the associated `Window.onappinstalled` handler property) — these were never shipped, and have now been removed from the Web Manifest spec (Firefox bug 1625384).
### HTTP

*No changes.*

### Security

*No changes.*

### WebDriver conformance (Marionette)

* Firefox no longer reports `false` for `navigator.webdriver` when used for automation / testing via geckodriver (Firefox bug 1632556).
Changes for add-on developers
-----------------------------

*No changes.*

Older versions
--------------

* Firefox 75 for developers
* Firefox 74 for developers
* Firefox 73 for developers
* Firefox 72 for developers
* Firefox 71 for developers
* Firefox 70 for developers
* Firefox 69 for developers
* Firefox 68 for developers
* Firefox 67 for developers
* Firefox 66 for developers
* Firefox 65 for developers
* Firefox 64 for developers
* Firefox 63 for developers
* Firefox 62 for developers
* Firefox 61 for developers
* Firefox 60 for developers
* Firefox 59 for developers
* Firefox 58 for developers
* Firefox 57 for developers
* Firefox 56 for developers
* Firefox 55 for developers
* Firefox 54 for developers
* Firefox 53 for developers
* Firefox 52 for developers
* Firefox 51 for developers
* Firefox 50 for developers
* Firefox 49 for developers
* Firefox 48 for developers
* Firefox 47 for developers
* Firefox 46 for developers
* Firefox 45 for developers