files/en-us/mozilla/firefox/releases/34/index.md
Firefox 34 was released on December 1st, 2014. This article lists key changes that are useful not only for web developers, but also Firefox and Gecko developers as well as add-on developers.
Highlights:
All devtools bugs fixed between Firefox 33 and Firefox 34.
Our experimental implementation of CSS Fonts Level 3 progresses. Newly implemented features are:
layout.css.font-features.enabled preference has been removed, meaning the following properties have been activated by default:
The value auto has been added to {{cssxref("min-width")}} and {{cssxref("min-height")}} with a different behavior than the last time (Firefox bug 984711 and Firefox bug 1015474).
An experimental implementation, disabled by default, of the filter functional values of the {{cssxref("filter")}} property have been implemented. It is controlled by the layout.css.filters.enabled pref (Firefox bug 948265).
Fixed starting of CSS transitions that start together with changes to {{cssxref("display")}}, {{cssxref("position")}}, {{cssxref("overflow")}}, and similar properties (Firefox bug 625289)
No change.
The ES2015 syntax for computed property names on object literals has been implemented (Firefox bug 924688).
The ES2015 shorthand syntax for defining methods on objects has been implemented (Firefox bug 924672).
The ES2015 Object method {{jsxref("Object.assign", "Object.assign()")}} has been implemented (Firefox bug 937855).
ES2015 template strings and the {{jsxref("String.raw()")}} method are now supported (Firefox bug 1038259, Firefox bug 1039774).
A new ES2015 object {{jsxref("WeakSet")}} has been added (Firefox bug 792439).
ES2015 Symbols (only available in the Nightly channel) have been updated to conform with recent specification changes (Firefox bug 1042602):
TypeError will be thrown now.Object(sym) == sym returns true now.The experimental TypedArray.prototype.move() method (only available in former Nightly and Aurora channels) has been replaced with the now implemented standard ES2015 {{jsxref("TypedArray.prototype.copyWithin()")}} method (Firefox bug 1021379).
In strict mode, setting a duplicate property name in object literals will no longer throw a SyntaxError as per ES2015 specification (Firefox bug 1041128).
In regular expressions (including String.replace), the matched text for a capturing group is now undefined instead of the empty string when that capturing group didn't get consulted because quantifiers prevented its exercise (see Firefox bug 369778 and this example code). Note that due to web compatibility, RegExp.$N will still return an empty string (Firefox bug 1053944).
The ES2015 spread operator is now supported in destructuring (Firefox bug 933276).
Destructuring now uses iterator protocol instead of array-like protocol (Firefox bug 933276).
{{jsxref("Proxy.revocable()")}} has been implemented (Firefox bug 978279).
The {{domxref("Element.matches()")}} method has been added; it does what the non-standard mozMatchesSelector() was doing (Firefox bug 886308).
The {{domxref("Performance.now()")}} method is now available to Web workers (Firefox bug 908390).
The non-standard interface MozNamedAttrMap has been renamed to the standard {{domxref("NamedNodeMap")}} and {{domxref("Element.attributes")}} has been adapted to use it (Firefox bug 1055467).
The {{domxref("Path2D.addPath()")}} method has been added (Firefox bug 985801).
The non-standard Device Storage API is now also enabled for privileged apps installed on Android (Firefox bug 886627).
Web Crypto API has been enabled by default (Firefox bug 1074001).
The {{domxref("MediaStreamTrack.stop()")}} method has been added (Firefox bug 1057955).
Our experimental implementation of EME continues. The MediaKeySession.getUsableKeyIds() method has been added (Firefox bug 1057171).
Regarding WebRTC:
RTPSender and RTPReceiver working with {{domxref("RTCPeerConnection")}} has landed (Firefox bug 1032835).MediaTrackConstraintSet now supports browserWindow and scrollWithPage allowing to chose the tab of a window that has to be shared without showing the tab chooser dialog (Firefox bug 1041700)."browser" is now an accepted value of MediaSourceEnum, used to define constraints (Firefox bug 1041493).For Web Components, event retargeting is now implemented (Firefox bug 887541).
The {{domxref("Headers")}} interface has been implemented (Firefox bug 1029620). It is controlled by the dom.fetch.enabled preference which is set to false by default.
Regarding our experimental implementation of Web Animations, the {{domxref("AnimationEffect")}} interface has been added, with the single AnimationEffect.name property (Firefox bug 1045993). Web Animations is not activated by default and is controlled by the dom.animations-api.core.enabled preference.
CSSOM View smooth scrolling methods have been added: {{domxref("Window.scroll()")}}, {{domxref("Window.scrollTo()")}}, and {{domxref("Window.scrollBy()")}} (Firefox bug 1022818).
The non-standard MozSmsSegmentInfo is no more visible on the global object Firefox bug 916607.
No change.
No change.
No change.
reflected-xss directive (Firefox bug 1045902)."./my-file" introduced everywhere as an alias for require("sdk/self").data.url("my-file")GitHub commits made between Firefox 33 and Firefox 34. This will not include any uplifts made after this release entered Aurora.
Bugs fixed between Firefox 33 and Firefox 34. This will not include any uplifts made after this release entered Aurora.