release: v0.0.26 (#135)

Bump all published packages to 0.0.26, publish the release notes for the new target and runtime surfaces, and regenerate the compiler surface manifest.
This commit is contained in:
Chris Tate
2026-08-11 14:39:19 -05:00
committed by GitHub
parent 31f268be2b
commit e98b2d461d
5 changed files with 11 additions and 6 deletions
+7 -2
View File
@@ -6,9 +6,16 @@ All notable changes to scriptc will be documented in this file.
<!-- release:start -->
## 0.0.26
### Features
- **WebAssembly is a production target.** `SCRIPTC_TARGET=wasm32-wasi` emits a standalone WASI Preview 1 module through the LLVM backend, and `scriptc run` hosts it with inherited stdio and environment plus preopened working and temporary directories. The full portable language tier includes checked dynamic values, async/await, promises, generators, timers, filesystem work, and `--dynamic`; APIs whose capabilities WASI does not provide refuse before linking with a targeted diagnostic instead of producing a broken module.
- **Cross-compilation targets Alpine Linux directly.** `SCRIPTC_TARGET=x86_64-linux-musl` produces a statically linked executable with Zig, backed by musl-specific runtime shims for randomness, fibers, and child-process working directories. Executables and library archives are validated against Alpine alongside the existing glibc targets.
- **Native FFI accepts C function-pointer callbacks.** Format 2 describes callback pointers and opaque contexts as independently positioned ABI entries, adapts ordinary capturing TypeScript closures through both backends, and preserves scalar C conversion and catchable callback throws. Raw callbacks without userdata use a binding-specific same-thread trampoline. The initial lifetime policy is explicit and bounded: callbacks are valid only during the native call; retained and foreign-thread callbacks remain rejected by contract.
- **HTTP and HTTPS servers expose Node's timeout configuration statically.** `timeout`, `keepAliveTimeout`, `keepAliveTimeoutBuffer`, `headersTimeout`, and `requestTimeout` retain Node's defaults and independent per-server storage through typed and dynamic reads and writes. The HTTP and HTTPS constructors also accept and validate `keepAliveTimeoutBuffer`; this surface configures the values, while deadline enforcement remains a separate server behavior.
<!-- release:end -->
## 0.0.25
@@ -16,8 +23,6 @@ All notable changes to scriptc will be documented in this file.
- **Busy sockets no longer starve the native event loop.** Readable wakes now yield after a bounded batch, allowing timers and other descriptors to keep progressing even while upgraded connections are continuously flooded.
<!-- release:end -->
## 0.0.24
### Features
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "scriptc",
"version": "0.0.25",
"version": "0.0.26",
"description": "Compile ordinary TypeScript and JavaScript to small, fast native executables — no Node, no V8, no JavaScript engine in the binary",
"license": "Apache-2.0",
"homepage": "https://scriptc.dev",
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@scriptc/compiler",
"version": "0.0.25",
"version": "0.0.26",
"description": "The scriptc compiler — TypeScript/JavaScript frontend, typed IR, LLVM and C backends",
"license": "Apache-2.0",
"homepage": "https://scriptc.dev",
+1 -1
View File
@@ -1,6 +1,6 @@
{
"schemaVersion": 1,
"compilerVersion": "0.0.25",
"compilerVersion": "0.0.26",
"coverage": [
"Entries are projected mechanically from the compiler's own decision tables: the diagnostics registry, the unsupported-syntax dispatch tables, the stdlib and node-builtin lowering tables, and the supported-builtin-module list. Nothing is hand-maintained; the manifest regenerates byte-identically from the source tree at this version.",
"Absence from this manifest means 'not projected', never 'unsupported'. Surfaces lowered through dedicated code paths rather than tables are not yet projected: console, JSON, Promise/async and the timer surface, the net/http/tls/https/dgram/dns/assert/test/stream/readline module member surfaces, template literals, the regex slice, global functions (parseInt, parseFloat, isNaN, isFinite), and the process surface outside its ambient slice.",
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@scriptc/runtime",
"version": "0.0.25",
"version": "0.0.26",
"description": "scriptc native runtime — C sources, compiled into every scriptc binary",
"license": "Apache-2.0",
"homepage": "https://scriptc.dev",