Skip to content

perry

v0.4.38 Feature

This release adds 2 notable features for engineering teams evaluating rollout.

Published 3mo 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

Added tvOS setup and publish commands with global/project config support and improved performance via direct object field access.

Full changelog

Features

  • `perry setup tvos` — guided wizard for tvOS App Store Connect credentials and bundle ID. Reuses shared Apple credentials from iOS/macOS setup. Saves to `~/.perry/config.toml` (global) and `perry.toml` (project).
  • `perry publish tvos` — full tvOS publishing support with:
    • Bundle ID resolution from `[tvos]` config in perry.toml
    • Entry point defaults to `src/main_tvos.ts`
    • Deployment target, encryption exempt, and custom Info.plist entries
    • Build number auto-increment (like iOS)
    • Interactive target prompt now includes tvOS

Performance

  • Direct object field access — `PropertyGet`/`PropertySet` on variables assigned from object literals now use direct offset loads/stores (`24 + idx*8`) instead of `js_object_get_field_by_name` runtime hash lookup, when field ordering is known at compile time

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 →

Related context

Earlier breaking changes

  • v0.5.1158 `cluster` workers share a listening port using SO_REUSEPORT and IPC round‑trip.
  • v0.5.1158 Streams now support BYOB readers and real `ByteLengthQueuingStrategy` accounting.
  • v0.5.1158 `Atomics.wait`, `notify`, and `waitAsync` now block and wake across agents using a shared `SharedArrayBuffer`.
  • v0.5.1158 `node:dns` and `node:dgram` perform real network I/O instead of stub behavior.
  • v0.5.1158 `AsyncLocalStorage` and `async_hooks` now propagate context across await, microtasks, timers, and `process.nextTick`.

Beta — feedback welcome: [email protected]