Description
vp test fails on projects using Yarn PnP (Plug'n'Play) mode. The bundled config file cannot resolve the vite-plus module because Yarn PnP does not use a traditional node_modules layout.
Error
Error [ERR_MODULE_NOT_FOUND]: Cannot find package 'vite-plus' imported from vitest.config.mts.timestamp-xxx.mjs
The full error from vp test run:
vitest.config.mts (1:468) Warning: Could not resolve 'vite-plus' in vitest.config.mts
failed to load config from vitest.config.mts
⎯⎯⎯⎯⎯ Startup Error ⎯⎯⎯⎯⎯
Error [ERR_MODULE_NOT_FOUND]: Cannot find package 'vite-plus' imported from vitest.config.mts.timestamp-xxx.mjs
at Object.getPackageJSONURL (node:internal/modules/package_json_reader:301:9)
at packageResolve (node:internal/modules/esm/resolve:768:81)
...
Reproduction
Steps:
- Clone the repo and checkout
vp-migrate-yarn-pnp
- Run
vp install
- Run
vp test run
Environment
- Vite+ version:
v0.0.0-g52709db6.20260226-1136
- Yarn version:
4.12.0
- Node.js:
24.14.0
- OS: Ubuntu (GitHub Actions) / macOS
Config
vitest.config.mts:
import { defineConfig } from 'vite-plus';
package.json (relevant parts):
{
"packageManager": "yarn@4.12.0",
"devDependencies": {
"vite-plus": "catalog:"
},
"resolutions": {
"vite": "npm:@voidzero-dev/vite-plus-core@latest",
"vitest": "npm:@voidzero-dev/vite-plus-test@latest"
}
}
The project uses Yarn PnP (.pnp.cjs present, nodeLinker not set to node-modules).
Expected Behavior
vp test should work with Yarn PnP projects, resolving vite-plus through Yarn's PnP resolution.
Description
vp testfails on projects using Yarn PnP (Plug'n'Play) mode. The bundled config file cannot resolve thevite-plusmodule because Yarn PnP does not use a traditionalnode_moduleslayout.Error
The full error from
vp test run:Reproduction
vp-migrate-yarn-pnpSteps:
vp-migrate-yarn-pnpvp installvp test runEnvironment
v0.0.0-g52709db6.20260226-11364.12.024.14.0Config
vitest.config.mts:package.json(relevant parts):{ "packageManager": "yarn@4.12.0", "devDependencies": { "vite-plus": "catalog:" }, "resolutions": { "vite": "npm:@voidzero-dev/vite-plus-core@latest", "vitest": "npm:@voidzero-dev/vite-plus-test@latest" } }The project uses Yarn PnP (
.pnp.cjspresent,nodeLinkernot set tonode-modules).Expected Behavior
vp testshould work with Yarn PnP projects, resolvingvite-plusthrough Yarn's PnP resolution.