voidzero-dev / voidzero-dev/vite-plus

chore: remove remaining VP_HOME usage (especially snapshot tests)

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

Descripción

## Context

`VpDirs` resolution still honors deprecated `VP_HOME` as a full legacy-root pin for compatibility, but much of the repo still **sets** or **assumes** `VP_HOME` as the primary install root. That fights the split layout (`VP_*_DIR` / `XDG_*` / platform defaults) and keeps fixtures on a monolithic shape.

Follow-up to #2346 / #827.

## Goal

Stop using `VP_HOME` except where it is required as a **read-only** deprecated override (custom roots). Prefer `VP_BIN_DIR` / `VP_DATA_DIR` / `VP_CACHE_DIR` and XDG/platform defaults everywhere else.

## Scope (high signal)

- [ ] **PTY snapshot suite** (`crates/vp_cli_snapshots/`): provision per-case homes with split dirs or explicit `VP_*_DIR`, not a permanent `VP_HOME=~/.vite-plus` baseline; update fixtures that expand `$VP_HOME/...`
- [ ] **CI / bootstrap**: `pnpm bootstrap-cli`, `GITHUB_PATH` entries, scripts that export `VP_HOME` only to force legacy shape
- [ ] **Docs / comments / help strings** that still describe `VP_HOME` as the default home
- [ ] **Tests** that seed `~/.vite-plus` solely to trigger grandfathering (replace with split targets or explicit `VP_*_DIR`)
- [ ] Audit remaining `set_var("VP_HOME")` / `VP_HOME:` in Rust, TS, shell, and workflow YAML

## Non-goals

- Removing the deprecated **read** of `VP_HOME` in `VpDirs` resolution (keep until a later deprecation cut)
- Auto-migrating on-disk `~/.vite-plus` trees (tracked separately)

## Acceptance

- Snapshot runner and fixtures do not require `VP_HOME` for the default happy path
- New tests document layout via `VP_*_DIR` / XDG / platform defaults
- Grep for product code that **sets** `VP_HOME` is limited to documented custom-root / trampoline edge cases

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.