Firefox 39 was released on July 2, 2015. 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.
Changes for Web developers
Developer Tools
Highlights:
- WebIDE now supports debugging Firefox OS devices over Wi-Fi
- WebIDE now supports Cordova projects
- Animations view: rewind, fast-forward, and jump to a specific time
- The cubic Bézier curve editor now includes 31 presets
- Drag and drop elements in the Page Inspector
- Web console command history is now persisted across sessions
- $_ console command to print the last result evaluated
- Better box model highlighting for inline elements
All devtools bugs fixed between Firefox 38 and Firefox 39.
CSS
- Support of the
<string>
type onlist-style-type
, as well as its shorthand propertylist-style
has been implemented (bug 1144607). - CSS Scroll Snapping has been implemented (bug 945584 and bug 1138658).
- Cascading of CSS Animations and CSS Transitions has been rewritten to match the latest specification (bug 1125455).
- Support for vertical scripts, with the
writing-mode
is now turned on by default on Nightly and Developer Edition, but not on Firefox Beta and Firefox Release (bug 1099032). Note that implementation is not yet complete and some widgets, like tables, will not obey to all values. - CSS
filter
acts like position: relative + overflow: hidden (bug 1125767).
HTML
- A new ARIA role,
switch
, is now supported (bug 1136563). - Support for
<link rel="preconnect">
allowing to anticipate a future connection without revealing any information has been implemented (bug 1135160).
JavaScript
- The
RegExp
constructor no longer throws when the first argument is aRegExp
and the secondflags
argument is present (bug 1108949). - The
Object.prototype.__noSuchMethod__
property is now deprecated and throws a console warning (see bug 1140428 and this platform announcement). - The implementation of the
Proxy
object has been updated to comply more with the ES2015 specification:- The
defineProperty
andset
handlers now need to explicitly returntrue
to be successful, otherwise aTypeError
exception will be thrown in strict mode (bug 1132522). - If the
window
object is set as the target, those handlers will now throw aTypeError
(bug 828137).
- The
- When using arrow functions (
=>
), a line terminator (\n
) is no longer allowed after arrow function arguments (() \n => {}
) (bug 1141392). RegExp.prototype.toString
is now a generic function (bug 1079919).- The non-standard
flags
argument ofString.prototype.match()
,String.prototype.search()
, andString.prototype.replace()
is now deprecated and throws a console warning (bug 1142351). - The try/catch behavior of
Object.assign()
has been removed to conform with the latest ES2015 draft (bug 1103344).
Interfaces/APIs/DOM
- The experimental
CanvasRenderingContext2D.addHitRegion()
method now accepts apath
option, which allows you to add hit regions toPath2D
objects (bug 1129147). - New methods have been added to manipulate
FormData
objects (bug 1085283) andFormData
is now supported in Web workers (bug 739173). - The non-standard
XMLHttpRequest.sendAsBinary()
method has been removed (bug 853162). - Progress in our experimental implementation of Web Animations:
AnimationPlayer.startTime
is now writeable (bug 1073379). - Progress in our experimental implementation of Service Workers:
Cache
andCacheStorage
interfaces are now implemented (bug 940273). - The experimental Fetch API has been activated by default (bug 1133861).
- Progress in our experimental implementation of WebGL2:
WebGLSync
is now implemented (bug 1048721). - Support for
MouseEvent.offsetX
andMouseEvent.offsetY
have been added on desktop (bug 69787, but not on Firefox for Android or Firefox OS (they will be added in Firefox 43).
MathML
No change.
SVG
No change.
Audio/Video
No change.
Miscelleanous
- WOFF2 fonts support is now turned on by default in release version of Firefox (Beta and Release, in addition of Nightly and Developer Edition) (bug 1084026).
- The
-remote
command-line option has been removed (bug 1080319). -
Support for new Unicode 8.0 skin tone emoji (bug 1153460).
Networking
- Support for SSLv3 has been completely removed (bug 1106470).
Security
No change.
Changes for add-on and Mozilla developers
No change.
See also
Older versions
- Firefox 38 for developers
- Firefox 37 for developers
- Firefox 36 for developers
- Firefox 35 for developers
- Firefox 34 for developers
- Firefox 33 for developers
- Firefox 32 for developers
- Firefox 31 for developers
- Firefox 30 for developers
- Firefox 29 for developers
- Firefox 28 for developers
- Firefox 27 for developers
- Firefox 26 for developers
- Firefox 25 for developers
- Firefox 24 for developers
- Firefox 23 for developers
- Firefox 22 for developers
- Firefox 21 for developers
- Firefox 20 for developers
- Firefox 19 for developers
- Firefox 18 for developers
- Firefox 17 for developers
- Firefox 16 for developers
- Firefox 15 for developers
- Firefox 14 for developers
- Firefox 13 for developers
- Firefox 12 for developers
- Firefox 11 for developers
- Firefox 10 for developers
- Firefox 9 for developers
- Firefox 8 for developers
Document Tags and Contributors
Tags:
Contributors to this page:
yisibl,
Sebastianz,
kdex,
Guillaume-Heras,
teoli,
kohei.yoshino,
fscholz,
chrisdavidmills,
wbamberg,
arai
Last updated by:
yisibl,