Skip to content

Represent special filesystem path types#457

Merged
lukewilliamboswell merged 1 commit into
mainfrom
fix/issue-441-special-path-types
Jul 22, 2026
Merged

Represent special filesystem path types#457
lukewilliamboswell merged 1 commit into
mainfrom
fix/issue-441-special-path-types

Conversation

@lukewilliamboswell

Copy link
Copy Markdown
Collaborator

Summary

  • replace the host path-type boolean record with an exhaustive ABI tag union
  • expose IsOther from Path.type! so sockets, FIFOs, devices, and unrecognized Windows reparse points are never reported as regular files
  • document predicate behavior and cover regular files, directories, symlinks, FIFOs, and Unix-domain sockets

Testing

  • cargo test --lib
  • ./scripts/test.py
  • generated Rust glue regeneration check using the latest nightly compiler and matching glue spec

The release bump check was attempted against 0.21.0-rc4, but the old package no longer compiles with the current compiler because it references Json.ParseErr. A comparison against current main is also blocked by the existing InternalHttp.TransportErr public-API extraction error. This PR still expands the public Path.type! tag union, so the release bump workflow will detect the API change once those existing compatibility blockers are resolved.

Fixes #441

@lukewilliamboswell
lukewilliamboswell marked this pull request as ready for review July 22, 2026 01:53
@lukewilliamboswell
lukewilliamboswell merged commit f5760de into main Jul 22, 2026
26 checks passed
@lukewilliamboswell
lukewilliamboswell deleted the fix/issue-441-special-path-types branch July 22, 2026 03:04
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.

Represent sockets, FIFOs, and other special filesystem objects

1 participant