Skip to content

feat: upgrade to vite v8#1017

Open
stevenle wants to merge 1 commit intoalphafrom
claude/upgrade-vite-v8-1Gzdm
Open

feat: upgrade to vite v8#1017
stevenle wants to merge 1 commit intoalphafrom
claude/upgrade-vite-v8-1Gzdm

Conversation

@stevenle
Copy link
Copy Markdown
Member

@stevenle stevenle commented Apr 2, 2026

Summary

This PR updates the build configuration to use oxc as the JavaScript/JSX transformer instead of esbuild, and rolldown instead of rollup for bundling. These changes align with Vite 8.0.3's new defaults and modernize the build toolchain.

Key Changes

  • JSX Configuration: Migrated from esbuild's jsx and jsxImportSource options to oxc's nested jsx configuration with runtime and importSource properties
    • Updated in both packages/root/src/cli/build.ts and packages/root/src/node/vite.ts
  • Build Options: Replaced all rollupOptions references with rolldownOptions throughout the build configuration
    • Updated in packages/root/src/cli/build.ts (3 build configurations)
    • Updated in test fixtures to match new configuration structure
  • Removed Legacy Configuration: Removed esbuild-specific esbuildOptions from optimizeDeps in vite.ts that was previously needed for TypeScript decorator support
  • Dependency Updates: Updated Vite to 8.0.3 and Vitest to 4.1.2 across both packages
  • Test Snapshot: Updated asset hash snapshot in asset-url-format.test.ts to reflect changes from the new build toolchain

Implementation Details

The oxc configuration uses a nested object structure for JSX settings rather than flat properties, requiring restructuring of the configuration object. All references to rollup's configuration have been systematically replaced with rolldown equivalents while maintaining the same output configuration structure.

https://claude.ai/code/session_01EBgUoAvR74W2Cy2mayzY5X

- Update vite 7.1.4 → 8.0.3 in packages/root and packages/root-cms
- Migrate esbuild config to oxc (jsx automatic with preact import source)
- Migrate build.rollupOptions to build.rolldownOptions
- Remove deprecated optimizeDeps.esbuildOptions (Rolldown replaces esbuild)
- Update vitest to 4.1.2 for vite 8 peer dependency compatibility
- Update @vitest/browser and @vitest/browser-playwright to 4.1.2
- Update test snapshot for new build hash

https://claude.ai/code/session_01EBgUoAvR74W2Cy2mayzY5X
@stevenle stevenle changed the title Migrate from esbuild to oxc and rollup to rolldown feat: upgrade to vite v8 Apr 3, 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.

2 participants