Firefox Developer Edition 38: 64-bits and more

In celebration of the 10th anniversary of Firefox, we unveiled Firefox Developer Edition, the first browser created specifically for developers. At that time, we also announced plans to ship a 64-bit version of Firefox. Today we’re happy to announce the next phase of that plan: 64-bit builds for Firefox Developer Edition are now available on Windows, adding to the already supported platforms of OS X and Linux.

A 64-bit build is a major step toward giving users rich, desktop-quality app experiences in the browser. Let’s also take a look at at some of the other features that make this a release worth noting. If you haven’t downloaded the Developer Edition browser yet, it’s a fine time to give it a try. Here’s why:

DevEditionEpic

Unreal demo in Win 64-bit Developer Edition

Run larger applications

A 32-bit browser is limited to 4GB of address space. That address space is further whittled down by fragmentation issues. Meanwhile, web applications are getting bigger and bigger. Browser-based games that deliver performant, native-like gameplay, such as those built with Epic Games’ Unreal Engine, are often much larger than we expect from traditional web applications. These games ship with large assets that must be stored in memory so they can be synchronously loaded.

For some of the largest of these apps, a 64-bit browser means the difference between whether or not a game will run. For example, when porting to asm.js it’s recommended to keep heap size to 512mb in a 32-bit browser. That goes up to 2GB in a 64-bit version of Firefox.

Emscripten helps port C and C++ code to run on the Web and deliver native-like performance. For an in-depth look at how assets are stored and accessed using a variety of methods in asm.js/emscripten built applications, read Alon Zakai’s post on Synchronous Execution and Filesystem Access in Emscripten.

Gain faster execution and increased security

64-bit Firefox just goes faster. We get access to new hardware registers and instructions to speed up JavaScript code.

For asm.js code, the increased address space also lets us use hardware memory protection to safely remove bounds checks from asm.js heap accesses. The gains are pretty dramatic: 8%-17% on the asmjs-apps-*-throughput tests as reported on arewefastyet.com.

The larger 64-bit address space also improves the effectiveness of ASLR (address space layout randomization), making it more difficult for web content to exploit the browser.

Firefox Developer Edition additions and improvements

Beyond the new 64-bit capabilities, the Firefox 38 Developer Edition release implements many new features, as it does every 6 weeks when it is updated. Some of these are described below. For all the details and associated bugs in progress, you’ll want to visit the release notes.

WebRTC changes

In a post about WebRTC from 2013, we documented some workarounds and limitations of WebRTC mozRTCPeerConnection. One fix involved adding multiple MediaStreams to one mozRTCPeerConnection and renegotiating on an existing session.

The new version of Firefox Developer Edition fixes these issues. We now support adding multiple media streams (camera, screen sharing, audio stream) to the same mozRTCPeerConnection within a WebRTC conversation. This allows the developer to call the addStream method for each additional stream, which in turn triggers the onAddStream event for the clients.

Renegotiation allows streams to be modified during a conversation, for example sharing a screen stream during a conversation. This is now possible without re-creating a session.

webrtcexample

WebRTC with multiple streams

Last week we announced that WebRTC requires Perfect Forward Secrecy (PFS) starting in Firefox 38. We’ll dig a little deeper into details of our WebRTC implementation in an upcoming article. Stay tuned.

The BroadcastChannel API

The BroadcastChannel API allows simple messaging between browser contexts with the same user agent and origin is now available. Here’s more detail and some ideas for how to use the BroadcastChannel API in Firefox 38.

Support for KeyboardEvent.code

KeyboardEvent.code is now enabled by default. The code attribute give a developer the ability to determine which physical key is pressed without keyboard layout or keyboard state modifications.

keyboard.code

KeyboardEvent code attribute

For more examples of uses cases see the motivation section of the UI Events Specification (formerly DOM Level 3 Events).

XHR logging

The Network Monitor already displays a great deal of information on XMLHttpRequests, but often the console is used to debug code along with network requests. In the latest Developer Edition of Firefox, the console now supports filtering XMLHttpRequests within console logging.

xhrnet

Network Monitor XHR Request

xhrfilter

XHR logging in console

Let us know what you think

Many additional improvements are available in this version. Download it now. Tell a friend.

As always, you can take a close look at the Developer Edition release notes. Please be sure to share your feedback and feature ideas in the Firefox Developer Tools UserVoice channel.

About Dave Camp

Dave Camp is Director of Engineering for Firefox at Mozilla.

More articles by Dave Camp…

About Jason Weathersby

Jason Weathersby is a Technical Evangelist for Mozilla, evangelizing Firefox OS. He is also a committer on the BIRT project at the Eclipse Foundation, and has co-authored several books on BIRT integration. He is a proponent of HTML5, Open Source and all things related to web-based gaming.

More articles by Jason Weathersby…


32 comments

  1. Robson Sobral

    Hi!

    Is there a recommended process to replace the 32bits version by the 64bits? Or just to install the new one and remove the previous will do the trick without problems?

    Thanks!

    March 2nd, 2015 at 08:46

  2. Fabricio C Zuardi

    Is there a bugzilla bug or request for releasing builds for arm-linux (armhf)?

    Firefox 36 (what we have on ubuntu arm trusty) is a great browser, but it would be amazing to be able to download binaries of the nightly builds and the developer edition as well.

    And while there, xulrunner and / or B2G Desktop would be great, for running gaia on chromebooks(last time I tried “make gaia“` it failed because of the wrong download and the lack of xpcshell).

    March 2nd, 2015 at 11:05

  3. Havi Hoffman [Editor]

    @Robson – Thanks for asking! Here’s the recommendation:

    – Uninstall Win32
    – Don’t remove your profile
    – Install Win64 (it’s a full installer vs. a update)

    March 2nd, 2015 at 11:24

    1. Robson Sobral

      Thanks! It worked!

      March 2nd, 2015 at 17:15

  4. MT

    How to change default profile for Developer Edition? I would like to use this version of Firefox as my main browser, but “dev-edition-default” is always selected instead of the profile previously selected by me in profile manager.

    Robson Sobral, just download a zip from mozilla ftp:
    http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-mozilla-aurora-l10n/

    unpack it, and replace the original installation directory with the unpacked one (e.g. rename the original directory or delete it).

    March 2nd, 2015 at 12:21

    1. Robson Sobral

      On `about:preferences`-> General, disable “Allow Firefox Developer Edition and Firefox to run at the same time”.

      March 2nd, 2015 at 17:17

      1. MT

        Thanks, Robson.

        March 3rd, 2015 at 08:34

  5. Graham Greensall

    Hi there

    MacBookPro 2014 13″ Retina OSX 10.10.2 keeps telling me that “FirefoxDeveloperEdition.app is damaged and can’t be opened”. Have removed Firefox 36 and downloaded 3 times now – trying 38.0a2.en-GB and .en_US with same result each time.

    Any suggestions?

    March 2nd, 2015 at 16:03

    1. Panos Astithas

      I just tried it from OS X 10.10.2 and it downloaded and ran fine for me. If you are on a flaky internet connection, you may be getting a corrupted binary. To verify this, first download the dmg as before and then get the checksum from the server here:

      http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-mozilla-aurora/firefox-38.0a2.en-US.mac.checksums

      The first 3 lines contain the checksums for the dmg you downloaded, which you can then verify locally. The easiest option is to use md5 which comes with OS X, like this:

      md5 ~/Downloads/firefox-38.0a2.en-US.mac.dmg

      March 2nd, 2015 at 23:23

      1. Andy Earnshaw

        I’m having the same problem, tried both the en-GB and en-US downloads, the md5 hash matches but OS X 10.10.2 tells me that FirefoxDeveloperEdition is damaged and I should move it to trash.

        March 3rd, 2015 at 00:59

      2. Marco

        The md5 sum matches, but it’s not being launched unless you allow apps from “anywhere” under System preferences > Security & Privacy > General > Allow apps downloaded from…

        The system default is to allow apps from “Mac App Store and identified developers”.

        One would hope this includes Mozilla? The standard Firefox runs fine with these settings by the way.

        March 3rd, 2015 at 02:29

      3. Graham Greensall

        Thanks for your suggestions Panos

        Connection is pretty stable & fast 4MB/s download average and have tried four times now. The Checksum was different though.

        However FirefoxDeveloperEdition runs fine when I start from the firefox-bin executable -:)

        Initial impressions very positive.

        March 3rd, 2015 at 08:42

      4. PTM

        I’m having this same problem with OS X 10.10.2.

        The MD5 checksum of the .dmg matches (d5b99c6cacfe00e272f65e6c22a5f757) and the disk image verifies and mounts just fine. But when I copy the .app to my disk and try to run it, it fails verification and gives me the same “damaged” error as Graham above.

        I’ve deleted, re-downloaded, and reinstalled several times and each time it’s the same problem.

        March 3rd, 2015 at 11:43

    2. Michael Drozdowski

      You’ll need to change your OS X security settings.

      System Preferences > General > Allow apps downloaded from Anywhere > then right click or option click the dmg you downloaded, and select “Open”.

      It should ask you a question – do you want to open this? – and, of course, you do!

      You can always switch the security settings back to something more secure if you like.

      March 2nd, 2015 at 23:36

    3. Mike Campbell

      I am also getting that it is “damaged and can’t be opened”, I downloaded several times and same thing each time.

      March 3rd, 2015 at 01:28

    4. Marco

      Same here. 10.10.2 refuses to launch the downloaded FirefoxDeveloperEdition.app

      March 3rd, 2015 at 02:21

    5. matt

      I’m having the same problem in 10.9.5. I tried downloading from here: https://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-mozilla-aurora/firefox-38.0a2.en-US.mac.dmg and had the same error. Confirmed that MD5 checksum matches.

      Guess I’m going back to 37:
      https://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-mozilla-aurora/firefox-37.0a2.en-US.mac.dmg

      March 3rd, 2015 at 11:01

    6. Havi Hoffman [Editor]

      @Graham Greensall – Sorry you are having this issue. Although it’s not occurring consistently or for everyone, you’re not the only one. Feel free to follow along with this bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1138535

      I will update comments if the bug status changes. Thanks for pointing this out.

      March 3rd, 2015 at 11:35

      1. Graham Greensall

        Thanks Havi

        I replied earlier to Panos pointing out that FirefoxDeveloperEdition works fine when run from firefox-bin.

        Looks a great version.

        March 3rd, 2015 at 14:06

        1. Graham Greensall

          Tried the http: option but that didn’t work. However followed the bug thread and the nightly build posted there works fine. Great work!

          http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/2015/03/2015-03-05-07-21-41-mozilla-central/firefox-39.0a1.en-US.mac.dmg

          March 6th, 2015 at 02:48

  6. Amit Kulkarni

    Hi,

    Is this a true 64 bit browser? Does it suffer from any of the problems as detailed in this thread?

    http://marc.info/?l=openbsd-misc&m=130683944229077&w=2

    Thanks in advance!

    March 2nd, 2015 at 22:16

  7. Gopal Venkatesan

    Hi Graham,

    It happened to me as well. I ran `/Applications/FirefoxDeveloperEdition.app/Contents/MacOS/firefox -ProfileManager` and created a new profile. It worked for me.

    Hope that helps.

    March 2nd, 2015 at 23:04

  8. Madhatter

    That’s great ! Thank you all for your work.

    But I can’t display PDF files in the browser on 64bits versions. Is there a trick ?

    March 3rd, 2015 at 02:16

  9. a-l

    Same problem ““FirefoxDeveloperEdition.app is damaged” and wrong md5 checksum. But only when i’m using a https link, which is default. If i download it from http – everything is fine. Looks like ssl hijacking attack…

    March 3rd, 2015 at 05:55

    1. Diana

      This worked for me – http download worked, https didn’t. Thanks for the tip.

      March 5th, 2015 at 18:01

  10. Oliver

    Same history for me with:

    – firefox-38.0a2.en-US.mac
    – firefox-38.0a2.es-MX.mac

    The weird thing is that with the same dmg i’ve installed on my macbook.

    Anyone in here rename the file from “FirefoxDeveloperEdition” to “Firefox Developer Edition” ? is the only thing I did before the fail. :(

    March 3rd, 2015 at 20:59

  11. Oliver

    As I say before, I’ve installed on my mac book, just grabed a zipped copy on my desktop and tada!!

    March 3rd, 2015 at 21:21

  12. Tux

    As a Linux user, i’m using a 64 bit version of Firefox since years :). I’m curious why the Windows 64 version was so delayed; isn’t this just a taget architecture setting of the compiler? And both GCC and Clang should support Windows64 nowadays … what part am i missing?

    March 4th, 2015 at 08:18

    1. nemo

      My understanding of the situation is the main issue is there’s still so much 32 bit stuff under Windows.
      Plugins in particular. Linux world, there are far fewer 32 bit only blobs. Not to mention a much smaller impacted userbase.

      It *is* a bit frustrating though, ’cause this cuts both ways. Since Firefox was 32 bit on this 64 bit Windows install I just did, I installed Java 1.8 32 bit. Which meant Eclipse 32 bit… it just cascades.

      March 20th, 2015 at 09:28

    2. nemo

      Oh, and it definitely isn’t architecture. They’ve had 64 bit nightlies for Windows for five years now, and I’ve always used them on 64 bit Windows machines, and without any problems. AFAIK the reason it took five years was that up the last year or two there weren’t enough good reasons to take on the burden of 32/64 bit support for Windows.
      Well. Similar situation with our modest open source project (Hedgewars). We still only distribute 32 bit for Windows. OSX and Linux are of course 64 bit, but Linux is managed by the distros and OSX is exclusively 64 bit these days. Doing both is kind of a hassle, and 32 bit is good enough for our purposes.

      March 20th, 2015 at 10:42

  13. paul

    “Your firefox profile cannot be loaded…” on a new install on W8. Tried the firefox -P and get nothing. Seems to me fixfox should come up under an internal generic profile like a safe mode and allow the user to create a profile and not stand on formalities.

    March 4th, 2015 at 11:38

  14. Jonathan

    Hi,
    do you know if we can expect a 64-bits version of the stable browser soon, or is it still very experimental?

    March 4th, 2015 at 14:04

Comments are closed for this article.