Release
Versioning is driven by application.properties (the single source of truth,
an XML file with a <version> element).
How a release is cut
- Publish a GitHub Release with a tag (e.g.
v0.1.0). - The
sync-version-on-release.ymlworkflow runs onrelease: publishedand, if the tag version differs from the file, updates both:- the
<version>inapplication.properties, and - the top-level
"version"inpackage.jsonthen opens and auto-merges arelease-sync/<version>PR back intomain.
- the
If the file version already matches the tag, the workflow is a no-op.