... but you forgot to mention gaim, which had a totally meaningless 1.0.0 release (eg, 0.82.1 -> 1.0.0 did not make any significant changes to the code, just the usual bugfix type release). Also, 0.59 to 0.60 made a huge change, namely gtk1 to gtk2 switchover.
Also, I'd like to make a case for date-based version numbers. I agree that ubuntu's "5.04" (year.month) versioning scheme is a bit confusing, but that's only because they dropped the century and are using the confusing decimal). If you use versions like YYYY-MM-DD, then you get a few advantages:
lexical sorting, newest versions always come first (or last, depending how they're sorted, but the important bit is that they're in order)
by using hyphens you avoid decimal point confusion, nobody will question why "-10" comes after "-08" because clearly the 10th day of the month is more recent than the 8th.
sure, the numbers in the date are fairly meaningless when it comes to figuring out if a release is stable or development, but then as you've shown, regular version numbers are fairly meaningless in that department, too.
Although I will concede that a version number like "2005-04-01" is kinda long and ugly for general use. I think what these software projects should do is just use the release date as the version number in technical situations (like in the names of source tarballs for example), but they should use named labels to indicate major versions (sort of like how Ubuntu went from Warty Warthog to Hoary Hedgehog to Breezy Badger, etc), just a name that nontechnical users can use, they are just as arbitrary as version numbers but make more sense (and are more memorable).