Last night, instead of my traditional custom of sleep, I instead participated in a late-night librsvg code jammin' session with cinamod and uraeus. Basically it would go like this, Uraeus would complain about a bug, and dom and myself would scramble to fix it quickly. Until this point I had never engaged in any coding activity so fast and frantic (I have a habit of completing my coding assessments early). It was great, with all of us working we not only routed many bugs that had haunted the codebase since its inception we also left the bug's women raped and their children cut and mutilated in the gutter. There shall be no mercy to segfaults and misrenderings.
Between supporting the standard and supporting cairo we have our work cut out for us, the goal is to have it working with cairo and rendering most things by the time gnome-2.8 comes out. It is seeming more and more evident that Cairo is not an overly appropriate api for a svg backend, we need access to those pixels before they hit the screen to do some of the mandated effects. But it seems like the powers that be want cairo, and cairo is what they shall get, amongst other backends.
The best thing about cairo however is doing away with libart. Libart is poorly documented and to figure out what a function does, one has to read the actual source code, and to me it looks like it was written by a monkey with a PHD in low level programming. Also libart seems to be something that one must work around, for example to make paths do their first section again so that the corners would render right. I was told that whenever one commits a hack to CVS, god kills a kitten, I hope was just a sickly little runt that was going to die anyway.
Although my contributions to gnome-2.6 were mainly low-key bugfixes, I am still eagerly awaiting its release as the first major release of anything that I contributed to. It will be great to see.