Skip to content

fix(installer): enforce Windows setup requirements - #2505

Merged
fengmk2 merged 12 commits into
mainfrom
fix/setup-vp-exe-review-feedback
Aug 21, 2026
Merged

fix(installer): enforce Windows setup requirements#2505
fengmk2 merged 12 commits into
mainfrom
fix/setup-vp-exe-review-feedback

Conversation

@fengmk2

@fengmk2 fengmk2 commented Aug 20, 2026

Copy link
Copy Markdown
Member

vp-setup.exe now validates directory variables before it resolves a version or creates an installation root. VP_HOME is the single-root override. Users must set VP_BIN_DIR, VP_DATA_DIR, and VP_CACHE_DIR together. Each value must be an absolute path. Users can set each XDG_* variable independently. The installer no longer provides the redundant --install-dir option.

vp-setup.exe accepts Vite+ 0.3.0 or later. CI can also install internal 0.0.0-commit. builds. The installer rejects all other 0.0.0 versions and earlier releases before it downloads a payload. It no longer probes payloads or uses the monolithic layout.

vp_shared owns directory validation. vp_setup owns version support checks. vp-setup and vp upgrade use these shared checks.

The Windows installer now replaces a dangling current junction. It also removes ANSI output when NO_COLOR is set. The Windows workflow tests invalid directory variables, unsupported versions, junction repair, and NO_COLOR output.

@netlify

netlify Bot commented Aug 20, 2026

Copy link
Copy Markdown

Deploy Preview for viteplus-preview canceled.

Name Link
🔨 Latest commit 663cabd
🔍 Latest deploy log https://app.netlify.com/projects/viteplus-preview/deploys/6a87c4af5262580007fb1a3b

@github-actions

github-actions Bot commented Aug 20, 2026

Copy link
Copy Markdown
Contributor

Native binary sizes (663cabd)

Final release artifacts built by the canonical build-upstream and build-windows-cli actions.

Artifact Format Base PR Change
vp (Linux x64) Binary 10.69 MiB 10.69 MiB 0 B (0.00%)
vp (Linux x64) gzip -9 4.63 MiB 4.63 MiB +335 B (+0.01%)
NAPI (Linux x64) Binary 32.19 MiB 32.19 MiB 0 B (0.00%)
NAPI (Linux x64) gzip -9 12.69 MiB 12.69 MiB +18 B (+0.00%)
vp (macOS ARM64) Binary 7.98 MiB 7.98 MiB 0 B (0.00%)
vp (macOS ARM64) gzip -9 4.03 MiB 4.04 MiB +6.17 KiB (+0.15%)
NAPI (macOS ARM64) Binary 39.79 MiB 39.79 MiB +16 B (+0.00%)
NAPI (macOS ARM64) gzip -9 16.97 MiB 16.98 MiB +935 B (+0.01%)
vp (Windows x64) Binary 8.58 MiB 8.58 MiB +4.50 KiB (+0.05%)
vp (Windows x64) gzip -9 3.74 MiB 3.74 MiB +1.34 KiB (+0.03%)
NAPI (Windows x64) Binary 27.03 MiB 27.03 MiB +512 B (+0.00%)
NAPI (Windows x64) gzip -9 10.75 MiB 10.75 MiB +101 B (+0.00%)
Trampoline (Windows x64) Binary 216.50 KiB 216.50 KiB 0 B (0.00%)
Trampoline (Windows x64) gzip -9 104.34 KiB 104.34 KiB 0 B (0.00%)
Installer (Windows x64) Binary 4.48 MiB 4.48 MiB -5.00 KiB (-0.11%)
Installer (Windows x64) gzip -9 2.10 MiB 2.10 MiB -763 B (-0.03%)

@fengmk2 fengmk2 self-assigned this Aug 20, 2026
@fengmk2
fengmk2 force-pushed the fix/setup-vp-exe-review-feedback branch from b0ecb3c to 42de16f Compare August 20, 2026 03:00
@fengmk2 fengmk2 added test: e2e Auto run e2e tests test: install-e2e run vite install e2e test test: create-e2e Run `vp create` e2e tests test: sfw preview-build Publish this PR's commits to the registry bridge as preview builds labels Aug 20, 2026
@github-actions

github-actions Bot commented Aug 20, 2026

Copy link
Copy Markdown
Contributor

Registry bridge build (9726a19)

This commit build is published to the registry bridge, which serves these as ordinary npm versions (every other package proxies to npmjs):

Package Version
vite-plus 0.0.0-commit.9726a197fb80371c6bb44d9482a4e556303bb737
@voidzero-dev/vite-plus-core 0.0.0-commit.9726a197fb80371c6bb44d9482a4e556303bb737

Install the Vite+ CLI built from this commit, then migrate a project:

# macOS / Linux
curl -fsSL https://raw.githubusercontent.com/voidzero-dev/vite-plus/9726a197fb80371c6bb44d9482a4e556303bb737/packages/cli/install.sh | VP_PR_VERSION=2505 bash
# Windows (PowerShell)
$env:VP_PR_VERSION="2505"; irm https://raw.githubusercontent.com/voidzero-dev/vite-plus/9726a197fb80371c6bb44d9482a4e556303bb737/packages/cli/install.ps1 | iex

Or download the standalone Windows installer built from this commit:

Architecture Installer
x64 vp-setup-x86_64-pc-windows-msvc.exe
Arm64 vp-setup-aarch64-pc-windows-msvc.exe

GitHub requires you to sign in and downloads each installer as a ZIP artifact. Extract vp-setup.exe, then run it against this preview build:

.\vp-setup.exe --version "0.0.0-commit.9726a197fb80371c6bb44d9482a4e556303bb737" --registry "https://registry-bridge.viteplus.dev/"

After installing, upgrade the current project's vite-plus to this test build with:

vp migrate

Or point your package manager at the bridge registry https://registry-bridge.viteplus.dev/:

Package manager Registry config
npm / pnpm / Bun .npmrc: registry=https://registry-bridge.viteplus.dev/
Yarn (v2+) .yarnrc.yml: npmRegistryServer: "https://registry-bridge.viteplus.dev/"

Then pin the build (vite aliases to vite-plus-core; pnpm can use a catalog, npm an overrides entry):

{
  "devDependencies": {
    "vite-plus": "0.0.0-commit.9726a197fb80371c6bb44d9482a4e556303bb737",
    "vite": "npm:@voidzero-dev/vite-plus-core@0.0.0-commit.9726a197fb80371c6bb44d9482a4e556303bb737"
  }
}

@github-actions

Copy link
Copy Markdown
Contributor

🐳 Docker preview image

Built from this PR's registry bridge build:

Image Compressed size
ghcr.io/voidzero-dev/vite-plus:pr-2505 236MB
# remove any stale local copy from a previous run, then pull fresh
docker rmi ghcr.io/voidzero-dev/vite-plus:pr-2505 2>/dev/null; docker pull ghcr.io/voidzero-dev/vite-plus:pr-2505

Quick check:

docker run --rm ghcr.io/voidzero-dev/vite-plus:pr-2505 vp --version

See docs/guide/docker.md for usage.

@fengmk2
fengmk2 marked this pull request as ready for review August 20, 2026 05:09
@fengmk2
fengmk2 requested review from forehalo and wan9chi August 20, 2026 05:09
Comment thread .github/workflows/test-standalone-install.yml Outdated
@fengmk2
fengmk2 force-pushed the fix/setup-vp-exe-review-feedback branch from 42de16f to d3f9560 Compare August 20, 2026 05:35
@fengmk2 fengmk2 changed the title fix(installer): validate paths and clean legacy fallback fix(installer): validate directories and require Vite+ 0.3.0 Aug 20, 2026
@fengmk2 fengmk2 added preview-build Publish this PR's commits to the registry bridge as preview builds and removed preview-build Publish this PR's commits to the registry bridge as preview builds labels Aug 20, 2026
@fengmk2
fengmk2 marked this pull request as draft August 20, 2026 06:19
@fengmk2 fengmk2 added preview-build Publish this PR's commits to the registry bridge as preview builds and removed preview-build Publish this PR's commits to the registry bridge as preview builds labels Aug 20, 2026
@github-actions

github-actions Bot commented Aug 20, 2026

Copy link
Copy Markdown
Contributor

✅ Staging deployment successful!

Preview: https://viteplus-staging.void.app/
Commit: 663cabd

@fengmk2 fengmk2 changed the title fix(installer): validate directories and require Vite+ 0.3.0 fix(installer): enforce Windows setup requirements Aug 20, 2026
@fengmk2 fengmk2 added preview-build Publish this PR's commits to the registry bridge as preview builds and removed preview-build Publish this PR's commits to the registry bridge as preview builds labels Aug 20, 2026
@fengmk2
fengmk2 force-pushed the fix/setup-vp-exe-review-feedback branch from ec0d0f3 to 663cabd Compare August 21, 2026 03:23
@fengmk2
fengmk2 merged commit c25b6b2 into main Aug 21, 2026
123 checks passed
@fengmk2
fengmk2 deleted the fix/setup-vp-exe-review-feedback branch August 21, 2026 03:50
fengmk2 added a commit that referenced this pull request Aug 21, 2026
`install.sh` now hides shell configuration warnings and instructions
when `CI=true`. CI runners set `PATH` through the job environment.
Changes to shell files do not change later job steps.

The examples show only the relevant output lines.

Before:

```text
warn: Cannot write to /home/runner/.bashrc (permission denied), skipping.
warn: Cannot write to /home/runner/.profile (permission denied), skipping.

Shell configuration:
    - bash: failed ~/.bashrc, ~/.profile

note: Some shells still need manual setup.
Manual setup instructions:
```

After:

```text
Install locations:
    Data directory: <data-directory>
    Bin directory:  <bin-directory>
```

Set `VP_LOG=trace` to show the hidden shell file errors. Installations
outside CI keep the warnings and manual setup instructions.

This PR is stacked on #2505.

Closes voidzero-dev/setup-vp#87
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

preview-build Publish this PR's commits to the registry bridge as preview builds test: create-e2e Run `vp create` e2e tests test: e2e Auto run e2e tests test: install-e2e run vite install e2e test test: sfw

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants