Skip to content

Commit fa18d4c

Browse files
committed
ING-1361: Improved version docs and added branching docs.
1 parent 764b111 commit fa18d4c

File tree

2 files changed

+33
-2
lines changed

2 files changed

+33
-2
lines changed

docs/API_STABILITY.md

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,18 @@
1-
# API Stability Levels
1+
# API Stability and Versioning
22

3-
Here are the various levels of API stability for our application's gRPC and REST interfaces.
3+
We use the alpha, beta, ga terminology to describe versions, while using stability levels such
4+
as volatile, uncommitted and committed to describe individual RPCs. Any versions or RPCs which
5+
do not describe their level are assumed to be committed / ga.
6+
7+
Additionally, a correlation exists between the RPC stability and the versions it can exist
8+
within, such that:
9+
10+
- Alpha maps directly to volatile.
11+
- Beta maps directly to uncommitted.
12+
- GA maps directly to committed.
13+
14+
The following is a list of definitions for each stability level within our gRPC and REST
15+
interfaces:
416

517
## Alpha Endpoints
618

docs/BRANCHING_STRATEGY.md

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
# Branching / Commit Strategy
2+
3+
Feature development should take place in feature branches which ideally take the form
4+
of "$TICKET-ID_$short-desc" (for instance "ING-1111_improved-something"). To maintain
5+
consistency, an underscore should be used to delineate the ticket from the short
6+
description, while dashes should replace spaces in the short description.
7+
8+
Commits are expected to always be 'singular and atomic' such that rolling back the
9+
repository to any commit should be buildable and work as expected. It is acceptable
10+
(and encouraged) to break complicated features into multiple commits which add or
11+
modify specific independent functionality (for instance, DCP support was added
12+
through many commits, initially cleaning up the structure of some areas, then later
13+
refactoring connection management, and finally the inclusion of DCP, each of these
14+
being an independently valuable and working commit).
15+
16+
All development of the next minor or major version of CNG will take place in the
17+
master branch, with the previous minor versions gaining their own branch of the form
18+
vMAJOR.MINOR (v1.1 for example) shortly after release. Additionally, each patch
19+
release receives a tag of the form vMAJOR.MINOR.PATCH (v1.1.10 for example).

0 commit comments

Comments
 (0)