Skip to content

Update to Node 24 and remove Vue CLI - #550

Merged
BryonLewis merged 4 commits into
mainfrom
update-node-24
Oct 22, 2026
Merged

BryonLewis merged 4 commits into
mainfrom
update-node-24

Conversation

@BryonLewis

@BryonLewis BryonLewis commented Oct 22, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

Node 24

  • client/.nvmrc: 20 → 24
  • CI client job: Node 20.10.0 → 24, actions/setup-node v3 → v6 (matches the release workflows)
  • docker/girder.Dockerfile client build stage: node:20 → node:24

Node 20 is end-of-life.

Remove Vue CLI (the app already builds with Vite; Vue CLI was only a task runner)

  • lint: runs eslint directly over src/ dive-common/ platform/; new lint:fix script. Note: vue-cli-service lint auto-fixed by default, the new lint only reports.
  • test: runs jest directly with the existing config in package.json
  • babel.config.js: @babel/preset-env (current Node) instead of @vue/cli-plugin-babel/preset; @babel/core and @babel/preset-env added as devDependencies
  • Removed the unused build:package script and vue.config.js, the @vue/cli-* packages, and webpack-only sass-loader, vuetify-loader, worker-loader, vue-cli-plugin-vuetify. Lockfile drops 443 packages, including @achrinza/node-ipc, which warned about unsupported engines on Node 24.

Testing

Locally on Node 24.18.0 / npm 11.16.0:

  • npm ci: passes, no EBADENGINE warnings
  • npm run lint: passes, and fails on deliberately introduced errors in .ts and .vue files
  • npm test -- --collect-coverage: 10 suites, 60 tests passing
  • npm run build:web: builds

The Docker image build was not run locally.

🤖 Generated with Claude Code

BryonLewis and others added 3 commits October 22, 2026 13:57
Bump client/.nvmrc from 20 to 24 and the CI client job from 20.10.0 to 24
(with actions/setup-node v6), matching the release workflows. Node 20 is
end-of-life.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The web app already builds with Vite. Vue CLI was only left as a task
runner, so call the tools directly:
- lint: eslint over src/, dive-common/, platform/ (add lint:fix)
- test: jest with the existing config in package.json
- babel.config.js: @babel/preset-env instead of the Vue CLI preset

Remove the unused build:package script and vue.config.js, plus the Vue CLI
packages and webpack-only loaders (sass-loader, vuetify-loader,
worker-loader, vue-cli-plugin-vuetify). This also drops
@achrinza/node-ipc, which warned about unsupported engines on Node 24.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@BryonLewis BryonLewis changed the title Update Node version to 24 Update to Node 24 and remove Vue CLI Oct 22, 2026
@BryonLewis
BryonLewis merged commit cde38b1 into main Oct 22, 2026
3 checks passed
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.

1 participant