The roads I take...

KaiRo's weBlog

March 2009

Displaying entries published in March 2009 and tagged with "Mozilla". Back to all recent entries

Popular tags: Mozilla, SeaMonkey, L10n, Status, Firefox

Used languages: English, German


February 2022

March 2021

April 2020


March 30th, 2009

Weekly Status Report, W13/2009

Here's a summary of SeaMonkey/Mozilla-related work I've done in week 13/2009 (March 23 - 29, 2009):
  • Release Management:
    Ongoing uploads of contributed builds for various platforms and languages.
  • Automated tests:
    I did some more work on the ported plain mochitests and browser-chrome tests for the browser part of SeaMonkey, but still a bit more is needed to land them.
    Somewhat more unfortunate, we saw all test slaves for SeaMonkey trunk go orange and red this week, all with different reasons now. The Linux orange is goelocation mochitest failures that are somewhat understood (and probably happening on all platforms). The Mac box fails mochitests because the xpcshell http server for serving the tests just doesn't come up for unclear reasons. The Windows red is the test_reviver.js JSON test crashing without us having any clue why that could be.
    All those failures make me really unhappy, it somehow looks like there's not really anyone who cares about them failing or not - except Serge, who usually also files bug reports on them. Unfortunately, fixing them is even more rare. And in the most recent cases, finding out what's up feels like chasing ghosts. :(
  • Build System:
    The NO_JAR_AUTO_REG cleanup I did when finding it being obsolete when investigating my build system MAOW talk did get review and could be checked in.
  • MAOW Berlin:
    I spent the weekend in Berlin at the Mozilla Add-Ons Workshop, and held talks on the build system and SeaMonkey 2 extension (both in German). During the week, I spent a significant amount of time getting those slides ready for that event.
  • SeaMonkey L10n:
    I added Polish to ChatZilla this week, as Adrian has found the time to localize that large chunk of strings - Thanks!
  • Various Discussions:
    Modern theme updates, GSoC applications, toolbar context menu, redesign proposals, mailnews and external linkage, mailnews disentanglement, security firedrill, security group membership, in-code and MDC documentation relationships, etc.

I'm delighted that the Mozilla Europe Community Tour makes stops in my home town of Steyr (April 5) and then in Vienna (April 6+7) very soon. If anyone wants to join us there for some talk and fun, please contact us!

In other news concerning Austria/Vienna and Mozilla, my talk at Linuxwochen Wien was approved! On Saturday, April 18th, I'll talk about "The Open Internet and Mozilla" on one of the largest open source events in the region, try to spread the word about the overall Mozilla mission surrounding the open Internet and encourage the people there to help us drive this vision forward!

By KaiRo, at 16:59 | Tags: L10n, Mozilla, SeaMonkey, Status | 1 comment | TrackBack: 0

March 23rd, 2009

Weekly Status Report, W12/2009

Here's a summary of SeaMonkey/Mozilla-related work I've done in week 12/2009 (March 16 - 22, 2009):
  • Release Management:
    Actually released SeaMonkey 1.1.15 on Wednesday, followed by ongoing uploads of contributed builds for various platforms and languages.
  • Download Manager:
    I've done some more work on creating full progress dialogs as well as some preliminary work on porting UI tests from toolkit as well as finding out which toolkit tests pass with our patches (including UI) applied. one test could be fixed easily, others will need to enable to toolkit UI to succeed on SeaMonkey (we'll add a hidden pref to do that).
  • Automated tests:
    First, I added a project for automated test coverage in SeaMonkey to the Google Summer of Code proposals page.
    Second, when I read about a test moving to browser/ as it tests stuff specific to the browser window but noticed that it works fine in SeaMonkey, I decided we shouldn't lose coverage of that item. Just adding one single small test felt to be too easy though, so I looked into the move target directory for more tests to port over to SeaMonkey. As those are testing application-specific things, a good number of them needed adoption and I also uncovered some issues on our side in addition to more features to port from Firefox to SeaMonkey. I ended up with good sets of plain mochitests as well as browser-chrome tests to add, though, and hope to increase our test coverage soon due to that.
    Further, I found out we weren't respecting TEST_PATH in "make mochitest-browser-chrome" and, with the right pointer from gavin, ported the necessary patch for this to comm-central. I also filed a bug on no automated run with TEST_PATH in chrome mochitests, which seems to be a general test framework issue.
    And last not least, I did another iteration of the idcheck test for Firefox and gavin's review comments now need input from Karsten, who originally wrote this test.
  • Build System:
    When writing up one of my talks for MAOW Berlin, I discovered that NO_JAR_AUTO_REG is obsolete but still present in comm-central and remove occurrences in places that surely don't support xpfe chrome registry any more (that flag was only used there).
    More review and discussion on the patch for pulling venkman from hg via, up to this finally being ready for checkin.
  • MAOW Berlin:
    Wrote up initial versions of my build system and SeaMonkey 2 extension talks (both in German) for the upcoming MAOW Berlin. If you understand German, I'm happy about feedback on both of those!
  • German L10n:
    More keeping up-to-date with current SeaMonkey and 1.9.1 toolkit development to keep the de builds green.
  • Various Discussions:
    New build machines, redesign proposals, HTML mail composing, Modern theme updates, mailnews migration with non-matching directory prefs, mailnews and external linkage, build symbol collection on Linux, in-code and MDC documentation relationships, JS performance and debugging, etc.

I had interesting experiences in finding bugs this week: On hand by porting tests from Firefox and finding out what problem they catch in SeaMonkey, on the other hand by writing up slides for a talk and tripping over obsolete definitions in our code. On both sides, a number of things were easy to fix once I knew them, some still needed to be worked around and be addressed in more detail later.
I also found that there a lot of room for students and code newcomers to work on in the SeaMonkey area - starting with increasing test coverage for existing code, via porting features from Firefox up to getting extensions like Weave to work with SeaMonkey. If you're interested the Google Summer of Code proposals may even enable you to get a T-shirt for that work (and less importantly, also some payment)! ;-)

And last not least, I'm looking forward to MAOW Berlin next weekend with a lot of firsts for me: the first stay in "Eastern Germany" and Berlin, the first time talking about Mozilla Mozilla stuff in German, and the first time of holding talks about the build system and extension porting. I'm sure this will all be exciting - and a lot of fun!

By KaiRo, at 16:16 | Tags: L10n, Mozilla, SeaMonkey, Status | 2 comments | TrackBack: 0

March 20th, 2009

Writing/Porting Tests Detects Bugs!

When I read about a test that runs well in SeaMonkey being moved from testing/mochitest/ to browser/ yesterday (as it tests stuff that is actually internal to browser/ JS), I decided it would be good if SeaMonkey would still run it. And as I was already looking into moving/porting a browser test, I decided I would look into what other tests from browser/base/content we should have.

Following that, I spent the whole day trying tests and porting those that are useful to suite/browser - finding a number of things to add to the Firefox to SeaMonkey porting list as a number of tests were for features we haven't implemented yet (helpwanted!) as well as a few bugs in SeaMonkey, which I either fixed right in the patches for adding the plain mochitests and browser-chrome tests or marked todo() relying on followup bugs to fix them.

In the end this should result in easier extensible browser context menus and better accesskeys within them, improved feed detection, and plugins handling improvements - in addition to detecting more regressions in the tested areas when we're doing future work.

What I really like with that work though is that it uncovers existing bugs (that are sometime easy to fix) in addition to early detecting future ones.

That's why I proposed increasing automated test coverage as a Summer of Code project for SeaMonkey - if you are a student and want to learn Mozilla code, please consider applying for this one, you'd even get paid for it!

By KaiRo, at 14:57 | Tags: Google, GSoC, Mozilla, SeaMonkey, tests | no comments | TrackBack: 0

March 17th, 2009

Weekly Status Report, W11/2009

Here's a summary of SeaMonkey/Mozilla-related work I've done in week 11/2009 (March 9 - 15, 2009):
  • JS Performance & Debuggers:
    Wladimir Palant posted on his blog that just having installed a JS Debugger (venkman in this case, but ChromeBug behaves the same) has a perf impact on JS.
    This is because they need to init the JS debugging component from the startup of the app to catch all the loaded and running scripts even before their own UI comes up. It looks like this was only made visible now as before the incredible perf improvements done the JS engine devs this slowdown was less significant in percentage compared to running scripts, but with the current fast JS engine, this impact becomes visible.
    I filed a bug on removing that impact for normal SeaMonkey usage, investigation for which uncovered more bugs in the core JS debugging component, unfortunately. We are well into understanding the problems and discussing possible solutions right now. All this investigation will result in improving the situation for everyone, thanks to Wladimir for starting off all this and to Gijs from venkman for taking deeper looks into what's happening as well as thinking about solutions - and hopefully even patches coming up soon!
  • Release Management:
    I moved forward with the release process for 1.1.15, now targeted for release on March 18, notifying localizers and preparing both the release directory as well as the web pages.
  • Download Manager:
    Callek uploaded a new patch for switching to the toolkit download manager, which gave me the opportunity to test my new UI work the first time in actual SeaMonkey, and I found that it works fine!
    Unfortunately, I found a problem with importing download lists from the old implementation, thanks a lot to Frank, who helped in getting up a patch to make this work.
    Callek's patch contains stub versions of the per-download progress dialogs we will still offer in SeaMonkey, I did some work on creating full progress dialogs, which will see a large UI overhaul compared to the 1.x versions.
  • Build System:
    I did some review and discussed the patch for pulling venkman from hg through our checkout script.
    For build/release engineering, I reviewed a buildbot step abstraction done so that we can share more custom buildbot config code with Firefox, Thunderbird and others.
    When I did a just-fun-fun qt port SeaMonkey compile run once again, I spotted a compile failure in mailnews, probably related to missing printing support code in the qt port.
  • Themes:
    I updated and released EarlyBlue and LCARStrek for SeaMonkey 2.0a3, both are already out of the sandbox on AMO and have more improvements than just keeping up with changes in SeaMonkey, e.g. they also should be much better in RTL support now (I didn't test that though as I don't know any RTL language) and support for DOM inspector and chatzilla has been updated to current releases after a long time of neglecting changes in those extensions.
  • German L10n:
    Fixed missing about:sessionrestore strings, kept up with suite and chatzilla development, and switched to more common words for security messages. I also started a newsgroup discussion on the latter, might have more German string improvements to follow on that.
  • Various Discussions:
    Multi-tab close dialog and session restore, MAOW Berlin, new build machines, wanted-seamonkey2 triage, redesign proposals, SeaMonkey website banners, 1.1.x support and mac machine issues, Firefox reversioning, HTML mail composing, etc.

I'm quite excited about the download manager stuff at this time, as it looks like we finally get in the position to drop one of the last pieces of old, unmaintained xpfe infrastructure and use well-maintained toolkit code instead, with our own UI on top of it, which is in the line of the old suite UI but with good improvements - and it's one of the largest pieces of UI/code that I have largely written myself, with assistance of MDC and XULPlanet as well as old xpfe and new toolkit code, but very little copy and paste.
In addition, once those patches are finished, reviewed and can be checked in, our L10n builds will become fully functional, which is another major milestone for SeaMonkey 2!

By KaiRo, at 16:24 | Tags: L10n, Mozilla, SeaMonkey, Status | 2 comments | TrackBack: 0

March 14th, 2009

Impressed With Non-JIT JS Speedups

Prompted by Wladmimir's post on the perf cost of venkman, I filed a bug on getting rid of that cost in SeaMonkey, either by fixing the actual problem or not enabling whatever causes this slowdown - even if (what I don't hope) it would mean not shipping venkman in the worst case.

With JS perf tests being the number one rocks/sucks meter of browsers right now, esp. with advanced user and web developers, who are a very major part of our target audience, we cannot afford to look worse than Firefox in SunSpider and similar benchmarks.

But here's the real surprise moment I had in all that:

To get some useful data of what the penalty is and if there a significant difference to the old SeaMonkey 1.1.x series in that, I did run SunSpider in a current comm-central/mozilla-1.9.1-based SeaMonkey 2.0b1pre build and a mozilla-1.8.1-based SeaMonkey 1.1.16pre build:

SeaMonkey 1.1.16pre: 15719.8ms +/- 1.5%

SeaMonkey 2.0b1pre (venkman disabled, JIT.content disabled!): 2751.6ms +/- 2.1%

Now that's impressive. This is interpreted code, without just-in-time compilation, and it's still very significantly faster than the old 1.8.1 JS engine. Good work, SpiderMonkey developers!
And yes, this are results on the same machine, under the same testing conditions, with mostly empty testing profiles.

With JIT, we're even faster, of course:

SeaMonkey 2.0b1pre (venkman disabled): 1954.8ms +/- 9.4%

Unfortunately, the penalty of just having venkman enabled is real though, resulting in a ~17% slowdown in my tests:

SeaMonkey 2.0b1pre (default config): 2289.8ms +/- 10.7%

We really need to find a solution for that, ideally so that we can give our users a JS debugger available in the suite by default but still give everyone at any time where he doesn't want to actually debug JS code the best possible performance.

I continue to be impressed with the work the SpiderMonkey/TraceMonkey team did, though, the current 1.9.1 JS engine is already so much better than what we had in 1.8.1, and it's not even finished up yet.

By KaiRo, at 18:39 | Tags: JavaScript, Mozilla, SeaMonkey | 5 comments | TrackBack: 2

March 12th, 2009

EarlyBlue and LCARStrek for SeaMonkey 2.0 Alpha 3

Yesterday, I updated my LCARStrek and EarlyBlue themes to SeaMonkey 2.0 Alpha 3 and did official releases of those updated versions.

On AMO, you need to log in to get those versions from the sandbox - alternatively, my theme downloads page offers them without login.

Those versions made good improvements apart from the usual updates to fit with the newer SeaMonkey version: Both also feature updated DOM inspector and ChatZilla support, highly improved support for right-to-left language display, full support for customizable navigator toolbars, controls in <video> elements, and new history window and sidebar as well as some other bugfixes and improvements.

The full changelog as well as the complete source of the themes are available from my public git repos.

By KaiRo, at 16:09 | Tags: EarlyBlue, LCARStrek, Mozilla, SeaMonkey, themes | 1 comment | TrackBack: 0

Auto-Update Fun

I just realized that my SeaMonkey download stats page didn't count auto-update downloads for 2.x version but only those for the normal download links.

When I looked at the original data and included the auto-uploads in my lists, numbers jumped up significantly, as expected. So far, so good.

What makes me wonder though is that we had closely over 17k downloads of 2.0a1 but slightly over 22k auto-update downloads for 2.0a2 (next to nearly 15k normal downloads for that milestone). How can more people be automatically updated to the second alpha than those who downloaded the first milestone that supported this system at all?
That looks kinda strange to me, at least. The only explanation I find is that a significant number of people downloaded 2.0a1 over direct FTP but got served the auto-update via the official channels when we released 2.0a2.

In any case, once we sum up normal and auto-update downloads, 2.0a1 has more tracked downloads than 1.1a and 2.0a2 already overshot 1.1b, even though we are still in alpha stage.

And SeaMonkey 2 Alpha 3 had about 1.7k downloads per day in its first 8 days (a total of about 13.6k, 4.6k normal + 9k auto-update downloads) - not bad for an Alpha of a niche product, I think. ;-)

By KaiRo, at 01:36 | Tags: AUS, Mozilla, SeaMonkey, SeaMonkey 2, stats | 3 comments | TrackBack: 0

March 10th, 2009

Help Wanted for Modern Theme Improvements

The "Modern" theme in SeaMonkey 2 needs your help:

We have a bug on file for updating the Modern theme for SeaMonkey 2.0, and we even have some good work from Kuden, who volunteered in mozillaZine forums to help with theme design in the missing areas.

So, this sounds like success? Well, almost. As you might know, the only way to get changes into the Mozilla repositories is by doing patches, getting reviews and addressing the review comments.
And that's where we're stuck right now: We need someone to take Kuden's work, bring it up as patches, submit those for review and address review comments coming up. Ideally, this would be someone who uses Modern and has some knowledge of CSS and theme work as well as our review process.

The work to be done is basically picking up existing pieces and driving them into the tree. Sounds easy? Might be something for you!

Even if you don't know the review process that well, as long as you know or are able to learn how to create patches and you are able to address requests for changes in theme CSS, you should be able to help.

Please contact us if you can give us a hand with this and make Modern fit for the future!

By KaiRo, at 16:37 | Tags: helpwanted, Mozilla, SeaMonkey, themes | no comments | TrackBack: 0

March 9th, 2009

Weekly Status Report, W10/2009

Here's a summary of SeaMonkey/Mozilla-related work I've done in week 10/2009 (March 2 - 8, 2009):
  • Release Management:
    Shipped SeaMonkey 2 Alpha 3 successfully (including putting up auto-update snippets using my N810 between singing a few songs in the local Karaoke bar), and tagged and built candidates for 1.1.15, the upcoming security and stability update to include fixes from Firefox 3.0.7 and Thunderbird updates (please help testing those candidates).
    Most of my work this week was centered around that, including various version numbering fixes and website updates.
  • SeaMonkey L10n:
    Could ship 13 experimental language packs for SeaMonkey 2.0 Alpha 3, compared to 20 languages available for 1.1.x this is quite nice for an Alpha, I think.
  • Various Discussions:
    HTML5, multi-dictionary UE, (Un)forking of mailnews files, release schedules, MAOW Berlin, buildbot step abstraction, etc.

If you're German or living in Germany and interested in Add-Ons to any Mozilla-based software, you should really come to the Mozilla Add-Ons Workshop in Berlin on March 28. I'll be there talking about the Mozilla build system and about getting extensions to work on SeaMonkey 2 - the first time I'll give Mozilla talks in German language, actually!

By KaiRo, at 20:09 | Tags: L10n, Mozilla, SeaMonkey, Status | no comments | TrackBack: 0

March 3rd, 2009

SeaMonkey 2 Alpha 3 released!

I'm very excited to tell you all that we just have shipped SeaMonkey 2.0 Alpha 3.

This latest milestone ticks off a good number of features we wanted for SeaMonkey 2, the major ones being:
  • Places history, which switches the storage backend from mork to SQLite, makes us able to store a much larger amount of visited pages, and gives us the frecency-driven algorithm for autocomplete when typing in the location bar, searching in both URL and title (yes, that's what's attributed as "awesomebar" elsewhere).
  • New password manager, which also now uses SQLite for storage and increases the amount of code we share with other Mozilla products. It also avoids modal dialogs popping up in the face of users, using notifications bars and form autocomplete instead.
  • Browser toolbars are now fully customizable. This means that users can easily e.g. move the home button to the navigation toolbar, the throbber to the menubar, or the location bar to its own, new toolbar if wanted. Also, extensions can make their toolbarbuttons available for customization, so that the user can place them wherever he wants.
  • Session restore (crash recovery) has been added shortly before we wrapped up this milestone. When SeaMonkey crashes or needs to be restarted, say after installing an add-on, we restore all open browser windows and tabs now. Also, users can select to restore their previous open session on every launch.
There's many more noteworthy changes in this version though, as listed on the SeaMonkey Trunk Tracker.

Help us testing this alpha release, reporting bugs in Bugzilla and crashes through the included crash reporter tool - but keep in mind that this is a testing version that is not considered ready for production use yet, so make sure your profile data is available from a backup in case this version might screw up something.

That said, I hope this release shows off well where SeaMonkey 2 is going and will impress everyone out there who chooses to test it!

By KaiRo, at 22:19 | Tags: Mozilla, release, SeaMonkey, SeaMonkey 2 | 5 comments | TrackBack: 1

March 2nd, 2009

Weekly Status Report, W09/2009

Here's a summary of SeaMonkey/Mozilla-related work I've done in week 09/2009 (February 23 - March 1, 2009):
  • Conferences:
    As mentioned before, I spent most of this week in Geneva at Lift09 which was a really great experience, including one of opening my mind some more for things beyond SeaMonkey and Mozilla and getting ideas and creativity flowing somewhat more again.
  • Release Management:
    SeaMonkey 2 Alpha 3 needed a second build, which I tagged and built (also including a late version fix). Testing seems to be mostly complete now and we should be able to push it to the public within the next day or so.
  • Misc Work:
    Following a pointer we got from a user by email, I updated branch copyright to 2009 so that this will be correct in our 1.1.15 release.
  • SeaMonkey L10n:
    Our 13 experimental language packs for SeaMonkey 2.0 Alpha 3,could be forwarded straight to build 2.
  • German L10n:
    Once again, I could keep German SeaMonkey up-to-date with trunk, adding some venkman fixes found by Robert Brand as well.
  • Various Discussions:
    (Un)forking of mailnews files, print (preview) crashes, HTML5, urlbar autocomplete click behavior, returning builds on tinderbox, release schedules, MAOW Berlin, Lightning, Talos and FF 3.0, video and messages, etc.

Our 3rd alpha for SeaMonkey 2 is just around the corner, debuting the new "places" history storage and smart location bar, password manager improvements, customizable browser toolbars as well as session/crash restore. We have found the second build to be well-fitted for widespread testing, it's now just a matter of organizational matters to release this milestone to the public.

As the Firefox team has announced that they will do a fourth beta of their 3.1 release and the Mozilla 1.9.1 platform, we probably might roughly sync our upcoming first beta with this Mozilla milestone and possibly also target to go final with Thunderbird 3 and SeaMonkey 2 around the same time that Firefox 3.1 hits the market if we stick to the original plans for those releases, but our teams need to discuss that further - it's for example not clear if it's a good idea to hit download servers and news resources at a point in time where a Firefox release overshadows everything else happening and possibly makes infrastructure usage spike. We'll see in the next few weeks how that decision influences our release plans.

For now, enjoy all the goodies of SeaMonkey 2.0 Alpha 3 - we're already working on even more improvements for the beta cycle!

By KaiRo, at 20:23 | Tags: L10n, Mozilla, SeaMonkey, Status | no comments | TrackBack: 0

Feeds: RSS/Atom