voidzero-dev / voidzero-dev/vite-plus

vp migrate: follow-up UX & correctness issues from real-world e2e

Abierto
#2,037 3 comentarios 5 reacciones 1 asignado Reclamado por @fengmk2 Ver en GitHub
bug enhancement migration test: e2e
Lenguaje dominante
Rust
Estrellas
5.8k
Forks
262
Merge medio
23 h 41 min
PR fusionados (30 d)
138

Descripción

Follow-up tracker for the unresolved items surfaced during the real-world migration pass in https://github.com/voidzero-dev/vite-plus/pull/1891#issuecomment-4764461957.

Goal: keep improving the `vp migrate` experience by fixing the concrete failures below. Each item links back to the project PR / CI log where it reproduces. Grouped by theme, not by project.

## 1. Migrated config is wrong or lossy or not good

- [ ] **Don't pin `pnpm@11.1.1`** — migrate selects a bad `packageManager` pin.
vinext ([review](https://github.com/fengmk2/vinext/pull/23/changes#r3510391060))
- [ ] **`packageManager` invalid semver** — `Invalid semver version "11.17.0" does not match "11.13.0" for "packageManager"`.
svelte-multiselect ([log](https://github.com/fengmk2/svelte-multiselect/actions/runs/28380981944/job/84083204616?pr=9))
- [ ] **`vite` should be written to the catalog, not inline** — migrate left a direct `vite` version instead of a catalog reference.
typed-xlsx ([diff](https://github.com/fengmk2/typed-xlsx/commit/de73374f269e305c746dc68ef3e01ee75fe1756b#diff-7ae45ad102eab3b6d7e7896acd08c427a9b25b346470d7bc6507b6481575d519R39), [source](https://github.com/voidzero-dev/vite-plus/pull/1891/changes/bf052feab8115df6b62b48a22976128624f0f92b))
- [ ] **IDE settings JSON comments stripped** — migrate rewrote `.vscode/settings.json` (jsonc) and dropped its comments.
vue-core ([diff](https://github.com/fengmk2/vue-core/pull/23/changes#diff-a5de3e5871ffcc383a2294845bd3df25d3eeff6c29ad46e3a396577c413bf357)); fix PR https://github.com/voidzero-dev/vite-plus/pull/1956
- [ ] **`tsconfig.json` not auto-migrated** — leaves removed `moduleResolution: node10`, which now errors: `Option 'moduleResolution=node10' has been removed.`
vitepress-carbon ([log](https://github.com/fengmk2/vitepress-carbon/actions/runs/28371465191/job/84049985811?pr=9))
- [ ] **`@types/node` peer floor too low after migrate** — `@voidzero-dev/vite-plus-core` requires `@types/node ^20.19.0 || >=22.12.0`, but the project pins `^20.14.12`. Below that peer range, pnpm resolves two separate `vitest@4.1.9` instances, so the snapshot singleton state is lost at runtime.
iles ([PR](https://github.com/fengmk2/iles/pull/1))
- [ ] Should use `catalog:vite-plus` instead of `catalog` on pnpm https://github.com/npmx-dev/npmx.dev/pull/2990/changes#diff-18ae0a0fab29a7db7aded913fd05f30a2c8f6c104fadae86c9d217091709794c
- [x] when `@playwright/test` deps exists, no need to add `playwright` to devDeps. https://github.com/npmx-dev/npmx.dev/pull/2990/changes#r3523965945
Fixed in https://github.com/voidzero-dev/vite-plus/pull/2637
- [ ] peerDependencyRules is no need? https://github.com/npmx-dev/npmx.dev/pull/2990#discussion_r3523966046

## 2. Lint migration

- [ ] ~~**`vp lint -c` rejects duplicate flag** — generated command runs `vp lint -c .oxlintrc.json` and fails with `Error: argument '-c' cannot be used multiple times in this context`.~~
pdfme ([log](https://github.com/fengmk2/pdfme/actions/runs/28246706049/job/83687478374?pr=10))
- [ ] **Unknown oxlint rule after migrate** — `Rule 'camelcase' not found in plugin 'eslint'`.
tech-interview-handbook ([PR](https://github.com/fengmk2/tech-interview-handbook/pull/3))

## 3. Post-migrate build / type resolution

- [ ] **Nuxt build: `Cannot find package 'rolldown'`** — `@nuxt/vite-builder` imports `rolldown`, which is not resolvable after migrate. Reproduces on multiple Nuxt projects.
npmx ([diff](https://github.com/fengmk2/npmx.dev/pull/26/changes/3f449662158f64de4dd483e5ba584fecd97fc7f3)),
unplugin-turbo-console ([log](https://github.com/fengmk2/unplugin-turbo-console/actions/runs/28383903122/job/84093433160?pr=9))
- [ ] **`vite-plus/client` types not found** — commit-hook `tsc --noEmit` fails: `Cannot find type definition file for 'vite-plus/client'` (from `"types": ["vitest/globals", "vite-plus/client"]`).
gitify ([log](https://github.com/fengmk2/gitify/actions/runs/28386568559/job/84102661464?pr=8))
- [ ] ~~**`@voidzero-dev/vite-plus-test` not found in tests** — `Cannot find package '@voidzero-dev/vite-plus-test'` imported from a `*.test.ts`.~~
react-doctor ([PR](https://github.com/fengmk2/react-doctor/pull/4))
- [ ] **postinstall failures** — "postinstall hells" after migrate.
odysee-frontend ([PR](https://github.com/fengmk2/odysee-frontend/pull/2))

## 4. pnpm trust policy (`no-downgrade`)

- [ ] **Trust-downgrade blocks a legit prerelease dep** — `ERR_PNPM_TRUST_DOWNGRADE High-risk trust downgrade for "effect@4.0.0-beta.70" (possible package takeover)`.
react-doctor ([PR](https://github.com/fengmk2/react-doctor/pull/4))

## Won't-fix / out of scope (tracked for context)

- matterviz: `TS2783: 'staged' is specified more than once` — caused by the user's shared dotfiles config, not migrate. ([PR](https://github.com/fengmk2/matterviz/pull/4))
- ohbug: install fails — user code issue, won't fix. ([PR](https://github.com/fengmk2/ohbug/pull/10))

## Pending e2e runs (no migrate bug identified yet, just not finished)

cs-demo-manager, museeks, bippy, rari, dify, BlockNote, vuestrata, anywidget, media-processors, sigle, mantine. These still need a completed migration run; open a dedicated issue only if a real bug surfaces. Status stays tracked in https://github.com/voidzero-dev/vite-plus/pull/1891#issuecomment-4764461957.

Guía de contribución

Abrir la guía de contribución

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.