This release adds 3 notable features for engineering teams evaluating rollout.
✓ No known CVEs patched in this version
Topics
+5 more
Summary
AI summaryUpdates Infrastructure / tests, Atomics, and Parity across a mixed release.
Changes in this release
| Type | Severity | Summary | CVE |
|---|---|---|---|
| Feature | Low |
Adds Atomics basic and bitwise operations. Adds Atomics basic and bitwise operations. Source: llm_adapter@2026-06-03 Confidence: high |
— |
| Feature | Low |
Exposes core Intl constructors. Exposes core Intl constructors. Source: llm_adapter@2026-06-03 Confidence: high |
— |
| Feature | Low |
Adds X509Certificate properties and extension metadata access. Adds X509Certificate properties and extension metadata access. Source: llm_adapter@2026-06-03 Confidence: high |
— |
| Feature | Low |
Provides node stream to web stream adapters. Provides node stream to web stream adapters. Source: llm_adapter@2026-06-03 Confidence: high |
— |
| Feature | Low |
Completes Array.fromAsync mapFn semantics. Completes Array.fromAsync mapFn semantics. Source: llm_adapter@2026-06-03 Confidence: high |
— |
| Feature | Low |
Exposes HTTP request abort signals. Exposes HTTP request abort signals. Source: granite4.1:30b@2026-06-03-audit Confidence: low |
— |
| Performance | Low |
Caches tagged‑template objects per call site. Caches tagged‑template objects per call site. Source: granite4.1:30b@2026-06-03-audit Confidence: low |
— |
| Bugfix | Medium |
Makes node:events static helpers dispatch events correctly. Makes node:events static helpers dispatch events correctly. Source: llm_adapter@2026-06-03 Confidence: high |
— |
| Bugfix | Medium |
Directly dispatches uncurried hasOwnProperty. Directly dispatches uncurried hasOwnProperty. Source: llm_adapter@2026-06-03 Confidence: high |
— |
| Bugfix | Medium |
Ensures Uint8Array.of and from build buffer‑backed representations. Ensures Uint8Array.of and from build buffer‑backed representations. Source: llm_adapter@2026-06-03 Confidence: high |
— |
| Bugfix | Medium |
Makes Reflect.set, getPrototypeOf, and deleteProperty throw on non‑object receivers. Makes Reflect.set, getPrototypeOf, and deleteProperty throw on non‑object receivers. Source: llm_adapter@2026-06-03 Confidence: high |
— |
| Bugfix | Medium |
Installs DataView.prototype accessors and get/set methods. Installs DataView.prototype accessors and get/set methods. Source: llm_adapter@2026-06-03 Confidence: high |
— |
| Bugfix | Medium |
Honors async buffered limits, argv0, and stdio: inherit in child_process. Honors async buffered limits, argv0, and stdio: inherit in child_process. Source: granite4.1:30b@2026-06-03-audit Confidence: low |
— |
| Bugfix | Low |
Converts asymmetric KeyObject instances to CryptoKey. Converts asymmetric KeyObject instances to CryptoKey. Source: granite4.1:30b@2026-06-03-audit Confidence: low |
— |
| Bugfix | Low |
Invokes registered loader hooks for dynamic imports. Invokes registered loader hooks for dynamic imports. Source: granite4.1:30b@2026-06-03-audit Confidence: low |
— |
| Bugfix | Low |
Corrects String.matchAll iterator semantics. Corrects String.matchAll iterator semantics. Source: granite4.1:30b@2026-06-03-audit Confidence: low |
— |
| Bugfix | Low |
Preserves CommonJS require function name. Preserves CommonJS require function name. Source: granite4.1:30b@2026-06-03-audit Confidence: low |
— |
| Bugfix | Low |
Materializes array‑like receivers for Array.prototype methods when called via .call/.apply. Materializes array‑like receivers for Array.prototype methods when called via .call/.apply. Source: granite4.1:30b@2026-06-03-audit Confidence: low |
— |
| Bugfix | Low |
Respects closure accessor properties. Respects closure accessor properties. Source: granite4.1:30b@2026-06-03-audit Confidence: low |
— |
| Bugfix | Low |
Respects symbol enumerability in Object.assign. Respects symbol enumerability in Object.assign. Source: granite4.1:30b@2026-06-03-audit Confidence: low |
— |
| Bugfix | Low |
Skips sparse array holes during iteration method execution. Skips sparse array holes during iteration method execution. Source: granite4.1:30b@2026-06-03-audit Confidence: low |
— |
| Bugfix | Low |
Aligns prototype and super assignment behavior with ECMAScript spec. Aligns prototype and super assignment behavior with ECMAScript spec. Source: granite4.1:30b@2026-06-03-audit Confidence: low |
— |
| Bugfix | Low |
Corrects assignment evaluation order to match specification. Corrects assignment evaluation order to match specification. Source: granite4.1:30b@2026-06-03-audit Confidence: low |
— |
| Bugfix | Low |
Implements arrow function special binding semantics correctly. Implements arrow function special binding semantics correctly. Source: granite4.1:30b@2026-06-03-audit Confidence: low |
— |
| Bugfix | Low |
Preserves delete operator references within with statements. Preserves delete operator references within with statements. Source: granite4.1:30b@2026-06-03-audit Confidence: low |
— |
| Bugfix | Low |
Enforces Temporal Dead Zone for default parameters that appear later in function body. Enforces Temporal Dead Zone for default parameters that appear later in function body. Source: granite4.1:30b@2026-06-03-audit Confidence: low |
— |
| Bugfix | Low |
Preserves lexical new.target value inside arrow functions. Preserves lexical new.target value inside arrow functions. Source: granite4.1:30b@2026-06-03-audit Confidence: low |
— |
| Refactor | Low |
Restores scalar method inlining for PutValueSet constructors. Restores scalar method inlining for PutValueSet constructors. Source: granite4.1:30b@2026-06-03-audit Confidence: low |
— |
| Refactor | Low |
Caps pointer local type growth during codegen. Caps pointer local type growth during codegen. Source: granite4.1:30b@2026-06-03-audit Confidence: low |
— |
| Refactor | Low |
Uses generator closure prototypes for instance creation. Uses generator closure prototypes for instance creation. Source: granite4.1:30b@2026-06-03-audit Confidence: low |
— |
Full changelog
Highlights
42 commits since v0.5.1112 — a broad Node.js + TypeScript parity push: language-correctness fixes (assignment evaluation order, arrow binding, default-param TDZ, new.target), more Node built-in surface (Atomics, Intl, X509, child_process options, web stream adapters), and runtime prototype/reflection fixes.
Features
- Atomics: basic operations + bitwise operations (#4247, #4253)
- Expose core
Intlconstructors (#4254) X509Certificate:publicKey, name checks, and extension metadata (#4249, #4252, #4241)- node stream → web stream adapters (#4237)
- Complete
Array.fromAsyncmapFn semantics (#4238)
Fixes — runtime & Node compat
node:eventsmodule-level static helpers (once/on/listenerCount/…) now dispatch (#850)- Dispatch uncurried
hasOwnPropertydirectly (#4279) Uint8Array.of/frombuild the buffer-backed representationisPrototypeOf+Reflect.set/getPrototypeOf/deletePropertythrow on non-object (#4265)- Install
DataView.prototypeaccessors + get/set methods (#4256) - Convert asymmetric
KeyObjects toCryptoKey(#4245) - Expose HTTP request abort signals (#4248)
- Invoke registered loader hooks for dynamic imports (#4225)
String.matchAlliterator semantics (#4223)- Preserve CommonJS
requirefunction name (#4220) - Materialize array-like receivers for
Array.prototype.*.call(#4231) child_process: honor async buffered limits,argv0, andstdio: inherit(#4250, #4246, #4240)- Honor closure accessor properties (#4243)
- Respect symbol enumerability in
Object.assign(#4239) - Skip sparse array holes in iteration methods (#4236)
Fixes — codegen & language parity
- Restore scalar method inlining for PutValueSet constructors (#945)
- Cap pointer local type growth in codegen (#4235)
- Cache tagged-template objects per call site (#4234)
- Prototype & super assignment parity (#4233)
- Assignment evaluation order (#4229)
- Arrow special binding semantics (#4228)
- Preserve
withreferences fordelete(#4227) - Default-parameter TDZ for later bindings (#4226)
- Preserve lexical
new.targetfor arrows (#4224) - Use generator closure prototypes for instances (#4222)
- Avoid recursive constructor inlining (#4221)
- Preserve CommonJS require name / honor well-known archives in no-auto links (#4242)
- Native instance walk for fluent chains (#4219)
Infrastructure / tests
- Parity: expected-exit=1 for intentional-throw expected-output tests
- HTTP upgrade-websocket frame coverage (#4251)
- Optional PTY parity runner for tty (#4232)
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]