voidzero-dev / voidzero-dev/vite-plus

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

Đang mở
#2,037 3 bình luận 5 reaction 1 người được giao Được @fengmk2 nhận Xem trên GitHub
bug enhancement migration test: e2e
Ngôn ngữ chính
Rust
Star
5.8k
Fork
262
Merge trung bình
23 giờ 18 phút
Pull request đã merge (30 ngày)
139

Mô tả

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.

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Đánh giá

Issue này chưa được đánh giá.

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.