Skip to content

Open the 3.0.1 development cycle - #84

Merged
github-actions[bot] merged 1 commit into
mainfrom
prepare-3.0.1-snapshot
Aug 4, 2026
Merged

Open the 3.0.1 development cycle#84
github-actions[bot] merged 1 commit into
mainfrom
prepare-3.0.1-snapshot

Conversation

@wolpert

@wolpert wolpert commented Aug 4, 2026

Copy link
Copy Markdown
Collaborator

v3.0.0 is out — tagged, GitHub release published, Java artifacts pushed to Maven Central. This moves the working versions on to 3.0.1.

Versions

File Before After
gradle.properties 3.0.0-SNAPSHOT 3.0.1-SNAPSHOT
hofmann-rust/Cargo.toml (+ Cargo.lock) 3.0.0 3.0.1
hofmann-typescript/package.json (+ lock) 3.0.0 3.0.1

How the Java version actually resolves

Worth recording, because it is not obvious. gradle.properties only supplies the version for untagged builds — settings.gradle.kts:41 overrides it from an exact-match git tag on HEAD:

gradle.beforeProject {
    val gitVersion = providers.exec { commandLine("git", "describe", "--tags", "--exact-match", "HEAD") }...
    if (gitVersion.isNotEmpty() && gitVersion.startsWith("v")) { version = matchResult.groupValues[1] }
}

So the v3.0.0 release build reported Using version from Git tag: 3.0.0 and passed the "Verify version matches tag" check even though gradle.properties said 3.0.0-SNAPSHOT. The -SNAPSHOT suffix in this file is purely a development marker and never reaches a release.

The Rust and TypeScript versions have no such indirection — they are literally what cargo publish and npm publish push, which is why they go to a plain 3.0.1.

Verification at 3.0.1

  • Java./gradlew clean build succeeds; 609 tests, 0 failures, 0 skipped. ./gradlew properties reports 3.0.1-SNAPSHOT once HEAD is off the v3.0.0 tag.
  • Rustcargo fmt --all --check, cargo clippy --all-targets --locked -- -D warnings and cargo test --locked all clean. The --locked runs matter here: bumping the crate version rewrites Cargo.lock, and the rust job added in Build, lint and test hofmann-rust in CI #83 would fail on a stale one.
  • TypeScriptnpm ci, typecheck, build and test all pass.

🤖 Generated with Claude Code

v3.0.0 is released: tagged, GitHub release published, and the Java
artifacts pushed to Maven Central.

Moves the working versions to 3.0.1 -- gradle.properties to
3.0.1-SNAPSHOT, hofmann-rust Cargo.toml (and Cargo.lock) and
hofmann-typescript package.json (and package-lock.json) to 3.0.1.

Note that gradle.properties only supplies the version for untagged
builds: settings.gradle.kts overrides it from an exact-match git tag on
HEAD, so the released Java version always comes from the tag rather than
from this file. The Rust and TypeScript versions are literal, so those two
are what `cargo publish` and `npm publish` would push.

Verified at 3.0.1: Java clean build with 609 tests passing, Rust
cargo fmt --all --check / clippy -D warnings / cargo test all clean under
--locked, and TypeScript typecheck, build and tests passing. The --locked
runs matter here because bumping the crate version rewrites Cargo.lock,
and the new rust CI job from #83 would fail on a stale one.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@github-actions
github-actions Bot merged commit a43f2b7 into main Aug 4, 2026
11 checks passed
@github-actions
github-actions Bot deleted the prepare-3.0.1-snapshot branch August 4, 2026 15:47
wolpert added a commit that referenced this pull request Aug 6, 2026
main gained "Open the 3.0.1 development cycle" (#84) after this branch was
created. This branch already carried a local, content-identical copy of that
commit, so the merge base predates both and every version file conflicted.

Resolved in favour of 3.1.0 throughout. main's commit moves the working
versions to 3.0.1; this branch supersedes that, because it carries breaking
changes and a patch version would be wrong under semver.

Confirmed a43f2b7 touches nothing but the five version files, so nothing else
from main is dropped by taking this side. Both lockfiles remain consistent with
their manifests.

Merged rather than rebased on purpose: the PR is open for review, and a
force-push would re-anchor any review comments already left against it.

Verified on the merged tree: Java 847 tests, TypeScript 80, Rust suite, and the
integration and cross-implementation vectors, all passing.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant