Wednesday, July 1, 2009

Problem from Hell (part 1)

For days I'd been promising an important client that I would commit some Flex code I've been working on. Unfortunately, I'd had little time to work on it because another client had an urgent issue I kept getting pulled back into.

Finally, I resolve to wrap it up, hell or high water. I'm working well into the night and getting closer, which is good, because I'm getting tired...and then, well...let's just say that I wasn't expecting hell AND high water. Without any obvious trigger, suddenly I got 66 compile errors compiling the TestHohoSpecial.mxml application within the project (names changed). And not a single one made a lick of sense. A sampling of these errors:

1067: Implicit coercion of a value of type com.hoho.cairngorm.view.containers:HoHoCanvas to an unrelated type Object.
Hoho/src/com/hoho/tests/unit/cairngorm/view/containers TestHohoHelper.mxml

Invalid Embed directive in stylesheet - can't resolve source 'Embed(source = "/com/hoho/assets/hoho.png")'.
Hoho/src/com/hoho/assets/css

The first error made no sense because HoHoCanvas, which is a Canvas subclass, compiled without errors. The line the compiler barfed at was basically this:

<containers:HoHoCanvas/>

The embedding errors also made no sense, because the same style sheet was being used by other applications in the project with no errors.

Because TestHohoSpecial wasn't a critical application, I checked it in and asked the client to try to build it. My computer's been a little funky, and I thought I might need to reinstall. He gave it a try, and had the same experience.

The compile errors were obviously wrong, but there was something about TestHohoSpecial that was triggering them. I'd based it on an application called TestHoho in the project that compiled fine, so I set about to methodically remove any differences between the two until I found the trigger. I removed them all, and still got the errors. Weird, okay, revert TestHohoSpecial and start over...

Okay, except that now TestHohoSpecial built without any errors. However, TestHoho - which is critical, and which I hadn't touched - now fails with the exact same errors.

I feel like a carpenter whose hammer just turned into rubber in midswing. This is completely obnoxious and unacceptable. It's impossible to schedule my time when the tools just break like this. Granted, I'm a little cranky now because I was up to 4AM beating my head against a wall...a wall which just blinked out of existence and reappeared elsewhere.

Ugh. Silverlight is looking better all the time.

No comments:

Post a Comment