Well, I was hoping to get a release together in time for the nice simple release date of August 1, but it didn't work out that way. It's taken more effort than I expected. Oh well, so much for nice simple dates!
I've wasted too much time contemplating version numbering schemes, for one thing. I've come up with a scheme that I think would be neat for the Linux kernel, but it's serious overkill for my project. Nevertheless, I'm gonna use it anyway. Something's gotta be the guinea pig! I've got a good description written up for it now; it's amazing how many hours this part alone took... (I'm sure it's too complex for my own good, but I wanted to give it a try.)
I still need to review the code to make sure I don't release anything overly brain-damaged to the world. I have a couple known kludges that I'm considering trying to clean up before the release, such as having the help text hardcoded into strings in the executable! There was a good reason for this; I've been extremely wary of the possibility of blocking file I/O, since the server is single-threaded. However, there's nothing to stop me from reading it in during the server initialization code (except lack of Round Tuits). It would be cleaner that way...
And there are the more mundane things, like renaming the system internally, stripping old RCS log messages from the source code (should I keep using $Log$, I wonder?) and applying the QPL license to each module. (Yes, I'm starting with the QPL, at least for now.)
Then there's documentation, of course. The only documentation that I have at the moment is the description of the versioning system, which turned out to be fairly difficult to write up in any sort of comprehensible fashion. (It's hard enough to read now, but the earlier drafts were much worse.) I still need to write at least some basic documentation. (A code overview would be nice too.)
And I haven't even gotten as far as worrying about things like CVS, a web site, mailing lists, or any other auxiliary things. I'm just trying to come up with the initial tarball! *sigh*
I suppose this was inevitable; the project is nearly nine years old, and I never really expected it to be easy to put together a clean release archive. But I wish it were easy, all the same!