While I'm here, handle the fact that bzr-gtk used formats of the form: version_info = (0, 97, 0, 'dev', 1) Which would break formatting because we didn't allow >0 with 'dev' or 'final'. We still don't allow final. but now we print 0.97.0.dev.1 rather than failing