Semantic versioning
ALPHA CHANGES (e.g. 0.1.0 -> 0.1.1)
This program will probably have everything about it changed.
BETA CHANGES (e.g. 0.1.0 -> 0.2.0)
The program is in BETA and is in a state where it is ready for dogfooding.
The chances are, if you ask for support on a beta program I will give a lot of it, and freely. In return, you let me know what issues you found.
0.1.5 -> 0.2.0 -- more serious change. 0.3.0 -> 0.3.1 -- less serious change.
BETA -> PRODUCTION-WORTHY
0.5.0 -> 1.0.0 --- no real change in functionality, this is about confidence levels in the code.
MAJOR CHANGE (e.g. 1.0.0 -> 2.0.0)
- Breaking change(s) to publicly documented API in order to refactor.
- Breaking change(s) to publicly documented API in order to accomodate a new feature.
- Fixing a very serious bug that violates built up expectations about how the software should operate.
- All changes should be rare.
MINOR CHANGE (1.1.5 -> 1.2.0)
- Fixing a serious bug that may or may not break existing code.
- Non-breaking change to publicly documented API.
- Breaking change to publicly documented beta API.
PATCH CHANGE (1.1.1 -> 1.1.2)
- Fixing an edge case bug.
- No change to publicly documented API.
- Non breaking change to public beta API.