Chris Petrill makes a good point about some of the more bizarre numbering schemes used by open source projects (Firefox, anyone?)
Please, if you release software to the public and consider it usable and reasonably stable, do not number it some absurd 0.3.1, or whatever. If you release it to the public, it's a 1.0 release to start with. From Charles Miller:
Too many Open Source projects treat Version 1.0 as some kind of Holy Grail that can only be reached when the project is perfect. I find that highly annoying, because it makes it really, really difficult to tell a sketchy alpha from production code that is just still in pre-1.0 because the author wants it to do everything.
Nothing is ever "feature complete." Nothing is ever "bug free." Don't pretend you'll ever finish the project, and certainly not without people actually using it, if that's your goal. If it's not your goal, don't release it.
I've learned a lot about this through doing BottomFeeder. The temptation to muck with the version numbers for reasons that have nothing to do with the code are just amazing...