Versioning and changes
New release proces
A new release proces will be announced soon.
Previous Beta phase (0.x.x)
-
Our previous API version 0.x.x was in the Beta phase.
-
Beta version APIs were continuously in development, endpoints changed and new endpoints were roled out.
-
Breaking changes in Beta endpoints.
-
Changes were communicated in the swagger-docs and #ERP-support slack channel.
-
During the Beta phase we supported 2 versions at the same time: the most recent version in development and the previous stable Beta version.
-
Although the Beta phase supported live connections with Floriday, we recommended and supported a small scale role out to users.
Mature phase (1.x.x)
-
Our current API version 1.x.x is in the mature phase.
-
Mature endpoints can change (additions) and new endpoints (in development, beta and mature) can be roled out.
-
No breaking changes in mature endpoints.
-
Changes will be communicated in the swagger-docs and #ERP-support slack channel.
-
We will support a maximum of 2 versions at the same time: Mature version with mature endpoints and a version/release candidate with in development / beta endpoints in addition to mature endpoints.
-
The mature phase supports live connections with Floriday, intended for a roll-out to all users.
Breaking changes
Release management of breaking changes:
- We guarantee no breaking changes will take place in mature endpoints.
- If breaking changes are necessary, they will be included in a new version/release candidate.
- In a release candidate breaking changes are always published in conjunction with its current to be depricated stable endpoint(s).
- Within the community on our slack channel #erp-support a reasonable implementation period will be discussed.
From pre-publication to Release candidate (Beta)
To enable developers to start pre-development and review of the changes of the Release candidate, we will do a pre-publication of the changed / added / depricated endpoints. which are under construction. Such an endpoint is marked as 'NOT IMPLEMENTED'. If all endpoints are stable the complete version is changed from 'in development' to 'Beta'.
After implementation by early users and processing feedback, the 'Beta' endpoints will be promoted to mature. No specific markup is used for mature endpoints.
Overview of Mature vs. Beta phase
Topic | Beta phase | Mature phase |
---|---|---|
Period | until april 3th 2020 | after april 3th 2020 |
Versioning | 0.1.x => 0.2.x e.g. Mayor breaking changes | 1.x.x => 2.x.x e.g. Mayor breaking changes |
Revisioning (mayor changes) | 0.1.x => 0.2.x e.g. New modules, mayor functions | x.1.x => x.2.x e.g. New modules, mayor functions |
Revisioning (minor changes) | 0.x.1 => 0.x.2 e.g. New fields in endpoints, minor functions | x.x.1 => x.x.2 e.g. New fields in endpoints, minor functions |
Breaking changes within current version | Yes in beta endpoints. Communication in advance. | Not in mature endpoints. If needed, new endpoint next to be depricated endpoint. Communication in advance. |
Communication support staging | ERP-support | ERP-support |
Communication support live | Dedicated slack channel | ERP-support-live (new) Initially dedicated slack channel |
Communication changes | Swagger docs & ERP-support | Swagger docs & ERP-support |
Max versions or big revisions | 2 1 Beta version: Beta endpoints 1 Release candidate: Beta endpoints + endpoints in development | 2 1 Mature version: mature endpoints 1 Release candidate: mature endpoints + endpoints in development / Beta |
Role out users | Small role out to users with Beta endpoints | Full role out to users with mature endpoints |
Promotion of endpoints | After endpoints in development are stable => Beta endpoints | After endpoints in development are stable and mature => Mature endpoints |
Updated almost 3 years ago