Back to Content

Firefox 61 release notes for developers

files/en-us/mozilla/firefox/releases/61/index.md

latest15.6 KB
Original Source

This article provides information about the changes in Firefox 61 that will affect developers. Firefox 61 was released on June 26, 2018.

Changes for web developers

Developer tools

HTML

No changes.

CSS

  • CSS parsing has been parallelized (Firefox bug 1346988).

  • Support for {{cssxref("font-variation-settings")}} and {{cssxref("font-optical-sizing")}} has been enabled by default (Firefox bug 1447163).

  • The grid-gap, grid-row-gap, and grid-column-gap properties have been renamed to {{cssxref("gap")}}, {{cssxref("row-gap")}}, and {{cssxref("column-gap")}}, as they are no longer grid-specific (Firefox bug 1398482). See Box alignment; Gaps between boxes for additional details. The old names have been kept as aliases for web compatibility purposes.

  • The {{cssxref("flex-basis")}} content value is now supported (Firefox bug 1105111).

  • Percentage values of {{cssxref("column-gap")}} are now supported in CSS multi-column layout (Firefox bug 1398537).

  • The CSS {{cssxref(":host")}} pseudo-class is now supported; this selects a custom element from inside its shadow DOM (Firefox bug 992245).

  • {{cssxref("overflow")}} now accepts two-value syntax (Firefox bug 1453148).

  • Flex items that are sized according to their content are now sized using max-content, not fit-content (Firefox bug 1282821). See the width value definitions for more details of these values.

  • {{cssxref("font-weight")}}, {{cssxref("font-stretch")}} and {{cssxref("font-style")}} now support additional values as defined by CSS Fonts level 4 (Firefox bug 1436048):

    • {{cssxref("font-weight")}} now accepts a floating-point value between 1 and 1000 inclusive.
    • {{cssxref("font-stretch")}} now accepts percentage values.
    • {{cssxref("font-style")}} now accepts an angle after the oblique keyword.
  • The {{cssxref("@font-face")}} descriptor equivalents of the three properties mentioned in the above entry also support the new syntax listed above, and additionally now support a two-value syntax allowing us to specify a range of descriptor values supported by a font-face (Firefox bug 1436061, Firefox bug 1436048).

SVG

  • The ping, rel, referrerPolicy, relList, hreflang, type and text properties have been added to the {{SVGElement("a")}} element ({{domxref("SVGAElement")}}) to be consistent with the HTML {{HTMLElement("a")}} element (Firefox bug 1451823).
  • The {{SVGElement("textPath")}} element ({{domxref("SVGTextPathElement")}}) now supports the SVG2 path and side attributes (Firefox bug 1446617 and Firefox bug 1446650).
  • The {{domxref("SVGGeometryElement")}} interface is now supported for more elements and not just for the {{SVGElement("path")}} element (Firefox bug 1325320).

JavaScript

  • The {{jsxref("String.prototype.trimStart()")}} and {{jsxref("String.prototype.trimEnd()")}} methods have been implemented (see Firefox bug 1434007). trimLeft and trimRight remain as aliases for web compatibility reasons.

APIs

New APIs

  • The {{domxref("PerformanceServerTiming")}} API has been implemented. It surfaces server-side metrics sent via the {{HTTPHeader("Server-Timing")}} header (Firefox bug 1423495).

DOM

  • The {{domxref("Document.anchors", "anchors")}}, {{domxref("Document.applets", "applets")}}, {{domxref("Document.embeds", "embeds")}}, {{domxref("Document.forms", "forms")}}, {{domxref("Document.head", "head")}}, {{domxref("Document.images", "images")}}, {{domxref("Document.links", "links")}}, {{domxref("Document.plugins", "plugins")}}, and {{domxref("Document.scripts", "scripts")}} properties have been moved from the {{domxref("HTMLDocument")}} interface onto {{domxref("Document")}} (Firefox bug 1415588).
  • {{domxref("DOMTokenList.replace()")}} now returns a boolean value to indicate whether the replacement occurred successfully, rather than void (Firefox bug 1444909).
  • The Fetch API's {{domxref("Request.credentials")}} property now defaults to "same-origin" per the latest revision of the specification (Firefox bug 1394399).
  • The {{domxref("Request.destination")}} property has been implemented (Firefox bug 1402892).
  • The {{domxref("MutationObserver")}} option dictionary, MutationObserverInit, no longer has false as the default value of all of its Boolean properties. Now, only childList and subtree have default values (of false still). The other properties have no default values (Firefox bug 973638).
  • The Payment Request API method {{domxref("PaymentRequest.show()")}} now supports using a {{jsxref("Promise")}} to let the client side code provide updated payment details prior to activating the payment interface (Firefox bug 1441709).

DOM events

No changes.

Service workers

The "Forget" button, available in Firefox's customization options, now clears service workers and their caches (Firefox bug 1252998).

Web Audio, Media and WebRTC

  • The {{domxref("AudioContext.AudioContext", "AudioContext()")}} constructor now accepts an optional options parameter. This lets you configure the preferred latency and/or sample rate for the new context.
  • Firefox now throws the correct exceptions when instantiation of an {{domxref("AudioBuffer")}} fails.

WebVR

Canvas and WebGL

No changes.

CSSOM

  • The {{domxref("CSSStyleRule.selectorText")}} property is now fully implemented and no longer read-only (Firefox bug 37468).
  • The {{domxref("MediaList")}} interface implementation is now a little closer to the specification. It is not all the way there yet; for example, stringifier attributes haven't been implemented yet (Firefox bug 1455807).

HTTP

Networking

  • Firefox 61 and later no longer support using the FTP protocol (that is, URLs with the "ftp://" scheme) to load subresources from within HTML content. FTP is still supported as a top-level URL entered directly into the URL bar or loaded as a standalone document (Firefox bug 1404744).

Security

No changes.

Plugins

No changes.

Other

No changes.

Removals from the web platform

Developer tools

Cmd/Ctrl + Shift + O no longer shows/hides the DevTools options panel — use F1 instead (Firefox bug 1409456).

HTML

No changes.

CSS

@-moz-document has been disabled in content pages (Firefox bug 1422245).

APIs

  • The {{domxref("File")}} interface's property {{domxref("File.lastModifiedDate", "lastModifiedDate")}} has been removed (Firefox bug 1458883).
  • The Node.setUserData and Node.getUserData methods have been removed from the platform completely (Firefox bug 749981).
  • The Element.createShadowRoot() method has been removed. Use {{domxref("Element.attachShadow()")}} instead (Firefox bug 1453789).
  • The {{domxref("MediaStream")}} overload of the {{domxref("URL.createObjectURL_static", "URL.createObjectURL()")}} method has been removed (Firefox bug 1454889).

SVG

  • The deprecated (and never properly implemented) SVGViewElement.viewTarget property has been removed (Firefox bug 1455763).

  • The following deprecated properties have been removed from {{domxref("SVGSVGElement")}} (Firefox bug 1133172):

    • pixelUnitToMillimeterX
    • pixelUnitToMillimeterY
    • screenPixelToMillimeterX
    • screenPixelToMillimeterY
  • The non-standard SVGNumber() constructor has been removed (Firefox bug 1455940).

Other

No changes.

Changes for add-on and Mozilla developers

WebExtensions