Skip to content

perry

v0.4.45 Bugfix

This release fixes issues for SREs watching stability and regressions.

Published 2mo Build & Package
✓ No known CVEs patched
Read the diff → Tool health → What is this tool? →

✓ No known CVEs patched in this version

Topics

android compile harmonyos ios llvm macos
+5 more
native smc typescript watchos windows

Summary

AI summary

Updates Previous, Bug Fixes, and id across a mixed release.

Full changelog

Bug Fixes

  • WASM multi-module FuncRef resolution: FuncRef(id) is only unique within a module — per-module func_map snapshots prevent cross-module FuncId collisions that caused wrong function dispatch
  • WASM void function tracking: Functions returning void now push TAG_UNDEFINED after call for stack consistency
  • WASM optional parameter padding: Missing arguments padded with TAG_UNDEFINED for functions with optional params

Previous (v0.4.44)

  • obj[numericKey] on Record<number, T> — numeric keys converted to strings for property lookup
  • !('key' in obj) always returned false — in operator NaN-boxed boolean handling
  • trimStart()/trimEnd() dispatched to correct runtime functions
  • Cross-module default array parameter = [] SIGSEGV fix
  • IndexSet union-index NaN-boxing for closures on objects
  • .filter(Boolean) desugaring in all 4 HIR lowering paths
  • Null pointer guards in closure capture getters and Promise.all handlers
  • Cross-module await on Promise<[T, T]> tuple indexing

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

Track perry

Get notified when new releases ship.

Sign up free

About perry

A native TypeScript compiler written in Rust. Compiles TypeScript directly to executables using SWC and LLVM.

All releases →

Beta — feedback welcome: [email protected]