Thursday, February 14, 2013

I love you

But, you know, not in that way. Instead, I love you in this way: 19.0 is now officially released, the first "final" version of our unstable branch. Mozilla fixed quite a few bugs between the beta 1 we originally released and this one, including the font aliasing issue that annoyed Chris, a scrolling speed regression, some repainting errors and at least two memory leaks (one in proxy support, one in regular expressions). For our part, I have modified our atomic routines further to be totally syncless (issue 205), and this improves performance further on multiprocessor Macs, including this quad. Overall, I'm pretty happy with 19.0. Get it from the Downloads tab.

If you look through the changesets, you will also see a new js/src/ion/ppcosx directory for our IonMonkey port so that we can be ready when Mozilla unveils their new JavaScript "Baseline" compiler using that backend (which presumably will replace the JaegerMonkey JavaScript compiler we use now at that point). IonMonkey is still going to be a tremendous amount of work, but I'm beginning to wrap my head around its concepts a little and the strange things it does on the stack. I'm trying to get the trampoline at least operational so I can test code generation even if it doesn't actually do anything useful, but we're not even to the point where it can build, and I'm really hoping Mozilla doesn't remove JaegerMonkey until at least the next ESR since we're still the only lonely outside port even in progress for Ion.

I'm continuing to do more research into issue 193, which is currently our largest performance issue (the URL I use for testing is local radio station KFI). I'm beginning to suspect the problem is Apple's atrocious pthreads implementation. Is it as bad on 10.5 as it is on 10.4? Your comments suggested. If it's really just this bad, it may not be fixable without Mozilla doing a deep dive on the layout code, which I bet they won't.

17.0.3 will have issue 205 also since it works very well, plus the Spanish and Russian langpacks, plus Claudio's Intel patches. Look for that over the weekend for release on Monday.


  1. I predict that there will be no ESR 24. Perharps if the outcry is big enough, they might make ESR 25 or 30. But in any case, they will be _sure_ to drop JaegerMonkey as a "significant maintenance burden" (translation: we can't or don't want to write a secure browser, let's drop JM so we don't have to patch this security-bugs-ridden shit too, and addition to similarly buggy other parts.) [/rant]

  2. Importing bookmarks from Safari does not work.

    1. I totally forgot to land it on 19, but it's in 20 for sure. I'll pick it up if there is a 19.0.1.

      How often do you import bookmarks from Safari, anyway? ;)

  3. Is it worth upgrading from TFF 17? Is 19 much faster than 17?

  4. Forgive me asking such a question, but does TFF19 have the built-in PDF viewer that Firefox 19 boasts?

  5. Nui tech, it depends on what you do. The PDF viewer in 19 is *much* faster than in 17 (but actually, it couldn't get much slower, either), and some UI elements may react faster or "feel" faster. For JavaScript, I don't see a real difference, and, to be honest, I doubt that we can get much faster here because there's only so much you can do to optimize, while still using the same PPC processor. For me, it's fast enough to use Facebook even on my 400 MHz G3 Pismo.

    Snayl – yes, it does, but it's disabled. You can enable it and see for yourself if it's good enough. Type about:config in the URL bar and hit Return. Toggle pdfjs.disabled to false and re-start the browser.


Due to an increased frequency of spam, comments are now subject to moderation.