Wednesday, April 11, 2007

I need YOU to help Install/Update!

When it comes to Install/Update, I have seen the future and the future is rosy. At least that's what Pascal 'LeNettoyeur' led me to believe in the shuttle from Santa Clara to San Francisco airport after this year's Eclispecon. I am still not convinced that 'features suck' as Ed Merks likes to yell when protected by the Eclipsecon crowd (even he expressed concern that they may end up with the same 'sucky' thing with a different name :-). Nevertheless, I am sure that our Equinox friends will come up with something new and shiny and that it will catch the world by storm almost as much as OSGi did.

But let's take our eyes off the future and focus on the here and now. While we are dreaming (or should I say 'provisioning') new Update dreams, the old Update still needs to work and tie us over, or the new Update will be crushed by the unrealistic expectations before the birth pangs subside. There is Europa to ship, new features to post, patches to publish for all that brilliant software that was bug-free when you unleashed it on the unsuspecting public. Unfortunately, Install/Update is down to one active committer (yours truly), and he is a manager with a full plate. That's as if we are down to 0.1 committer with a short attention span :-).

As I am typing this, Alex Blewitt ran away with the prize by blogging about this first. I am not going to out-Alex him but here is the plan for a few good men (or women - we are equal opportunity here :-):

  1. Take a look at the Update inbox (using this query will help)
  2. Pick a bug that you would really like to see fixed and that has enough steps to be reproducible (but call it first so that others don't investigate the same problem)
  3. Pick a fairly recent build (M6+) and set it up for Update development using these instructions (read under 'Feature-based self-hosting')
  4. Try to pinpoint the problem; if you feel confident, try to fix it
  5. If it seems to work, post a patch to the bug report, but be diligent - we want to fix existing problems, not create the new ones, right?

What's in it for me, you ask? You can make your code a proud part of Eclipse Platform (names and emails of contributors will be prominently displayed in file copyright notices). You can get a high from fixing a hard problem. At the end of 3.3, we will create an 'Update Hall of Fame" with pictures and short bios of top Update contributors. Finally, you will get to help yourselves by fixing problems that affect your own projects and components (he is looking at you, Mylar :-).

Last but not least, you will learn the whole problem domain of installing and updating bundles. When the time comes to switch to the new and shiny Equinox Provisioning, you will know what works, what doesn't, what you like and what is, to use Ed's immortal words, sucky.