diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 2f8658b810..592e6867a1 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -138,6 +138,7 @@ jobs: include: - os: ubuntu-latest - os: namespace-profile-mac-default + - os: windows-latest runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 @@ -166,15 +167,23 @@ jobs: - name: Run CLI lint run: pnpm lint + if: ${{ matrix.os != 'windows-latest' }} - name: Install Playwright browsers run: pnpx playwright install chromium - name: Run CLI E2E tests + if: ${{ matrix.os != 'windows-latest' }} run: | RUST_BACKTRACE=1 pnpm test git diff --exit-code + - name: Run CLI E2E tests + if: ${{ matrix.os == 'windows-latest' }} + run: | + RUST_BACKTRACE=1 pnpm -r snap-test + git diff --exit-code + install-e2e-test: name: vite install E2E test # FIXME: Error: spawnSync esbuild ENOTSOCK diff --git a/Cargo.lock b/Cargo.lock index cc2df67e71..384693cb7d 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -832,12 +832,12 @@ dependencies = [ [[package]] name = "ctor" -version = "0.5.0" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67773048316103656a637612c4a62477603b777d91d9c62ff2290f9cde178fdb" +checksum = "ec09e802f5081de6157da9a75701d6c713d8dc3ba52571fd4bd25f412644e8a6" dependencies = [ "ctor-proc-macro 0.0.6", - "dtor", + "dtor 0.0.6", ] [[package]] @@ -847,7 +847,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "59c9b8bdf64ee849747c1b12eb861d21aa47fa161564f48332f1afe2373bf899" dependencies = [ "ctor-proc-macro 0.0.7", - "dtor", + "dtor 0.1.0", ] [[package]] @@ -1026,15 +1026,30 @@ dependencies = [ "litrs", ] +[[package]] +name = "dtor" +version = "0.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "97cbdf2ad6846025e8e25df05171abfb30e3ababa12ee0a0e44b9bbe570633a8" +dependencies = [ + "dtor-proc-macro 0.0.5", +] + [[package]] name = "dtor" version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e58a0764cddb55ab28955347b45be00ade43d4d6f3ba4bf3dc354e4ec9432934" dependencies = [ - "dtor-proc-macro", + "dtor-proc-macro 0.0.6", ] +[[package]] +name = "dtor-proc-macro" +version = "0.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7454e41ff9012c00d53cf7f475c5e3afa3b91b7c90568495495e8d9bf47a1055" + [[package]] name = "dtor-proc-macro" version = "0.0.6" @@ -1102,7 +1117,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb" dependencies = [ "libc", - "windows-sys 0.61.1", + "windows-sys 0.52.0", ] [[package]] @@ -1229,7 +1244,7 @@ dependencies = [ [[package]] name = "fspy" version = "0.1.0" -source = "git+https://github.com/voidzero-dev/vite-task?rev=ba48c0edb8700c26363b89812be1f93940947efc#ba48c0edb8700c26363b89812be1f93940947efc" +source = "git+https://github.com/voidzero-dev/vite-task?rev=d66556ab090fb5c5d85ecc7798a0fe9b6f1f26da#d66556ab090fb5c5d85ecc7798a0fe9b6f1f26da" dependencies = [ "allocator-api2", "anyhow", @@ -1263,7 +1278,7 @@ dependencies = [ [[package]] name = "fspy_detours_sys" version = "0.0.0" -source = "git+https://github.com/voidzero-dev/vite-task?rev=ba48c0edb8700c26363b89812be1f93940947efc#ba48c0edb8700c26363b89812be1f93940947efc" +source = "git+https://github.com/voidzero-dev/vite-task?rev=d66556ab090fb5c5d85ecc7798a0fe9b6f1f26da#d66556ab090fb5c5d85ecc7798a0fe9b6f1f26da" dependencies = [ "cc", "winapi", @@ -1272,7 +1287,7 @@ dependencies = [ [[package]] name = "fspy_preload_unix" version = "0.0.0" -source = "git+https://github.com/voidzero-dev/vite-task?rev=ba48c0edb8700c26363b89812be1f93940947efc#ba48c0edb8700c26363b89812be1f93940947efc" +source = "git+https://github.com/voidzero-dev/vite-task?rev=d66556ab090fb5c5d85ecc7798a0fe9b6f1f26da#d66556ab090fb5c5d85ecc7798a0fe9b6f1f26da" dependencies = [ "anyhow", "bincode", @@ -1287,7 +1302,7 @@ dependencies = [ [[package]] name = "fspy_preload_windows" version = "0.1.0" -source = "git+https://github.com/voidzero-dev/vite-task?rev=ba48c0edb8700c26363b89812be1f93940947efc#ba48c0edb8700c26363b89812be1f93940947efc" +source = "git+https://github.com/voidzero-dev/vite-task?rev=d66556ab090fb5c5d85ecc7798a0fe9b6f1f26da#d66556ab090fb5c5d85ecc7798a0fe9b6f1f26da" dependencies = [ "bincode", "constcat", @@ -1303,7 +1318,7 @@ dependencies = [ [[package]] name = "fspy_seccomp_unotify" version = "0.1.0" -source = "git+https://github.com/voidzero-dev/vite-task?rev=ba48c0edb8700c26363b89812be1f93940947efc#ba48c0edb8700c26363b89812be1f93940947efc" +source = "git+https://github.com/voidzero-dev/vite-task?rev=d66556ab090fb5c5d85ecc7798a0fe9b6f1f26da#d66556ab090fb5c5d85ecc7798a0fe9b6f1f26da" dependencies = [ "bincode", "futures-util", @@ -1320,7 +1335,7 @@ dependencies = [ [[package]] name = "fspy_shared" version = "0.0.0" -source = "git+https://github.com/voidzero-dev/vite-task?rev=ba48c0edb8700c26363b89812be1f93940947efc#ba48c0edb8700c26363b89812be1f93940947efc" +source = "git+https://github.com/voidzero-dev/vite-task?rev=d66556ab090fb5c5d85ecc7798a0fe9b6f1f26da#d66556ab090fb5c5d85ecc7798a0fe9b6f1f26da" dependencies = [ "allocator-api2", "bincode", @@ -1338,7 +1353,7 @@ dependencies = [ [[package]] name = "fspy_shared_unix" version = "0.0.0" -source = "git+https://github.com/voidzero-dev/vite-task?rev=ba48c0edb8700c26363b89812be1f93940947efc#ba48c0edb8700c26363b89812be1f93940947efc" +source = "git+https://github.com/voidzero-dev/vite-task?rev=d66556ab090fb5c5d85ecc7798a0fe9b6f1f26da#d66556ab090fb5c5d85ecc7798a0fe9b6f1f26da" dependencies = [ "anyhow", "base64 0.22.1", @@ -1761,7 +1776,7 @@ dependencies = [ "libc", "percent-encoding", "pin-project-lite", - "socket2 0.6.0", + "socket2 0.5.10", "tokio", "tower-service", "tracing", @@ -2202,13 +2217,13 @@ dependencies = [ [[package]] name = "napi" -version = "3.3.0" +version = "3.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1b74e3dce5230795bb4d2821b941706dee733c7308752507254b0497f39cad7" +checksum = "96671d5c84cee3ae4cab96386b9f953b22569ece9677b9fdd1492550a165eca5" dependencies = [ "anyhow", "bitflags 2.9.4", - "ctor 0.5.0", + "ctor 0.4.3", "napi-build", "napi-sys", "nohash-hasher", @@ -2224,12 +2239,12 @@ checksum = "dcae8ad5609d14afb3a3b91dee88c757016261b151e9dcecabf1b2a31a6cab14" [[package]] name = "napi-derive" -version = "3.2.5" +version = "3.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7552d5a579b834614bbd496db5109f1b9f1c758f08224b0dee1e408333adf0d0" +checksum = "b0fb461a375ab7e557a0f69a962affe8f14902bb35cbfe1b9292f011207fcace" dependencies = [ "convert_case 0.8.0", - "ctor 0.5.0", + "ctor 0.4.3", "napi-derive-backend", "proc-macro2", "quote", @@ -3132,7 +3147,7 @@ dependencies = [ "errno", "libc", "linux-raw-sys", - "windows-sys 0.61.1", + "windows-sys 0.52.0", ] [[package]] @@ -3639,7 +3654,7 @@ dependencies = [ "getrandom 0.3.3", "once_cell", "rustix", - "windows-sys 0.61.1", + "windows-sys 0.52.0", ] [[package]] @@ -4119,7 +4134,7 @@ dependencies = [ [[package]] name = "vite_glob" version = "0.0.0" -source = "git+https://github.com/voidzero-dev/vite-task?rev=ba48c0edb8700c26363b89812be1f93940947efc#ba48c0edb8700c26363b89812be1f93940947efc" +source = "git+https://github.com/voidzero-dev/vite-task?rev=d66556ab090fb5c5d85ecc7798a0fe9b6f1f26da#d66556ab090fb5c5d85ecc7798a0fe9b6f1f26da" dependencies = [ "thiserror 2.0.17", "wax", @@ -4159,7 +4174,7 @@ dependencies = [ [[package]] name = "vite_path" version = "0.1.0" -source = "git+https://github.com/voidzero-dev/vite-task?rev=ba48c0edb8700c26363b89812be1f93940947efc#ba48c0edb8700c26363b89812be1f93940947efc" +source = "git+https://github.com/voidzero-dev/vite-task?rev=d66556ab090fb5c5d85ecc7798a0fe9b6f1f26da#d66556ab090fb5c5d85ecc7798a0fe9b6f1f26da" dependencies = [ "bincode", "diff-struct", @@ -4172,7 +4187,7 @@ dependencies = [ [[package]] name = "vite_str" version = "0.1.0" -source = "git+https://github.com/voidzero-dev/vite-task?rev=ba48c0edb8700c26363b89812be1f93940947efc#ba48c0edb8700c26363b89812be1f93940947efc" +source = "git+https://github.com/voidzero-dev/vite-task?rev=d66556ab090fb5c5d85ecc7798a0fe9b6f1f26da#d66556ab090fb5c5d85ecc7798a0fe9b6f1f26da" dependencies = [ "bincode", "compact_str", @@ -4183,7 +4198,7 @@ dependencies = [ [[package]] name = "vite_task" version = "0.0.0" -source = "git+https://github.com/voidzero-dev/vite-task?rev=ba48c0edb8700c26363b89812be1f93940947efc#ba48c0edb8700c26363b89812be1f93940947efc" +source = "git+https://github.com/voidzero-dev/vite-task?rev=d66556ab090fb5c5d85ecc7798a0fe9b6f1f26da#d66556ab090fb5c5d85ecc7798a0fe9b6f1f26da" dependencies = [ "anyhow", "bincode", @@ -4222,7 +4237,7 @@ dependencies = [ [[package]] name = "vite_workspace" version = "0.0.0" -source = "git+https://github.com/voidzero-dev/vite-task?rev=ba48c0edb8700c26363b89812be1f93940947efc#ba48c0edb8700c26363b89812be1f93940947efc" +source = "git+https://github.com/voidzero-dev/vite-task?rev=d66556ab090fb5c5d85ecc7798a0fe9b6f1f26da#d66556ab090fb5c5d85ecc7798a0fe9b6f1f26da" dependencies = [ "petgraph 0.8.3", "rustc-hash", @@ -4457,7 +4472,7 @@ version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" dependencies = [ - "windows-sys 0.61.1", + "windows-sys 0.52.0", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index f80a41e1d3..ba277739e4 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -65,12 +65,12 @@ tokio = "1.48.0" tracing = "0.1.41" tracing-subscriber = { version = "0.3.19", features = ["env-filter", "serde"] } vite_error = { path = "crates/vite_error" } -vite_glob = { git = "https://github.com/voidzero-dev/vite-task", rev = "ba48c0edb8700c26363b89812be1f93940947efc" } +vite_glob = { git = "https://github.com/voidzero-dev/vite-task", rev = "d66556ab090fb5c5d85ecc7798a0fe9b6f1f26da" } vite_install = { path = "crates/vite_install" } -vite_path = { git = "https://github.com/voidzero-dev/vite-task", rev = "ba48c0edb8700c26363b89812be1f93940947efc" } -vite_str = { git = "https://github.com/voidzero-dev/vite-task", rev = "ba48c0edb8700c26363b89812be1f93940947efc" } -vite_task = { git = "https://github.com/voidzero-dev/vite-task", rev = "ba48c0edb8700c26363b89812be1f93940947efc" } -vite_workspace = { git = "https://github.com/voidzero-dev/vite-task", rev = "ba48c0edb8700c26363b89812be1f93940947efc" } +vite_path = { git = "https://github.com/voidzero-dev/vite-task", rev = "d66556ab090fb5c5d85ecc7798a0fe9b6f1f26da" } +vite_str = { git = "https://github.com/voidzero-dev/vite-task", rev = "d66556ab090fb5c5d85ecc7798a0fe9b6f1f26da" } +vite_task = { git = "https://github.com/voidzero-dev/vite-task", rev = "d66556ab090fb5c5d85ecc7798a0fe9b6f1f26da" } +vite_workspace = { git = "https://github.com/voidzero-dev/vite-task", rev = "d66556ab090fb5c5d85ecc7798a0fe9b6f1f26da" } wax = "0.6.0" napi = { version = "3.0.0", default-features = false, features = ["async", "error_anyhow"] } diff --git a/packages/cli/snap-tests-todo/pnpm-install-with-options/steps.json b/packages/cli/snap-tests-todo/pnpm-install-with-options/steps.json index 0e99f3f8a2..f3b5bd7ce9 100644 --- a/packages/cli/snap-tests-todo/pnpm-install-with-options/steps.json +++ b/packages/cli/snap-tests-todo/pnpm-install-with-options/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/cli/snap-tests-todo/test-panicked-fix/steps.json b/packages/cli/snap-tests-todo/test-panicked-fix/steps.json index 81d84505c6..1d04317a67 100644 --- a/packages/cli/snap-tests-todo/test-panicked-fix/steps.json +++ b/packages/cli/snap-tests-todo/test-panicked-fix/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/cli/snap-tests/associate-existing-cache/snap.txt b/packages/cli/snap-tests/associate-existing-cache/snap.txt index 052b6566ed..30810781c8 100644 --- a/packages/cli/snap-tests/associate-existing-cache/snap.txt +++ b/packages/cli/snap-tests/associate-existing-cache/snap.txt @@ -26,7 +26,7 @@ hello ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Statistics: 1 tasks • 1 cache hits • 0 cache misses -Performance: 100% cache hit rate, ms saved in total +Performance: 100% cache hit rate Task Details: ──────────────────────────────────────────────── diff --git a/packages/cli/snap-tests/associate-existing-cache/steps.json b/packages/cli/snap-tests/associate-existing-cache/steps.json index 0e960d329d..a184bddc4d 100644 --- a/packages/cli/snap-tests/associate-existing-cache/steps.json +++ b/packages/cli/snap-tests/associate-existing-cache/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/cli/snap-tests/builtin-different-cwd/steps.json b/packages/cli/snap-tests/builtin-different-cwd/steps.json index d12915b10d..d4552350bf 100644 --- a/packages/cli/snap-tests/builtin-different-cwd/steps.json +++ b/packages/cli/snap-tests/builtin-different-cwd/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/cli/snap-tests/cache-clean/snap.txt b/packages/cli/snap-tests/cache-clean/snap.txt index 6a1332c0fd..ec6470d979 100644 --- a/packages/cli/snap-tests/cache-clean/snap.txt +++ b/packages/cli/snap-tests/cache-clean/snap.txt @@ -26,7 +26,7 @@ hello ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Statistics: 1 tasks • 1 cache hits • 0 cache misses -Performance: 100% cache hit rate, ms saved in total +Performance: 100% cache hit rate Task Details: ──────────────────────────────────────────────── diff --git a/packages/cli/snap-tests/cache-clean/steps.json b/packages/cli/snap-tests/cache-clean/steps.json index fb7f548ca9..b2c2d226e5 100644 --- a/packages/cli/snap-tests/cache-clean/steps.json +++ b/packages/cli/snap-tests/cache-clean/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/cli/snap-tests/cache-miss-command-change/snap.txt b/packages/cli/snap-tests/cache-miss-command-change/snap.txt index cefa9ddccb..e73f9bd530 100644 --- a/packages/cli/snap-tests/cache-miss-command-change/snap.txt +++ b/packages/cli/snap-tests/cache-miss-command-change/snap.txt @@ -36,7 +36,7 @@ bar ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Statistics: 2 tasks • 1 cache hits • 1 cache misses -Performance: 50% cache hit rate, ms saved in total +Performance: 50% cache hit rate Task Details: ──────────────────────────────────────────────── @@ -58,7 +58,7 @@ bar ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Statistics: 1 tasks • 1 cache hits • 0 cache misses -Performance: 100% cache hit rate, ms saved in total +Performance: 100% cache hit rate Task Details: ──────────────────────────────────────────────── diff --git a/packages/cli/snap-tests/cache-miss-command-change/steps.json b/packages/cli/snap-tests/cache-miss-command-change/steps.json index 854781ee5b..2ea43f0eec 100644 --- a/packages/cli/snap-tests/cache-miss-command-change/steps.json +++ b/packages/cli/snap-tests/cache-miss-command-change/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/cli/snap-tests/change-passthrough-env-config/steps.json b/packages/cli/snap-tests/change-passthrough-env-config/steps.json index 8b0630859a..55badc108e 100644 --- a/packages/cli/snap-tests/change-passthrough-env-config/steps.json +++ b/packages/cli/snap-tests/change-passthrough-env-config/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/cli/snap-tests/check-oxlint-env/steps.json b/packages/cli/snap-tests/check-oxlint-env/steps.json index 1bd73ca349..988a2e0734 100644 --- a/packages/cli/snap-tests/check-oxlint-env/steps.json +++ b/packages/cli/snap-tests/check-oxlint-env/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/cli/snap-tests/command-dev-with-port/steps.json b/packages/cli/snap-tests/command-dev-with-port/steps.json index 586d530540..37c6780a68 100644 --- a/packages/cli/snap-tests/command-dev-with-port/steps.json +++ b/packages/cli/snap-tests/command-dev-with-port/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/cli/snap-tests/command-doc/steps.json b/packages/cli/snap-tests/command-doc/steps.json index b3788bbbca..008061d414 100644 --- a/packages/cli/snap-tests/command-doc/steps.json +++ b/packages/cli/snap-tests/command-doc/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/cli/snap-tests/command-helper/steps.json b/packages/cli/snap-tests/command-helper/steps.json index e632de7184..35372922f9 100644 --- a/packages/cli/snap-tests/command-helper/steps.json +++ b/packages/cli/snap-tests/command-helper/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/cli/snap-tests/command-install-shortcut/steps.json b/packages/cli/snap-tests/command-install-shortcut/steps.json index 14fb3ae423..188d4b5997 100644 --- a/packages/cli/snap-tests/command-install-shortcut/steps.json +++ b/packages/cli/snap-tests/command-install-shortcut/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/cli/snap-tests/command-lib/steps.json b/packages/cli/snap-tests/command-lib/steps.json index 5cd16bee9b..2f6f64e339 100644 --- a/packages/cli/snap-tests/command-lib/steps.json +++ b/packages/cli/snap-tests/command-lib/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/cli/snap-tests/exit-code/snap.txt b/packages/cli/snap-tests/exit-code/snap.txt index d9531e4a4e..3f7fb33fae 100644 --- a/packages/cli/snap-tests/exit-code/snap.txt +++ b/packages/cli/snap-tests/exit-code/snap.txt @@ -26,7 +26,7 @@ success ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Statistics: 1 tasks • 1 cache hits • 0 cache misses -Performance: 100% cache hit rate, ms saved in total +Performance: 100% cache hit rate Task Details: ──────────────────────────────────────────────── diff --git a/packages/cli/snap-tests/exit-code/steps.json b/packages/cli/snap-tests/exit-code/steps.json index c89ab730d1..d3223bd4f8 100644 --- a/packages/cli/snap-tests/exit-code/steps.json +++ b/packages/cli/snap-tests/exit-code/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/cli/snap-tests/exit-non-zero-on-cmd-not-exists/steps.json b/packages/cli/snap-tests/exit-non-zero-on-cmd-not-exists/steps.json index 29eead4bd5..0980a07012 100644 --- a/packages/cli/snap-tests/exit-non-zero-on-cmd-not-exists/steps.json +++ b/packages/cli/snap-tests/exit-non-zero-on-cmd-not-exists/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/cli/snap-tests/fingerprint-ignore-test/steps.json b/packages/cli/snap-tests/fingerprint-ignore-test/steps.json index b1847f1915..ae4b431008 100644 --- a/packages/cli/snap-tests/fingerprint-ignore-test/steps.json +++ b/packages/cli/snap-tests/fingerprint-ignore-test/steps.json @@ -1,5 +1,5 @@ { - "ignoredPlatforms": ["linux"], + "ignoredPlatforms": ["linux", "win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/cli/snap-tests/ignore_dist/steps.json b/packages/cli/snap-tests/ignore_dist/steps.json index 8df00cba2e..cea4995451 100644 --- a/packages/cli/snap-tests/ignore_dist/steps.json +++ b/packages/cli/snap-tests/ignore_dist/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/cli/snap-tests/individual-cache-for-adt-args/snap.txt b/packages/cli/snap-tests/individual-cache-for-adt-args/snap.txt index 11abb67238..8f1ef28e81 100644 --- a/packages/cli/snap-tests/individual-cache-for-adt-args/snap.txt +++ b/packages/cli/snap-tests/individual-cache-for-adt-args/snap.txt @@ -44,7 +44,7 @@ a ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Statistics: 1 tasks • 1 cache hits • 0 cache misses -Performance: 100% cache hit rate, ms saved in total +Performance: 100% cache hit rate Task Details: ──────────────────────────────────────────────── @@ -62,7 +62,7 @@ b ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Statistics: 1 tasks • 1 cache hits • 0 cache misses -Performance: 100% cache hit rate, ms saved in total +Performance: 100% cache hit rate Task Details: ──────────────────────────────────────────────── diff --git a/packages/cli/snap-tests/individual-cache-for-adt-args/steps.json b/packages/cli/snap-tests/individual-cache-for-adt-args/steps.json index b9f110f696..2d5fbdf585 100644 --- a/packages/cli/snap-tests/individual-cache-for-adt-args/steps.json +++ b/packages/cli/snap-tests/individual-cache-for-adt-args/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/cli/snap-tests/individual-cache-for-envs/steps.json b/packages/cli/snap-tests/individual-cache-for-envs/steps.json index 9cc38da572..45f0946354 100644 --- a/packages/cli/snap-tests/individual-cache-for-envs/steps.json +++ b/packages/cli/snap-tests/individual-cache-for-envs/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/cli/snap-tests/lint-dot-git/steps.json b/packages/cli/snap-tests/lint-dot-git/steps.json index addec16982..d131f3fbb3 100644 --- a/packages/cli/snap-tests/lint-dot-git/steps.json +++ b/packages/cli/snap-tests/lint-dot-git/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/cli/snap-tests/npm-install-with-options/steps.json b/packages/cli/snap-tests/npm-install-with-options/steps.json index bc11984456..79b9154cc0 100644 --- a/packages/cli/snap-tests/npm-install-with-options/steps.json +++ b/packages/cli/snap-tests/npm-install-with-options/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/cli/snap-tests/oxlint-typeaware/steps.json b/packages/cli/snap-tests/oxlint-typeaware/steps.json index 916bff384d..020e554b21 100644 --- a/packages/cli/snap-tests/oxlint-typeaware/steps.json +++ b/packages/cli/snap-tests/oxlint-typeaware/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/cli/snap-tests/pass-no-color-env/steps.json b/packages/cli/snap-tests/pass-no-color-env/steps.json index fa1940a5de..81de787aff 100644 --- a/packages/cli/snap-tests/pass-no-color-env/steps.json +++ b/packages/cli/snap-tests/pass-no-color-env/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/cli/snap-tests/plain-terminal-ui-nested/steps.json b/packages/cli/snap-tests/plain-terminal-ui-nested/steps.json index b1e14807d0..e7f6406113 100644 --- a/packages/cli/snap-tests/plain-terminal-ui-nested/steps.json +++ b/packages/cli/snap-tests/plain-terminal-ui-nested/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_PLUS_CLI_TEST": "0", "VITE_DISABLE_AUTO_INSTALL": "1" diff --git a/packages/cli/snap-tests/plain-terminal-ui/steps.json b/packages/cli/snap-tests/plain-terminal-ui/steps.json index 9d384d28a0..45469995a0 100644 --- a/packages/cli/snap-tests/plain-terminal-ui/steps.json +++ b/packages/cli/snap-tests/plain-terminal-ui/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_PLUS_CLI_TEST": "0", "VITE_DISABLE_AUTO_INSTALL": "1" diff --git a/packages/cli/snap-tests/replay-logs-chronological-order/steps.json b/packages/cli/snap-tests/replay-logs-chronological-order/steps.json index ce9422f8ba..8c0fc19de6 100644 --- a/packages/cli/snap-tests/replay-logs-chronological-order/steps.json +++ b/packages/cli/snap-tests/replay-logs-chronological-order/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/cli/snap-tests/same-name-as-builtin/snap.txt b/packages/cli/snap-tests/same-name-as-builtin/snap.txt index 893041b409..6c7ecd9082 100644 --- a/packages/cli/snap-tests/same-name-as-builtin/snap.txt +++ b/packages/cli/snap-tests/same-name-as-builtin/snap.txt @@ -38,7 +38,7 @@ lint script ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Statistics: 1 tasks • 1 cache hits • 0 cache misses -Performance: 100% cache hit rate, ms saved in total +Performance: 100% cache hit rate Task Details: ──────────────────────────────────────────────── diff --git a/packages/cli/snap-tests/same-name-as-builtin/steps.json b/packages/cli/snap-tests/same-name-as-builtin/steps.json index cfab37eac6..086543a686 100644 --- a/packages/cli/snap-tests/same-name-as-builtin/steps.json +++ b/packages/cli/snap-tests/same-name-as-builtin/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/cli/snap-tests/shared-caching-inputs/steps.json b/packages/cli/snap-tests/shared-caching-inputs/steps.json index 21e3b81022..bf1e56efe1 100644 --- a/packages/cli/snap-tests/shared-caching-inputs/steps.json +++ b/packages/cli/snap-tests/shared-caching-inputs/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/cli/snap-tests/task-config-cwd/steps.json b/packages/cli/snap-tests/task-config-cwd/steps.json index e1a52543b0..eb774cbcf0 100644 --- a/packages/cli/snap-tests/task-config-cwd/steps.json +++ b/packages/cli/snap-tests/task-config-cwd/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/cli/snap-tests/task-no-trailing-newline/steps.json b/packages/cli/snap-tests/task-no-trailing-newline/steps.json index e1a52543b0..eb774cbcf0 100644 --- a/packages/cli/snap-tests/task-no-trailing-newline/steps.json +++ b/packages/cli/snap-tests/task-no-trailing-newline/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/cli/snap-tests/test-nested-tasks/snap.txt b/packages/cli/snap-tests/test-nested-tasks/snap.txt index 77646d7252..7448b30e04 100644 --- a/packages/cli/snap-tests/test-nested-tasks/snap.txt +++ b/packages/cli/snap-tests/test-nested-tasks/snap.txt @@ -27,7 +27,7 @@ hello vite ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Statistics: 1 tasks • 1 cache hits • 0 cache misses -Performance: 100% cache hit rate, ms saved in total +Performance: 100% cache hit rate Task Details: ──────────────────────────────────────────────── diff --git a/packages/cli/snap-tests/test-nested-tasks/steps.json b/packages/cli/snap-tests/test-nested-tasks/steps.json index 0101e71448..7e448d197f 100644 --- a/packages/cli/snap-tests/test-nested-tasks/steps.json +++ b/packages/cli/snap-tests/test-nested-tasks/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/cli/snap-tests/vite-task-smoke/main.js b/packages/cli/snap-tests/vite-task-smoke/main.js new file mode 100644 index 0000000000..81afa3157c --- /dev/null +++ b/packages/cli/snap-tests/vite-task-smoke/main.js @@ -0,0 +1 @@ +console.log('foo'); diff --git a/packages/cli/snap-tests/vite-task-smoke/package.json b/packages/cli/snap-tests/vite-task-smoke/package.json new file mode 100644 index 0000000000..413b53d730 --- /dev/null +++ b/packages/cli/snap-tests/vite-task-smoke/package.json @@ -0,0 +1,5 @@ +{ + "scripts": { + "test-task": "echo hello && node main.js" + } +} diff --git a/packages/cli/snap-tests/vite-task-smoke/snap.txt b/packages/cli/snap-tests/vite-task-smoke/snap.txt new file mode 100644 index 0000000000..bdfc4b52d2 --- /dev/null +++ b/packages/cli/snap-tests/vite-task-smoke/snap.txt @@ -0,0 +1,48 @@ +> vp run test-task +$ echo hello +hello + +$ node main.js +foo + + +━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + Vite+ Task Runner • Execution Summary +━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + +Statistics: 2 tasks • 0 cache hits • 2 cache misses +Performance: 0% cache hit rate + +Task Details: +──────────────────────────────────────────────── + [1] test-task(subcommand 0): $ echo hello ✓ + → Cache miss: no previous cache entry found + ······················································· + [2] test-task: $ node main.js ✓ + → Cache miss: no previous cache entry found +━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + +> tool replace-file-content main.js foo bar +> vp run test-task +$ echo hello (✓ cache hit, replaying) +hello + +$ node main.js (✗ cache miss: content of input 'main.js' changed, executing) +bar + + +━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + Vite+ Task Runner • Execution Summary +━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + +Statistics: 2 tasks • 1 cache hits • 1 cache misses +Performance: 50% cache hit rate + +Task Details: +──────────────────────────────────────────────── + [1] test-task(subcommand 0): $ echo hello ✓ + → Cache hit - output replayed - ms saved + ······················································· + [2] test-task: $ node main.js ✓ + → Cache miss: content of input 'main.js' changed +━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ diff --git a/packages/cli/snap-tests/vite-task-smoke/steps.json b/packages/cli/snap-tests/vite-task-smoke/steps.json new file mode 100644 index 0000000000..49dc25a50d --- /dev/null +++ b/packages/cli/snap-tests/vite-task-smoke/steps.json @@ -0,0 +1,10 @@ +{ + "env": { + "VITE_DISABLE_AUTO_INSTALL": "1" + }, + "commands": [ + "vp run test-task", + "tool replace-file-content main.js foo bar", + "vp run test-task" + ] +} diff --git a/packages/cli/snap-tests/vitest-browser-mode/steps.json b/packages/cli/snap-tests/vitest-browser-mode/steps.json index 559014f882..0a6eb8fc97 100644 --- a/packages/cli/snap-tests/vitest-browser-mode/steps.json +++ b/packages/cli/snap-tests/vitest-browser-mode/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/cli/snap-tests/workspace-root-vite-config/steps.json b/packages/cli/snap-tests/workspace-root-vite-config/steps.json index 1e7caea484..c0d418c80c 100644 --- a/packages/cli/snap-tests/workspace-root-vite-config/steps.json +++ b/packages/cli/snap-tests/workspace-root-vite-config/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/cli/snap-tests/yarn-install-with-options/steps.json b/packages/cli/snap-tests/yarn-install-with-options/steps.json index 03826bc675..f187ce249c 100644 --- a/packages/cli/snap-tests/yarn-install-with-options/steps.json +++ b/packages/cli/snap-tests/yarn-install-with-options/steps.json @@ -1,5 +1,5 @@ { - "ignoredPlatforms": ["linux"], + "ignoredPlatforms": ["linux", "win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/cli-helper-message/steps.json b/packages/global/snap-tests/cli-helper-message/steps.json index 850556bb04..c68d6aa874 100644 --- a/packages/global/snap-tests/cli-helper-message/steps.json +++ b/packages/global/snap-tests/cli-helper-message/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "commands": [ "vp -h # show help message" ] diff --git a/packages/global/snap-tests/command-add-npm10-with-workspace/steps.json b/packages/global/snap-tests/command-add-npm10-with-workspace/steps.json index 66416c00f3..f32dcbb18f 100644 --- a/packages/global/snap-tests/command-add-npm10-with-workspace/steps.json +++ b/packages/global/snap-tests/command-add-npm10-with-workspace/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/command-add-npm10/steps.json b/packages/global/snap-tests/command-add-npm10/steps.json index 4e1d073fd6..c3fe3a15fb 100644 --- a/packages/global/snap-tests/command-add-npm10/steps.json +++ b/packages/global/snap-tests/command-add-npm10/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/command-add-npm11-with-workspace/steps.json b/packages/global/snap-tests/command-add-npm11-with-workspace/steps.json index 66416c00f3..f32dcbb18f 100644 --- a/packages/global/snap-tests/command-add-npm11-with-workspace/steps.json +++ b/packages/global/snap-tests/command-add-npm11-with-workspace/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/command-add-npm11/steps.json b/packages/global/snap-tests/command-add-npm11/steps.json index 4e1d073fd6..c3fe3a15fb 100644 --- a/packages/global/snap-tests/command-add-npm11/steps.json +++ b/packages/global/snap-tests/command-add-npm11/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/command-add-pnpm10-with-workspace/steps.json b/packages/global/snap-tests/command-add-pnpm10-with-workspace/steps.json index 55b864d55d..c5a43049e9 100644 --- a/packages/global/snap-tests/command-add-pnpm10-with-workspace/steps.json +++ b/packages/global/snap-tests/command-add-pnpm10-with-workspace/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/command-add-pnpm10/steps.json b/packages/global/snap-tests/command-add-pnpm10/steps.json index 7e2a6308c9..fb75a2d990 100644 --- a/packages/global/snap-tests/command-add-pnpm10/steps.json +++ b/packages/global/snap-tests/command-add-pnpm10/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/command-add-pnpm9-with-workspace/steps.json b/packages/global/snap-tests/command-add-pnpm9-with-workspace/steps.json index 6214ba74b3..946b29d5be 100644 --- a/packages/global/snap-tests/command-add-pnpm9-with-workspace/steps.json +++ b/packages/global/snap-tests/command-add-pnpm9-with-workspace/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/command-add-pnpm9/steps.json b/packages/global/snap-tests/command-add-pnpm9/steps.json index 5fc6cb54a4..07d83b2fb7 100644 --- a/packages/global/snap-tests/command-add-pnpm9/steps.json +++ b/packages/global/snap-tests/command-add-pnpm9/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/command-add-yarn4-with-workspace/steps.json b/packages/global/snap-tests/command-add-yarn4-with-workspace/steps.json index 2251e6009b..33b3e3295b 100644 --- a/packages/global/snap-tests/command-add-yarn4-with-workspace/steps.json +++ b/packages/global/snap-tests/command-add-yarn4-with-workspace/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/command-add-yarn4/steps.json b/packages/global/snap-tests/command-add-yarn4/steps.json index 76a61e22ed..4a7b03f71f 100644 --- a/packages/global/snap-tests/command-add-yarn4/steps.json +++ b/packages/global/snap-tests/command-add-yarn4/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/command-dedupe-npm10/steps.json b/packages/global/snap-tests/command-dedupe-npm10/steps.json index 2c7915485a..24e3b65662 100644 --- a/packages/global/snap-tests/command-dedupe-npm10/steps.json +++ b/packages/global/snap-tests/command-dedupe-npm10/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/command-dedupe-pnpm10/steps.json b/packages/global/snap-tests/command-dedupe-pnpm10/steps.json index 50ba3da36b..b67d47155a 100644 --- a/packages/global/snap-tests/command-dedupe-pnpm10/steps.json +++ b/packages/global/snap-tests/command-dedupe-pnpm10/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/command-dedupe-yarn4/steps.json b/packages/global/snap-tests/command-dedupe-yarn4/steps.json index 9a9232745b..61b64c03e8 100644 --- a/packages/global/snap-tests/command-dedupe-yarn4/steps.json +++ b/packages/global/snap-tests/command-dedupe-yarn4/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/command-link-npm10/steps.json b/packages/global/snap-tests/command-link-npm10/steps.json index db02793c87..140a720583 100644 --- a/packages/global/snap-tests/command-link-npm10/steps.json +++ b/packages/global/snap-tests/command-link-npm10/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/command-link-pnpm10/steps.json b/packages/global/snap-tests/command-link-pnpm10/steps.json index 7cc82ab727..b71f1e8049 100644 --- a/packages/global/snap-tests/command-link-pnpm10/steps.json +++ b/packages/global/snap-tests/command-link-pnpm10/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/command-link-yarn4/steps.json b/packages/global/snap-tests/command-link-yarn4/steps.json index 05e75fac1a..a50277d390 100644 --- a/packages/global/snap-tests/command-link-yarn4/steps.json +++ b/packages/global/snap-tests/command-link-yarn4/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/command-outdated-npm10-with-workspace/steps.json b/packages/global/snap-tests/command-outdated-npm10-with-workspace/steps.json index 53cd1ba26c..e5c775ed0e 100644 --- a/packages/global/snap-tests/command-outdated-npm10-with-workspace/steps.json +++ b/packages/global/snap-tests/command-outdated-npm10-with-workspace/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/command-outdated-npm10/steps.json b/packages/global/snap-tests/command-outdated-npm10/steps.json index ae8ad83d57..fa88b61923 100644 --- a/packages/global/snap-tests/command-outdated-npm10/steps.json +++ b/packages/global/snap-tests/command-outdated-npm10/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/command-outdated-pnpm10-with-workspace/steps.json b/packages/global/snap-tests/command-outdated-pnpm10-with-workspace/steps.json index 82a5479185..7527c4280e 100644 --- a/packages/global/snap-tests/command-outdated-pnpm10-with-workspace/steps.json +++ b/packages/global/snap-tests/command-outdated-pnpm10-with-workspace/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/command-outdated-pnpm10/steps.json b/packages/global/snap-tests/command-outdated-pnpm10/steps.json index 7483f79656..ccab803397 100644 --- a/packages/global/snap-tests/command-outdated-pnpm10/steps.json +++ b/packages/global/snap-tests/command-outdated-pnpm10/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/command-outdated-yarn4/steps.json b/packages/global/snap-tests/command-outdated-yarn4/steps.json index 2dc639fa41..7c9309a65c 100644 --- a/packages/global/snap-tests/command-outdated-yarn4/steps.json +++ b/packages/global/snap-tests/command-outdated-yarn4/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/command-remove-npm10-with-workspace/steps.json b/packages/global/snap-tests/command-remove-npm10-with-workspace/steps.json index e43d0af0f3..a0b369385e 100644 --- a/packages/global/snap-tests/command-remove-npm10-with-workspace/steps.json +++ b/packages/global/snap-tests/command-remove-npm10-with-workspace/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/command-remove-npm10/steps.json b/packages/global/snap-tests/command-remove-npm10/steps.json index e9906be1b2..dd708e924d 100644 --- a/packages/global/snap-tests/command-remove-npm10/steps.json +++ b/packages/global/snap-tests/command-remove-npm10/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/command-remove-pnpm10-with-workspace/steps.json b/packages/global/snap-tests/command-remove-pnpm10-with-workspace/steps.json index 6843d8c3ad..0175729633 100644 --- a/packages/global/snap-tests/command-remove-pnpm10-with-workspace/steps.json +++ b/packages/global/snap-tests/command-remove-pnpm10-with-workspace/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/command-remove-pnpm10/steps.json b/packages/global/snap-tests/command-remove-pnpm10/steps.json index fbc11b3489..797fdc0b73 100644 --- a/packages/global/snap-tests/command-remove-pnpm10/steps.json +++ b/packages/global/snap-tests/command-remove-pnpm10/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/command-remove-yarn4-with-workspace/steps.json b/packages/global/snap-tests/command-remove-yarn4-with-workspace/steps.json index 56d12de8b8..d16264681d 100644 --- a/packages/global/snap-tests/command-remove-yarn4-with-workspace/steps.json +++ b/packages/global/snap-tests/command-remove-yarn4-with-workspace/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/command-remove-yarn4/steps.json b/packages/global/snap-tests/command-remove-yarn4/steps.json index 306a2e0955..4393e176f6 100644 --- a/packages/global/snap-tests/command-remove-yarn4/steps.json +++ b/packages/global/snap-tests/command-remove-yarn4/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/command-unlink-npm10/steps.json b/packages/global/snap-tests/command-unlink-npm10/steps.json index a7c9b8cbd1..c6c69c701f 100644 --- a/packages/global/snap-tests/command-unlink-npm10/steps.json +++ b/packages/global/snap-tests/command-unlink-npm10/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/command-unlink-pnpm10/steps.json b/packages/global/snap-tests/command-unlink-pnpm10/steps.json index 4aad61c794..a775f3ea87 100644 --- a/packages/global/snap-tests/command-unlink-pnpm10/steps.json +++ b/packages/global/snap-tests/command-unlink-pnpm10/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/command-unlink-yarn4/steps.json b/packages/global/snap-tests/command-unlink-yarn4/steps.json index 7967a7a936..a0ca20c08b 100644 --- a/packages/global/snap-tests/command-unlink-yarn4/steps.json +++ b/packages/global/snap-tests/command-unlink-yarn4/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/command-update-npm10-with-workspace/steps.json b/packages/global/snap-tests/command-update-npm10-with-workspace/steps.json index 9e028c5a64..1d072e8b93 100644 --- a/packages/global/snap-tests/command-update-npm10-with-workspace/steps.json +++ b/packages/global/snap-tests/command-update-npm10-with-workspace/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/command-update-npm10/steps.json b/packages/global/snap-tests/command-update-npm10/steps.json index 9577f41270..1c2bfaf198 100644 --- a/packages/global/snap-tests/command-update-npm10/steps.json +++ b/packages/global/snap-tests/command-update-npm10/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/command-update-pnpm10-with-workspace/steps.json b/packages/global/snap-tests/command-update-pnpm10-with-workspace/steps.json index c954231124..275504b5df 100644 --- a/packages/global/snap-tests/command-update-pnpm10-with-workspace/steps.json +++ b/packages/global/snap-tests/command-update-pnpm10-with-workspace/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/command-update-pnpm10/steps.json b/packages/global/snap-tests/command-update-pnpm10/steps.json index f888402da1..cc2cdbf524 100644 --- a/packages/global/snap-tests/command-update-pnpm10/steps.json +++ b/packages/global/snap-tests/command-update-pnpm10/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/command-update-yarn4-with-workspace/steps.json b/packages/global/snap-tests/command-update-yarn4-with-workspace/steps.json index bd43ed9e14..01132b55dc 100644 --- a/packages/global/snap-tests/command-update-yarn4-with-workspace/steps.json +++ b/packages/global/snap-tests/command-update-yarn4-with-workspace/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/command-update-yarn4/steps.json b/packages/global/snap-tests/command-update-yarn4/steps.json index 0ba9b27e17..5451801393 100644 --- a/packages/global/snap-tests/command-update-yarn4/steps.json +++ b/packages/global/snap-tests/command-update-yarn4/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/command-why-npm10-with-workspace/steps.json b/packages/global/snap-tests/command-why-npm10-with-workspace/steps.json index 548bc5676b..5f96d774f3 100644 --- a/packages/global/snap-tests/command-why-npm10-with-workspace/steps.json +++ b/packages/global/snap-tests/command-why-npm10-with-workspace/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/command-why-npm10/steps.json b/packages/global/snap-tests/command-why-npm10/steps.json index 28066762a4..9f1724771b 100644 --- a/packages/global/snap-tests/command-why-npm10/steps.json +++ b/packages/global/snap-tests/command-why-npm10/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/command-why-pnpm10-with-workspace/steps.json b/packages/global/snap-tests/command-why-pnpm10-with-workspace/steps.json index ed96cfd10d..1b88cb08c4 100644 --- a/packages/global/snap-tests/command-why-pnpm10-with-workspace/steps.json +++ b/packages/global/snap-tests/command-why-pnpm10-with-workspace/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/command-why-pnpm10/steps.json b/packages/global/snap-tests/command-why-pnpm10/steps.json index f9cbbefe36..3c495a3760 100644 --- a/packages/global/snap-tests/command-why-pnpm10/steps.json +++ b/packages/global/snap-tests/command-why-pnpm10/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/command-why-yarn4/steps.json b/packages/global/snap-tests/command-why-yarn4/steps.json index 8f828a5e15..414eb8f7df 100644 --- a/packages/global/snap-tests/command-why-yarn4/steps.json +++ b/packages/global/snap-tests/command-why-yarn4/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { "VITE_DISABLE_AUTO_INSTALL": "1" }, diff --git a/packages/global/snap-tests/new-monorepo/steps.json b/packages/global/snap-tests/new-monorepo/steps.json index 529b4262ac..6762910485 100644 --- a/packages/global/snap-tests/new-monorepo/steps.json +++ b/packages/global/snap-tests/new-monorepo/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "commands": [ "vp new -h # show help", "vp new --template vanilla-ts --monorepo --pm pnpm --git false --overwrite hello-vite-plus # create monorepo", diff --git a/packages/global/snap-tests/new-singlerepo/steps.json b/packages/global/snap-tests/new-singlerepo/steps.json index c4232b1785..6eced55474 100644 --- a/packages/global/snap-tests/new-singlerepo/steps.json +++ b/packages/global/snap-tests/new-singlerepo/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "commands": [ "vp new --template vanilla-ts --monorepo false --pm pnpm --git false --overwrite hello-vite-plus # create singlerepo", "cd hello-vite-plus && ls -a . # check files", diff --git a/packages/tools/snap-tests/json-sort/steps.json b/packages/tools/snap-tests/json-sort/steps.json index 2995823891..c05727a9fb 100644 --- a/packages/tools/snap-tests/json-sort/steps.json +++ b/packages/tools/snap-tests/json-sort/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { }, "commands": [ diff --git a/packages/tools/snap-tests/replace-file-content/steps.json b/packages/tools/snap-tests/replace-file-content/steps.json index 86118b01b7..d6cebdae8e 100644 --- a/packages/tools/snap-tests/replace-file-content/steps.json +++ b/packages/tools/snap-tests/replace-file-content/steps.json @@ -1,4 +1,5 @@ { + "ignoredPlatforms": ["win32"], "env": { }, "commands": [ diff --git a/packages/tools/src/snap-test.ts b/packages/tools/src/snap-test.ts index d9c85c0a8b..236cdb7b97 100755 --- a/packages/tools/src/snap-test.ts +++ b/packages/tools/src/snap-test.ts @@ -8,6 +8,7 @@ import { cpus, tmpdir } from 'node:os'; import path from 'node:path'; import { debuglog, parseArgs } from 'node:util'; +import { setTimeout } from 'node:timers/promises'; import { isPassThroughEnv, replaceUnstableOutput } from './utils'; const debug = debuglog('vite-plus/snap-test'); @@ -103,6 +104,7 @@ export async function snapTest() { ); await runWithConcurrencyLimit(taskFunctions, cpuCount); } + process.exit(0); // Ensure exit even if there are pending timed-out steps } interface Steps { @@ -159,21 +161,24 @@ async function runTestCase(name: string, tempTmpDir: string, casesDir: string) { const outputStreamPath = path.join(caseTmpDir, 'output.log'); const outputStream = await open(outputStreamPath, 'w'); - const exitCode = await execute(stripComments(command), [], { - env, - cwd, - stdin: null, - // Declared to be `Writable` but `FileHandle` works too. - // @ts-expect-error - stderr: outputStream, - // @ts-expect-error - stdout: outputStream, - glob: { - // Disable glob expansion. Pass args like '--filter=*' as-is. - isGlobPattern: () => false, - match: async () => [], - }, - }); + const exitCode = await Promise.race([ + execute(stripComments(command), [], { + env, + cwd, + stdin: null, + // Declared to be `Writable` but `FileHandle` works too. + // @ts-expect-error + stderr: outputStream, + // @ts-expect-error + stdout: outputStream, + glob: { + // Disable glob expansion. Pass args like '--filter=*' as-is. + isGlobPattern: () => false, + match: async () => [], + }, + }), + setTimeout(30 * 1000), + ]); await outputStream.close(); @@ -181,12 +186,15 @@ async function runTestCase(name: string, tempTmpDir: string, casesDir: string) { let commandLine = `> ${command}`; if (exitCode !== 0) { - commandLine = `[${exitCode}]` + commandLine; + commandLine = (exitCode === undefined ? '[timeout]' : `[${exitCode}]`) + commandLine; } newSnap.push(commandLine); if (output.length > 0) { newSnap.push(replaceUnstableOutput(output, caseTmpDir)); } + if (exitCode === undefined) { + break; // Stop executing further commands on timeout + } } const newSnapContent = newSnap.join('\n'); diff --git a/packages/tools/src/utils.ts b/packages/tools/src/utils.ts index ba2595c4ed..04b69cd1a1 100644 --- a/packages/tools/src/utils.ts +++ b/packages/tools/src/utils.ts @@ -17,7 +17,7 @@ export function replaceUnstableOutput(output: string, cwd?: string) { // date .replaceAll(/\d{2}:\d{2}:\d{2}/g, '') // duration - .replaceAll(/\d+(?:\.\d+)?(?:s|ms|µs)/g, 'ms') + .replaceAll(/\d+(?:\.\d+)?(?:s|ms|µs|ns)/g, 'ms') // oxlint .replaceAll(/with \d+ rules/g, 'with rules') .replaceAll(/using \d+ threads/g, 'using threads')