| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| ios-arm64-maccatalystNativeScript.framework.dSYM.zip | 2026-08-27 | 8.6 MB | |
| ios-arm64NativeScript.framework.dSYM.zip | 2026-08-27 | 8.6 MB | |
| ios-arm64_x86_64-simulatorNativeScript.framework.dSYM.zip | 2026-08-27 | 17.5 MB | |
| NativeScript.visionos.xcframework.zip | 2026-08-27 | 42.2 MB | |
| NativeScript.xcframework.zip | 2026-08-27 | 78.8 MB | |
| TKLiveSync.visionos.xcframework.zip | 2026-08-27 | 710.0 kB | |
| TKLiveSync.xcframework.zip | 2026-08-27 | 1.2 MB | |
| README.md | 2026-08-27 | 18.0 kB | |
| v9.1.0 source code.tar.gz | 2026-08-27 | 7.2 MB | |
| v9.1.0 source code.zip | 2026-08-27 | 7.6 MB | |
| Totals: 10 Items | 172.5 MB | 0 | |
9.1.0 (2026-08-27)
Bug Fixes
- add buffer-length check in unzip.cpp (#429) (131611a)
- add SharedArrayBuffer support and fix byteOffset handling across all buffer paths (#370) (5555935)
- clear pending exception before rejecting a builtin dynamic import (3232fb5)
- close the inspector client socket on disconnect (#390) (e271a77)
- delete self-owned URL wrappers at isolate teardown (#438) (73e22b5)
- enable interruption of V8 execution on Debugger.pause command (#378) (714be8c)
- enhance nullable type handling in method parameter validation (#367) (e0d30a8)
- error handling with ES module compilation, instantiation, and evaluation (#375) (4dadac8)
- loader additional hardening (#443) (#444) (f1b0e4d)
- make V8 string to NSString conversions UTF-16 faithful (#392) (6778dfd)
- native methods expecting a NSError arg will now throw a JS exception if the error arg is not passed (#311) (217873b)
- only marshal promise resolution when created on the runtime loop (#396) (721633a), closes #330
- own native blocks with Block_copy/Block_release (#394) (e40de8a)
- re-throw exceptions in both debug and release modes for better error handling (#368) (1eaf03d)
- release our own blocks and release instead of dealloc data (a65b729)
- report the rejection reason when ES module evaluation fails (#410) (164e752)
- resolve race condition in nsld.sh with parallel linker invocations (#356) (a61d35c)
- serialize extended-class allocate/register to prevent duplicate class names (#421) (f5f9200)
- stop over-releasing objects wrapped from a raw pointer (#432) (bddaacb)
- throw JS exception instead of silent warning for disposed native object calls in debug mode (#354) (becb19b)
- typed array offset (6cb26c0)
- URLSearchParams construction and iteration spec compliance (#388) (ad920c6)
- use -fmodule-map-file for Swift metadata discovery in nsld.sh (#374) (ecd3598)
- use-after-free in interop.bufferFromData under memory pressure (#372) (90ac16c)
- workers should gracefully shutdown on close() (#369) (4644fce)
- Xcode 26.4 build for runtime, inspector, and metadata-generator (#376) (5e34fec)
- console: find custom toString on deep prototype chains (3d178e7)
- hooks: stop the pre-commit hook from swallowing failures (f860466)
- inspect: bound Map/Set iteration and harden proxy handling (9bebe69)
- inspector: answer the Tracing domain off the JS thread, stop swapping the trace buffer (b68a963)
- inspector: make the Tracing domain protocol-correct and faster (87ab586)
- metadata-generator: emit UIKit metadata for Mac Catalyst (#433) (7291cf3)
- metadata-generator: handle spaces in xcode path by appending the paths directly post split (#344) (327f9ba)
- metadata-generator: strip nullability wrappers before structural type checks (#389) (05224d3)
- napi: enter the env's context around async-work completion (3645898), closes #441
- performance: treat a null measure() options argument as absent (4af8d21)
- release: default to embedded SwiftPM packaging and restore portable local/PR packages (#406) (2098243)
- release: shape the ios-spm manifest per channel and verify the real manifest (#405) (746d4da)
- runtime: configureLoader volatilePatterns replaces wholesale, empty included (828d913)
- runtime: correct allocator use and ownership metadata in wrapper teardown (addf287)
- runtime: finalizer-safe handle ownership and deferred JSBlock teardown (#457) (70ad372)
- runtime: interop memory-safety fixes from the worker memory-corruption hunt (#458) (5d4569c), closes #459
- runtime: loader callbacks throw TypeErrors on invalid input (ee51d74)
- runtime: lock process-global caches shared across isolates (3a6332a)
- runtime: plug native memory leaks found by Instruments (8080bc0)
- test-runner: make junit report delivery resilient on starved CI VMs (#419) (e5e84e0)
- url: resync cached searchParams when search/href changes (#422) (10547cc)
- urlpattern: match capture groups in test()/exec() (#402) (9f21329)
- v8: pin the prebuilt release that exports the public V8 API (9fb910c)
- v8: pin the release without the cppgc caged heap (2f47ad9)
- worker: worker path resolution parity with android and error handling for missing scripts (20ce8d4)
Features
- Ada v4 (#413) (9b6df7d)
- add more null types for types the runtime accept or returns as null (#363) (fb0a5f4)
- add Node-style primordials to runtime builtins (#415) (d5c187c)
- add support for nullable types and ArrayBuffers for pointers (#357) (961dc76)
- allow custom priority for workers (#377) (8d238ed)
- budgeted console formatter (inspect builtin) (#416) (5e40702)
- enable TestRunner suite and metadata availability checks on visionOS (#407) (d907487)
- ESM resolver hardening, HTTP module loader, ns:module dev surface (#383) (c5e9886)
- guard released-native-object access behind a policy (ns:runtime) (4193a8e)
- improve profiler performance (#332) (c371b6c)
- Node-API (napi) surface for plugin developers (#437) (3900e1c)
- ns:util builtin module (inspect, format) (#418) (22226ba)
- per-runtime EventLoop - v8 platform tasks + two-lane scheduler (CFRunLoop timer/source) (#439) (4a90925)
- scope worker-created extended class names to their isolate (#428) (77b1ea3)
- ship TypeScript declarations for the ns:* builtin modules (5e470f4)
- structuredClone global (HTML structured clone, ArrayBuffer transfer) (#431) (5ad8bb1)
- swift package release workflow (#395) (732c439)
- update libffi to upstream with FFI_TYPE_VECTOR support (#408) (485cdbb)
- upgrade V8 to 14.9.207.39 (#412) (0e89474)
- web-compliant error handling (unhandled rejections, error events, interop.escapeException) (#409) (55ffdef)
- WHATWG performance API (hr-time, user timing, performance timeline) (#430) (e338870)
- inspector: attach Chrome DevTools to Web Worker isolates (#386) (cd28c41)
- inspector: serve source maps to DevTools via Network.loadNetworkResource (#385) (91ce499)
- performance: structured-clone mark/measure detail per spec (6dd5523)
- runtime: add AbortController and AbortSignal (#447) (292a9e3)
- runtime: DOMException and CustomEvent as lazy globals (#452) (d7bf2c7)
- runtime: expose timers under the standard global names (9399899)
- runtime: lazy-global tier with native TextEncoder/TextDecoder and atob/btoa (#448) (ac195f0)
- runtime: requestAnimationFrame and Android-parity frame callbacks (#446) (e9ce46e)
- runtime: typed per-isolate state slots on Caches (abe7ffe)
Performance Improvements
- convert strings across the V8/Obj-C bridge without the UTF-8 round trip (#442) (bfc6c5e)
- metadata: small size reductions in metadata.bin (#434) (ba922a7)
Reverts
BREAKING CHANGES
- V8 is upgraded from 10.3.22 to 14.9.207.39 (#412). The prebuilt V8 libraries and vendored headers are no longer committed to the repo —
download_v8.sh(run automatically bybuild_nativescript.sh) installs them from the release pinned inV8_RELEASE.require()of an unresolvable module now throws at require time instead of returning a placeholder that fails on property access. The embedder API migration notes live indocs/knowledge/v8-14-migration.md.