Skip to content

ci: pin @sebbo2002/semantic-release-jsr to 3.2.1#92

Merged
KyleJune merged 1 commit into
mainfrom
ci/pin-release-toolchain
Jun 14, 2026
Merged

ci: pin @sebbo2002/semantic-release-jsr to 3.2.1#92
KyleJune merged 1 commit into
mainfrom
ci/pin-release-toolchain

Conversation

@KyleJune

@KyleJune KyleJune commented Jun 14, 2026

Copy link
Copy Markdown
Member

Problem

The Release job has failed on every push to main since run 27482917285:

✘  EPLUGINSCONF The `plugins` configuration is invalid.
The invalid configuration is Object [Module] { fail, …, verifyConditions }

Root cause

The npx command pins no versions, so each --package floats to its latest. @sebbo2002/semantic-release-jsr published 4.0.0 the day after our last release, and its new CJS bundle tags module.exports with Symbol.toStringTag = "Module". semantic-release loads a plugin by importing that CJS entry and requires the result to be a plain object (lodash.isPlainObject) — a Module-tagged object fails the check, so the whole config is rejected.

This is purely the plugin's build output (not a config error): with semantic-release held constant, jsr 3.2.1 loads fine and only jsr 4.0.0 reproduces the error.

Tracked upstream in sebbo2002/semantic-release-jsr#153, already fixed on @next (4.0.1-develop) — but not yet in a stable release, so floating latest is still the broken 4.0.0.

Fix

Pin only @sebbo2002/semantic-release-jsr to 3.2.1 (the last working release). The other five tools keep tracking latest. 4.0.0 shipped no features (it only dropped Node 20 support), so nothing is lost by staying on 3.x.

Follow-up: un-pin to ^4.0.1 once it's released stable.

Verified locally with semantic-release --dry-run --no-ci: every plugin loads on 3.2.1; swapping only jsr to 4.0.0 reproduces EPLUGINSCONF.

🤖 Generated with Claude Code

@KyleJune KyleJune force-pushed the ci/pin-release-toolchain branch from 9e2761c to 8e09de4 Compare June 14, 2026 01:18
4.0.0 ships a CJS bundle that semantic-release rejects as an invalid plugin config (EPLUGINSCONF), failing every Release job. Root cause is upstream issue #153: the v4 build tags module.exports with Symbol.toStringTag="Module", tripping semantic-release's isPlainObject() check. It's fixed on @next (4.0.1-develop) but not yet in a stable release, so the floating "latest" is still the broken 4.0.0.

Pin only this plugin to the last working 3.x; the other five tools keep tracking latest. Un-pin to ^4.0.1 once it ships stable.

Verified locally: with jsr 3.2.1 every plugin loads; swapping only jsr to 4.0.0 reproduces EPLUGINSCONF.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@KyleJune KyleJune changed the title ci: pin semantic-release toolchain to last working versions ci: pin @sebbo2002/semantic-release-jsr to 3.2.1 Jun 14, 2026
@KyleJune KyleJune merged commit ce37dba into main Jun 14, 2026
29 of 35 checks passed
@KyleJune KyleJune deleted the ci/pin-release-toolchain branch June 14, 2026 01:31
@github-actions

Copy link
Copy Markdown

🎉 This PR is included in version 0.8.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant