Skip to content

Commit 9cf61f1

Browse files
committed
improved wording
1 parent 53fa608 commit 9cf61f1

File tree

1 file changed

+17
-4
lines changed

1 file changed

+17
-4
lines changed

CONTRIBUTING.md

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -284,10 +284,23 @@ Introducing new [Parse Server configuration][config] parameters requires the fol
284284

285285
## Versioning
286286

287-
Parse Server follows [semantic versioning](https://semver.org) with syntax `x.y.z` which defines:
288-
- `x` is the *major* version number which means a *breaking release* that may include changes that are not backwards compatible
289-
- `y` is the *minor* version number which means a *feature release* that may include new features, improvements or other changes that are backwards compatible
290-
- `z` is the *patch* version number which means a *patch release* that may include bug fixes that are backwards compatible
287+
> The following versioning system is applied since Parse Server 5.0.0 and does not necessarily apply to previous releases.
288+
289+
Parse Server follows [semantic versioning](https://semver.org) with a flavor of [calendric versioning](https://calver.org). Semantic versioning makes Parse Server easy to upgrade because breaking changes only occur in major releases. Calendric versioning gives an additional sense of how old a Parse Server release is and allows for future Long Term Support concepts, which Parse Server currently does not provide.
290+
291+
Syntax: `[major]`**.**`[feature]`**.**`[fix]`**-**`[pre-release-label]`
292+
293+
- The `major` version increments every year and may include changes that are *not* backwards compatible.
294+
- The `feature` version increments during the year and may include new features or improvements of existing features that are backwards compatible.
295+
- The `fix` version increments during the year and may include bug fixes that are backwards compatible.
296+
- The `pre-release-label` is optional for pre-release versions such as:
297+
- `-alpha` (likely to contain bugs, likely to change in features until release)
298+
- `-beta` (likely to contain bugs, no change in features until release)
299+
- `-rc0` (unlikely to contain bugs, no change in features until release)
300+
301+
Exceptions:
302+
- The major version may increment during the year in the unlikely event that a breaking change is so urgent that it cannot wait for the next yearly release. This should be as rare as the planetary alignment of Jupiter and Saturn.
303+
- Bug fixes of security vulnerabilities are `fix` releases, unless they cause a breaking change, then they are `major` releases.
291304

292305
## Code of Conduct
293306

0 commit comments

Comments
 (0)