Version Numbers
From K-3D
K-3D version numbers are composed of four numbers, separated by dots ... some recent (real-world) examples:
Version | Major Version | Minor Version | Release Version | Build Version |
---|---|---|---|---|
0.2.5.4 | 0 | 2 | 5 | 4 |
0.5.0.16 | 0 | 5 | 0 | 16 |
0.6.3.0 | 0 | 6 | 3 | 0 |
0.6.3.1 | 0 | 6 | 3 | 1 |
The meanings of the individual numbers are, from left-to-right:
- Major Version - used to distinguish significant milestones and/or sweeping architectural changes to the software. Version "1" of K-3D will be released once the program is "complete", i.e. incorporates all of the major features expected of serious 3D software. A version "2" would only be released if we went on to rewrite significant portions of the code. Note how this differs from proprietary software, where major version numbers are usually meaningless marketing ploys.
- Minor Version - used to mark important new features, and to distinguish between stable and development releases. Like many FOSS projects (including the Linux kernel) K-3D uses even minor numbers for stable releases and odd minor numbers for development releases - K-3D 0.6 is a stable branch, K-3D 0.7 is the development branch. K-3D 0.8 will be the next stable release as of this writing.
- Release Version - releases include new features (e.g. new plugins) and/or bug-fixes.
- Build Version - new build numbers address bugs releated to specific platforms, problems with the build process itself, or distribution-related problems. As an example, if a Win32-specific issue were discovered in K-3D 0.6.1.0, the fix would be released in version 0.6.1.1. Note that if you already have a working build, there is no reason to upgrade to a higher build number, since it is guaranteed not to have any new features or runtime bug fixes.
Note from the examples that version numbers are not limited to single digits, so the (hypothetical) release following version 0.6.9.0 would be version 0.6.10.0.