views:

201

answers:

5

I generally agree that major versions of a program should be 1.0, 2.0, ... and significant updates should be: 1.1, 1.2, ..., and that bug fixes should be at the third level: 1.0.1, 1.0.2, ... 1.0.156 (if you've been plagued by that many bug-fix releases between versions).


But now I want to release my first Beta that will be one of a series of Betas leading towards the release of version 1.0.

Specifically, it doesn't make sense to me, to number my Beta releases greater than the number I am developing to, e.g. 1.0.1 up to 1.0.15 (if I have 15 beta releases) and then follow it with 1.0.

But using numbers less than 1.0 seems awkward, e.g. 0.9.1 ... 0.9.15 and will cause confusion if I start using 1.9.1 ... 1.9.15 as the Betas for version 2.0.

Related:

How to do version numbers?


Just for information, after your help and great links with more info, this is what I decided on.

I've been going 0.7, 0.8, 0.9, 0.91 ... up to 0.98 for my alpha versions.

I know I can do 1.0 beta 1, which is the "standard" way. But taking everything into account, I'm going to go with: 0.99 beta 1, 0.99 beta 2 ... before I get to my 1.0 release.

If I do a pre-release of my 2.0 version, I'll probably then follow the pattern and call it 1.99 beta 1, 1.99 beta 2, etc.

Hopefully this question and the answers will help you decide on your scheme.

+2  A: 

I would consider beta releases to be minor revisions to the "zero'th" version of the application so beta 1 would be 0.1, beta 2 would be 0.2. and so on.

Andrew Hare
What if you are releasing the "beta" of the next version (AKA, you're developing version 2.0 and you have already released version 1.0). This wouldn't work.
JasCav
A: 

1.2.3 - Where "1" is major version releases, not beta beta would be pre 1.0, the "2" would be major releases including new features, the "3" is minor releases. If you like you can append another after that that can be like your version control's commit id or something... but i shy away from that.

Joseph Silvashy
So start with 0.1.0
Joseph Silvashy
My alpha is already up to 0.98.9. I started running out of numbers. I guess I could use 0.99.xxx, but then I get stuck if I want to release a Beta for versions 1.1 or 1.2 or 2.0. I hope, by this question, someone might have an interesting idea on this.
lkessler
+2  A: 

Version numbers are totally up to you. You could call them after animals or city names or use numbers.

Many projects wonder what to do with beta numbers for next gen software (2.0, 3.0 etc)

And whatever you do, just remember that you can do whatever you want to. Since version numbers are a marketing thing. It's just for users to see where in the process this version is.

So calling it 2.0 Beta 1, Beta 2 etc would work fine and the most important thing. The users would understand.

Ólafur Waage
+7  A: 

I think you should seperate out your version numbering from the status of the release.

Betas should always have "beta" after the version. Users should not have to reverse engineer your numbering scheme to determine the stability of the release.

So leading up to version 1.0 you should have 1.0 beta 1, 1.0 beta 2 etc. That gives users a clearer idea of what major release a beta is leading towards and avoids confusion with any maintainance releases you might put out in the meantime.

The important thing is that you need to distiguish between a bugfix release (which should increase stability) and a beta (which may decrease stability).

ctford
+1 Totally agree. Simple and yet so powerful that any user understand exact what is going on.
Stefan
That does seem "best" to me as well, and I'll give you the correct answer for it. My only problem doing that is because Delphi uses the 1.N.N.N scheme of numbering and will not allow "1.0 beta N". So I still have to dream up something.
lkessler
+3  A: 

One very practical solution is naming your testing iterations by release numbers (e.g. My Awesome App r1392).

Apple, Microsoft and many others do this for their internal revisions and only issue "real" version numbers for version pushed to their customers.

Gabriel Hurley