This release adds 3 notable features for engineering teams evaluating rollout.
✓ No known CVEs patched in this version
Topics
+5 more
Summary
AI summaryBroad Node.js builtin parity push adds crypto/webcrypto, http/http2 socket pooling, zlib with Brotli support.
Changes in this release
| Type | Severity | Summary | CVE |
|---|---|---|---|
| Feature | Medium |
Adds Node.js builtin parity for crypto, webcrypto, http/http2, zlib, child_process, util, process, punycode, url, worker_threads, stream, dgram, cluster, path, vm. Adds Node.js builtin parity for crypto, webcrypto, http/http2, zlib, child_process, util, process, punycode, url, worker_threads, stream, dgram, cluster, path, vm. Source: llm_adapter@2026-06-03 Confidence: high |
— |
| Feature | Medium |
Adds reflective builtin-prototype brand checks for Function.prototype methods and primitive prototypes. Adds reflective builtin-prototype brand checks for Function.prototype methods and primitive prototypes. Source: llm_adapter@2026-06-03 Confidence: high |
— |
| Feature | Medium |
Adds complete sync codec parity, Transform‑stream objects, and Brotli support to node:zlib. Adds complete sync codec parity, Transform‑stream objects, and Brotli support to node:zlib. Source: llm_adapter@2026-06-03 Confidence: high |
— |
| Feature | Medium |
Adds async spawn reactor, fork with IPC, and exec error/encoding parity to node:child_process. Adds async spawn reactor, fork with IPC, and exec error/encoding parity to node:child_process. Source: llm_adapter@2026-06-03 Confidence: high |
— |
| Feature | Medium |
Adds Agent socket pooling and createConnection/createSocket support to node:http. Adds Agent socket pooling and createConnection/createSocket support to node:http. Source: llm_adapter@2026-06-03 Confidence: high |
— |
| Feature | Medium |
Adds generator function expressions, yield* iteration, and class [Symbol.iterator]/[Symbol.asyncIterator] via member access. Adds generator function expressions, yield* iteration, and class [Symbol.iterator]/[Symbol.asyncIterator] via member access. Source: llm_adapter@2026-06-03 Confidence: high |
— |
| Feature | Medium |
Adds perry/ui continuous pointer/key events, onFrame/cancelFrame callbacks; perry/audio cross‑platform sound; GTK4 live CameraView. Adds perry/ui continuous pointer/key events, onFrame/cancelFrame callbacks; perry/audio cross‑platform sound; GTK4 live CameraView. Source: llm_adapter@2026-06-03 Confidence: high |
— |
| Feature | Medium |
Adds Object.getOwnPropertyDescriptors support and dynamic‑import directory‑glob template specifiers. Adds Object.getOwnPropertyDescriptors support and dynamic‑import directory‑glob template specifiers. Source: llm_adapter@2026-06-03 Confidence: high |
— |
| Feature | Medium |
Adds compile command with module‑graph tree‑shaking / DCE for compilePackages. Adds compile command with module‑graph tree‑shaking / DCE for compilePackages. Source: llm_adapter@2026-06-03 Confidence: high |
— |
| Feature | Medium |
Adds self‑hosted build‑time precompile() with no node/V8 dependency. Adds self‑hosted build‑time precompile() with no node/V8 dependency. Source: llm_adapter@2026-06-03 Confidence: high |
— |
Full changelog
First tagged distribution release since v0.5.1028 — folds in 1198 commits (852 fixes, 42 features, plus tests/docs/refactors). This tag is a clean version-bump checkpoint over a fully CI-green main.
Highlights
- Broad Node.js builtin parity push:
crypto/webcrypto,http/http2/Agent socket pooling,zlib(sync + streaming + Brotli),child_process(streaming spawn, fork + V8-IPC,promisify),util,process,punycode,url,worker_threads,stream(web codec constructors, iterator helpers),dgram,cluster,path,vm. - Reflective builtin-prototype brand checks (#3662 family):
Function.prototype.apply/call/bind/toString, primitive prototypes (Number/Boolean/Symbol/BigInt), collection prototype methods, namespace member reflection. - Typed-array prototype + constructor coverage (join/slice/reverse/fill/subarray,
RangeErrorvalidation, proto accessors). - Generational-GC evacuation + async-resume fixes.
Features (selected)
compile: module-graph tree-shaking / DCE forcompilePackages.- Self-hosted build-time
precompile()— Perry runs its own codegen with no node/V8. node:zlibcomplete sync codec parity + Transform-stream objects + Brotli.node:child_processasync spawn reactor, fork + IPC, exec error/encoding parity.node:httpAgent socket pooling +createConnection/createSocketon the request path.- Generator function expressions,
yield*operand iteration, class[Symbol.iterator]/[Symbol.asyncIterator]via member access. perry/ui: continuous pointer/key events,onFrame/cancelFramedisplay-link callbacks;perry/audiocross-platform sound; GTK4 live CameraView.Object.getOwnPropertyDescriptors, dynamic-import directory-glob template specifiers.
Fixes
- 852 fixes across codegen, HIR lowering, runtime, and stdlib — Node export hygiene, dispatch correctness, stream construction paths, handle-deref segfaults, and large swaths of the TypeScript/Node compatibility roadmap (#793).
See CHANGELOG.md for the full per-version detail.
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
About perry
A native TypeScript compiler written in Rust. Compiles TypeScript directly to executables using SWC and LLVM.
Related context
Beta — feedback welcome: [email protected]