Skip to content

fix(release): allow publishing with no tag; publish one package at a time#1689

Merged
lucasmcdonald3 merged 3 commits into
masterfrom
fix-master-dist-tag
Jul 24, 2026
Merged

fix(release): allow publishing with no tag; publish one package at a time#1689
lucasmcdonald3 merged 3 commits into
masterfrom
fix-master-dist-tag

Conversation

@lucasmcdonald3

@lucasmcdonald3 lucasmcdonald3 commented Jul 23, 2026

Copy link
Copy Markdown
Contributor

Issue #, if available:

Description of changes:

  1. When dist_tag is empty, do not publish a tag. (Current behavior is to pass an empty dist_tag to the npm CLI, which the CLI interprets as "set latest tag", which we don't want.)
  2. Publish one package at a time. Releasing packages in parallel submits many provenance attestations to Rekor (npm publish signing logbook) at once. Submissions to Rekor can time out and be retried. If the first attempt succeeded, the retry fails, then indicates "failure" to npm, and npm doesn't attempt to publish the package. Setting --concurrency 1 serializes publishes so only one attestation is in flight at a time, (possibly, hopefully) reducing those timeout-induced 409s.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Check any applicable:

  • Were any files moved? Moving files changes their URL, which breaks all hyperlinks to the files.

@lucasmcdonald3
lucasmcdonald3 requested a review from a team as a code owner July 23, 2026 19:22
@lucasmcdonald3
lucasmcdonald3 requested a review from Copilot July 23, 2026 19:31

Copilot AI 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.

Pull request overview

Note

Copilot couldn't run its full agentic review because it didn't start before the timeout. Make sure your repository has a runner available, or add a copilot-code-review.yml file specifying one with the runs-on attribute. See the docs for more details.

Updates the production release workflow so that clearing the dist_tag input publishes without passing --dist-tag, avoiding npm interpreting an empty string as latest.

Changes:

  • Clarifies the dist_tag workflow input description to document the “delete to omit” behavior.
  • Replaces the single lerna publish ... --dist-tag "$DIST_TAG" invocation with conditional logic that omits --dist-tag when empty.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread .github/workflows/prod-release.yml
Comment thread .github/workflows/prod-release.yml
Lucas McDonald and others added 2 commits July 23, 2026 14:23
Serialize package publishes so we don't submit 27 provenance attestations to
the Rekor transparency log in parallel, reducing timeout-induced 409s.
@lucasmcdonald3 lucasmcdonald3 changed the title fix(release): omit --dist-tag when the input is deleted fix(release): allow publishing with no tag; reduce publishing flakiness Jul 23, 2026
@lucasmcdonald3 lucasmcdonald3 changed the title fix(release): allow publishing with no tag; reduce publishing flakiness fix(release): allow publishing with no tag; publish one package at a time Jul 23, 2026
@lucasmcdonald3
lucasmcdonald3 merged commit 7927d57 into master Jul 24, 2026
24 checks passed
@lucasmcdonald3
lucasmcdonald3 deleted the fix-master-dist-tag branch July 24, 2026 01:25
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.

3 participants