WORK IN PROGRESS
API Sub-projects are used to develop and support releasing APIs.
- One API Sub-project ideally contains one API or a small set of closely related APIs.
- A release includes all the APIs of the API Sub-project.
- Hence a release can only be created when all APIs in the API Sub-project have at least an initial public-release API version.
API Sub-project maturity status
API Sub-projects may have one of the follow maturity status:
- Sandbox
- Incubated
An API Sub-project needs to minimally respect the following requirements to obtain a maturity status:
- It participates in at least 1 release cycle
- It is managed through regular scheduled meetings with MoMs being provided.
- It has adopted LF-tools (Zoom, wiki, ...) and uses them according to the guidelines.
The maturity status is determined by the TSC base on these and the below requirements.
Sandbox API Sub-project
A Sandbox API Sub-project can release only initial public-release API versions (0.x.y).
Its released API versions will be listed as part of a meta-release if the Release Process was applied to all of its contained APIs.
Incubated API Sub-project
Incubation is the verification and approval of the Incubated status of an API Sub-project. Incubation can happen as part of a release cycle.
To get the Incubated status the API Sub-project needs to meet the following requirements:
- The API Sub-project has at least one API released with an initial public-release version (0.x.y)
- The Sandbox API Sub-project has stated the goal to become incubated in the beginning of the release cycle (on relevant API release tracker pages)
- The Incubated status is approved by the TSC
An Incubated API Sub-project can manage and evolve in parallel APIs with stable versions (1.x.y) and initial versions (0.x.y).
Incubated API Sub-projects have to follow the release cycle for all included APIs.