Difference between revisions of "Version Number"

From Custom Mario Kart
Jump to navigation Jump to search
(do POCs apply for CTs?)
Line 1: Line 1:
This article should help to find a correct version number for a software product. A custom track is a software product and should follow the rules, so that all people know what the author mean. The goal is to avoid the RC mixture used by the ct authors.
+
==Introduction==
 +
This article should help to find a correct version number for a software product. A [[Custom Track]] is a software product and should follow the rules, so that all people know what the author means. The goal is to avoid the RC mixture used by [[Custom Track|CT]] authors.
  
If an end user gets for example a release candidate (RC), he thinks he gets a nearly 100% working track and he doesn't expect a buggy alpha with known freezes.
+
==Basic Versioning==
 +
If software (and also tracks) is developed, it goes through several stages and many builds (compiled/generated versions). Sometimes the author wants to publish some of these builds, so the author should find a good version name.
  
 +
The stages are not clearly defined and the following are only suggestions:
 +
* A '''Preview''' is a very early stage of the software and not usable.
 +
* An '''Alpha''' version is principal complete with known major bugs.
 +
* A '''Beta''' version is nearly ready with known minor bugs.
 +
* A '''Release Candidate''' (RC) has no known bugs and is published for final tests. Typically used for programs.
 +
* A '''Release''' is bug free — or should be bug free.
  
__TOC__
+
===Preview===
 
 
 
 
== Basic Versioning ==
 
 
 
If software (and also tracks) is developed it goes through several stages and many builds (compiled/generated versions). Sometimes the author want to publish some of these builds and to find a good version naming.
 
 
 
The stages are not clearly defined and the following is only a suggestion.
 
A '''preview''' is a very early stage of the software and not usable.
 
An '''alpha''' version is principal complete with known major bugs.
 
A '''beta''' version is nearly ready with known minor bugs.
 
A '''release candidate''' has no known bugs and is published for final tests.
 
A '''release''' is bug free — or should be bug free.
 
 
 
=== Preview ===
 
 
 
 
A preview (pre release) is a very early and incomplete copy of the software. It should give some impressions.
 
A preview (pre release) is a very early and incomplete copy of the software. It should give some impressions.
  
Line 27: Line 20:
 
* v3.pre5
 
* v3.pre5
  
=== Alpha ===
+
===Alpha===
 
+
An alpha version has (nearly) all thinks implemented and is much closer to a product than a Preview, but it has some known major bugs or some missing parts of the software.
An alpha version has (nearly) all thinks implemented and is much closer to a product than a ''preview''. But it have some known major bugs or some parts of the software are missed.
 
  
 
;Examples for naming:
 
;Examples for naming:
Line 36: Line 28:
 
* v3.alpha-5
 
* v3.alpha-5
  
=== Beta ===
+
===Beta===
 
+
A beta version is nearly ready, has some known minor bugs, and works generally as expected. The author gives it away for tests to find more bugs.
A beta version is nearly ready, has some known minor bugs and works generally as expected. The author(s) give it away for tests to find more bugs.
 
  
 
;Examples for naming:
 
;Examples for naming:
Line 45: Line 36:
 
* v3.beta-5
 
* v3.beta-5
  
=== Release Candidate ===
+
===Release Candidate===
 
+
A release candidate (RC) is a ''candidate for the release''. The author means that it is bug-free (if not, the author must declare the known minor bugs) and gives it away for final tests.
A release candidate (RC) is a ''candidate for the release''. The author means, it is ready and bug free (if not, he must declare the known minor bugs) and give it away for final tests.
 
  
 
RC1 means ''first release candidate'' and RC2 ''second release candidate''. Numbers like RC0.9 and RC1.4 are nonsense. If the last RC is stable, it becomes a ''release'' without update and for example ''v1''.
 
RC1 means ''first release candidate'' and RC2 ''second release candidate''. Numbers like RC0.9 and RC1.4 are nonsense. If the last RC is stable, it becomes a ''release'' without update and for example ''v1''.
Line 56: Line 46:
 
* v3.rc2
 
* v3.rc2
  
=== Release ===
+
===Release===
 
+
If the release candidate is stable and well-tested, it is renamed to "v*". "*" may be nearly anything.
If the release candidate is stable and well tested, you rename it to "v*". "*" may be nearly anything.
 
  
 
;Examples for naming:
 
;Examples for naming:
Line 66: Line 55:
 
* v1.12b
 
* v1.12b
 
* v00001.02.0003
 
* v00001.02.0003
The preceding ''v'' is often omitted.
+
''The preceding '''v''' is often omitted for final releases, where the author has no initial intention of updating the software.''
 +
 
 +
===Proof Of Concept===
 +
A Proof Of Concept (POC) is a software version to test a concept of anything, like the [http://www.youtube.com/watch?v=z4zaiKSKUqo »Train for Kalimari POC«]. The goal of a POC track is not to have a running track, but to find out, if a technical detail will work.
 +
 
 +
;Examples for naming:
 +
* POC-1
 +
* poc2
  
You can also combine version numbers with preview, alpha, beta or release candidate. You need the if you plan e.g. e beta for version 2. Separate the suffix from the main version number by a dot.
+
==More Specific Version Numbers==
 +
Version numbers can be combined with preview, alpha, beta or release candidate (for example, a beta for version 2). Separate the suffix from the main version number by a period.
  
 
;Examples for naming:
 
;Examples for naming:
Line 75: Line 72:
 
* v2.b3 (b for beta)
 
* v2.b3 (b for beta)
 
* v5.RC3
 
* v5.RC3
 
== Alternative Versioning ==
 
=== Proof Of Concept ===
 
 
A ''Proof Of Concept'' (short ''POC'') is a software version to test a concept of anything, like the [http://www.youtube.com/watch?v=z4zaiKSKUqo »Train for Kalimari POC«]. The goal of a POC track is not to have a running track, but to find out, if a technical detail will work.
 
 
;Examples for naming:
 
* POC-1
 
* poc2
 
 
  
 
[[Category:General Information]]
 
[[Category:General Information]]

Revision as of 07:01, 17 April 2013

Introduction

This article should help to find a correct version number for a software product. A Custom Track is a software product and should follow the rules, so that all people know what the author means. The goal is to avoid the RC mixture used by CT authors.

Basic Versioning

If software (and also tracks) is developed, it goes through several stages and many builds (compiled/generated versions). Sometimes the author wants to publish some of these builds, so the author should find a good version name.

The stages are not clearly defined and the following are only suggestions:

  • A Preview is a very early stage of the software and not usable.
  • An Alpha version is principal complete with known major bugs.
  • A Beta version is nearly ready with known minor bugs.
  • A Release Candidate (RC) has no known bugs and is published for final tests. Typically used for programs.
  • A Release is bug free — or should be bug free.

Preview

A preview (pre release) is a very early and incomplete copy of the software. It should give some impressions.

Examples for naming
  • pre-3
  • preview4
  • v3.pre5

Alpha

An alpha version has (nearly) all thinks implemented and is much closer to a product than a Preview, but it has some known major bugs or some missing parts of the software.

Examples for naming
  • alpha
  • a4
  • v3.alpha-5

Beta

A beta version is nearly ready, has some known minor bugs, and works generally as expected. The author gives it away for tests to find more bugs.

Examples for naming
  • beta
  • b4
  • v3.beta-5

Release Candidate

A release candidate (RC) is a candidate for the release. The author means that it is bug-free (if not, the author must declare the known minor bugs) and gives it away for final tests.

RC1 means first release candidate and RC2 second release candidate. Numbers like RC0.9 and RC1.4 are nonsense. If the last RC is stable, it becomes a release without update and for example v1.

Examples for naming
  • RC1
  • rc-2
  • v3.rc2

Release

If the release candidate is stable and well-tested, it is renamed to "v*". "*" may be nearly anything.

Examples for naming
  • v1
  • v1.2
  • v1a
  • v1.12b
  • v00001.02.0003

The preceding v is often omitted for final releases, where the author has no initial intention of updating the software.

Proof Of Concept

A Proof Of Concept (POC) is a software version to test a concept of anything, like the »Train for Kalimari POC«. The goal of a POC track is not to have a running track, but to find out, if a technical detail will work.

Examples for naming
  • POC-1
  • poc2

More Specific Version Numbers

Version numbers can be combined with preview, alpha, beta or release candidate (for example, a beta for version 2). Separate the suffix from the main version number by a period.

Examples for naming
  • v3.pre-1
  • v12.alpha
  • v2.b3 (b for beta)
  • v5.RC3