Skip to content

Commit 97a6f8a

Browse files
committed
Clarifications to versioning policy.
* Explicit callout of version change behavior. * Explicit callout of Z notices for upcoming breaking changes. * Try to simplify language.
1 parent fa6f394 commit 97a6f8a

File tree

1 file changed

+14
-8
lines changed

1 file changed

+14
-8
lines changed

VERSIONING.rst

Lines changed: 14 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,18 +2,24 @@
22
Versioning Policy
33
*****************
44

5-
We will use a three-part X.Y.Z (Major.Minor.Patch) versioning definition with the following meanings.
5+
We use a three-part X.Y.Z (Major.Minor.Patch) versioning definition as follows:
66

7-
* X (Major) version changes cover changes to the code-base that are expected to break backwards compatibility.
8-
* Y (Minor) version changes cover moderate changes. These include significant (non-breaking) feature additions and might contain changes which break backwards compatability. If there are breaking changes, they will be explicitly stated in the release notes.
9-
* Z (Patch) version changes cover small changes. They will not break backwards compatibility.
7+
* **X (Major)** version changes are significant and expected to break backwards compatibility.
8+
* **Y (Minor)** version changes are moderate changes. These include:
9+
* Significant non-breaking feature additions.
10+
* Potentially breaking changes. Any such changes will be explicitly stated in the release notes.
11+
* Changes to our package's declared dependency versions.
12+
* **Z (Patch)** version changes are small changes. They will not break backwards compatibility.
13+
* Where possible, we will advise of upcoming breaking changes with warnings in a Z release.
1014

1115
What this means for you
1216
=======================
1317

14-
We definitely recommend always running on the most recent version of our code. This is how we recommend doing so.
18+
We recommend running the most recent version. Here are our suggestions for managing updates:
1519

16-
* X changes will likely require dedicated time and work to incorporate into your code-base.
17-
* Y changes are unlikely to require significant (or any) work to incorporate. If you have good unit and integration tests, they can likely be picked up in an automated manner.
18-
* Z changes should not require any changes to your code and can be picked up in an automated manner. (Good unit and integration tests are always recommended.)
20+
* Expect X changes to require effort to incorporate.
21+
* Expect Y changes not to require significant effort to incorporate.
22+
* If you have good unit and integration tests, these changes are generally safe to pick up automatically.
23+
* Expect Z changes not to require changes to your code. Z changes are intended to be picked up automatically.
24+
* Good unit and integration tests are always recommended.
1925

0 commit comments

Comments
 (0)