NativeScript iOS Daily: Hot Module Loading Meets Strict Validation
The new ESM dev surface landing in PR #383 brings HTTP-based hot module replacement to iOS, and a wave of follow-on commits from Eduardo Speroni closes the gap between "accepts anything silently" and strict, spec-aligned validation across the module loader.
Duration: PT2M21S
Episode overview
This episode is a short developer briefing from NativeScript iOS Daily.
It explains recent repository work in plain language.
- Show: NativeScript iOS Daily
- Published: 2026-08-20T13:14:48Z
- Audio duration: PT2M21S
Transcript excerpt
This excerpt keeps the crawler page concise. Listen to the episode or use the RSS feed for the full update.
Good day. It's August 20th, and today's codebase activity centers on one big landing and its aftershocks.
The headline is PR 383 from Nathan Walker: a framework-agnostic hot module replacement system for iOS. Devices now fetch modules over HTTP straight from the Vite dev server and apply updates without restarting the process. The entire dev surface lives behind one builtin module, "ns:module," resolved the same way as…
But the more interesting thread is what came right after. Eduardo Speroni followed the merge with a run of hardening commits that all share one theme: making the module loader fail loudly instead of failing quietly. Commit e-e-5-1-d-7-4 rewrites "configure loader" so invalid input — wrong types, typos in config…
Underneath that, commit 3-a-6-3-3-2 addresses a concurrency risk: several process-wide caches used by the FFI layer and symbol loader had no locking, meaning concurrent lookups from the main thread and worker threads could race during a rehash. They're now protected with spin locks or unfair mutexes, chosen so a…
Rounding things out, the "ns builtin modules" documentation got a full rewrite to match the shipped surface rather than an outdated HMR…
What to…