14 Jun 2010, 4:14pm
Projects:
by Cliffano Subagio

leave a comment
  • Hudson BuildMonitor v1.5.5

    FIFA World Cup 2010 update: Australia was demolished by Germany 0-4.

    After ten months since the last public approval (v1.0.2) and four review rejections from the Mozilla editors, Hudson BuildMonitor v1.5.5 was finally approved a couple of weeks ago.

    This version contains a major refactoring effort, attempting to separate the generic JavaScript code from the Firefox specific code. The goal was to make it easier for me to create a Chrome extension version of Hudson BuildMonitor, but of course I never had the time to do it and by now there are already two Chrome extensions out there, Hudson Extension by sanitz and Hudson Monitor by Henning Hoefer.

    What I didn’t know back then when I started the refactoring effort was that Mozilla introduced an add-on verification suite about a month after v1.0.2, and that the Mozilla editors started working on reducing global namespace pollution. Those two things were good of course, it’s just that I had to put more sporadic efforts to work on those changes, which then stretched this release even longer.

    Some of those changes are:

    • Everything is now namespaced, and I really mean everything. The editors even picked up un-namespaced external libraries, which means Dean Edward’s Base is now name_edwards_dean.Base .
    • setTimeout usage should be replaced by nsITimer.
    • Login details management should use *drumroll* nsILoginManager.
    • Datejs can’t be used anymore because it extends native Date, I replaced it with Matt Kruse’s Date library.

    Out of the bug fixes included in the 1.5.x releases, I’m particularly happy with:

    • Finding a workaround for HUDSON-2979, a problem that has been a blocker for OS X users. I bought a MacBook Pro about six months ago and was finally able to investigate this error myself.
    • Fixing the mysterious error with French translation files. It used to work in older versions prior to v1.0.2 because the property files were UTF-8 without byte order mark and they contained non-ASCII characters, then at one point it was accidentally encoded as ISO-8859-1 while still having those non-ASCII characters which then broke the add-on. To avoid this problem from happening again in the future, I decided to take the safer option and unicode-escape those non-ASCII characters.

    Working on Hudson BuildMonitor on and off for the past two years (the first release was on 8 June 2008, wow, has it been _that_ long?) has been a good opportunity to revisit JavaScript, a language many developers used to look down at. I agree with Douglas Crockford that JavaScript has been misunderstood, checkout his talk on JavaScript: The Good Parts at Google, and with the emergence of server side JavaScript, I believe this language is going to take off next year.

    And to those who are still using Hudson BuildMonitor, thank you.

    Related Posts:

    leave a commentAAA

    Leave a Reply

    Your email address will not be published. Required fields are marked *

    *name

    *e-mail

    web site

    *name

    *e-mail

    web site

    leave a comment


     

    Recent Posts

    Recent Comments

    • Ronald Widha: bahhaaha…love the monitor shot!
    • Chess Strategizer: This just got bookmarked! “That’s why I always think of Simon Bolivar and remember that...
    • David: Thank you very much for sharing your wonderful tips! That would definitely be a great start for anyone who are...
    • Natasha: The quote “Find the best in everybody. Just keep waiting no matter how long it takes. No one is all...
    • Alfonzo Donkin: Stumbled upon your website via bing the other day and absolutely think its great. Carry on the great...

    Most Commented Posts

    Linkroll