Skip to content

fix(zlib): route captured exports to external backend - #8567

Merged
proggeramlug merged 1 commit into
PerryTS:mainfrom
proggeramlug:fix/8271-promisify-callback-bridge
Aug 22, 2026
Merged

fix(zlib): route captured exports to external backend#8567
proggeramlug merged 1 commit into
PerryTS:mainfrom
proggeramlug:fix/8271-promisify-callback-bridge

Conversation

@proggeramlug

Copy link
Copy Markdown
Contributor

Summary

  • add the external zlib native-module dispatcher so captured exports, including util.promisify(zlib.gzip), reach perry-ext-zlib
  • add the missing async raw/unzip exports and keep synchronous external stream dispatch on the auxiliary event pump
  • avoid allocator-crossing temporaries in stripped wrapper builds and retire the test_parity_zlib known failure
  • no version bump

Testing

  • RUSTUP_TOOLCHAIN=nightly-2026-08-20 ./run_parity_tests.sh --filter test_parity_zlib
  • cargo +nightly-2026-08-20 test -p perry-ext-zlib external_native_dispatch_routes_async_gzip_callback --lib
  • cargo +nightly-2026-08-20 check -p perry-stdlib --no-default-features --features external-zlib-pump
  • git diff --check

Refs #8271

@coderabbitai

coderabbitai Bot commented Aug 22, 2026

Copy link
Copy Markdown

Warning

Review limit reached

@proggeramlug, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 3 minutes

Limit details: You’ve used all 8 included reviews currently available.

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

How can I continue?

Wait for the limit to reset, then comment @coderabbitai review or push new commits to the PR.

An organization admin can change what happens after included review limits in Billing.

How do review limits work?

CodeRabbit enforces per-developer PR review limits within each organization.

For paid Pro and Pro+ reviews, CodeRabbit uses a developer's included PR review attempts over the past 7 days to set the current hourly allowance. At typical activity levels, the full plan allowance applies. Higher sustained activity can lower the allowance until earlier attempts leave the 7-day window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 03e4645f-cf73-4a81-86c9-6b9b16efcc29

📥 Commits

Reviewing files that changed from the base of the PR and between ef5e5fa and 4da84c1.

📒 Files selected for processing (6)
  • crates/perry-ext-zlib/src/lib.rs
  • crates/perry-ext-zlib/src/stream.rs
  • crates/perry-stdlib/Cargo.toml
  • crates/perry-stdlib/src/common/dispatch/init.rs
  • crates/perry-stdlib/src/common/dispatch/method_dispatch.rs
  • test-parity/known_failures.json

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@proggeramlug

Copy link
Copy Markdown
Contributor Author

Merging as a validated batch. These six are the non-perf members of a nine-PR stack built on current main; the three perf PRs (#8568, #8570, #8573) are deliberately held back for measurement rather than merged on compile evidence.

Validation on the combined stack:

check result
cargo check --workspace --all-targets exit 0, zero errors
check_file_size.sh 0
workspace_architecture.py --check 0
raw_handle_debt.py 0
check_gc_scanner_latches.py 0
gc_runtime_root_holders.py 0
check_test_registration.py 0
cargo fmt --all -- --check 0

The stacked compile check is what per-PR CI cannot do: several of these touch the same files, and pairwise-green PRs can still break in combination.

The ratchets were re-run against the current baseline immediately before merging, not just during the initial audit. That distinction is not pedantry — #8560 passed raw_handle_debt at a baseline of 974, then #8559's cleanup lowered it to 925 and turned a legitimately-green change into a violation on main. A ratchet result is only valid as of the moment it ran.

Mechanical fixes applied while staging (these are fork PRs, so they could not be pushed to their branches): PR-keyed the changelog fragments for #8562 (was 8546-) and #8570 (was 8409-), and wrote the missing fragments for #8563, #8567 and #8574.

@proggeramlug
proggeramlug merged commit 945867c into PerryTS:main Aug 22, 2026
48 of 52 checks passed
@proggeramlug
proggeramlug deleted the fix/8271-promisify-callback-bridge branch August 22, 2026 07:12
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