Yes, I reworked annotations again
The changes are not published tonight, because it's an embarrassment that I've been running this code for the past 18 months sans documentation, but I finally got sick of my syndication formats just blatting forth a message of unformatted text and rewrote a lot of rss.c to pass the message bodies, almost unmodified (if I put a character with bit 0x80 in, all the feed verifiers do into a shrieking hissyfit about me having The! Nerve! to taint their input with a non-ascii character, so I still have to replace all those characters with a ?).
I have discovered that with xml formats, you can spend a lot of time pounding your head against the wall trying to figure out what the documentation means, because, unlike documentation which is written by people who know how to write documentation, people who write xml formats assume that their readers have nothing better to do with their time than read approximately 10,000 pages of prerequisite documents before reading the pitiful excuse for documentation that the format provides. The rss2 format is no exception; I only figured out how to pass unmodified content by the simple expedient of grabbing a typepad rss feed and using that document (and one of the RSS validators out there) as a reference implementation. I may not understand some of the esoterica of xml any better than I used to, but now my syndication code generates feeds that are technically readable.
This is probably G-d's way of telling me that I should not stay home sick tomorrow; when I'm sick, I can only vaguely get enough energy to play Civilization II, but when I start getting healthy I start writing code and crawling down to the basement to start whittling away at the big backlog of projects I want to do before I do the house.