Consolidate SDK GitHub releases - #2305
Merged
Merged
Conversation
Create one shared GitHub Release for all SDK languages while retaining scoped Rust and Java source tags. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 01a9d0e3-0073-48f2-afae-de0398986669
Contributor
There was a problem hiding this comment.
Pull request overview
Consolidates SDK release records into one canonical GitHub Release across all six languages.
Changes:
- Gates the shared release on Java publishing.
- Retains language-specific source tags without separate releases.
- Updates combined changelog generation and release documentation.
Show a summary per file
| File | Description |
|---|---|
rust/RELEASING.md |
Documents unified releases. |
rust/README.md |
Links to combined releases. |
docs/developer-docs/secrets.md |
Updates Java token requirements. |
.github/workflows/release-changelog.md |
Generates cross-language notes. |
.github/workflows/release-changelog.lock.yml |
Regenerates the compiled workflow. |
.github/workflows/publish.yml |
Gates and creates the shared release. |
.github/workflows/java.notes.template |
Removes the obsolete Java template. |
.github/workflows/java-publish-maven.yml |
Removes Java-specific release creation. |
Review details
Tip
Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
- Files reviewed: 8/8 changed files
- Comments generated: 1
- Review effort level: Balanced
Expose Maven publication success from the reusable Java workflow so documentation deployment failures do not suppress the shared SDK release. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 01a9d0e3-0073-48f2-afae-de0398986669
Collaborator
Author
|
@edburns @tclem @MackinnonBuck @patniko any concerns? It's weird that we're currently publishing three releases every time we publish, where Java and Rust are each getting their own. |
Contributor
There was a problem hiding this comment.
Review details
Resolved since last review (1)
- ✅ .github/workflows/publish.yml#L383 — Resolved by @stephentoub - This gates the shared release on the result of the entire reusable Java workflow, not just Maven…
Suppressed comments (2)
rust/RELEASING.md:20
- Step 3 allows selecting
unstable, but for that channel the workflow skips Rust, .NET, Python, and Java; only the Node.js publication runs. As written, the next step incorrectly promises that every selection publishes all SDKs and creates a release. Qualify this step for the release channels so the emergency instructions accurately describeunstablebehavior.
4. The workflow publishes all SDKs at the shared computed version,
tags `rust/vX.Y.Z` for source traceability, and creates one combined
`vX.Y.Z` GitHub Release.
.github/workflows/release-changelog.md:82
- This new rule conflicts with the later “Follow this style exactly” example and its key rule, which still says to prioritize TypeScript/C# snippets and only use Go/Python in limited cases, without accounting for Java or Rust. The agent can therefore continue applying the old four-language policy instead of choosing whichever of the six affected SDKs best illustrates a highlighted change. Please update the example and its key rules to reflect the combined six-language policy as well.
**Format for each highlighted feature** — use an `### Feature:` or `### Fix:` heading, a 1-2 sentence description explaining what it does and why it matters, and at least one short code snippet (max 3 lines). Cover all six SDKs—TypeScript, C#, Go, Python, Java, and Rust—in the combined release notes. Show code examples in the languages whose APIs best illustrate the change, and ensure every user-visible language-specific change appears either as a highlighted feature or under other changes.
- Files reviewed: 8/8 changed files
- Comments generated: 0 new
- Review effort level: Balanced
Document the Node-only unstable channel and align changelog examples with the six-language release policy. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 01a9d0e3-0073-48f2-afae-de0398986669
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Publishing a single SDK version currently creates three GitHub Release records: the shared release plus separate Rust and Java releases. This consolidates them into one shared release so users have a single canonical place for release notes across all six SDK languages.
Changes
rust/v...andjava/v...source tags for traceability and Java documentation deployment.v...release.Validation
release-changelogwithgh aw compile release-changelog --strict.v...release creation remains.Generated by Copilot