Skip to content

Fix Windows Git dependency paths - #13

Merged
LunaStev merged 2 commits into
wavefnd:masterfrom
LunaStev:patch/windows-git-paths
Aug 11, 2026
Merged

Fix Windows Git dependency paths#13
LunaStev merged 2 commits into
wavefnd:masterfrom
LunaStev:patch/windows-git-paths

Conversation

@LunaStev

@LunaStev LunaStev commented Aug 11, 2026

Copy link
Copy Markdown
Member

Summary

  • normalize Windows verbatim disk and UNC paths before passing managed dependency repositories to Git
  • generate platform-correct, percent-encoded local file: URLs for Git integration fixtures
  • run the complete Git integration suite on Windows x64 instead of unit tests only
  • move macOS Apple Silicon from Intel cross-build coverage to native macos-15 tests and build
  • update official checkout/setup actions to their Node 24-compatible v7 releases
  • document v0.0.1 candidate and experimental platform validation tiers

Why

Rust canonicalization on Windows returns extended-length paths such as \\?\C:\.... Git for Windows rejects those paths as clone destinations, while the existing fixture helper also produced malformed file://C:\... URLs. As a result, Windows CI could only run unit tests and did not verify fetch, lockfile reproduction, offline mode, or targeted update behavior.

Behavior

  • Vex keeps canonical paths internally but converts verbatim disk and UNC prefixes only at the Git subprocess boundary.
  • local Git fixtures use file:///C:/... or file://server/share/... URLs and percent-encode reserved characters.
  • fixture directories contain spaces and #, exercising URL decoding through real clone/fetch/update operations.
  • Windows x64 and both macOS architectures now run the full native Rust test suite.
  • v0.0.1 uses the Windows MSVC target; Windows GNU is out of scope. RISC-V remains experimental.

Validation

  • python3 x.py check
  • cargo check --locked --all-targets --target x86_64-pc-windows-msvc
  • python3 -m unittest discover -s tests/xpy -v
  • workflow YAML parse
  • git diff --check
  • PR CI: all eight jobs passed, including native Windows and macOS arm64

Signed-off-by: LunaStev <luna@lunastev.org>
@LunaStev
LunaStev marked this pull request as ready for review August 11, 2026 04:03
Signed-off-by: LunaStev <luna@lunastev.org>
@LunaStev
LunaStev marked this pull request as draft August 11, 2026 04:12
@LunaStev
LunaStev marked this pull request as ready for review August 11, 2026 04:14
@LunaStev
LunaStev merged commit f54b71b into wavefnd:master Aug 11, 2026
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant