Thunderbird/Students/StatusUpdates/2010-02-19

This week’s Random Notes

Status Updates

Zach Church

I've done most of what was recommended in the feedback (https://bugzilla.mozilla.org/show_bug.cgi?id=504122) for my first patch. Right now, I'm just working on adding some more Mozmill tests. I hope to submit the patch again (hopefully) by the end of next week.

Tim Miller

I've been plugging away on my getting my build to compile again. I spent several hours sorting through numerous compiler errors, which were a bit difficult to sort out.

I did learn something useful though. You can use 'make -s' to hide all the commands that make is processing and only show you the results. That means no more pages full of entering directories, processing commands, and leaving directories. You just get the files it compiles and a few other messages. It is MUCH easier to spot and read errors this way.

Also, for anyone who doesn't know, you can run 'make' in your object directory where you have made changes and it will compile files in that directory recursively. This is about the fastest way to rebuild after making changes.

I was getting errors about my new interface causing the class it was included in to be an abstract class because the function I defined was abstract. Meaning somewhere in the compile process it was not recognizing that I had written a definition for that function. Not surprisingly, I was also getting an error saying the concrete definition of my function had no declaration and was not a member of the class I was defining it in.

After searching through ~5 different files for several hours, checking includes, checking makefiles, looking at declarations with a microscope, searching http://mxr.mozilla.org/comm-central/ for any references to similar functions that would give me a clue and studying documention on https://developer.mozilla.org/ to try to understand what was going wrong with the compile process, I finally decided to revert all my changes, nuke the object directory, and do a clean build.

It finally built, but then would not run, saying it was already running when there were clearly no other processes of it running. >.< Probably need a restart.

I have decided to approach my problem slightly differently this time. I realized I could declare my function in another interface file that is already working correctly. It should avoid this most recent problem I've had, although It may be less obvious how to use the function.

Marcel Guzman
Kefu Zhao
Lindauson Hazell

I deliver my senior science seminar presentation next week. I should be able to continue working on bugs next week.

Evan Stratford
Wei Xian Woo

So, I finally submitted my first patch for bug 408338. This week was spent working through and revising the Mozmill test cases, and doing minor touch ups here and there.

What's next? On to patch 2 while I wait for feedback on patch 1. For patch 2, I plan to make the saved state richer (i.e. keeping track of more things, such as those requested in the bug).

Who’s writing the blog post this week?

Lindauson Hazell