voidzero-dev / voidzero-dev/vite-plus

fix(migrate): detect Yarn PnP config even when env overrides nodeLinker

Abierto
#2,001 0 comentarios 0 reacciones 1 asignado Reclamado por @fengmk2 Ver en GitHub
bug
Lenguaje dominante
Rust
Estrellas
5.8k
Forks
262
Merge medio
1 d 34 min
PR fusionados (30 d)
135

Descripción

`vp migrate` currently treats `YARN_NODE_LINKER=node-modules` as enough to skip Yarn PnP handling. However, if the repository itself has `.yarnrc.yml` with `nodeLinker: pnp`, migration can complete successfully while leaving unsupported PnP config in the project. Future installs without that environment override will return to PnP mode.

Expected behavior:

- If `.yarnrc.yml` explicitly sets `nodeLinker: pnp`, migration should not silently pass just because `YARN_NODE_LINKER=node-modules` is set.
- Preferably, migration should stop and ask the user to change the project config manually, or apply the existing node-modules conversion flow if that is the intended behavior.
- `YARN_NODE_LINKER=pnp` should still hard-block migration as today.

Suggested test:

Create a Yarn Berry fixture with:

```yaml
# .yarnrc.yml
nodeLinker: pnp
```

Run migrate with:

```bash
YARN_NODE_LINKER=node-modules vp migrate --no-interactive
```

Assert that migration does not report the project as successfully migrated while leaving `nodeLinker: pnp` unchanged.

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.