Skip to content

Release all reactor libraries from the tag-driven release - #166

Merged
simbo1905 merged 1 commit into
mainfrom
issue-165-release-all-libraries
Aug 31, 2026
Merged

Release all reactor libraries from the tag-driven release#166
simbo1905 merged 1 commit into
mainfrom
issue-165-release-all-libraries

Conversation

@simbo1905

Copy link
Copy Markdown
Owner

Closes #165

Makes the tag-driven release deliver every reactor module:

  • Release workflow deploy step: JDK 21 -> JDK 25, activating the jtd-codegen profile so json-java21-jtd-codegen and jtd2jar join the reactor and are published to Maven Central (they were 404 at 2026.08.30)
  • GitHub Release body now lists all seven Maven coordinates plus the GHCR jtd2jar image
  • README gains a "Published Artifacts" section with the same coordinates, purposes, and runtime requirements

The release workflow deployed on JDK 21, so the jtd-codegen profile
([24,)) never activated and json-java21-jtd-codegen plus jtd2jar were
silently absent from Central publishes. The deploy step now runs on
JDK 25 (matching the daily CI matrix), the GitHub Release body lists
every Maven coordinate, and README gains a Published Artifacts
section mapping each coordinate to its purpose and runtime.
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Aug 31, 2026

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review Completed 2026-08-31T00:25:12.803146Z 8189253 PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@simbo1905
simbo1905 merged commit c5404b1 into main Aug 31, 2026
6 checks passed

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 8189253cf6

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +30 to +33
# JDK 25 activates the jtd-codegen profile ([24,)) so the
# json-java21-jtd-codegen and jtd2jar modules join the reactor
# and are published too (issue #165).
java-version: '25'

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Verify newly activated artifacts in the retry guard

When a version already has only the parent/core artifacts published—for example, after rerunning a tag first released by the former JDK 21 workflow—any failure from the newly activated codegen or jtd2jar modules reaches the existing fallback, which checks only parent and java.util.json and then reports success. The job can therefore complete while the two modules this change intends to publish remain absent; extend the idempotency check to cover every newly activated artifact before accepting the failed deploy.

Useful? React with 👍 / 👎.

Comment on lines +57 to +59
## Maven Central Artifacts

All reactor modules are published under `io.github.simbo1905.json` at version `${{ steps.version.outputs.version }}`: [`java.util.json`](https://central.sonatype.com/artifact/io.github.simbo1905.json/java.util.json), [`java.util.json.jsonpath`](https://central.sonatype.com/artifact/io.github.simbo1905.json/java.util.json.jsonpath), [`java.util.json.jtd`](https://central.sonatype.com/artifact/io.github.simbo1905.json/java.util.json.jtd), [`java.util.json.jtd.codegen`](https://central.sonatype.com/artifact/io.github.simbo1905.json/java.util.json.jtd.codegen), [`jtd2jar`](https://central.sonatype.com/artifact/io.github.simbo1905.json/jtd2jar), [`json-compatibility-suite`](https://central.sonatype.com/artifact/io.github.simbo1905.json/json-compatibility-suite), [`json-java21-api-tracker`](https://central.sonatype.com/artifact/io.github.simbo1905.json/json-java21-api-tracker).

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Publish artifact claims only after Central deployment

If the later Build and Deploy to Central step fails for a fresh version, this earlier step has already created a public GitHub Release whose body says every reactor module is published. GitHub does not roll that release back when the job stops, so users receive links and release notes for artifacts that may not exist; create or update these notes only after the deployment succeeds.

Useful? React with 👍 / 👎.

Comment thread README.md
| [`java.util.json.jsonpath`](https://central.sonatype.com/artifact/io.github.simbo1905.json/java.util.json.jsonpath) | JsonPath query engine over `JsonValue` | JDK 21+ |
| [`java.util.json.jtd`](https://central.sonatype.com/artifact/io.github.simbo1905.json/java.util.json.jtd) | JSON Type Definition validator (RFC 8927) | JDK 21+ |
| [`java.util.json.jtd.codegen`](https://central.sonatype.com/artifact/io.github.simbo1905.json/java.util.json.jtd.codegen) | Codegen validators (~9x faster than the interpreter) | JDK 25+ |
| [`jtd2jar`](https://central.sonatype.com/artifact/io.github.simbo1905.json/jtd2jar) | Compiles a JTD schema into a standalone validator JAR | JDK 21+ |

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Advertise the jtd2jar CLI as requiring JDK 24

Consumers running the published jtd2jar artifact itself on JDK 21 will get an unsupported class-version error: jtd2jar/pom.xml compiles the CLI with release 24, and the existing module table below already identifies it as JDK 24+. Only validator JARs generated by the tool target Java 21, so this artifact runtime entry should say JDK 24+ rather than JDK 21+.

Useful? React with 👍 / 👎.

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.

Release all reactor libraries from the tag-driven release

1 participant