Friday, October 7, 2011

8.0b1 available

TenFourFox 8 beta 1 is available, corresponding approximately to Firefox 8 beta 2. Fx8 is probably the first "major" update to Firefox since 4; the rest have been mostly merely incremental. Not that there haven't been important features introduced in 5, 6 and 7, of course, but 8 has some really nice new features. The one I really dig is the moveable tabs a la Chrome. Instead of grabbing tabs and having a hard-to-see placeholder mark your drop target, the tab moves with you. If you pull it out of the window, it turns into a thumbnail so that you know it will generate a new window on landing. It's really nice, and since it's really nice and awesome, it naturally may get turned off before release because it's apparently breaking some add-ons relying on the old tab behaviour. That would be a serious bummer and I hope it doesn't happen, because it's very elegantly implemented. It is also accompanied by smoother tab animation and the ability to load tabs on-demand when you start the browser instead of all at once. It's great work.

You're going to see the other major new feature immediately when you start the browser, and that is the new add-ons check panel. Each new version of Fx (and TenFourFox) will inventory your add-ons for you each time you update, allowing you to disable ones you don't need or forgot you had and see which ones won't make it. This is also a very welcome feature.

And, at the same time you experience the new check panel, you will see the major change we have introduced ourselves with this release: the end of appearance parity. Mozilla significantly rewrote large portions of the widget library with this release, requiring a large amount of code to be converted or reverted. Buttons looked wrong, the browser chrome was super dark and didn't match even Leopard's darker window style (and was totally bogus in Tiger), and some controls didn't even appear at all. But, unfortunately, this is expected; Mozilla dropped 10.4 compatibility and I am very surprised they are still maintaining 10.5 compatibility -- I expect that to end probably around the end of Fx3.6 -- so we should not suffer any illusions about the rug not getting pulled out from under us. With 8.0, by policy TenFourFox's interface will be at feature parity with Firefox, not appearance parity. You should still be able to do the same things with the interface, but colours and rendering may be different. We will eventually spin off the widget and theme ("Pinstripe") packages into separate Tiger widget and "Tigerstripe" themes to preserve compatibility and insulate us from sudden shocks and changes. This will probably be completed when Mozilla ends 10.5 support.

As a result, there were several appearance bugs that did not appear until late in testing and I have chosen to release the beta with them so that the rest of the changes can be banged on. Please don't report these, I already know that 1) there is no button frame on the buttons on the first-run add-on panel (I will probably just convert this to a regular Cocoa button) and 2) the Places/Bookmarks forward-back buttons have the rounded corners on the wrong edges. They will be fixed in the next beta and/or RC. I will also redo our easter egg because even though it is a long-time crowd pleaser going back to the Classilla 9.0 days, it is also probably rather tasteless in light of recent events. Charles Moore put it best: "I didn't always agree with Jobs, but where I didn't, I am obliged to concede that he was more often proved right, or at least reading market prospects and trends more accurately than I." RIP, Steve.

The lighter window chrome will startle some people. This is not a bug; it is on purpose. I never liked the darker chrome on Tiger and the code Mozilla added in 8 causes mismatches with the tab bar in 10.4, so I wrote new colour standards for Tiger to match standard window chrome and tested it on Leopard as well to make sure the colours are continuous. (Issue 16 still applies if you have the tab bar disabled.) This will be the new chrome for the time being, though I am considering emphasizing the tab edges to make them stand out more visually. When we fully split off Tigerstripe, I would love to have contributions (please, not merely "I want" suggestions: write the bloody code) for customizing our theme uniquely. If the Mozilla mountain won't come to Mohammed, then Mohammed is going off to Aruba to hang out with gorgeous co-eds. Your CSS can power those co-eds. And that was probably the worst metaphor I've ever written in this blog.

Oh, one other neat thing in Firefox 8 is HTML5 context menus. Right click on the animated image in this demonstration. I think this has loads of possibilities for application designers.

So that's the big overview, but wait, there's more! Tobias has written an interface to allow the browser to use ImageIO's AltiVec-accelerated JPEG decoder, which improves overall rendering of JPEG images on G4 and G5 by almost 125%. We scrubbed this for security issues in 10.4 and 10.5 and we can't find any; even if something does pop up, it's easy enough to switch back to the slower but safe in-tree JPEG library. We are only planning to do this for JPEG; PNG has known security vulnerabilities and isn't AltiVec-accelerated anyway. G3 users will use the regular JPEG library as before. Another beer for Tobias! Tobias has also submitted a very simple change to reduce the browser's CPU usage when it is in the background; it was continuing to receive mouse events unnecessarily and trying to process them, and issue 19 covered the circumstances where it actually needed them, so the code to receive the unneeded events was removed. Laptop users will particularly appreciate the battery impact. Please report any variances in activity.

We are also using minor tweaks to the AltiVec code introduced in 6 which increase performance marginally, and there is another change I need to land in the tracejit before RC/final to correct a small performance problem there too.

For those concerned about issue 84, the infamous table shift issue that plagues some pages in 6.0 and 7.0, there is a bandaid in 8.0 which fixes the reported sites and test-cases. The bug is due to an optimization problem and does not appear in unoptimized debug builds (by the way, for builders, debug builds are now fixed in 8.0 and should be working again). I still have not isolated the exact place where it occurs, so there is now a very grotesque parser patch that rewrites the page code to eliminate this specific issue. I tried to minimize side effects as much as possible and the parser bandaid will log occurrences to the Console to facilitate study. The patch does not appear yet in the changesets because I am hoping I won't have to ship with it, but if I do, it will be there and I will be sad.

Chris is continuing to work on our localization infrastructure and translators are wanted. Most of the Firefox strings apply, but slight changes are required for our few interface differences. If you are interested in the localization effort and/or working on the locale installer, as always, sign up in issue 42 and issue 61. Chris drinks his beer in several different languages.

The future of JavaScript is methodjit and I am continuing the conversion on an internal tree. This is the method compiler for JavaScript that Mozilla is shipping as JaegerMonkey and will use for the forthcoming IonMonkey. I am really pushing this as a priority because it also accelerates regular expression parsing; even though we successfully got bug 684559 accepted in the tree rather than contending with the sucky YARR regexp interpreter, we suck wind on SunSpider's regex testing and we can gain some big time back by precompiling them. My goal is to get the G5's SunSpider time under one second (right now it is approximately 1600ms on my quad 2.5GHz G5 in high power mode). I really want to have this ready for testing by 9 or 10. Watch for more announcements.

Some housekeeping. I have not heard any objections to running ads on this blog to allow me to recoup some of the hosting costs, so I will probably set that up. (You are free to AdBlock, of course.) Also, here is a little ranty bit, not for our normal blog denizens but for newcomers here with an axe to grind. I continue to receive letters ranging from petulant to nasty about TenFourFox and plugins from people who don't read the announcement on the main page, on the start page, or in the release notes. You don't pay me for this browser, you don't contribute to it, and you don't have to use it. Ignoring all else about plugins and PowerPC, if your life online entirely consists of Flash movies and Zynga games, get a new computer. There will never be a Flash 10.2 on PPC. There will never be another version of Flash on PPC, ever. This policy reflects that reality. Sending me E-mails on how you hate what I've "done to Firefox" makes you look entitled and selfish, and is a waste of your time and mine. The Apple store is over there. Do yourself a favour and buy a nice new mini, and don't use TenFourFox. Above all else, don't complain to me about it. Ranty bit over.

Anyway, that wasn't directed at you guys, the loyal supporters. You get the good stuff. Read the release notes, then grab for your architecture:


  1. I´ve been using TenFourFox since the first version came out, and every time i start the browser (that´s everyday since then) i think about how lucky i am, i mean, TFF is great and it´s unique. I´ve tried everything: Camino, Seamonkey, Omniweb, Opera... nothing comes close to TFF in any aspect. And now you´re at version 8! It´s really amazing. And certainly there´s some kind of beauty about this project: i see it as a victory against "how things are" in this society. Back in the old days, i thought something similar about Firefox itself. But now it´s much more radical than that: you´re not Mozilla, you´re not a corporation, you do not intend to make any business. You´re just a one-man army (well, Tobias really deserves his beers, it seems) and this whole thing has a really romantic side. Have you got any idea of how many Macs are you keeping alive with this browser? That´s why this is a victory. Against programmed obsolescense, against stupidity and greed. I´m a musician, recording engineer and art designer. My PowerBook has never failed me. It´s a real workhorse. I have recorded and mixed on it hundreds of hours of music. I rely on that to pay the rent every month. So, if my computer continue to be completely functional doing the hard work, what is that i can´t have a decent performance on a web browser? The answer is what i´ve said before: stupidity, greed, you name it. TenFourFox came to put some justice there, i see it that way. And the fact that behind it there is just one man, a "common man", not a CEO of some kind of corporation, makes the whole thing a real delight. Cameron, i really appreciate your work, and i think that a lot of people out there around the world does. Don´t listen to a couple of ignorants. And please put those ads on this blog, come on, you deserve it. I will not adblock them, and maybe i could even actually CLICK on them! As long the browser itself remains free, it won´t lose the charm.

    Beta 8 is great, as always. And now all my windows have the same colour, man... that´s cool. =) I think it´s a good chance to let TFF evolve on his own way. In my case, i forgot completely i´m using a fork of Firefox, i think TFF has earned a name of his own. You say it on the main page: "it´s not Firefox", so who cares about Firefox appereance?

    Well... I´ve wrote a lot and i know my english is not good enough, so i´ll stop here with a single word: THANKS.

    Cheers from Argentina!

  2. Thanks again, shall hopefully get to give this a whirl later. As well as an ancient Powerbook I also use Fedora and I'm continually impressed how you get releases out ahead of them.

  3. I'm pretty happy about what you've done to Firefox :-)

    First look at TFF 8: Peacekeeper - 994 points, Dromaeo - 48.97 runs/s, Sunspider 0.9.1 – 3265.4ms +/- 1.4% on G4 7450 1333 MHz

    I always want to click on the window to get it in the foreground on 10.5 because it's so bright, but that's just a matter of getting used to. Nice: This makes the contrast on tabs and toolbars stronger, therefore better to read for peope with weak eyes.

    No further regressions/problems with plugins compared to TFF 7.

    When I switch back to TFF 7 on the same user profile, and then again to TFF 8, I get the old ad-ons check panel on startup. I only saw the new one (large with borderless buttons) the very first time I started TFF8 on both my Pismo and the G4 PowerBook.

    Thanks for the localization credits, but please mention Victorien as well, because my own Applescript skills are way too limited to achieve what we now have in the installer app (French and German localization for TFF up to version 7 are available in Issue 61).

  4. We loyal users are grateful. Thanks! If you ever want to accept "expectation-free" donations. I'd love to help out with your costs and buy you beers. Seriously. Thanks, again.

  5. I second what namastasyai wrote. Why is it that in recent years naggers keep taking over the internet? Whatever project, people pop up and show so much unprovoked hatred towards people who help out others. Seriously hope you don't let them discourage you, Cameron!

  6. I wasn't aware you'd "done" *anything* to FireFox, other than send their programmers some helpful code suggestions, which they may or may not have used.

    Mozilla, on the other hand, made FireFox upgrades unusable on my humble PowerBook G4, which left me sad. Maybe one or two folks on this site have felt the same way.

    I thought *your* project's name began with a "Ten", if the vague and distant memory of looking at my screen's upper left corner a second ago serves me correctly.

    Are your critics perhaps unaware of who writes which project?

  7. Regarding donations: maybe using would be appropriate? It's targeted at micro-transactions and every flattr donation is connected to a particular "thing". An example of a "thing" could be the TenFourFox 7 or 8 release. So when people flattr you, they do so for things you have already done. It's also possible to create a general "TenFourFox thing" for people to flattr, but that would probably be more likely to create false expectations.

    Also, the way flattr works is that you fix in advance how much money you wish to flattr every month. At the end of the month, this amount is distributed over all things whose flattr button you clicked that month (if you didn't click anything, it goes to charity).

    So another way it avoids creating false expectations is that the money is leaving people's account anyway, regardless of whether they give part of it to you or not. That means Rap News will probably be sad if you open an account there, since they're currently getting my entire monthly contribution :)

    Some people will of course still feel that flattring you once should entitle them to personalized co-eds on Aruba until the end of times, but they will probably feel the same way by you merely showing ads on your blog.

    Keep on rocking! :)

    (and if the above sounds like a commercial, apologies; I have no financial interests in that site: I don't work for/with them and I only use it to donate, not to accept donations)

  8. Is the G5 TenFourFox app a 64-bit program? There is a 64-bit Firefox on Ubuntu 11.10 PowerPC:

    Build-Identifikator: Mozilla/5.0 (X11; Linux ppc64; rv:7.0.1) Gecko/20100101 Firefox/7.0.1

    Otherwise the TenFourFox 8.0b1 is great! It runs on my Tiger and Leopard :) Thank you very much!!!!! Great work!

  9. @Christian Zigotzky:

    No, it's not 64 bit, for at least two reasons:
    a) it's supported on Mac OS X 10.4, which has no 64 bit GUI libraries. And even on 10.5 they aren't 100% yet
    b) unless you need more than 3/3.5 GB of memory, there no reason whatsoever to use a 64 bit PowerPC binary instead of a 32 bit one. In fact, the 64 bit version will probably be slower than the 32 bit one because all of its pointers take up twice as much space (-> worse cache behaviour).

    Point b) is different on Intel because the Intel/AMD 64 bit architecture (x86-64) is slightly less lobotomized than their 32 bit one.

  10. Beta 8 is beta great, speedy and delicious. I can't believe how well tenfourfox works now on the ol ibook. As for the non believers, they can always go OS X intel, or linux, or windows. Cameron Kaiser and Tobias are national, nay international heroes for standing up to the planned obsolescence policies of Apple and Mozilla.

    I saw no updates to Quicktime Enabler were mentioned in the beta 8 release, I thought I'd mention that the downloadhelper extension (not 8 compatible, yet) also has a copy url to clipboard function, and that also works extremely well if you paste it into quicktime or vlc or Coreplayer. Basically that means in tenfourfox I can stream HQ flv or mp4 video on almost any site on the web, not just the ones flashvideoreplacer extension supports (which is not many).

  11. >I really want to have this ready for testing by 9 or 10
    How's it going? I think Mozilla is planning to remove TraceMonkey completely in 10. I definitely remember seeing a commit somewhere recently which disabled tracing regardless of config setting, and this can only mean that they are removing it...

  12. >It's really nice, and since it's really nice and awesome, it naturally may get turned off before release because it's apparently breaking some add-ons relying on the old tab behaviour. That would be a serious bummer and I hope it doesn't happen, because it's very elegantly implemented.
    I used to think that too. Then I discovered Tree Style Tab. Then I learned that that change broke TST. My opinion now is "Would be awesome if this half-assed $#@! gets removed". Is breaking drag-and-drop a hallmark of elegance?

  13. Thanks for the kind words, everyone. I'm getting over the flu, so I'm replying to everything at once.

    I don't see any such commit cursorily checking in mozilla-central (see, e.g., ). Where did you see this? What bug number?

    That said, IonMonkey builds on JaegerMonkey, so that is clearly the future of Mozilla JavaScript.

    No, 10.4Fx is not 64-bit, and probably won't ever be for the reasons Jonas stated.

    I'll add Victorien. To the best of my knowledge, yes, the add-on panel only ever appears once on the first time. There's an about:config switch for this, I believe.

  14. Cameron, tell the whiners and complainers to kiss your %@$#*!

    And for the record, I just bought a new Mac Mini, in my case an unavoidable necessity, but my trusty Quicksilver 2002 isn't going anywhere (in fact, the Mini is sitting on top of the tower), and is still quite useful thanks to the work that you have done. Can you believe that I've had this machine for 9 years? Can you imagine a PC from that long ago still being as useful?

    And what was so freaking amazing is that when I imported my data from the PowerPC to the Intel machine, Firefox 7.0 on the mini started right up with all my extensions and settings that I had been using in TenFourFox, such that I didn't miss a beat. Now all I have to do is set both browsers up to sync bookmarks, and I can switch back and forth easily. Yes!

  15. I'm still using a 1998 PowerBook - also for building and tuning TFF. Unfortunately it now started to show some intermittend hardware problems that lead to errors or hangups occasionally.
    On a machine that old I clearly see the differences between TFF and Safari; Safari is much faster (and consumes far less RAM) in nearly any aspect but JavaScript - but that might change once methodjit is available in TFF...

    In terms of speed I surely wouldn't change from a Quicksilver to another Mac - and one might even get some CPU upgrade for it on ebay.

    You're right, it's not on mozilla-central yet. But there's still plenty of time for v10.

  17. FIrst off let me say (since this is the first time I've commented here) you are doing a great job and thank you very much for providing us with TenFourFox!

    I also quite enjoy reading your blog, it gives me an insight into the inner working of both Firefox and also PPC OSX, showing me a lower level that I didn't even know existed. I have learned a lot from reading this blog. Further I continue to be impressed by the effort and expertise you put into keeping TFF at parity with Mozilla's crazy release schedule. You, and the contributors, ROCK!

    I just wanted to say to anyone who is upset about flash being disabled in TFF, the last flash version to be released for PPC is a high security risk and it was the right decision to disable it by default.

    HOWEVER, if someone really wanted to (I did) you can go into about:config and re-enable plugins (including flash, if you already had it installed) manually. I use NoScript (and am very careful with security) so I can enable flash selectively on websites I trust the flash content of (like youtube), which suites me perfectly.

  18. I don't know if anyone has tried before, but a Flash replacement option could be GNU's gnash. Been a while since I last used it, and that was on FreeBSD (also on ppc, no intel for me), so it may or may not be feasible to use that.

  19. Tab animations backed out. Yay!

  20. The longer I use the 8 beta, the more I get the feeling that something isn't quite right in the way the browser accesses the databases for bookmarks and history. I keep getting all kinds of weird behavior: Stalls (30-second-beachball) when clicking the Back button, stalls when clicking a Bookmark Toolbar item, stalls when trying to open Bookmark Menu subfolders, and bookmark icons in folders that take minutes to load – folder opens, but there are just empty spaces (no placeholders) where the icons of visited site are supposed to be.

    I can't reproduce any of this reliably, but it's very noticeable in daily work. I do have a very large bookmarks collection and some ad-ons, but I reverted to 7 for some days and haven't seen any of the problems there. I looked through Bugzilla but couldn't find anything related.

  21. BTW, tab animation (as I understand) is scheduled for a later release, and then hopefully done right. In the state it's now, it breaks add-ons, and it's only halfway done because I still get the old ugly blue placeholder mark when moving a tab from one window to another.

  22. chtrusch: maybe it's

  23. zubr could be right. If so, the Places Maintenance add-on would be the fix. I haven't tested it with TenFourFox though.

    I'm bummed about tab animation going away, but it does appear it will be backed out (I'm tracking that bug). Perhaps it will make a triumphant return. I'm waiting on the RC for the next beta. There will be a new QTE then also.

  24. Thanks for the advice, that extension seems to have done the trick (no more stalls so far). But the sheer existence of a third party helper like this leaves a bad feeling in my stomach. It means that the browser is mis-programmed to destroy its own database under some circumstances, and/or unable to do necessary maintenance tasks by itself.

    Also, memory management ist still close to nonexistent in some situations. Some Facebook sites use memory without end: You can literally observe it going up to 1.3 GB and more of real memory (with 2 GB installed in the PowerBook) in Activity monitor until the browser starts swapping and becomes sluggish. The same happens in Safari, but the difference is that memory is freed right away as soon as the offending tab/window is closed. TFF doesn't do this, it has to be restarted, otherwise it stays at >1GB and >80% CPU (=unusable) even with no window open. This is probably Mozilla's bug (given all the unresolved memory leakage bugs related to high JS activity), but right now I'm really in doubt whether I can keep using a browser that's unable to take care of itself. Or is there a third party helper to bring CPU and memory usage with no open window back to a sane state?

  25. > But the sheer existence of a third party helper like this leaves a bad feeling in my stomach.

    Well, if the bug I linked in my prev comment is relevant: it was fixed in 8 beta. You can only wait then.

    >Also, memory management ist still close to nonexistent in some situations

    Well, the evidence suggests that it's facebook who is leaking. As for TFF, in Mozilla's defense I can say that FF uses another memory allocator (jemalloc) since v3. With it, FF uses somewhat more memory (esp initially) but can release memory better. FF doesn't perform well with the default allocator. Unfortunately, Mac OS X puts obstacles to using a custom allocator, so we probably won't see it in TFF ;(

    I don't know if your version of Safari is multi-process. This also helps.

    BTW, firefox doesn't release memory instantly - this is by design. Have you tried opening about:memory and hitting "Minimize memory usage" there? Do you have any addons?

  26. I've only had the database problem in the 8 beta, not in 7, so this may be unrelated. But still, running the maintenance extension fixed it for me.

    >Have you tried opening about:memory and hitting "Minimize memory usage" there?

    Yes, I tried that, and it didn't do anything. How long does it take before FF releases memory? More than five minutes? I use Safari 5.0.6 (PPC).

    dblock Plus, Add-on Compatibility Reporter, Flashblock, Mouse Gestures Redox, Places Maintenance, ProxTube, User Agent Switcher, Web Developer. Also:
    Noscript, Resurrect Pages, TenFourFox QuickTime Enabler (these are currently disabled).

  27. I always prefer “Custom Browser Helper” for better functionality and excellent performance.


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