Skip to content

Support async stream pipeline stages#2236

Open
andrewtdiz wants to merge 6 commits into
PerryTS:mainfrom
andrewtdiz:codex/node-stream-pipeline-callbacks
Open

Support async stream pipeline stages#2236
andrewtdiz wants to merge 6 commits into
PerryTS:mainfrom
andrewtdiz:codex/node-stream-pipeline-callbacks

Conversation

@andrewtdiz
Copy link
Copy Markdown
Contributor

Summary

  • support callback and promises pipeline flows with function, async-generator, sync iterable, and async-iterable stages
  • preserve stream pipe lifecycle behavior while routing collected pipeline stages through callbacks or promises
  • keep async generator closures out of async-to-generator closure rewriting and reject Array.fromAsync next() failures
  • split native stream tests to satisfy the source file-size gate

Tests

  • cargo fmt --check
  • ./scripts/check_file_size.sh
  • ./scripts/regen_api_docs.sh
  • git diff --check origin/main..HEAD
  • jq empty test-parity/known_failures.json
  • RUST_TEST_THREADS=1 cargo test -p perry-runtime
  • cargo test -p perry-transform
  • cargo check -p perry-runtime -p perry-transform -p perry-codegen
  • ./run_parity_tests.sh --suite node-suite --module stream/pipeline (15 pass, 0 fail)
  • ./run_parity_tests.sh --suite node-suite --module stream/promises (17 pass, 1 existing known failure: node-suite/stream/promises/finished-rejects-on-error)

@andrewtdiz andrewtdiz force-pushed the codex/node-stream-pipeline-callbacks branch from bf350e2 to bc90bbc Compare May 28, 2026 14:37
@andrewtdiz andrewtdiz force-pushed the codex/node-stream-pipeline-callbacks branch from bc90bbc to 44dd94e Compare May 28, 2026 14:51
Ralph Küpper added 3 commits May 28, 2026 22:59
# Conflicts:
#	test-parity/known_failures.json
# Conflicts:
#	crates/perry-runtime/src/node_stream.rs
#	test-parity/known_failures.json
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