From 6c9d97562c547819e8306b72919d18341927ad06 Mon Sep 17 00:00:00 2001 From: Mike Barkmin Date: Wed, 7 Oct 2026 19:52:14 +0200 Subject: [PATCH 1/2] Use canonical Javadoc toolchain for release catalogs --- .github/workflows/release.yml | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index d3bb7614..ad959485 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -49,7 +49,9 @@ jobs: uses: actions/setup-java@v5 with: distribution: temurin - java-version: 17 + # Match the Javadoc toolchain used by validation and shared catalogs. + # maven.compiler.release still targets Java 17 for the library. + java-version: 25 cache: maven server-id: central server-username: MAVEN_USERNAME @@ -90,11 +92,6 @@ jobs: - name: Require current catalogs and assemble offline examples run: | - # The release job uses the Java 17 toolchain for Maven Central - # signing. Javadoc can normalize generated reference metadata on a - # different JDK, so refresh derived compatibility files before the - # read-only gate instead of publishing stale JSON. - python3 scripts/browser-compatibility.py python3 scripts/browser-compatibility.py --check python3 scripts/release-catalogs.py --check python3 scripts/release-catalogs.py --archive dist/scratch-catalogs.zip From 31c791b2bdfcf7ec6914a0e8df4263e6edf33343 Mon Sep 17 00:00:00 2001 From: Mike Barkmin Date: Wed, 7 Oct 2026 19:52:51 +0200 Subject: [PATCH 2/2] Document the canonical release and catalog toolchain --- .github/copilot-instructions.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/copilot-instructions.md b/.github/copilot-instructions.md index 5c1503db..a5260a4e 100644 --- a/.github/copilot-instructions.md +++ b/.github/copilot-instructions.md @@ -26,8 +26,8 @@ The library is structured around three core concepts: ## Build Instructions ### Prerequisites -- Java 17+ (CI builds with Temurin; `docs.yml` uses Java 25, `release.yml` uses Java 17 — either works locally, but match `maven.compiler.release=17` for compatibility) -- Maven +- Java 17+ to compile/run the library; Java 25 for generating and checking shared catalogs (CI documentation, validation, and release jobs use Temurin 25; `maven.compiler.release=17` preserves runtime compatibility) +- Maven (release publication uses pinned Maven 3.9.16 to keep local metadata out of Central bundles) - Node.js + npm (for the documentation site only) ### Maven Build Commands