Skip to content

fix(fs): root fs promises iterator state - #4539

Merged
proggeramlug merged 1 commit into
PerryTS:mainfrom
andrewtdiz:codex/node-compat-fs-promises-iterators-20260605
Jun 5, 2026
Merged

fix(fs): root fs promises iterator state#4539
proggeramlug merged 1 commit into
PerryTS:mainfrom
andrewtdiz:codex/node-compat-fs-promises-iterators-20260605

Conversation

@andrewtdiz

Copy link
Copy Markdown
Contributor

Closes #800.

Summary

  • root fs/promises FileHandle iterator state and Dir dirent entries during GC
  • preserve built-in named import metadata so aliased fs/promises open and opendir infer FileHandle/Dir results
  • route for await over fs.Dir and dir.entries() through the async iterator loop instead of sync materialization

Tests

  • PATH=/root/.npm/_npx/bac97da9607b7ef2/node_modules/.bin:$PATH PERRY_NO_AUTO_OPTIMIZE=1 timeout 900 ./run_parity_tests.sh --suite node-suite --module fs-promises --filter filehandle-readlines
  • PATH=/root/.npm/_npx/bac97da9607b7ef2/node_modules/.bin:$PATH PERRY_NO_AUTO_OPTIMIZE=1 timeout 900 ./run_parity_tests.sh --suite node-suite --module fs-promises --filter opendir-iteration-disposal
  • PATH=/root/.npm/_npx/bac97da9607b7ef2/node_modules/.bin:$PATH PERRY_NO_AUTO_OPTIMIZE=1 timeout 900 ./run_parity_tests.sh --suite node-suite --module fs-promises (81 pass / 0 fail)
  • cargo fmt --all -- --check
  • git diff --check
  • ./scripts/check_file_size.sh
  • cargo check -q -p perry-hir -p perry-runtime

@proggeramlug
proggeramlug merged commit fb91b9a into PerryTS:main Jun 5, 2026
13 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.

compat: Node core test subset comparison job

2 participants