Saturday, October 13, 2012

QuickTime Enabler v.115

Are you sick of me yet? QuickTime Enabler v.115 is out, but it requires TenFourFox 17; it is not tested, nor supported, with 10.x. and since by accident I built it with an old addon SDK version, we will offer it for 10.x users as well; there will be a v.116 for TenFourFox 17 with the correct SDK. This v.116 will become the new QTE when 17.0 becomes final. Test it!

This version fixes the problem with YouTube URLs, so they should work again (well, at least as well as they usually work, which is fine with non-ad-based videos and crummy with ones with ads), and allows you to directly feed a link to QuickTime Player (so you can right-click on a link to an MP3 or video file, and the URL will go straight to QuickTime Player as if you had right-clicked on an HTML5 video). Note that it will offer you this option on any link, since it really has no way of knowing what's on the other end, so don't expect you can play your tax returns in QuickTime Player, and they would probably sound pretty ominous.

So go grab the stuff. It's Christmas in October, yo.

17 beta released; more dark clouds of Judgment Day

17.0 beta is now available from the Downloads tab; read the (WIP) release notes.

Besides fixing the problem with canvases (possibly suboptimally, but that's better than not fixing it at all) and including the security fixes from 10.0.9, I'm going to go for broke with Barry/Chris' theory on Tenderapp that PostScript Type 1 fonts are the problem for those people who get disappearing or "boxed out" text. Actually, that's not quite the issue -- the issue is fonts that contain only bitmaps and no glyph or CFF information, which includes some TrueType/OpenType fonts as well -- so this version simply ignores those fonts and selects a fallback. The configure settings for Arial, Helvetica and Times remain, just in case. If a font is ignored, it is logged to the Console, so you can run Console.app and see which fonts it believes it cannot render. This doesn't affect downloadable fonts, just the fonts already installed on your system. The moral of this story is, use TrueType and OpenType fonts unless you absolutely have no other way of getting them.

In the Judgment Day department, Tobias' AuroraFox version of 18 has uncovered some unpleasant findings. While the problems with JPEG images and our use of the built-in AltiVec JPEG decoder can be worked around, version 18.0 removes support for QuickDraw plugins, and as a result plugins crash when instantiated on PowerPC in 18.0. I warned you this day would come. Plugin code will be completely disabled in 18.0 to prevent users who have it enabled from being affected. This code will not be restored, and it is unlikely it would work properly even if it were.

Also, for some absolutely ridiculous reason, Josh Aas in what can only be described as an obsession with wrecking functional old code has decided to remove Growl support from 18 also. I don't know how many of you have Growl installed, but I do, mostly for TTYtter Texapp. However, Firefox and TenFourFox could use Growl to notify users about downloads and updates, and because it was part of toolkit/, it could be used by other Gecko consumers. Allegedly this is being replaced by XUL notifications, but this doesn't even appear to be on the radar. This was a really bad move with half-assed justification, people in the bug weren't too enthusiastic about the idea, and bluntly I'm pretty peeved at him (and I bet people on 10.6 and 10.7 using the real Firefox won't be very happy either, because the only replacement is the Notification Center support which is only in iOS 10.8). We might restore this code if it looks like we have to drop to feature parity between 17 and 24, which is, sadly, probable. I'm curious about how many of you were using Growl, just to see.

QTE update is next.

Friday, October 12, 2012

10.0.9 chemspill

I said that 10.0.8 was not vulnerable to bug 720619 and I was wrong; it is vulnerable to a variety of the attack (in fairness, Mozilla initially didn't think it was vulnerable either). 10.0.9 is now available and 10.0.10 will conclude 10.x. There are no 10.0.9 changesets; 10.0.7's still apply unmodified.

Wednesday, October 10, 2012

16.0.1 chemspill (and 17 beta) imminent

For a high priority security bug (see today's Planning meeting notes) and a couple of ridealongs, Mozilla will chemspill 16.0.1. We never released a 10.4Fx 16.0, and 15.0.1 is not vulnerable, but 17a2 is and I will try to release our beta as soon as possible even though issue 180 (Mozilla bug 794337) is still not yet repaired. In the meantime, 10.0.8 is unaffected and would be the recommended workaround until the revised beta. 10.0.8 is in fact vulnerable to a variation attack: see 10.0.9 post Note for our AuroraFox users that AuroraFox 16 and 17 are vulnerable, and I will defer their mitigation to Tobias. SeaMonkey PPC 2.13 is also vulnerable.

Riding along with the 17 beta will be a prospective blacklist on Type 1 PostScript fonts, which Chris and one of our users demonstrated don't work with Harfbuzz and may be the underlying cause of this Tenderapp issue and this Tenderapp issue. However, I have a remarkably small amount of replies from users for whom this was allegedly a crippling issue. It would really help me if those of you affected would chime in and say if you see the same thing, because the fixes are shots in the dark as I have not been able to replicate them on my internal test systems. The specific workarounds for Arial, Helvetica and Times will stay in, just in case.

10.0.8 was made official Monday night, btw. Remember, 10.0.9 will be the last 10.x release.

In other news, 16.0.1 will probably be the last official Firefox release supporting 10.5 ("adieu, spotted cat"), assuming no further chemspills. For those of you still making PPC builds directly from source without modification, that will break when 17 comes out, including the current incarnation of SeaMonkey PPC.

Saturday, October 6, 2012

10.0.8 available

10.0.8 is now available from the Downloads tab. Please give it a quick spin prior to release. It will be released to the stable branch audience on Tuesday. Only one more 10.0.x release to go!

There are no changesets for 10.0.8 because the 10.0.7 ones applied cleanly, and I have decided not to do any more backporting for this release. I might add issue 130 to 10.0.9, but I haven't decided yet, as it is a minor nuisance bug.

For the 17 beta, there will be a couple significant changes. More on that soon. Also, there will be a new QTE release for 17 with some fixes.

Wednesday, September 26, 2012

17.0a2 available

TenFourFox 17.0a2 is now available (read release notes; download from Downloads tab). As I threatened promised, there will be no 16 because I want people banging on this version hard -- it's going to be the new stable branch, after all. There will be only two more 10.0.x releases, 10.0.8 in a week or two, and then 10.0.9 simultaneously as the last legacy release together with 17.0.

17 is really very nice. Graphics performance is significantly better and I also took the liberty of pulling a couple low risk bugs from 18 to speed up the URL bar completer (bug 781588 and bug 794520). There is also an integrated debugger and lots of new development tools, and quite a number of bug fixes, though pdf.js is still not ready for prime time.

On our side of the fence, 17.0a2 repairs bookmarks search, which was an endian problem since 13.0 (issue 177) and a long-running nuisance with the manual update window not properly handling No Thanks, which sounds like a feature but actually isn't (issue 130) and which will be backported to 10.0.8.

We also have a mitigation (issue 171) for people who were bitten by Tenderapp problem 2 and fonts just corrupt enough to still be useable by the OS but fail in Harfbuzz, which is the OpenType shaper used in TenFourFox (ATSUI, which was used in Firefox 3.6, is not suitable for Firefox 4+, and the secret CoreText in Tiger does not support enough features to be useable for this either). Ordinarily corrupt fonts should be simply disabled in Font Book and the font cache cleaned out, as they could be problematic for other apps. This is hard to do with common fonts like Arial, Helvetica and Times, so now you can set a pref in about:config to tell TenFourFox to find another font (tenfourfox.gfx.badfont.arial, tenfourfox.gfx.badfont.helvetica and tenfourfox.gfx.badfont.times, respectively). You can combine them into a set if you like, or disable all three of them. Please note I can't predict what font it will pick because that depends on what you have installed; it will find something it thinks is similar, which might occasionally be totally wrong, but should at least be legible. Please note that most users will not need this and in fact I have never been able to reproduce this on any of my machines, but there are enough people with this issue in some manner that hopefully this mitigation will help them if they cannot disable the font otherwise. After setting one or more of these preferences to a new value, please restart the browser. I will consider adding other fonts to this list, but they should be ones that people cannot disable easily -- I do not want a whole string of font exceptions in the code.

There is at least one major bug in 17.0a2, but we do have some time to rectify it; apps that do a lot of canvas painting and animation don't update properly. This is really a Mozilla bug (bug 794337) but I am concerned that now that Mozilla has dropped 10.5 for 17+, they may not fix the problem since every supported Mac now is capable of hardware acceleration and this is only a problem for systems that are not hardware accelerated -- like us. So we might be going it alone on this one, although I did find a regression range to help speed up finding a fix.

As threatened, 17.0.x will be the final version to support building with gcc 4.0.1. The fixes required to get the browser to build and link with it are now voluminous, and I even discovered at least one miscompilation which was totally wrong and had to be rewritten. While 17.x will be built with 4.0.1 for the remainder of its life, this is the end of our use of Xcode-based gcc. Mozilla, in fact, is now requiring clang to build at all on OS X, but we will short-circuit this, of course.

In other Mozilla news, the IonMonkey has landed in Firefox 18, the new JavaScript engine for long-running apps. I wish I could be more positive about this, but the numbers being posted are not as impressive as I would like even on the core Tier-1 platforms, especially given the large amount of work that will be required to port IonMonkey to PowerPC. IonMonkey really only significantly runs, and benefits, apps with relatively long runtimes; "old" JaegerMonkey with type inference handles most of the rest. Nevertheless, it's going to be an important part of future versions of Firefox and I am exploring what work needs to be done for our port to be successful. The silver lining is that it does offer additional optimization opportunities that JM+TI do not, and like JaegerMonkey during the TraceMonkey days, we don't need to implement it yet.

Mozilla is also putting the final touches on 16.0, the last version of Firefox to run on 10.5, and this will probably also be the end of SeaMonkey-PPC unless hikerxbiker starts doing his own local changesets to deal with that (right now the browser is more or less built "vanilla", and the ESR as written will not run on 10.5 unless it is modified). Given the pattern of dropping support before an ESR, it seems probable that Fx23 will be the last version to support 10.6 and "real" Mac OS X since 24 is prospectively the next ESR after 17. When Mozilla requires 10.7 as a minimum, we're going to be in hot water because every system will not only be hardware accelerated, but also 64-bit, and 64-bit builds on G5 have not worked out very well (and would exclude our many G4/7450 users). That's a very likely time to think seriously about dropping to feature parity.

If you are interested in localizing 17, now is the time to get started. Chris continues to head our localization efforts in issue 42.

I will be releasing a 17 beta to general audiences next month, after 10.0.8 comes out for stable-branch users. Watch for it then. Please test 17 carefully against any tier-1 platform, since there are still some significant Mozilla-general bugs present that they need to repair, as is typical for Aurora. Enjoy.

Wednesday, September 5, 2012

15.0.1 chemspill imminent

We will be chemspilling 15.0.1 for a serious issue found after release that basically makes private browsing mode useless (Mozilla bug 787743). This also affects those of you on AuroraFox, since both 16 and 17 are also vulnerable; that's Tobias' call whether to rebuild. I expect to have builds available probably on Friday or Saturday. This issue does not affect 10.0.7.

Update: builds now available. Get.