From 0789fad20924ff90dc5e0f0a1b6c32a4e7f2ba53 Mon Sep 17 00:00:00 2001 From: David Tooke Date: Mon, 12 Oct 2026 11:56:36 -0400 Subject: [PATCH] Pin the engine at 1.0.0-rc9 rc9 is released and carries everything the command uses, so develop builds against it rather than the engine's snapshot, and the snapshot repository drops out of the build. The pin's comment and CONTRIBUTING now say so: develop pins a released engine while one has what the command needs, and returns to 1.0.0-SNAPSHOT only while it needs engine work that is not yet released. --- CONTRIBUTING.md | 8 +++++--- build.gradle | 9 +++++---- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 76b7bb6..939e03a 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -106,9 +106,11 @@ below. You need no Java 21 installed beforehand: Gradle provisions it. source set, which is a module; `EngineBoundaryTest` enforces it for every source set, tests included. Run it alone with `./gradlew test --tests '*EngineBoundaryTest'`. - **The engine pin.** `relixEngineVersion` in `build.gradle` is the one place the - engine's version is named. On `develop` it is `1.0.0-SNAPSHOT`, resolved from - Central's snapshot repository, which relix-core publishes to on every push to its - own `develop`. `checkEnginePin` fails a release build that still pins a snapshot: + engine's version is named. On `develop` it is a released engine while one has + everything the command needs, and `1.0.0-SNAPSHOT` while it needs engine work that + is not yet released, resolved from Central's snapshot repository, which relix-core + publishes to on every push to its own `develop`. `checkEnginePin` fails a release + build that still pins a snapshot: `./gradlew checkEnginePin -PcliVersion=`. - **One module, no library.** The module exports nothing (`ModuleShapeTest`) and the build publishes no Maven artifact (`checkNoPublication`). diff --git a/build.gradle b/build.gradle index a3e44a3..67fbfdc 100644 --- a/build.gradle +++ b/build.gradle @@ -20,10 +20,11 @@ version = findProperty('cliVersion') ?: '0.1.0-SNAPSHOT' // The engine pin: the one place the engine's version is named. // -// `develop` tracks the engine's own develop branch, which relix-core publishes to Central's -// snapshot repository on every push, so that what this command needs reaches it before the -// next release candidate is cut. A release pins a released engine (checkEnginePin). -ext.relixEngineVersion = '1.0.0-SNAPSHOT' +// `develop` pins a released engine while one has everything this command needs. When the +// command needs engine work that is not yet released, it tracks the engine's own develop +// branch instead (1.0.0-SNAPSHOT), which relix-core publishes to Central's snapshot +// repository on every push. A release pins a released engine (checkEnginePin). +ext.relixEngineVersion = '1.0.0-rc9' def engineIsSnapshot = relixEngineVersion.endsWith('-SNAPSHOT')