@nativescript/vite 8.0.0-alpha.59 → 8.0.0-alpha.60

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/helpers/dynamic-import-plugin.js +3 -1
  2. package/helpers/dynamic-import-plugin.js.map +1 -1
  3. package/helpers/vite-package-version.d.ts +7 -0
  4. package/helpers/vite-package-version.js +44 -0
  5. package/helpers/vite-package-version.js.map +1 -0
  6. package/hmr/client/index.js +26 -1
  7. package/hmr/client/index.js.map +1 -1
  8. package/hmr/frameworks/angular/server/websocket-angular-hot-update.d.ts +13 -0
  9. package/hmr/frameworks/angular/server/websocket-angular-hot-update.js +62 -0
  10. package/hmr/frameworks/angular/server/websocket-angular-hot-update.js.map +1 -1
  11. package/hmr/frameworks/solid/client/app-runtime.d.ts +16 -2
  12. package/hmr/frameworks/solid/client/app-runtime.js +70 -10
  13. package/hmr/frameworks/solid/client/app-runtime.js.map +1 -1
  14. package/hmr/frameworks/vue/client/index.js +80 -1
  15. package/hmr/frameworks/vue/client/index.js.map +1 -1
  16. package/hmr/frameworks/vue/server/sfc-route-assemble.js +6 -2
  17. package/hmr/frameworks/vue/server/sfc-route-assemble.js.map +1 -1
  18. package/hmr/server/boot-archive-route.d.ts +40 -0
  19. package/hmr/server/boot-archive-route.js +154 -0
  20. package/hmr/server/boot-archive-route.js.map +1 -0
  21. package/hmr/server/boot-closure-route.d.ts +34 -1
  22. package/hmr/server/boot-closure-route.js +79 -34
  23. package/hmr/server/boot-closure-route.js.map +1 -1
  24. package/hmr/server/boot-recording.d.ts +58 -0
  25. package/hmr/server/boot-recording.js +228 -0
  26. package/hmr/server/boot-recording.js.map +1 -0
  27. package/hmr/server/core-bundle.d.ts +14 -0
  28. package/hmr/server/core-bundle.js +141 -1
  29. package/hmr/server/core-bundle.js.map +1 -1
  30. package/hmr/server/deps-bundle.d.ts +218 -0
  31. package/hmr/server/deps-bundle.js +984 -0
  32. package/hmr/server/deps-bundle.js.map +1 -0
  33. package/hmr/server/ns-m-response-memo.d.ts +10 -0
  34. package/hmr/server/ns-m-response-memo.js +33 -0
  35. package/hmr/server/ns-m-response-memo.js.map +1 -0
  36. package/hmr/server/websocket-core-bridge.d.ts +6 -0
  37. package/hmr/server/websocket-core-bridge.js +12 -6
  38. package/hmr/server/websocket-core-bridge.js.map +1 -1
  39. package/hmr/server/websocket-ns-m.d.ts +19 -0
  40. package/hmr/server/websocket-ns-m.js +86 -12
  41. package/hmr/server/websocket-ns-m.js.map +1 -1
  42. package/hmr/server/websocket.d.ts +1 -2
  43. package/hmr/server/websocket.js +100 -51
  44. package/hmr/server/websocket.js.map +1 -1
  45. package/hmr/shared/ns-globals.d.ts +1 -0
  46. package/hmr/shared/runtime/boot-archive-format.d.ts +16 -0
  47. package/hmr/shared/runtime/boot-archive-format.js +31 -0
  48. package/hmr/shared/runtime/boot-archive-format.js.map +1 -0
  49. package/hmr/shared/runtime/browser-runtime-contract.d.ts +23 -4
  50. package/hmr/shared/runtime/browser-runtime-contract.js.map +1 -1
  51. package/hmr/shared/runtime/session-bootstrap.js +57 -9
  52. package/hmr/shared/runtime/session-bootstrap.js.map +1 -1
  53. package/hmr/shared/vendor/manifest.js +41 -6
  54. package/hmr/shared/vendor/manifest.js.map +1 -1
  55. package/hmr/shared/vendor/registry.d.ts +2 -0
  56. package/hmr/shared/vendor/registry.js +14 -0
  57. package/hmr/shared/vendor/registry.js.map +1 -1
  58. package/package.json +1 -1
@@ -1,5 +1,5 @@
1
1
  import { createRequire } from 'node:module';
2
- import { existsSync, readFileSync } from 'fs';
2
+ import { readFileSync } from 'fs';
3
3
  import { WebSocketServer } from 'ws';
4
4
  import * as path from 'path';
5
5
  import { createHash } from 'crypto';
@@ -13,10 +13,11 @@ import { solidServerStrategy } from '../frameworks/solid/server/strategy.js';
13
13
  import { typescriptServerStrategy } from '../frameworks/typescript/server/strategy.js';
14
14
  import { reactServerStrategy } from '../frameworks/react/server/strategy.js';
15
15
  import { getProjectAppPath, getProjectAppRelativePath, getProjectAppVirtualPath } from '../../helpers/utils.js';
16
+ import { getVitePackageVersion } from '../../helpers/vite-package-version.js';
16
17
  import { shouldIncludeRuntimeGraphFile, shouldSkipRuntimeGraphDirectoryName } from './runtime-graph-filter.js';
17
18
  import { getHmrSourceRoots } from '../../helpers/hmr-scope.js';
18
19
  import { getTsConfigData } from '../../helpers/ts-config-paths.js';
19
- import { normalizeHotReloadMatchPath, shouldSuppressViteFullReloadPayload } from '../frameworks/angular/server/websocket-angular-hot-update.js';
20
+ import { createAngularComponentUpdateLedger, normalizeHotReloadMatchPath, shouldSuppressViteFullReloadPayload } from '../frameworks/angular/server/websocket-angular-hot-update.js';
20
21
  import { canonicalizeTransformRequestCacheKey } from './transform-cache-invalidation.js';
21
22
  import { HmrModuleGraph } from './hmr-module-graph.js';
22
23
  import { registerNsRtBridgeRoute } from './ns-rt-route.js';
@@ -24,6 +25,9 @@ import { registerVendorUnifierHandler } from './websocket-vendor-unifier.js';
24
25
  import { registerTxnHandler } from './websocket-txn.js';
25
26
  import { registerNsModuleServerRoute } from './websocket-ns-m.js';
26
27
  import { registerBootClosureRoute } from './boot-closure-route.js';
28
+ import { NS_INTERNAL_HEADER, registerBootArchiveRoute } from './boot-archive-route.js';
29
+ import { createBootRecorderFromEnv } from './boot-recording.js';
30
+ import { getSharedDepsBundleService } from './deps-bundle.js';
27
31
  import { registerNsCoreRoute } from './websocket-ns-core.js';
28
32
  import { registerNsEntryRoutes } from './websocket-ns-entry.js';
29
33
  import { registerImportMapRoute } from './websocket-import-map-route.js';
@@ -142,6 +146,12 @@ function createHmrWebSocketPlugin(opts, strategy) {
142
146
  let wss = null;
143
147
  let sharedTransformRequest;
144
148
  const pendingAngularReloadSuppressions = new Map();
149
+ // Records every `angular:component-update` broadcast actually forwarded to
150
+ // /ns-hmr clients so the /ns/m `/@ng/component` route can distinguish live
151
+ // update fetches (which echo the broadcast's exact `(id, t)`) from
152
+ // boot-time `_HmrLoad(Date.now())` fetches, which must get the no-update
153
+ // stub (see the ledger docs in websocket-angular-hot-update.ts).
154
+ const angularComponentUpdateLedger = createAngularComponentUpdateLedger();
145
155
  const sfcFileMap = new Map();
146
156
  const depFileMap = new Map();
147
157
  let vendorBootstrapDone = false;
@@ -162,6 +172,10 @@ function createHmrWebSocketPlugin(opts, strategy) {
162
172
  // request arrives, finalized when the request window goes idle.
163
173
  // See Shared across requests so a single counter spans the whole cold boot.
164
174
  let coldBootCounter = null;
175
+ // Cold-boot request recorder: captures each boot's exact prefetchable URL
176
+ // set so the next boot's closure/archive covers node_modules bodies the
177
+ // graph walk cannot see. Created in configureServer (needs the root).
178
+ let bootRecorder = null;
165
179
  function rememberAngularReloadSuppression(root, file, ttlMs = 3000) {
166
180
  const absPath = normalizeHotReloadMatchPath(file);
167
181
  const relPath = normalizeHotReloadMatchPath(file, root);
@@ -286,7 +300,7 @@ function createHmrWebSocketPlugin(opts, strategy) {
286
300
  return {
287
301
  name: 'nativescript-hmr-websocket',
288
302
  apply: 'serve',
289
- configureServer(server) {
303
+ async configureServer(server) {
290
304
  pluginRoot = server.config?.root || process.cwd();
291
305
  const httpServer = server.httpServer;
292
306
  if (!httpServer)
@@ -360,6 +374,13 @@ function createHmrWebSocketPlugin(opts, strategy) {
360
374
  }
361
375
  return;
362
376
  }
377
+ // Ledger for the /@ng/component boot-fetch gate: only
378
+ // broadcasts that actually reach devices are recorded,
379
+ // so root-component updates (dropped above) can never
380
+ // match a metadata fetch.
381
+ if (normalized.event === 'angular:component-update') {
382
+ angularComponentUpdateLedger.record(normalized.data);
383
+ }
363
384
  const stringified = JSON.stringify(normalized);
364
385
  let recipients = 0;
365
386
  wss?.clients.forEach((client) => {
@@ -421,42 +442,18 @@ function createHmrWebSocketPlugin(opts, strategy) {
421
442
  resultCacheTtlMs: transformCacheMs,
422
443
  getResultCacheKey: (url) => canonicalizeTransformRequestCacheKey(url, pluginRoot || process.cwd()),
423
444
  });
424
- // Always-on startup banner — prints once per dev server process
425
- // so anyone investigating perf can immediately see which build
426
- // is live and what knobs are active.
427
- try {
428
- let pkgVersion = 'unknown';
429
- try {
430
- const req = createRequire(import.meta.url);
431
- const pkg = req('@nativescript/vite/package.json');
432
- if (pkg && typeof pkg.version === 'string')
433
- pkgVersion = pkg.version;
434
- }
435
- catch {
436
- // `@nativescript/vite/package.json` is not always exported; fall
437
- // back to reading the file from disk next to this module.
438
- try {
439
- const here = new URL(import.meta.url).pathname;
440
- const pkgPath = path.resolve(path.dirname(here), '..', '..', 'package.json');
441
- if (existsSync(pkgPath)) {
442
- const parsed = JSON.parse(readFileSync(pkgPath, 'utf-8'));
443
- if (parsed && typeof parsed.version === 'string')
444
- pkgVersion = parsed.version;
445
- }
446
- }
447
- catch { }
448
- }
449
- if (verbose) {
450
- console.info(formatServerStartupBanner({
451
- version: pkgVersion,
452
- transformConcurrency,
453
- transformCacheMs,
454
- lazyInitialGraph: true,
455
- graphVersion: moduleGraph.version,
456
- }));
457
- }
445
+ // Startup banner — prints once per dev server process (verbose only)
446
+ // so anyone investigating perf can immediately see which build is
447
+ // live and what knobs are active.
448
+ if (verbose) {
449
+ console.info(formatServerStartupBanner({
450
+ version: getVitePackageVersion(),
451
+ transformConcurrency,
452
+ transformCacheMs,
453
+ lazyInitialGraph: true,
454
+ graphVersion: moduleGraph.version,
455
+ }));
458
456
  }
459
- catch { }
460
457
  // Always-on cold-boot request trace. Runs in front of every
461
458
  // other middleware so it catches all NS dev routes (/ns/m/*,
462
459
  // /ns/rt/*, /ns/core/*, /__ns_boot__/*, etc.) with a single
@@ -488,9 +485,32 @@ function createHmrWebSocketPlugin(opts, strategy) {
488
485
  }
489
486
  }
490
487
  catch { }
488
+ // Boot recording — persists each boot's exact prefetchable URL set
489
+ // so the next boot's closure/archive reaches ~full prewarm coverage
490
+ // (the graph walk can't see `/ns/m/node_modules/...` bodies).
491
+ // Disable via `NS_VITE_HMR_DISABLE_BOOT_RECORDING=1` when profiling.
492
+ if (!bootRecorder) {
493
+ bootRecorder = createBootRecorderFromEnv(server.config?.root || process.cwd(), (line) => {
494
+ if (verbose)
495
+ console.info(line);
496
+ });
497
+ }
491
498
  server.middlewares.use((req, res, next) => {
492
499
  try {
500
+ // Server-internal loopback traffic (boot-archive self-fetches)
501
+ // must not pollute boot recording or cold-boot diagnostics.
502
+ if (req.headers[NS_INTERNAL_HEADER])
503
+ return next();
493
504
  const urlObj = new URL(req.url || '', 'http://localhost');
505
+ // Boot recording sees every request first: `/__ns_dev__/*` boot
506
+ // signals open a recording window, prefetchable module routes
507
+ // get recorded on 2xx completion.
508
+ const finishRecord = bootRecorder?.noteRequest(`${urlObj.pathname}${urlObj.search || ''}`);
509
+ if (finishRecord) {
510
+ const recordOnce = () => finishRecord(res.statusCode || 0);
511
+ res.once('finish', recordOnce);
512
+ res.once('close', recordOnce);
513
+ }
494
514
  const route = classifyBootRoute(urlObj.pathname);
495
515
  if (route === 'other')
496
516
  return next();
@@ -512,16 +532,13 @@ function createHmrWebSocketPlugin(opts, strategy) {
512
532
  catch { }
513
533
  next();
514
534
  });
515
- // Give `populateInitialGraph` a head start. Previously this only
516
- // kicked off on the first /ns/m hit, which meant populate was
517
- // competing with the device for the same 8 transform slots
518
- // throughout the first 4-5 seconds of cold boot. Starting at
519
- // `configureServer` time gives populate the full app
520
- // build/launch window (typically 2-3s on simulator) as a head
521
- // start, so more of its work lands before the device even
522
- // connects. Disable via `NS_VITE_HMR_DISABLE_POPULATE=1` when
523
- // profiling whether populate is helping or hurting a specific
524
- // app.
535
+ // Give `populateInitialGraph` a head start: kicking it off at
536
+ // `configureServer` time gives populate the full app build/launch
537
+ // window (typically 2-3s on simulator), so more of its work lands
538
+ // before the device even connects and starts competing for the
539
+ // transform slots. Disable via `NS_VITE_HMR_DISABLE_POPULATE=1`
540
+ // when profiling whether populate is helping or hurting a
541
+ // specific app.
525
542
  try {
526
543
  const disablePopulate = process.env.NS_VITE_HMR_DISABLE_POPULATE === '1' || process.env.NS_VITE_HMR_DISABLE_POPULATE === 'true';
527
544
  if (disablePopulate) {
@@ -607,9 +624,17 @@ function createHmrWebSocketPlugin(opts, strategy) {
607
624
  registerImportMapRoute(server, { getStrategy: () => strategy });
608
625
  // Cold-boot module closure for the device kickstart prefetch:
609
626
  // GET /__ns_dev__/boot-closure — see boot-closure-route.ts
610
- registerBootClosureRoute(server, {
627
+ const bootClosureSource = {
611
628
  getGraphModuleIds: () => Array.from(moduleGraph.modules.keys()),
612
629
  ensureInitialGraphPopulationStarted: (s) => ensureInitialGraphPopulationStarted(s),
630
+ getRecordedBootPaths: () => bootRecorder?.getRecordedPaths() ?? null,
631
+ };
632
+ registerBootClosureRoute(server, bootClosureSource);
633
+ // Batch cold-boot payload for `__NS_DEV__.seedModuleBodies`:
634
+ // GET /__ns_dev__/boot-archive — see boot-archive-route.ts
635
+ registerBootArchiveRoute(server, bootClosureSource, {
636
+ verbose,
637
+ onArchiveServed: (paths) => bootRecorder?.seedActiveSession(paths),
613
638
  });
614
639
  // Dev-only HTTP ESM loader endpoint for device clients
615
640
  // ESM module server for application/source modules: GET /ns/m/* — see websocket-ns-m.ts
@@ -625,7 +650,32 @@ function createHmrWebSocketPlugin(opts, strategy) {
625
650
  upsertGraphModule: (id, code, deps, opts) => {
626
651
  moduleGraph.upsert(id, code, deps, opts);
627
652
  },
653
+ isLiveAngularComponentUpdateFetch: (componentId, timestamp) => angularComponentUpdateLedger.isLive(componentId, timestamp),
628
654
  });
655
+ // Deps bundle (see deps-bundle.ts): the single node_modules payload,
656
+ // built from the vendor collection + the persisted boot recording
657
+ // and AWAITED here so the ready/not-ready decision is latched
658
+ // before the server accepts device requests — every boot is then
659
+ // all-shims or all-per-module, never a mid-boot mix (which would
660
+ // evaluate bundled modules twice). It also backs the dev-session
661
+ // /@nativescript/vendor.mjs module (see buildDepsVendorRuntimeModule).
662
+ const depsBundle = getSharedDepsBundleService(server);
663
+ if (depsBundle) {
664
+ const tDeps = Date.now();
665
+ const depsState = await depsBundle.ensureBuilt();
666
+ if (depsState && verbose) {
667
+ console.info(`[hmr-ws] deps bundle ready: ${depsState.keys.size} modules, ${(depsState.code.length / 1024).toFixed(0)}kb (+${Date.now() - tDeps}ms at startup)`);
668
+ }
669
+ // A dependency change invalidates the built closure — stop
670
+ // handing out new shims; the next dev-server start rebuilds.
671
+ const packageJsonPath = path.resolve(server.config?.root || process.cwd(), 'package.json');
672
+ server.watcher.add(packageJsonPath);
673
+ server.watcher.on('change', (file) => {
674
+ if (path.resolve(file) === packageJsonPath && depsBundle.getState()) {
675
+ depsBundle.disableServingForSession('package.json changed');
676
+ }
677
+ });
678
+ }
629
679
  // ESM runtime bridge for NativeScript-Vue: GET /ns/rt[/<ver>] — see ns-rt-route.ts
630
680
  registerNsRtBridgeRoute(server, { getGraphVersion: () => moduleGraph.version });
631
681
  // Dev-only vendor import unifier: rewrite 'vue'/'nativescript-vue' to /ns/rt/<ver>
@@ -775,8 +825,7 @@ function createHmrWebSocketPlugin(opts, strategy) {
775
825
  * the flavor has no registered server strategy (e.g. `react`, which ships only
776
826
  * the client plugin today). Driven off `STRATEGY_REGISTRY`, so adding a flavor
777
827
  * is a one-line registry change — no per-flavor wrapper and no `getHMRPlugins`
778
- * switch arm. Replaces the former hmrWebSocket{Vue,Angular,Solid,Typescript}
779
- * wrappers and the explicit `case 'react': // no-op`.
828
+ * switch arm.
780
829
  */
781
830
  export function hmrWebSocketPluginForFlavor(flavor, opts) {
782
831
  const strategy = STRATEGY_REGISTRY.get(flavor);
@@ -1 +1 @@
1
- {"version":3,"file":"websocket.js","sourceRoot":"","sources":["../../../../../packages/vite/hmr/server/websocket.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"websocket.js","sourceRoot":"","sources":["../../../../../packages/vite/hmr/server/websocket.ts"],"names":[],"mappings":"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"}
@@ -80,6 +80,7 @@ declare global {
80
80
  kind: 'solid';
81
81
  changedFiles: string[];
82
82
  boundaries: string[];
83
+ ancestors?: string[];
83
84
  }) => void) => () => void) | undefined;
84
85
  var __NS_HMR_DEV_OVERLAY__: any;
85
86
  var __NS_ENTRY_TRACE__: any;
@@ -0,0 +1,16 @@
1
+ export declare const BOOT_ARCHIVE_PATH = "/__ns_dev__/boot-archive";
2
+ export type BootArchiveModuleEntry = {
3
+ url: string;
4
+ body: string;
5
+ };
6
+ export type BootArchiveLine = {
7
+ kind: 'meta';
8
+ version: number;
9
+ source: string;
10
+ urls: number;
11
+ } | ({
12
+ kind: 'mod';
13
+ } & BootArchiveModuleEntry);
14
+ export declare function serializeBootArchiveLine(line: BootArchiveLine): string;
15
+ /** Parse NDJSON archive text into `{url, body}` entries for `seedModuleBodies`. */
16
+ export declare function parseBootArchiveText(text: string): BootArchiveModuleEntry[];
@@ -0,0 +1,31 @@
1
+ // Wire format for `/__ns_dev__/boot-archive` — owned here in the shared
2
+ // runtime layer because both sides speak it: the server route serializes
3
+ // lines, the device bootstrap parses them.
4
+ //
5
+ // NDJSON: one JSON object per line. The first line is a `meta` header;
6
+ // every following line is a `mod` body. The parser tolerates junk lines, so
7
+ // a truncated stream still yields every complete entry.
8
+ export const BOOT_ARCHIVE_PATH = '/__ns_dev__/boot-archive';
9
+ export function serializeBootArchiveLine(line) {
10
+ return `${JSON.stringify(line)}\n`;
11
+ }
12
+ /** Parse NDJSON archive text into `{url, body}` entries for `seedModuleBodies`. */
13
+ export function parseBootArchiveText(text) {
14
+ const entries = [];
15
+ if (typeof text !== 'string' || !text)
16
+ return entries;
17
+ for (const line of text.split('\n')) {
18
+ const trimmed = line.trim();
19
+ if (!trimmed)
20
+ continue;
21
+ try {
22
+ const parsed = JSON.parse(trimmed);
23
+ if (parsed && parsed.kind === 'mod' && typeof parsed.url === 'string' && parsed.url && typeof parsed.body === 'string' && parsed.body) {
24
+ entries.push({ url: parsed.url, body: parsed.body });
25
+ }
26
+ }
27
+ catch { }
28
+ }
29
+ return entries;
30
+ }
31
+ //# sourceMappingURL=boot-archive-format.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"boot-archive-format.js","sourceRoot":"","sources":["../../../../../../packages/vite/hmr/shared/runtime/boot-archive-format.ts"],"names":[],"mappings":"AAAA,wEAAwE;AACxE,yEAAyE;AACzE,2CAA2C;AAC3C,EAAE;AACF,uEAAuE;AACvE,4EAA4E;AAC5E,wDAAwD;AAExD,MAAM,CAAC,MAAM,iBAAiB,GAAG,0BAA0B,CAAC;AAM5D,MAAM,UAAU,wBAAwB,CAAC,IAAqB;IAC7D,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;AACpC,CAAC;AAED,mFAAmF;AACnF,MAAM,UAAU,oBAAoB,CAAC,IAAY;IAChD,MAAM,OAAO,GAA6B,EAAE,CAAC;IAC7C,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,IAAI;QAAE,OAAO,OAAO,CAAC;IACtD,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACrC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,OAAO;YAAE,SAAS;QACvB,IAAI,CAAC;YACJ,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACnC,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,KAAK,KAAK,IAAI,OAAO,MAAM,CAAC,GAAG,KAAK,QAAQ,IAAI,MAAM,CAAC,GAAG,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;gBACvI,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;YACtD,CAAC;QACF,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;IACX,CAAC;IACD,OAAO,OAAO,CAAC;AAChB,CAAC"}
@@ -38,11 +38,22 @@ export interface NsKickstartPrefetchResult {
38
38
  fetched: number;
39
39
  ms: number;
40
40
  }
41
+ /** One `{url, body}` pair seeded into the native prewarm cache (boot archive). */
42
+ export interface NsSeedModuleBodyEntry {
43
+ url: string;
44
+ body: string;
45
+ }
46
+ export interface NsSeedModuleBodiesResult {
47
+ ok: boolean;
48
+ seeded: number;
49
+ bytes: number;
50
+ }
41
51
  /**
42
- * The native dev-host contract — mechanism only. The runtime exposes six
43
- * primitives on the single `globalThis.__NS_DEV__` namespace object; every
44
- * policy concern (boot orchestration, import.meta.hot, full reload, CSS
45
- * apply, WebSocket protocol) lives in JS inside @nativescript/vite.
52
+ * The native dev-host contract — mechanism only. The runtime exposes its
53
+ * mechanism primitives on the single `globalThis.__NS_DEV__` namespace
54
+ * object; every policy concern (boot orchestration, import.meta.hot, full
55
+ * reload, CSS apply, WebSocket protocol) lives in JS inside
56
+ * @nativescript/vite.
46
57
  *
47
58
  * Every member is optional: a non-dev environment (or a test) may expose
48
59
  * none or only some of them, and callers degrade gracefully.
@@ -56,6 +67,14 @@ export interface NsRuntimeDevHostApi {
56
67
  getLoadedModuleUrls?: () => string[];
57
68
  /** `__NS_DEV__.kickstartPrefetch(urls)` — parallel HTTP body prewarm for an explicit URL list. */
58
69
  kickstartPrefetch?: (urls: string[], options?: NsKickstartPrefetchOptions) => NsKickstartPrefetchResult | null;
70
+ /**
71
+ * `__NS_DEV__.seedModuleBodies(entries)` — batch prewarm-cache seeding: the
72
+ * bootstrap downloads `/__ns_dev__/boot-archive` (NDJSON) and seeds every
73
+ * `{url, body}` into the prewarm cache in one call, behind the same
74
+ * http(s)/JS-shape/allowlist gates as a kickstart fetch. Callers fall back
75
+ * to `kickstartPrefetch(urls)` when absent or nothing seeded.
76
+ */
77
+ seedModuleBodies?: (entries: NsSeedModuleBodyEntry[]) => NsSeedModuleBodiesResult | null;
59
78
  /** `__NS_DEV__.setDevBootComplete` — flips the native cold-boot gate + `__NS_HMR_BOOT_COMPLETE__`. */
60
79
  setDevBootComplete?: (value?: boolean) => void;
61
80
  /** `__NS_DEV__.terminateAllWorkers` — drains `Caches::Workers`; returns the count terminated (main isolate only). */
@@ -1 +1 @@
1
- {"version":3,"file":"browser-runtime-contract.js","sourceRoot":"","sources":["../../../../../../packages/vite/hmr/shared/runtime/browser-runtime-contract.ts"],"names":[],"mappings":"AAMA,MAAM,CAAC,MAAM,yBAAyB,GAAG,mBAA4B,CAAC;AACtE,MAAM,CAAC,MAAM,+BAA+B,GAAG,yBAAkC,CAAC;AAClF,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,yBAAyB,EAAE,+BAA+B,CAA8C,CAAC;AAEjJ,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,WAAW,EAAE,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,OAAO,EAAE,UAAU,CAAU,CAAC;AAS7H,MAAM,CAAC,MAAM,4BAA4B,GAAyE;IACjH,UAAU,EAAE,IAAI;IAChB,MAAM,EAAE,IAAI;CACZ,CAAC;AA0DF,SAAS,gBAAgB,CAAC,KAAc;IACvC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;AACtD,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,KAAc;IAC7C,OAAO,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,UAAU,CAAC;AACvE,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,OAAgB;IAC5D,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAC7C,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;IAChE,CAAC;IAED,MAAM,SAAS,GAAG,OAAkC,CAAC;IACrD,KAAK,MAAM,GAAG,IAAI,8BAA8B,EAAE,CAAC;QAClD,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,8BAA8B,GAAG,EAAE,CAAC,CAAC;QACtD,CAAC;IACF,CAAC;IAED,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CAAC,iCAAiC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAChF,CAAC;IAED,IAAI,SAAS,CAAC,WAAW,IAAI,IAAI,EAAE,CAAC;QACnC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC;YACzJ,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;QACpD,CAAC;IACF,CAAC;IAED,IAAI,SAAS,CAAC,gBAAgB,IAAI,IAAI,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACzF,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;IACzD,CAAC;IAED,IAAI,SAAS,CAAC,QAAQ,IAAI,IAAI,EAAE,CAAC;QAChC,IAAI,OAAO,SAAS,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAC5C,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;QACjD,CAAC;IACF,CAAC;AACF,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CAAC,SAAqC,UAAU;IACtF,OAAO,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;AAChC,CAAC;AAOD,OAAO,EAAE,CAAC"}
1
+ {"version":3,"file":"browser-runtime-contract.js","sourceRoot":"","sources":["../../../../../../packages/vite/hmr/shared/runtime/browser-runtime-contract.ts"],"names":[],"mappings":"AAMA,MAAM,CAAC,MAAM,yBAAyB,GAAG,mBAA4B,CAAC;AACtE,MAAM,CAAC,MAAM,+BAA+B,GAAG,yBAAkC,CAAC;AAClF,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,yBAAyB,EAAE,+BAA+B,CAA8C,CAAC;AAEjJ,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,WAAW,EAAE,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,OAAO,EAAE,UAAU,CAAU,CAAC;AAS7H,MAAM,CAAC,MAAM,4BAA4B,GAAyE;IACjH,UAAU,EAAE,IAAI;IAChB,MAAM,EAAE,IAAI;CACZ,CAAC;AA+EF,SAAS,gBAAgB,CAAC,KAAc;IACvC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;AACtD,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,KAAc;IAC7C,OAAO,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,UAAU,CAAC;AACvE,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,OAAgB;IAC5D,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAC7C,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;IAChE,CAAC;IAED,MAAM,SAAS,GAAG,OAAkC,CAAC;IACrD,KAAK,MAAM,GAAG,IAAI,8BAA8B,EAAE,CAAC;QAClD,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,8BAA8B,GAAG,EAAE,CAAC,CAAC;QACtD,CAAC;IACF,CAAC;IAED,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CAAC,iCAAiC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAChF,CAAC;IAED,IAAI,SAAS,CAAC,WAAW,IAAI,IAAI,EAAE,CAAC;QACnC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC;YACzJ,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;QACpD,CAAC;IACF,CAAC;IAED,IAAI,SAAS,CAAC,gBAAgB,IAAI,IAAI,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACzF,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;IACzD,CAAC;IAED,IAAI,SAAS,CAAC,QAAQ,IAAI,IAAI,EAAE,CAAC;QAChC,IAAI,OAAO,SAAS,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAC5C,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;QACjD,CAAC;IACF,CAAC;AACF,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CAAC,SAAqC,UAAU;IACtF,OAAO,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;AAChC,CAAC;AAOD,OAAO,EAAE,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { assertNsDevSessionDescriptor, readNsRuntimeDevHostApi } from './browser-runtime-contract.js';
2
+ import { BOOT_ARCHIVE_PATH, parseBootArchiveText } from './boot-archive-format.js';
2
3
  import { ensureHmrDevOverlayRuntimeInstalled, setHmrBootStage } from './dev-overlay.js';
3
4
  import { formatBootTimeline, publishBootTrace } from './boot-timeline.js';
4
5
  import { applyMonotonicBootProgress, clearBootProgressState, computeBootImportProgress, formatBootImportDetail } from './boot-progress.js';
@@ -28,6 +29,45 @@ async function fetchBootClosureUrls(origin, verbose) {
28
29
  return [];
29
30
  }
30
31
  }
32
+ async function runBootArchiveSeed(origin, runtimeApi, verbose) {
33
+ if (typeof runtimeApi.seedModuleBodies !== 'function')
34
+ return null;
35
+ const t0 = Date.now();
36
+ try {
37
+ const archiveUrl = `${origin.replace(/\/$/, '')}${BOOT_ARCHIVE_PATH}`;
38
+ const response = await fetch(archiveUrl);
39
+ if (!response.ok) {
40
+ if (verbose)
41
+ console.info(`[ns-entry] boot-archive fetch failed (${response.status}); falling back to kickstart`);
42
+ return null;
43
+ }
44
+ const text = await response.text();
45
+ const entries = parseBootArchiveText(text);
46
+ if (!entries.length) {
47
+ if (verbose)
48
+ console.info('[ns-entry] boot-archive empty; falling back to kickstart');
49
+ return null;
50
+ }
51
+ const result = runtimeApi.seedModuleBodies(entries);
52
+ const seeded = Number(result?.seeded || 0);
53
+ const bytes = Number(result?.bytes || 0);
54
+ if (!result?.ok || !seeded) {
55
+ if (verbose)
56
+ console.info('[ns-entry] boot-archive seed stored nothing; falling back to kickstart');
57
+ return null;
58
+ }
59
+ const ms = Date.now() - t0;
60
+ if (verbose) {
61
+ console.info(`[ns-entry] boot archive seeded ${seeded} bodies (${(bytes / 1024).toFixed(0)}kb) in ${ms}ms`);
62
+ }
63
+ return { ok: true, seeded, bytes, ms };
64
+ }
65
+ catch (error) {
66
+ if (verbose)
67
+ console.info('[ns-entry] boot-archive seed threw; falling back to kickstart', error);
68
+ return null;
69
+ }
70
+ }
31
71
  function runColdBootKickstart(urls, runtimeApi, verbose) {
32
72
  if (!urls.length)
33
73
  return null;
@@ -280,18 +320,26 @@ export async function startBrowserRuntimeSession(defaultSessionUrl, verbose) {
280
320
  catch { }
281
321
  const stopBootImportHeartbeat = startBootImportHeartbeat(tBoot, verbose);
282
322
  try {
283
- // Server-computed boot closure → one parallel prewarm wave.
284
- // Stamp the kickstart detail only when the runtime will
285
- // actually run the prefetch, otherwise the placeholder would
286
- // flash a misleading line on runtimes without the primitive.
287
- if (typeof runtimeApi.kickstartPrefetch === 'function') {
323
+ // Prewarm the native module-body cache before V8 walks the graph.
324
+ // Preferred: the batch boot archive (one streamed download seeded
325
+ // via `seedModuleBodies`). Fallback: the server-computed boot
326
+ // closure → one parallel kickstart wave. Stamp the stage detail
327
+ // only when the runtime will actually do prewarm work, otherwise
328
+ // the placeholder would flash a misleading line.
329
+ if (typeof runtimeApi.seedModuleBodies === 'function' || typeof runtimeApi.kickstartPrefetch === 'function') {
288
330
  setHmrBootStage('importing-main', {
289
331
  detail: `prefetching transitive imports for ${session.entryUrl}…`,
290
332
  });
291
- const closureUrls = await fetchBootClosureUrls(session.origin, verbose);
292
- const kickstartResult = runColdBootKickstart(closureUrls, runtimeApi, verbose);
293
- if (kickstartResult) {
294
- trace.kickstart = { ok: kickstartResult.ok, ms: kickstartResult.ms, meta: { fetched: kickstartResult.fetched } };
333
+ const archiveResult = await runBootArchiveSeed(session.origin, runtimeApi, verbose);
334
+ if (archiveResult) {
335
+ trace.kickstart = { ok: archiveResult.ok, ms: archiveResult.ms, meta: { mode: 'archive', seeded: archiveResult.seeded, bytes: archiveResult.bytes } };
336
+ }
337
+ else if (typeof runtimeApi.kickstartPrefetch === 'function') {
338
+ const closureUrls = await fetchBootClosureUrls(session.origin, verbose);
339
+ const kickstartResult = runColdBootKickstart(closureUrls, runtimeApi, verbose);
340
+ if (kickstartResult) {
341
+ trace.kickstart = { ok: kickstartResult.ok, ms: kickstartResult.ms, meta: { mode: 'kickstart', fetched: kickstartResult.fetched } };
342
+ }
295
343
  }
296
344
  }
297
345
  // JS boot orchestration: dev client first (installs the hot