Skip to content

fix(ci): set required environment variables for npm publishing#6189

Merged
jdx merged 1 commit intomainfrom
fix-npm-publish-env-vars
Sep 5, 2025
Merged

fix(ci): set required environment variables for npm publishing#6189
jdx merged 1 commit intomainfrom
fix-npm-publish-env-vars

Conversation

@jdx
Copy link
Owner

@jdx jdx commented Sep 5, 2025

Summary

  • Fixed the failing npm publishing step in the release workflow
  • Added required environment variables MISE_VERSION and RELEASE_DIR that the release-npm.sh script depends on

Problem

The npm publishing step was failing in CI because the release-npm.sh script requires MISE_VERSION and RELEASE_DIR environment variables to be set. These variables were previously set in the release.sh script which runs in an earlier workflow step, but environment variables don't persist across GitHub Actions workflow steps.

Solution

Explicitly export these required variables in the npm publishing step:

  • MISE_VERSION - obtained from scripts/get-version.sh
  • RELEASE_DIR - set to "releases" (the directory where release artifacts are stored)

Test plan

  • The next release should successfully publish npm packages without errors
  • Verify npm packages are published to registry after merge and next release

Fixes: https://github.com/jdx/mise/actions/runs/17495121479/job/49696552525

🤖 Generated with Claude Code

The npm publishing step was failing because the release-npm.sh script
requires MISE_VERSION and RELEASE_DIR environment variables to be set.
These were previously set in the release.sh script but don't persist
across GitHub Actions workflow steps.

This fix explicitly exports these variables in the npm publishing step
to ensure the script has access to them.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings September 5, 2025 14:50
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR fixes a failing npm publishing step in the CI release workflow by adding required environment variables that the npm release script depends on. The issue was that environment variables from earlier workflow steps don't persist across GitHub Actions steps.

  • Adds explicit export of MISE_VERSION and RELEASE_DIR environment variables
  • Uses scripts/get-version.sh to obtain the current version
  • Sets the release directory to "releases" where artifacts are stored

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

@jdx jdx enabled auto-merge (squash) September 5, 2025 14:53
@github-actions
Copy link

github-actions bot commented Sep 5, 2025

Hyperfine Performance

mise x -- echo

Command Mean [ms] Min [ms] Max [ms] Relative
mise-2025.9.1 x -- echo 18.6 ± 0.5 18.0 22.6 1.00
mise x -- echo 18.6 ± 0.3 18.1 21.2 1.00 ± 0.03

mise env

Command Mean [ms] Min [ms] Max [ms] Relative
mise-2025.9.1 env 17.9 ± 0.3 17.4 19.1 1.00
mise env 18.0 ± 0.3 17.4 19.9 1.00 ± 0.02

mise hook-env

Command Mean [ms] Min [ms] Max [ms] Relative
mise-2025.9.1 hook-env 17.8 ± 0.4 17.2 20.8 1.00
mise hook-env 17.8 ± 0.3 17.2 19.1 1.00 ± 0.03

mise ls

Command Mean [ms] Min [ms] Max [ms] Relative
mise-2025.9.1 ls 16.0 ± 0.2 15.5 16.9 1.00
mise ls 16.0 ± 0.2 15.6 17.5 1.00 ± 0.02

xtasks/test/perf

Command mise-2025.9.1 mise Variance
install (cached) 164ms ✅ 102ms +60%
ls (cached) 61ms 61ms +0%
bin-paths (cached) 66ms 65ms +1%
task-ls (cached) 466ms 482ms -3%

✅ Performance improvement: install cached is 60%

@jdx jdx merged commit 61ab70e into main Sep 5, 2025
19 checks passed
@jdx jdx deleted the fix-npm-publish-env-vars branch September 5, 2025 15:01
jdx pushed a commit that referenced this pull request Sep 5, 2025
### 🐛 Bug Fixes

- **(ci)** set required environment variables for npm publishing by
[@jdx](https://github.com/jdx) in
[#6189](#6189)
- **(release)** clean up extra newlines in release notes formatting by
[@jdx](https://github.com/jdx) in
[#6190](#6190)
- **(release)** add proper newline after New Contributors section in
cliff template by [@jdx](https://github.com/jdx) in
[#6194](#6194)
- **(release)** fix changelog formatting to remove extra blank lines by
[@jdx](https://github.com/jdx) in
[#6195](#6195)
- **(release)** restore proper newline after New Contributors section by
[@jdx](https://github.com/jdx) in
[#6196](#6196)

### 🚜 Refactor

- **(ci)** split release workflow into separate specialized workflows by
[@jdx](https://github.com/jdx) in
[#6193](#6193)

### Chore

- **(release)** require GitHub Actions environment for release-plz
script by [@jdx](https://github.com/jdx) in
[#6191](#6191)
netbsd-srcmastr pushed a commit to NetBSD/pkgsrc that referenced this pull request Sep 8, 2025
## [2025.9.5](https://github.com/jdx/mise/compare/v2025.9.4..v2025.9.5) - 2025-09-06

### 🚀 Features

- **(task)** add timeout support for task execution by @jdx in [#6216](jdx/mise#6216)
- **(task)** sub-tasks in run lists by @jdx in [#6212](jdx/mise#6212)

### Chore

- fix npm publish action by @jdx in [14f4b09](jdx/mise@14f4b09)
- fix cloudflare release action by @jdx in [00afa25](jdx/mise@00afa25)
- fix git-cliff for release notes by @jdx in [15a9aed](jdx/mise@15a9aed)

## [2025.9.4](https://github.com/jdx/mise/compare/v2025.9.3..v2025.9.4) - 2025-09-06

### Chore

- fix git-cliff on release by @jdx in [3c388f2](jdx/mise@3c388f2)

## [2025.9.3](https://github.com/jdx/mise/compare/v2025.9.2..v2025.9.3) - 2025-09-06

### 🚀 Features

- **(backend)** improve http error when platform url missing; list available platforms by @jdx in [#6200](jdx/mise#6200)
- **(cli)** support scoped packages for all backend types by @earlgray283 in [#6213](jdx/mise#6213)
- **(http)** add URL replacement feature for HTTP requests by @ThomasSteinbach in [#6207](jdx/mise#6207)

### 🐛 Bug Fixes

- **(backend)** preserve arch underscores in platform keys by @jdx in [#6202](jdx/mise#6202)
- **(task)** resolve hanging issue with multiple depends_post by @jdx in [#6206](jdx/mise#6206)
- couldn't download node binary in Alpine, even if it exists in the mirror url by @Hazer in [#5972](jdx/mise#5972)
- **breaking** use config_root for env._.path by @jdx in [#6204](jdx/mise#6204)
- bugfix for paths that include spaces by @karim-elkholy in [#6210](jdx/mise#6210)

### 📚 Documentation

- improve release notes generation by @jdx in [#6197](jdx/mise#6197)
- fix release changelog contributor reporting by @jdx in [#6201](jdx/mise#6201)

### Chore

- use fine-grained gh token by @jdx in [#6208](jdx/mise#6208)
- use settings.local.json for claude config by @jdx in [fd0fba9](jdx/mise@fd0fba9)

### New Contributors

- @ThomasSteinbach made their first contribution in [#6207](jdx/mise#6207)
- @earlgray283 made their first contribution in [#6213](jdx/mise#6213)
- @karim-elkholy made their first contribution in [#6210](jdx/mise#6210)
- @Hazer made their first contribution in [#5972](jdx/mise#5972)

## [2025.9.2](https://github.com/jdx/mise/compare/v2025.9.1..v2025.9.2) - 2025-09-05

### 🐛 Bug Fixes

- **(ci)** set required environment variables for npm publishing by @jdx in [#6189](jdx/mise#6189)
- **(release)** clean up extra newlines in release notes formatting by @jdx in [#6190](jdx/mise#6190)
- **(release)** add proper newline after New Contributors section in cliff template by @jdx in [#6194](jdx/mise#6194)
- **(release)** fix changelog formatting to remove extra blank lines by @jdx in [#6195](jdx/mise#6195)
- **(release)** restore proper newline after New Contributors section by @jdx in [#6196](jdx/mise#6196)

### 🚜 Refactor

- **(ci)** split release workflow into separate specialized workflows by @jdx in [#6193](jdx/mise#6193)

### Chore

- **(release)** require GitHub Actions environment for release-plz script by @jdx in [#6191](jdx/mise#6191)

## [2025.9.1](https://github.com/jdx/mise/compare/v2025.9.0..v2025.9.1) - 2025-09-05

### 🐛 Bug Fixes

- python nested venv path order by @elvismacak in [#6124](jdx/mise#6124)
- resolve immutable release workflow and VERSION file timing issues by @jdx in [#6187](jdx/mise#6187)

### New Contributors

- @elvismacak made their first contribution in [#6124](jdx/mise#6124)

## [2025.9.0](https://github.com/jdx/mise/compare/v2025.8.21..v2025.9.0) - 2025-09-05

### 🚀 Features

- allow set/unset backend aliases by @roele in [#6172](jdx/mise#6172)

### 🐛 Bug Fixes

- **(aqua)** respect order of asset_strs by @risu729 in [#6143](jdx/mise#6143)
- **(java)** treat freebsd as linux (assuming linux compatability) by @roele in [#6161](jdx/mise#6161)
- **(nushell/windows)** Fix $env.PATH getting converted to a string by @zackyancey in [#6157](jdx/mise#6157)
- **(sync)** create uv_versions_path dir if it doesn't exist by @risu729 in [#6142](jdx/mise#6142)
- **(ubi)** show relevent error messages for v-prefixed tags by @risu729 in [#6183](jdx/mise#6183)
- remove nodejs/golang alias migrate code by @risu729 in [#6141](jdx/mise#6141)
- mise activate not working on powershell v5 by @L0RD-ZER0 in [#6168](jdx/mise#6168)

### 📚 Documentation

- **(task)** remove word "additional" to avoid confusions by @risu729 in [#6159](jdx/mise#6159)

### Chore

- update Cargo.lock by @risu729 in [#6184](jdx/mise#6184)

### New Contributors

- @zackyancey made their first contribution in [#6157](jdx/mise#6157)
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.

2 participants