Skip to content

fix(fs): use forward-slash paths in normalize_path on all platforms#642

Merged
chaliy merged 4 commits intomainfrom
claude/ship-patch-release-cac1z
Mar 15, 2026
Merged

fix(fs): use forward-slash paths in normalize_path on all platforms#642
chaliy merged 4 commits intomainfrom
claude/ship-patch-release-cac1z

Conversation

@chaliy
Copy link
Contributor

@chaliy chaliy commented Mar 15, 2026

Summary

  • Fix normalize_path to build paths using forward slashes on all platforms
  • The VFS is always Unix-style, but PathBuf uses native separators (backslash on Windows)
  • This caused pwd to return /tmp\navtest instead of /tmp/navtest on Windows

Test plan

  • All Rust tests pass
  • CI green
  • Windows JS tests should pass after this fix

chaliy added 4 commits March 15, 2026 03:09
tokio "full" features include net/fs/process which are unsupported
on wasm32-wasip1-threads. Narrow to sync/macros/io-util/rt/time
which are the only features actually used.
bashkit core depends on tokio with "full" features which includes
net/fs/process — unsupported on wasm32. Cargo feature unification
means the JS crate inherits these even with narrowed features.

Disable WASM build/test in publish-js.yml and remove wasm target
from package.json. The 5 native targets (macOS x86/arm, Linux
x86/arm, Windows) all work. WASM needs an architectural fix to
gate tokio features in bashkit core.
PathBuf uses native separators (backslash on Windows), but the VFS
is always Unix-style. Build normalized paths as strings with forward
slashes to fix pwd/cd returning backslash paths on Windows.
@chaliy chaliy merged commit f52dd84 into main Mar 15, 2026
23 checks passed
@chaliy chaliy deleted the claude/ship-patch-release-cac1z branch March 15, 2026 04:20
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