Back to Content

Firefox 58 release notes for developers

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

latest13.3 KB
Original Source

This article provides information about the changes in Firefox 58 that will affect developers. Firefox 58 was released on January 23, 2018.

Changes for web developers

Developer Tools

HTML

No changes.

CSS

  • The {{cssxref("@font-face/font-display", "font-display")}} descriptor is now available by default on all platforms (Firefox bug 1317445).

SVG

No changes.

JavaScript

APIs

New APIs

  • The {{domxref("PerformanceNavigationTiming")}} API has been implemented (Firefox bug 1263722).
    • Gecko has also been given a pref that can be used to disable the interface if required — dom.enable_performance_navigation_timing, defaulting to true (Firefox bug 1403926).

DOM

  • Errors reported via error objects in certain APIs — for example in the error property of {{domxref("FileReader")}}, {{domxref("IDBRequest")}}, and {{domxref("IDBTransaction")}}, and when requests made via certain methods of {{domxref("RTCPeerConnection")}} are unsuccessful — are now represented by {{domxref("DOMException")}} instances. {{domxref("DOMError")}} is now deprecated, having been removed from the DOM4 spec (Firefox bug 1120178).
  • The {{domxref("PerformanceResourceTiming.workerStart")}} property is now supported (Firefox bug 1191943).
  • Budget-based background timeout throttling has been implemented — see Policies in place to aid background page performance for more details (Firefox bug 1377766).

DOM events

No changes.

Media and WebRTC

  • The prefixed version of {{domxref("HTMLMediaElement.srcObject")}} has been removed; make sure code is updated to use the standard srcObject instead of mozSrcObject (Firefox bug 1183495).
  • Using {{domxref("MediaStream.addTrack()")}} to add tracks to a stream obtained using {{domxref("MediaDevices.getUserMedia", "getUserMedia()")}}, then attempting to record the resulting stream now works as expected. Previously, only the tracks originally included in the stream returned by getUserMedia() were being included in the recorded media (Firefox bug 1296531).
  • The WebVTT {{domxref("VTTRegion")}} interface has always been created when interpreting WebVTT files, but the resulting regions were not previously utilized. Starting in Firefox 58, they are, if you enable the preference media.webvtt.regions.enabled by setting its value to true.

Canvas and WebGL

  • Support for prefixed WebGL extensions has been removed (Firefox bug 1403413):
    • For MOZ_WEBGL_compressed_texture_atc use WEBGL_compressed_texture_atc instead.
    • For MOZ_WEBGL_compressed_texture_pvrtc use {{domxref("WEBGL_compressed_texture_pvrtc")}} instead.
    • For MOZ_WEBGL_compressed_texture_s3tc use {{domxref("WEBGL_compressed_texture_s3tc")}} instead.
    • For MOZ_WEBGL_depth_texture use {{domxref("WEBGL_depth_texture")}} instead.
    • For MOZ_WEBGL_lose_context use {{domxref("WEBGL_lose_context")}} instead.

HTTP

Security

No changes.

Plugins

No changes.

Other

Removals from the web platform

HTML

  • You can no longer nest an {{htmlelement("a")}} element inside a {{htmlelement("map")}} element to create a hotspot region — an {{htmlelement("area")}} element needs to be used instead (Firefox bug 1317937).

CSS

  • The following proprietary Mozilla system metric pseudo-classes are no longer available to web content (Firefox bug 1396066):

    • :-moz-system-metric(images-in-menus)
    • :-moz-system-metric(mac-graphite-theme)
    • :-moz-system-metric(scrollbar-end-backward)
    • :-moz-system-metric(scrollbar-end-forward)
    • :-moz-system-metric(scrollbar-start-backward)
    • :-moz-system-metric(scrollbar-start-forward)
    • :-moz-system-metric(scrollbar-thumb-proportional)
    • :-moz-system-metric(touch-enabled)
    • :-moz-system-metric(windows-default-theme)
  • The following proprietary Mozilla media features are no longer available to web content (Firefox bug 1396066):

    • -moz-color-picker-available
    • -moz-is-glyph
    • -moz-mac-graphite-theme
    • -moz-mac-yosemite-theme
    • -moz-os-version
    • -moz-overlay-scrollbars
    • -moz-physical-home-button
    • -moz-scrollbar-end-backward
    • -moz-scrollbar-end-forward
    • -moz-scrollbar-start-backward
    • -moz-scrollbar-start-forward
    • -moz-scrollbar-thumb-proportional
    • -moz-swipe-animation-enabled
    • -moz-windows-accent-color-in-titlebar
    • -moz-windows-classic
    • -moz-windows-compositor
    • -moz-windows-default-theme
    • -moz-windows-glass
    • -moz-windows-theme
  • The proprietary Mozilla :-moz-styleeditor-transitioning pseudo-class is no longer available to web content (Firefox bug 1396099).

JavaScript

APIs

  • The proprietary moz-blob and moz-chunked-text values of the {{domxref("XMLHttpRequest.responseType")}} property were removed completely in Firefox 58 (Firefox bug 1397145, Firefox bug 1397151, Firefox bug 1120171).
  • The dom.abortController.enabled and dom.abortController.fetch.enabled prefs that controlled exposure of the Abort API functionality have now been removed, since those features are now enabled by default (Firefox bug 1402317).
  • The proprietary mozSrcObject property was removed in Firefox 58 (Firefox bug 1183495). Use the standard {{domxref("HTMLMediaElement.srcObject")}} property instead.

SVG

No changes.

Changes for add-on and Mozilla developers

WebExtensions

  • browserSettings

  • browsingData

  • pkcs11 API to manage security devices (Bug 1357391)

  • privacy

    • first party isolation can now be toggled though firstPartyIsolate (bug 1409045)
    • resist fingerprinting pref can now be toggle through resistFingerprinting (bug 1397611)
  • tabs

    • tabs.discard has been implemented (Bug 1322485)
    • isArticle, isInReaderMode properties of Tab implemented (Bug 1381992)
    • toggleReaderMode() method implemented (Bug 1381992)
    • openInReaderMode option of tabs.created implemented (Bug 1408993)
    • tabs.onUpdated now notifies when entering/exiting reader mode (Bug 1402921)
  • theme

    • getCurrent() method to obtain current theme properties (Bug 1349944)
    • onUpdated method to receive WebExtension theme updates (Bug 1349944)
    • colors.bookmark_text now supported as alias of colors.toolbar_text (Bug 1412595)
    • colors.toolbar_top_separator, colors.toolbar_bottom_separator and colors.toolbar_vertical_separator implemented (Bug 1347190)
  • webRequest