LLM4S follows Semantic Versioning (MAJOR.MINOR.PATCH), e.g. v0.3.4.
- A maintainer pushes a tag matching
v[0-9]*(e.g.v0.3.5) tomain. - This triggers the Release workflow, which:
- Runs the full CI suite (
ci.yml) and blocks the release if it fails. - Publishes artifacts to Sonatype Central Portal via
sbt ci-release, using sbt-dynver to derive the version from the tag and GPG-signing artifacts. - Builds and pushes the workspace-runner Docker image to GitHub Container Registry, tagged with both the release version and
latest.
- Runs the full CI suite (
- Version numbers are derived automatically from git tags via
sbt-dynver— there is no manually maintained version file. - Published artifacts are cross-built for Scala 2.13 and 3.x (
sbt +publishsemantics viasbt-ci-release).
Release notes are maintained as GitHub Releases against each tag: https://github.com/llm4s/llm4s/releases