Conversation
The `version: '*'` specifier in `hustcer/setup-nu@v3` started failing on macOS arm64 around 2026-04-27 16:48Z with "No release for Nushell matching version specifier *". The action SHA was unchanged, so this is an upstream regression in the wildcard resolution path. Earlier runs resolved `*` to 0.112.2, so pinning to that version restores the previous behavior and makes the build reproducible. This matches the pinning approach taken for pre-commit hook revs in a985e24 — concrete versions over moving refs.
worktrunk-bot
left a comment
There was a problem hiding this comment.
The pin doesn't actually unblock CI. This run's test (linux), test (macos), code-coverage, and benchmarks all fail at the Install nushell step with:
##[error]No release for Nushell matching version specifier 0.112.2 of default feature.
(See e.g. test (macos) job.)
The PR description's diagnosis — "an upstream regression in the wildcard resolution path" — doesn't match the action's code. * and 0.112.2 both flow through filterMatch(response, versionSpec, 'default') in hustcer/setup-nu's src/setup.ts (source). The only difference is the final semver.satisfies(rel.version, versionSpec) check, which accepts 0.112.2 against either spec. So pinning shouldn't change the outcome — and empirically it doesn't.
The actual symptom is that the action runs octokit.repos.listReleases for nushell/nushell and ends up with no asset-bearing entries on the first page (it done()s after the first page regardless of match). That suggests an upstream / API-side issue with the action, not a worktrunk-side fix surface. Possible angles to try instead:
- Bump the action (e.g. test against
developSHA22f3623) to see whether the recent dep upgrade helps. - Replace
hustcer/setup-nuwith a directcargo install nu --locked --version 0.112.2or a curl-and-extract fromnu-0.112.2-x86_64-unknown-linux-gnu.tar.gz, removing the action dependency entirely. - File an issue against
hustcer/setup-nuwith the failing run logs — the maintainer may already be tracking this.
Recommendation: close this PR. The pin doesn't change behavior, and the underlying setup-nu failure needs a different fix.
|
Confirming the review's diagnosis. The pin to |
|
check again |
|
add bumping this to our weekly-maintenence job |
@worktrunk-bot can you add this? |
|
Rechecked — re-running the failed jobs on the same commit ( What this means:
So the Up to you whether to merge as-is for the reproducibility win, or replace |
|
Opened #2443 to add a "Weekly Maintenance: Nushell Pin" section to the |
## Summary Adds a `Weekly Maintenance: Nushell Pin` section to `running-tend` so the weekly job picks up upstream nushell releases. PR #2440 pinned `hustcer/setup-nu@v3` to a concrete version after the `version: '*'` path went flaky under GitHub API rate limiting; without an ongoing bump task the pin will drift. The new section sits next to the existing weekly entries (MSRV/Toolchain, Statusline Cache-Check) and points at all three `setup-nu` invocations in `.github/workflows/ci.yaml`. Requested in #2440 (comment). ## Test plan - [ ] Skill rendering: section appears under the existing "Weekly Maintenance:" headings, no formatting regressions. --------- Co-authored-by: worktrunk-bot <254187624+worktrunk-bot@users.noreply.github.com> Co-authored-by: worktrunk-bot <worktrunk-bot@users.noreply.github.com> Co-authored-by: Maximilian Roos <5635139+max-sixty@users.noreply.github.com>
Summary
version: '*'specifier inhustcer/setup-nu@v3started failing on macOS arm64 around 2026-04-27 16:48Z withNo release for Nushell matching version specifier * of default feature. The action SHA was unchanged, so this is an upstream regression in the wildcard resolution path.*to0.112.2, so pinning to that version restores the previous behavior and makes the build reproducible.Fixes the failing
test (macos)check on #2438 and onmain.Test plan
test (linux)passestest (macos)passes — the previously failing jobtest (windows)passes (nushell step is skipped on Windows; unaffected)code-coverageandbenchmarksjobs still install nushell successfully