Changes for Web developersDeveloper Tools
Highlights:
eval sources now appear in the Debugger
Simpler process for connecting to Firefox for Android
Box Model Highlighter works on remote targets
"Invert the call tree" option in the Profiler
Inspect DOM promises in the console
Extra "Paste" commands in the Inspector
All devtools bugs fixed between Firefox 35 and Firefox 36.
CSS
The?will-change?property has been enabled by default (bug?961871).
The?white-space?property is now working on??HTML elements (bug?82711).
The?unicode-range?descriptor is now supported by?@font-face?(bug?475891).
The properties?text-decoration-color,?text-decoration-line, and?text-decoration-style?are unprefixed (bug?825004). The prefixed version are still available for some time to ease transition (bug?1097922).
The?text-decoration?property is turned into shorthand property (bug?1039488).
The properties?object-fit?and?object-position?are now supported (bug?624647)
The?contents?value of the?display?property has been experimented implemented. It is preffed off by default (bug?907396).
The?isolation?property has been implemented (bug?1077872).
CSS??nowapplies on the premultiplied colors, matching the spec and other browsers, and getting rid of unexpected gray colors appearing in them (bug?591600).
Interpolation hint syntax has been added to??(bug?1074056).
The?scroll-behavior?property has been implemented (bug?1010538).
HTML
Support for??hasbeen added ( ">bug?704320).
JavaScript
The?ECMAScript 6?Symbol data type has been enabled by default (was available in the Nightly channel since version 33) (bug?1066322):
Symbol
Symbol.for()
Symbol.keyFor()
Object.getOwnPropertySymbols()
The old placeholder string?"@@iterator"?has been replaced with the real ES6 well-known symbol?Symbol.iterator?for the?iterable?interface property key (bug?918828).
Thespec-internal abstract operation?ToNumber(string)?now supports binary (0b) and octal (0o) literals, this is a potentially breaking change fromES5 (bug?1079120).
Number("0b11")?now returns?3, not?NaN.
"0o11" == 9?now returns?true, not?false.
The?const?declaration is now block-scoped and requires an initializer (bug?611388). It also can not be redeclared anymore (bug?1095439).
{const a=1};a?now throws a?ReferenceError?and does not returns?1?anymore due to block-scoping.
const a;?now throws a?SyntaxError?("missing = in const declaration"): An initializer is required.
const a = 1; a = 2;?now also throws a?SyntaxError?("invalid assignment to const a").
The ES7 method?Array.prototype.includes?has been implemented, but for now, it is only enabled in Nightly builds (bug?1069063).
The?delete?operator now triggers the "temporal dead zone" when using with?letand?const?(bug?1074571).
The non-standard?let?blocks and?let?expressions?are deprecated and will now log a warning in the console. Do not use them anymore, they will be removed in the future.
WeakMap?constructor now handles optional iterable argument (bug?1092537).
Interfaces/APIs/DOM
The?CanvasRenderingContext2D.resetTransform()?method of the Canvas API has been implemented (bug?1099148).
ECDSA is now supported in the Web Crypto API (bug?1034854).
You can now use?WebSockets?in?Workers?(bug?1112054).
Our experimental implementation of WebGL 2.0 is going forward!
The?WebGLQuery?interface is available (bug?1048719).
The?WebGL2RenderingContext.invalidateFrameBuffer()?method has been implemented (bug?1076456).
The?MediaDevices?interface, containing the?Promise-based version of?getUserMedia(), has been added. It is available via?Navigator.mediaDevices?(bug?1033885).
The EME-related?Navigator.requestMediaKeySystemAccess()?method, and the>
The?keyschange?event is now sent when an EME-related CDM change keys in a session (bug?1081755).
Experimental support for virtual reality devices has landed behind the?dom.vr.enabled?preference, off by default (bug?1036604).
The function associated with?RTCPeerConnection.onsignalingstatechange?now receives an event as parameter, as per spec (bug?1075133).
The experimental implementation of Web Animations make progress: the method?AnimationPlayer.play()?and?AnimationPlayer.pause()?are now supported (bug?1070745).
The non-standard?DOMRequest?interface has now a?then()?method (bug?839838).
The CSSOM View scroll behavior controlling methods,?Element.scroll(),?Element.scrollTo(),?Element.scrollBy(), and?Element.scrollIntoView(), have been implemented or extended (bug?1045754?and?bug?1087559).
Assigning to?Element.innerHTML?on an?SVGElement?now create elements in the SVG namespace (bug?886390).
MathML
No change.
SVG
No change.
Audio/Video
No change.
Networking
Support for SPDY/3 has been removed; support for SPDY/3.1 is still available (bug?1097944).
Security
RC4is now considered as insecure and all UI indicators will react as such;SSLv3 has been disabled by default in Firefox 34, but the UI has been changed to help the user better understand what is happening (bug?1093595).
The?form-action?directive of CSP 1.1 is now supported (bug?529687).
Changes for add-on and Mozilla developersJavaScript code modules