chore(deps): migrate to Vite 8 and roll dependencies - #218
Conversation
Reviewer's GuideMigrates the project from a Rolldown-based Vite 7 fork to upstream Vite 8, refreshes frontend/docs dependencies and tooling, and updates stepper and docs APIs to match new library versions while cleaning up legacy configuration. Sequence diagram for updated CreateInstancePage stepper flowsequenceDiagram
actor User
participant CreateInstancePage
participant Stepper
User->>CreateInstancePage: handleSubmit(versionForm)
CreateInstancePage->>Stepper: id
alt stepper.id == "version"
CreateInstancePage->>Stepper: next()
end
User->>CreateInstancePage: handleSubmit(instanceForm)
CreateInstancePage->>Stepper: id
alt stepper.id == "instance"
CreateInstancePage->>Stepper: isLast
CreateInstancePage-->>User: submitCreateInstance()
end
File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
📦 Semifold release planPlan calculated through commit 333d532. Changesets introduced by this pull request: 2 changesets · 4 packages
This comment updates automatically as the pull request changes. |
There was a problem hiding this comment.
Hey - I've left some high level feedback:
Fixed security issues:
-
image-size (link)
-
js-yaml (link)
-
react-router (link)
-
In
CreateInstancePage, the migration to the newdefineStepperAPI changes howschema,id, navigation, and matching are accessed; consider double-checking all step transitions (including cancel/back flows) to ensure they still respect the new stepper state and indices as expected. -
The Vite 8 migration swaps
__dirnameforimport.meta.dirnameand addsresolve.tsconfigPaths: truein the docs config; it may be worth verifying that these resolve settings work correctly in both dev and build CI environments, especially with the updated TSallowImportingTsExtensionsand path mappings.
Prompt for AI Agents
Please address the comments from this code review:
## Overall Comments
- In `CreateInstancePage`, the migration to the new `defineStepper` API changes how `schema`, `id`, navigation, and matching are accessed; consider double-checking all step transitions (including cancel/back flows) to ensure they still respect the new stepper state and indices as expected.
- The Vite 8 migration swaps `__dirname` for `import.meta.dirname` and adds `resolve.tsconfigPaths: true` in the docs config; it may be worth verifying that these resolve settings work correctly in both dev and build CI environments, especially with the updated TS `allowImportingTsExtensions` and path mappings.Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.
There was a problem hiding this comment.
Pull request overview
This pull request migrates the workspace’s frontend and docs toolchains to Vite 8 and updates a broad set of JavaScript/TypeScript, documentation, formatting, and CI dependencies to match the new ecosystem versions.
Changes:
- Upgrade UI and docs packages to Vite 8 and refresh major frontend dependencies (React Router, Stepperize, Biome, TypeScript, etc.).
- Update UI flow code to the new
@stepperize/reactAPI and adjust YAML parsing forjs-yaml’s newer API surface. - Modernize tooling/config (tsconfig path handling, Biome schema/rules, CI actions versions) and reformat several JSON fixtures/docs data files.
Reviewed changes
Copilot reviewed 30 out of 34 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| src-tauri/tests/fixtures/migration/v1/prism/vanilla/mmc-pack.json | Reformat Prism fixture JSON. |
| src-tauri/tests/fixtures/migration/v1/prism/modded/mmc-pack.json | Reformat Prism fixture JSON (pretty-printed). |
| src-tauri/tests/fixtures/migration/v1/prism/forge/mmc-pack.json | Reformat Prism fixture JSON (pretty-printed). |
| src-tauri/tests/fixtures/migration/v1/prism/fabric/mmc-pack.json | Reformat Prism fixture JSON (pretty-printed). |
| src-tauri/tests/fixtures/migration/v1/prism/conflicting/mmc-pack.json | Reformat Prism fixture JSON. |
| src-tauri/tests/fixtures/migration/v1/minecraft-pcl/versions/1.20.1-forge/1.20.1-forge.json | Reformat migration fixture JSON. |
| src-tauri/tests/fixtures/migration/v1/minecraft-hmcl/versions/1.20.1-fabric/1.20.1-fabric.json | Reformat migration fixture JSON. |
| src-tauri/tests/fixtures/migration/v1/archive-manifest.json | Reformat archive manifest fixture JSON. |
| scripts/release-workflow.test.mjs | Update js-yaml usage to named load import. |
| pnpm-workspace.yaml | Remove dependency overrides now that Vite 8 is used directly. |
| packages/ui/vite.config.ts | Switch alias resolution to use import.meta.dirname (ESM-friendly). |
| packages/ui/tsconfig.json | Update path-resolution config (remove baseUrl). |
| packages/ui/tsconfig.app.json | Update path-resolution config (remove baseUrl). |
| packages/ui/src/pages/instances/create.tsx | Migrate stepper usage to @stepperize/react v7 API. |
| packages/ui/src/components/guided-tour.tsx | Adjust driver.js popover config (removes explicit side/align on first step). |
| packages/ui/public/icon.svg | Add <title> element for the icon. |
| packages/ui/package.json | Upgrade UI dependencies and move to Vite 8 + newer TypeScript. |
| packages/ui-new/src/client.ts | Reformat/normalize generated client wrapper formatting. |
| packages/docs/vite.config.ts | Remove vite-tsconfig-paths plugin and enable Vite 8 native tsconfig-paths resolution. |
| packages/docs/tsconfig.json | Update TS config for TS-extension imports and path mapping normalization. |
| packages/docs/package.json | Upgrade docs dependencies to Vite 8 + React Router 8 + newer TypeScript. |
| packages/docs/biome.json | Update Biome schema and linter preset configuration. |
| packages/docs/app/root.tsx | Update defineI18nUI usage to match updated API shape. |
| package.json | Upgrade workspace tooling dependencies (toml, js-yaml, Biome, prek, etc.). |
| docs/release/rc1-parity.json | Reformat parity documentation JSON. |
| biome.json | Update Biome schema and linter preset configuration; mark config as repo root. |
| .github/workflows/test.yml | Update actions/setup-node and pnpm/action-setup versions. |
| .github/workflows/semifold-ci.yaml | Update actions/setup-node and pnpm/action-setup versions. |
| .github/workflows/prek.yml | Update pnpm + node setup actions. |
| .github/workflows/lint.yml | Update pnpm + node setup actions. |
| .github/workflows/docs-build.yml | Update pnpm + node setup actions. |
| .github/workflows/check.yml | Update pnpm + node setup actions. |
| .github/copilot-instructions.md | Update dev docs to reflect Vite 8 (Rolldown integrated). |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Summary by Sourcery
Migrate the workspace to Vite 8 and roll the frontend, documentation, tooling, and CI dependencies to current releases.
Enhancements:
Build:
CI:
Documentation:
Tests:
Chores: