Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
20 changes: 18 additions & 2 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -1436,6 +1436,22 @@ jobs:
} >> "$GITHUB_OUTPUT"
fi

- name: Setup pinned Node.js for scoped native oracles
if: steps.scope.outputs.rust_work == 'true'
uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7
with:
node-version-file: .node-version

- name: Verify scoped Node oracle before native builds
if: steps.scope.outputs.rust_work == 'true'
run: |
node --input-type=module -e '
import assert from "node:assert/strict";
import fs from "node:fs";
const expected = fs.readFileSync(".node-version", "utf8").trim().replace(/^v/, "");
assert.equal(process.versions.node, expected, "Scoped native tests require the pinned Node oracle");
'

- name: Install Rust toolchain
if: steps.scope.outputs.rust_work == 'true'
run: rustup toolchain install nightly-2026-08-20 --profile minimal
Expand Down Expand Up @@ -1497,10 +1513,10 @@ jobs:
# RFC-2945 abort guards that a JS throw trips — the opposite of the
# shipped semantics. See the longer note in `cargo-test`.
if printf '%s\n' "$SUITES" | grep -qE '^(perry|perry-stdlib) '; then
if printf '%s\n' "$SUITES" | grep -qE '^perry (bun_text_modules|import_meta_require_value|child_output_late_iterator|async_resource_own_bind) '; then
if printf '%s\n' "$SUITES" | grep -qE '^perry (bun_text_modules|bun_embedded_compression|import_meta_require_value|minsize_inline_policy|child_output_late_iterator|async_resource_own_bind) '; then
# Prepare all require providers in one graph, outside the fixture's
# timeout. A second perry-dev graph inside cargo test exceeded its
# ten-minute bound on fresh runners (#9989/#9990).
# ten-minute bound on fresh runners (#9989/#9990/#10076).
cargo build --release -p perry -p perry-runtime -p perry-stdlib \
-p perry-runtime-static -p perry-stdlib-static \
-p perry-ext-events -p perry-ext-http -p perry-ext-net \
Expand Down
2 changes: 1 addition & 1 deletion CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co

Perry is a native TypeScript compiler written in Rust that compiles TypeScript source code directly to native executables. It uses SWC for TypeScript parsing and LLVM for code generation.

**Current Version:** 0.5.1533
**Current Version:** 0.5.1534


## TypeScript Parity Status
Expand Down
Loading
Loading