Skip to content

fix(stream): initialize duplex subclasses#2790

Merged
proggeramlug merged 2 commits into
PerryTS:mainfrom
andrewtdiz:codex/node-compat-subclass-duplex
May 30, 2026
Merged

fix(stream): initialize duplex subclasses#2790
proggeramlug merged 2 commits into
PerryTS:mainfrom
andrewtdiz:codex/node-compat-subclass-duplex

Conversation

@andrewtdiz
Copy link
Copy Markdown
Contributor

Summary

  • add a classic Duplex subclass init shim that installs Duplex methods and captures subclass _read/_write/_writev
  • wire Duplex through generated default constructors and explicit super() lowering
  • suppress Perry's fallback writable auto-echo only for Duplex instances with custom write sinks
  • remove the stale known-failure entry for stream/subclass/extends-duplex

Verification

  • ./run_parity_tests.sh --suite node-suite --module stream --filter node-suite/stream/subclass/extends-duplex
  • ./run_parity_tests.sh --suite node-suite --module stream --filter node-suite/stream/subclass/ (Duplex/Readable pass; Transform remains listed; Writable also fails on clean current main)
  • clean current-main probe: ./run_parity_tests.sh --suite node-suite --module stream --filter node-suite/stream/subclass/extends-writable (existing drift, report parity_report_20260529_163107.json)
  • cargo check -p perry-runtime -p perry-codegen
  • cargo fmt --all --check
  • jq empty test-parity/known_failures.json
  • git diff --check

@proggeramlug proggeramlug merged commit 08af384 into PerryTS:main May 30, 2026
11 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.

2 participants