-
Notifications
You must be signed in to change notification settings - Fork 18
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Introduce versioning and release scheme #44
Comments
We're following semver 2.0.0, and there is a script to tag a new release (e.g. Public interfaceThe public interface considered for breaking changes is:
RationaleThe reasoning behind this is to make it easy for platform maintainers to check whether their upgrade needs additional work. This includes
The public interface is also rather large (including the database schema, for example), as this makes it easier to build and maintain third-party integrations, which we want to have lots of. There is no problem with huge version numbers. Let's get bumping! Examples for non-breaking changes
Examples for breaking changes
Bug fixes and featuresA bug fix that does not change the public interface is usually released as a patch release (e.g. 0.3.2 -> 0.3.3). A new feature that does not cause a breaking change can be released in a minor version (e.g. 1.3.x -> 1.4.0), if it adds to the public interface. If it does not add to it but only improves something internally (such as a change to the frontend), a patch release is acceptable. During initial development (0.x versions), a patch release is used instead of a minor release in any case that is not breaking public interface. |
We should start versioning this, to indicate possible breaking changes, and make sure we can communicate about it. I suggest a general version for both frontend and API. We should start at 0.1.0 and follow semver. I think we're still in initial development phase, no stable release 1.0.0 yet.
The text was updated successfully, but these errors were encountered: