Test Day X 2

Well today I got to run Full Functional Tests on Firefox 3 beta 1 and then this evening as I procrastinated from dealing with my Hamiltonian circuit assignment, I ran tests on Miro’s 1.0rc release.

The two testing systems are very different even though they both use Litmus-based testing. Miro’s tests are fewer, some are not well written and in some ways I find them to be very superficial. The Firefox tests have been around a lot longer so I’m sure that has allowed for quite a bit of fine tuning.

I’m not giving up on Miro but so far it’s been challenging to get involved with that project to the degree with which I have been able to immerse myself in Mozilla projects. The lab the other day threw me into Thunderbird in a quick ‘n dirty way and that was great – the documentation is all there. With Miro – well…when I went to look for docs on how to build with Windows…this and this. The gist of it is: “We can’t really tell you how to build on windows because it’s hard”.

Well, now that I’m working on the Mac Book and I have VMWare Fusion with an Ubuntu vm, perhaps I can try building it in a Unix/Linux environment? There’s a doc for Mac OS X and for Linux. We’ll soon see.

Now, back to Mozilla stuff. My 0.2. release is due soon, I have already done a non-debug build of FF with the –enable-debugger-info-modules in the mozconfig and I’ve made the buildsymbols for it. Now I just have to index the pdb files and get the symbols and the source up on my server. Immediately after that is done (in the next day or two) I will look into a) how to make an installer and b) how to work with the CVStoHTTP script that comes with the srctools.

When I have an installer up, I’ll be putting out the contrib call for anyone who can to grab the installer and try to hook it up with my symbol and source servers.

Stay tuned.

Thunderbird Bug Fixing Lab – an up close and personal lesson on patch review

Filing a bug

First I had to create a bug over on landfill – explaining the issue

The gist is that anything that has characters@…Someothercharacters turns into a mailto: link in Thunderbird and this was annoying Dave so the whole class jumped to fix it.

Fixing the problem

Dowloaded and built a copy of Thunderbird’s trunk on my MacBook and then navigated over to mozTXTToHTMLConv.cpp in order to alter some code which checks for a ‘.’ after the @ symbol but does not also check that there is not a “..” in that string.

This is a one-line fix but I was having some trouble getting my code changes to show up. Funny story, this happened to me in class too and both times it was because I forgot a ) in the code.

Creating a patch

This is easily done by calling cvs diff -u8p . > mailtoPatch.txt in my mozilla directory.

Requesting Review and the Results

We were going down the line as reviewers – I asked Mmullin and he had already done a review so he handed me off to Armenzg who passed my patch with the comments to remove my printf statement and to make the two if statements into one evaluation. It turns out that he should not have passed my patch, instead he should have made the comments and let me fix it before approving the patch.

Even though Armenzg passed my first patch, I did in fact re-do the patch minus printf and simplifying the if statement. I am waiting for a proper approval as I write this but I am sure it will be approved.

After it was all over, I was then the reviewer for Peter‘s patch and I was impressed with his one line change and passed it immediately.

The whole process was a great learning curve. Now that I’ve seen how the patch/review process works I imagine that I could fix a bug one of these days.

New MacBook with no Boot Camp Utility?

Some of the newest Santa Rosa chipset MacBooks have been deployed without Boot Camp Assistant in the Utilities folder. I’m sure this will be fixed soon. Here’s the quick fix if anyone else needs it:

Put the Install Disc 1 in, then in Finder, to to Go -> Go To Folder… and type:

/Volumes/Mac OS X Install Disc 1/System/Installation/Packages

in the dialogue box. There you should see BootCamp.pkg. Running that with all the defaults puts the Boot Camp Assistant in /Applications/Utilities/ (source)

So glad I wasn’t going crazy…spent a lot of time poking around my new MacBook muttering “but it’s supposed to have boot camp!”.

The to-do list goes into high gear now as I have a couple of programs to write for BTP500, some database stuff due for BTS530, and of course all the DPS909 labs and project updates.

All this and setting up the new mac with a windows vm so that I can continue to work on the source server with Visual Studio.