Clear questions and runnable code
get the best and fastest answer
The most common version number for a brand new module is 0.0.1. This might not mean what you want it to mean to some people. The problem is, a major number of '0' sometimes means 'pre-release' and sometimes just means '1st major version' with no value attached to the alpha/beta/release quality.
So, unless you're intentionally denoting that your module is 'pre-release', it might be best to start off at 1.0.0.
Here's an example: You're in the 1st major release, 5th minor release and 13th patch release. It's not pre-release. It's production quality.
1.5.13 seems to really say exactly that.
0.5.13 might be saying exactly that, or it might be saying all that PLUS this module is not considered release quality.
If your module is NOT release ready, I have no problem with a major release number of 0. I also have no problem with a major release number of 1 or 23 or whatever. You are not limited to the version number as the location of your statement about the release status of your module.
I only think it's unclear to label a release quality module with a major version number of 0.
This runs right into another topic: When do you consider your module production quality? I'm not going to take a stab at that right now. I just wanted to urge folks who have production quality modules to use a major version number greater than 0.
Update: Yet again I have demonstrated what a lousy writer I am.
I am saying it would be best if people started at 0 and jumped to 1 when they're ready to release. However, since a lot of folks don't do that, they should just start at 1.