Skip to content

Node 24 + dependency upgrade - #44

Merged
dickhardt merged 4 commits into
mainfrom
chore/deps-prune
Sep 6, 2026
Merged

Node 24 + dependency upgrade#44
dickhardt merged 4 commits into
mainfrom
chore/deps-prune

Conversation

@dickhardt

Copy link
Copy Markdown
Member

Stacked branches chore/node24 → chore/deps-latest → chore/deps-prune: Dockerfile node:18 → 24-alpine; Tailwind 4 (via @tailwindcss/upgrade, CSS output byte-identical), Vite 8, vite-plugin-svelte 7, eslint 10, eslint-plugin-svelte 3; removed chalk, eslint-plugin-import, node-fetch, postcss, @tailwindcss/postcss (node_modules 374 → 178); npm run lint un-broken. Build, lint, dev smoke, docker build verified on Node 24 (repo has no test suite).

Merging deploys to staging.

🤖 Generated with Claude Code

https://claude.ai/code/session_01APQhTaYTjEoreeUdJdcZWi

dickhardt and others added 4 commits September 4, 2026 23:58
- Dockerfile: node:18-alpine -> node:24-alpine
- Ignore vendored minified public/assets/script.hash.js in prettier and
  eslint so `npm run lint` passes (it was failing on main)

No package changes were needed: `npm ci`, `vite build`, and lint all run
clean on Node 24.16 / npm 11 with no deprecation warnings.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01APQhTaYTjEoreeUdJdcZWi
Majors:
- vite 6 -> 8, @sveltejs/vite-plugin-svelte 5 -> 7
- tailwindcss 3 -> 4 (@tailwindcss/upgrade): tailwind.config.js folded
  into src/index.css (@theme, @plugin, @custom-variant), postcss now uses
  @tailwindcss/postcss, autoprefixer dropped (built in), flex-shrink-0 ->
  shrink-0, rounded-sm -> rounded-xs, `!important` -> `!` suffix
- prettier-plugin-svelte 3 -> 4, prettier-plugin-tailwindcss 0.6 -> 0.8:
  class order in .svelte files re-sorted by `npm run format`
- eslint-plugin-svelte 2 -> 3: add keys to two {#each} blocks
  (svelte/require-each-key); inline-disable prefer-svelte-reactivity for a
  local throwaway URL in App.svelte; drop a now-unused eslint-disable in
  state.svelte.js
- chalk 5 -> 6 (unused in code, see deps-prune)

eslint stays on 9.x (9.39.5): eslint-plugin-import 2.32 peers on eslint ^9.
Minors/patches: svelte 5.57, prettier 3.9.6, cheerio 1.2, postcss 8.5.28,
@hellocoop/helper-browser 2.5.7, eslint-config-prettier 10.1.8,
eslint-plugin-import 2.32, @tailwindcss/forms 0.5.11.

package-lock.json regenerated with npm 11; npm audit: 0 vulnerabilities
(was 20).

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01APQhTaYTjEoreeUdJdcZWi
Removed:
- chalk: nothing imports it
- eslint-plugin-import: not referenced in eslint.config.js
- node-fetch: sri.js now uses Node's global fetch
  (`Buffer.from(await res.arrayBuffer())`)
- postcss + @tailwindcss/postcss + postcss.config.cjs: replaced by the
  @tailwindcss/vite plugin (Tailwind's recommended Vite setup, no PostCSS
  pipeline). Built CSS is byte-identical.

Added (were used directly but unlisted):
- @eslint/js, globals: imported by eslint.config.js

eslint 9 -> 10 now that eslint-plugin-import (peer eslint ^9) is gone.

Dockerfile: dropped `*.cjs` from COPY since no .cjs files remain.

node_modules: 310 -> 178 packages.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01APQhTaYTjEoreeUdJdcZWi
@dickhardt
dickhardt merged commit 66d348f into main Sep 6, 2026
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