Versioning¶
The Anoma Specification follows semantic versioning.
MAJOR.MINOR.PATCH
- MAJOR version when you make incompatible API changes
- MINOR version when you add functionality in a backward compatible manner
- PATCH version when you make backward compatible bug fixes
More on versioning criteria¶
- Major version (X.0.0): Incremented for backwards-incompatible changes, like:- Breaking changes to core interfaces or types - Removal of deprecated functionality - Major architectural changes 
- Minor version (0.X.0): Incremented for backwards-compatible feature additions:- New engines, message types, or behaviours - New functionality that doesn't break existing code - Deprecation notices for future breaking changes 
- Patch version (0.0.X): Incremented for backwards-compatible bug fixes:- Documentation improvements - Bug fixes that don't change interfaces - Minor code clean-up and refactoring 
Preparing a new version¶
-  Update mkdocs.yml
-  Update docs/Package.juvix
-  Update docs/references/ref.bib
- Git tag the new version
- Release a new changelog entry
Update mkdocs.yml¶
Update the site_version to the new version.
- site_version: !ENV [SITE_VERSION, "v0.1.0"]
+ site_version: !ENV [SITE_VERSION, "v0.1.1"]
Update nspec Juvix package version¶
package : Package :=
  defaultPackage@{
    name := "nspec";
-    version := mkVersion 0 1 0;
+    version := mkVersion 0 1 1;
    dependencies :=
      [github "anoma" "juvix-stdlib" "v0.6.0"; github "anoma" "juvix-containers" "v0.14.1"]
  };
Update docs/references/references.bib¶
Update the version of the nspec package in the references.bib file.
@software{nspec,
  author = {Anoma},
  title = {Anoma Specification},
-  version = {0.1.0},
+  version = {0.1.1},
  url = {https://github.com/anoma/nspec}
}
Git tag the new version¶
git tag v0.1.1
Release a new changelog entry¶
Follow the Updating the changelog tutorial for more information on how to
release a new changelog entry. This tutorial uses unclog to create a new changelog entry.
The package started at version 0.1.0 as the initial release.