dsh-plugin-upgrader 1.6.2 → 1.7.0

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.
@@ -9,10 +9,20 @@
9
9
  */
10
10
  import { explainLockTimeout } from './lock.js';
11
11
  import { confirmDependency, dropDependency, profileDirFrom, restoreDependency } from './manifest.js';
12
+ import { satisfiesRange } from './version.js';
12
13
  /** Allowed per-step actions. */
13
14
  export const ACTIONS = new Set(['upgrade', 'switch']);
14
15
  /** The manager's code for "a live loader fiber still owns this bundle". */
15
16
  const IN_USE = 'bundle-in-use';
17
+ /**
18
+ * The manager's code for "this version does not admit the running DSH".
19
+ *
20
+ * Worth naming: it is the one refusal that is *certain* to repeat. Every other
21
+ * failure might be a flaky registry or a busy lock, but a version whose declared
22
+ * range rejects this runtime will be rejected again no matter how many times the
23
+ * replacement is retried — so retrying it by removing first only destroys more.
24
+ */
25
+ const INCOMPATIBLE = 'incompatible-version';
16
26
  /**
17
27
  * Read the manager's failure code off a result or a throw.
18
28
  *
@@ -86,6 +96,43 @@ async function readsAsEnabled(manager, name) {
86
96
  return undefined;
87
97
  }
88
98
  }
99
+ /**
100
+ * One bundle as the manager currently reports it.
101
+ *
102
+ * "Absent" and "present but with no version" have to be told apart: the first
103
+ * means a rollback has to reinstall, the second only means the listing did not
104
+ * carry a version — re-selecting is still the right repair there.
105
+ *
106
+ * @param manager - the plugin manager.
107
+ * @param name - the bundle to read.
108
+ * @returns the entry, or `undefined` when it is not listed at all.
109
+ */
110
+ async function bundleOf(manager, name) {
111
+ try {
112
+ const bundles = await manager.listBundles();
113
+ const list = Array.isArray(bundles) ? bundles : [];
114
+ return list.find((item) => item?.name === name);
115
+ }
116
+ catch {
117
+ return undefined;
118
+ }
119
+ }
120
+ /**
121
+ * The version a bundle currently has on disk, read before anything is removed.
122
+ *
123
+ * This is the value a failed replacement rolls back to. It has to be read up
124
+ * front: after `removeForReplacement` the package is gone, and the manager has
125
+ * nothing left to report a version for — which is precisely the moment the
126
+ * rollback needs to know what to put back.
127
+ *
128
+ * @param manager - the plugin manager.
129
+ * @param name - the bundle to read.
130
+ * @returns the installed version, or `undefined` when it cannot be read.
131
+ */
132
+ async function installedVersion(manager, name) {
133
+ const version = (await bundleOf(manager, name))?.version;
134
+ return typeof version === 'string' && version.trim() !== '' ? version.trim() : undefined;
135
+ }
89
136
  /**
90
137
  * Call `setBundleEnabled`, reporting a refusal instead of throwing it.
91
138
  *
@@ -267,6 +314,86 @@ export async function restoreSelection(manager, name, log) {
267
314
  }
268
315
  return true;
269
316
  }
317
+ /**
318
+ * Put the previous version back after a replacement destroyed it.
319
+ *
320
+ * The in-place route only knows the install was refused after pnpm has run, and
321
+ * the manager's compatibility gate runs *after* pnpm rewrote the lockfile — so a
322
+ * version the host refuses can leave the package gone while the manifest entry
323
+ * is the only thing that got restored. The plugin then disappears from the page
324
+ * with no way back except reinstalling by hand.
325
+ *
326
+ * Installing the old version again is the repair that actually works: pnpm puts
327
+ * the files back, and the manager activates them exactly as it did before. It is
328
+ * deliberately attempted for every failure that follows a removal, not only the
329
+ * compatibility one — an entry pointing at a version that is not on disk is
330
+ * broken either way.
331
+ *
332
+ * Best effort: the step has already failed for its own reason, and a rollback
333
+ * that also fails must not replace that reason.
334
+ *
335
+ * @param manager - the plugin manager.
336
+ * @param step - the step that failed.
337
+ * @param previous - the version that was installed before the step ran.
338
+ * @param options - the install options the caller already built.
339
+ * @param log - progress sink.
340
+ * @param announce - receives the request id the rollback installs under.
341
+ * @returns whether the old version is back.
342
+ */
343
+ async function rollBack(manager, step, previous, options, log, announce) {
344
+ const spec = `${step.name}@${previous}`;
345
+ const requestId = globalThis.crypto?.randomUUID?.() ?? `pu-${Date.now()}-${Math.random().toString(36).slice(2)}`;
346
+ announce?.(requestId);
347
+ log(`roll back: install ${spec} again (the failed replacement already removed it)`);
348
+ try {
349
+ const result = await manager.installBundle(spec, { ...options, requestId });
350
+ const back = result?.application === 'applied' || result?.application === 'restart-required';
351
+ if (result?.error !== undefined || !back) {
352
+ log(` ! rollback refused (${result?.error?.code ?? 'no change'}); ${step.name}@${previous} is not installed — ` +
353
+ 'install it again from the Installed tab');
354
+ return false;
355
+ }
356
+ log(` ✓ ${step.name}@${previous} is back where it was`);
357
+ return true;
358
+ }
359
+ catch (error) {
360
+ log(` ! rollback failed: ${describeFailure(error instanceof Error ? error.message : String(error))}; ` +
361
+ `${step.name}@${previous} is not installed`);
362
+ return false;
363
+ }
364
+ }
365
+ /**
366
+ * Put the profile back the way the step found it, whatever it managed to break.
367
+ *
368
+ * Two different damages need two different repairs, and picking the wrong one
369
+ * makes things worse:
370
+ *
371
+ * - the package is still on disk but was deselected — re-selecting it is enough,
372
+ * and installing an old version over it would be a pointless pnpm run;
373
+ * - the package is gone — re-selecting nothing, which is what the old code did,
374
+ * leaves an entry in `dependencies` that nothing can load, so the plugin is
375
+ * simply missing from the page.
376
+ *
377
+ * @param manager - the plugin manager.
378
+ * @param step - the step that failed.
379
+ * @param previous - the version installed before the step ran, when known.
380
+ * @param options - the install options the caller already built.
381
+ * @param log - progress sink.
382
+ * @param announce - receives the request id a rollback installs under.
383
+ * @returns whether the profile was put back.
384
+ */
385
+ async function recover(manager, step, previous, options, log, announce) {
386
+ const entry = await bundleOf(manager, step.name);
387
+ if (entry !== undefined && entry.installed !== false) {
388
+ await restoreSelection(manager, step.name, log);
389
+ return false;
390
+ }
391
+ if (previous === undefined) {
392
+ log(` ! ${step.name} is no longer installed, and its previous version was not recorded`);
393
+ return false;
394
+ }
395
+ return rollBack(manager, step, previous, options, log, announce);
396
+ }
270
397
  /**
271
398
  * Replace a version without removing the bundle first.
272
399
  *
@@ -367,9 +494,10 @@ async function replaceWithoutRemoval(manager, step, options, log, announce) {
367
494
  * @param log - progress sink.
368
495
  * @param announce - receives the request id the step installs under.
369
496
  * @param registry - the registry chosen in this plugin's config, if any.
497
+ * @param guard - the compatibility check, when the caller can supply one.
370
498
  * @returns the outcome record.
371
499
  */
372
- export async function runStep(manager, step, log, announce, registry) {
500
+ export async function runStep(manager, step, log, announce, registry, guard) {
373
501
  const spec = `${step.name}@${step.version}`;
374
502
  const requestId = globalThis.crypto?.randomUUID?.() ?? `pu-${Date.now()}-${Math.random().toString(36).slice(2)}`;
375
503
  announce?.(requestId);
@@ -379,6 +507,29 @@ export async function runStep(manager, step, log, announce, registry) {
379
507
  const base = { name: step.name, version: step.version, spec, requestId };
380
508
  const restoreEnabled = typeof step.enabled === 'boolean' ? step.enabled : undefined;
381
509
  log(`install ${spec}`);
510
+ /*
511
+ * Ask the version itself before touching anything.
512
+ *
513
+ * The host's own gate is the final word and it runs inside pnpm's wake-up, so
514
+ * without this check a refusal arrives after the manager has already deselected
515
+ * — or removed — the bundle. Reading the published requirement first turns
516
+ * "your plugin is gone" into "this version was never going to work", which is
517
+ * the difference between a repair and a loss.
518
+ */
519
+ const requirement = guard === undefined ? undefined : await guard.requirementOf(step.name, step.version);
520
+ if (requirement !== undefined && guard?.runtimeVersion !== undefined) {
521
+ if (!satisfiesRange(guard.runtimeVersion, requirement.range)) {
522
+ log(` ! ${spec} declares ${requirement.range}, which excludes DSH ${guard.runtimeVersion}; nothing was changed`);
523
+ return {
524
+ ...base,
525
+ ok: false,
526
+ application: 'failed',
527
+ stage: 'install',
528
+ message: INCOMPATIBLE,
529
+ detail: requirement.range,
530
+ };
531
+ }
532
+ }
382
533
  const options = {
383
534
  saveExact: true,
384
535
  ...(restoreEnabled === undefined ? {} : { enabled: restoreEnabled }),
@@ -392,6 +543,12 @@ export async function runStep(manager, step, log, announce, registry) {
392
543
  ...(typeof registry === 'string' && registry.trim() !== '' ? { registry: registry.trim() } : {}),
393
544
  };
394
545
  let result;
546
+ /*
547
+ * Read the version on disk *before* the manager can take it away. This is the
548
+ * value a failed replacement rolls back to, and once `removeForReplacement`
549
+ * has run there is nothing left to ask.
550
+ */
551
+ const previous = await installedVersion(manager, step.name);
395
552
  try {
396
553
  result = await manager.installBundle(spec, { ...options, requestId });
397
554
  }
@@ -462,12 +619,12 @@ export async function runStep(manager, step, log, announce, registry) {
462
619
  }
463
620
  catch (error) {
464
621
  /*
465
- * The removal above already deselected the bundle, so a throw here leaves
466
- * it installed-but-unloaded: still in `dependencies`, still on disk, no
467
- * longer selected, and therefore invisible on the page. Put the selection
468
- * back before reporting, or the operator has to repair it by hand.
622
+ * The removal above happened for real, so a throw here can leave the
623
+ * plugin gone. `recover` tells the two damages apart: still-on-disk means
624
+ * re-select it, gone means install the previous version again. Confusing
625
+ * them is what made "upgrade failed" also mean "plugin disappeared".
469
626
  */
470
- await restoreSelection(manager, step.name, log);
627
+ const back = await recover(manager, step, previous, options, log, announce);
471
628
  return {
472
629
  ...base,
473
630
  requestId: retryId,
@@ -475,6 +632,7 @@ export async function runStep(manager, step, log, announce, registry) {
475
632
  stage: 'install',
476
633
  application: 'failed',
477
634
  message: `install after removal failed: ${describeFailure(error instanceof Error ? error.message : String(error))}`,
635
+ ...(back ? { rolledBack: previous } : {}),
478
636
  };
479
637
  }
480
638
  }
@@ -483,8 +641,7 @@ export async function runStep(manager, step, log, announce, registry) {
483
641
  * removal already done. Same hazard, same repair; the reported reason stays
484
642
  * whatever the manager said.
485
643
  */
486
- if (result?.error !== undefined)
487
- await restoreSelection(manager, step.name, log);
644
+ const restored = result?.error === undefined ? false : await recover(manager, step, previous, options, log, announce);
488
645
  // Only a change that landed has an enabled state to restore: a failed install
489
646
  // left nothing behind, and asking to toggle it would report a second, louder
490
647
  // error (`operation-error`) for a package that was never added.
@@ -494,6 +651,7 @@ export async function runStep(manager, step, log, announce, registry) {
494
651
  ...base,
495
652
  ...(enabled === undefined ? {} : { enabled }),
496
653
  ok: installed,
654
+ ...(restored ? { rolledBack: previous } : {}),
497
655
  application: result?.application,
498
656
  changed: result?.changed === true,
499
657
  stage: result?.stage,
@@ -1 +1 @@
1
- {"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/host/install.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/host/install.ts"],"names":[],"mappings":"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"}
@@ -33,6 +33,18 @@ export interface OverviewRow {
33
33
  * like an up-to-date package.
34
34
  */
35
35
  mirrorMissing?: string[];
36
+ /**
37
+ * The DSH requirement of {@link latest}, when that release cannot run here.
38
+ *
39
+ * The upgrade button targets `latest`, so a newer release the host would
40
+ * refuse has to be visible as a refusal, not as an upgrade that fails halfway
41
+ * through. Set only when `latest` is newer than what is installed and its
42
+ * declared requirement excludes this runtime.
43
+ */
44
+ blocked?: {
45
+ version: string;
46
+ requires: string;
47
+ };
36
48
  }
37
49
  /** The whole overview response body. */
38
50
  export interface Overview {
@@ -57,6 +69,13 @@ export interface OverviewOptions {
57
69
  locale?: 'zh' | 'en';
58
70
  /** The registry saved in this plugin's config; empty follows pnpm. */
59
71
  registry?: string;
72
+ /**
73
+ * The DSH runtime version to judge versions against.
74
+ *
75
+ * Injected by the tests; the host call leaves it out and the version is read
76
+ * from the running process instead.
77
+ */
78
+ runtimeVersion?: string;
60
79
  }
61
80
  /**
62
81
  * Build the overview the tab renders.
@@ -1 +1 @@
1
- {"version":3,"file":"overview.d.ts","sourceRoot":"","sources":["../../src/host/overview.ts"],"names":[],"mappings":"AAWA,OAAO,EAAkD,KAAK,UAAU,EAAE,MAAM,aAAa,CAAA;AAC7F,OAAO,EAOL,KAAK,cAAc,EACnB,KAAK,QAAQ,EACb,KAAK,UAAU,EAChB,MAAM,eAAe,CAAA;AACtB,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,eAAe,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAuC9G,mDAAmD;AACnD,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,OAAO,CAAA;IACjB,YAAY,EAAE,UAAU,CAAC,cAAc,CAAC,CAAA;IACxC,SAAS,EAAE,OAAO,CAAA;IAClB,OAAO,EAAE,OAAO,CAAA;IAChB,SAAS,EAAE,OAAO,CAAA;IAClB,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,UAAU,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,cAAc,CAAC,EAAE,cAAc,CAAA;IAC/B,KAAK,EAAE,eAAe,GAAG,IAAI,CAAA;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,OAAO,CAAA;IACnB,QAAQ,EAAE,UAAU,EAAE,CAAA;IACtB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC5B,aAAa,EAAE,MAAM,CAAA;IACrB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,MAAM,EAAE,CAAA;CACzB;AAED,wCAAwC;AACxC,MAAM,WAAW,QAAQ;IACvB,WAAW,EAAE,MAAM,CAAA;IACnB,0EAA0E;IAC1E,QAAQ,EAAE,MAAM,CAAA;IAChB;;;;;;OAMG;IACH,aAAa,EAAE,MAAM,CAAA;IACrB,UAAU,EAAE,gBAAgB,CAAA;IAC5B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,OAAO,EAAE,WAAW,EAAE,CAAA;CACvB;AAED,sCAAsC;AACtC,MAAM,WAAW,eAAe;IAC9B,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,MAAM,CAAC,EAAE,IAAI,GAAG,IAAI,CAAA;IACpB,sEAAsE;IACtE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED;;;;;;;;GAQG;AACH,wBAAsB,aAAa,CACjC,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,EAClC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,EAC/B,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,QAAQ,CAAC,CAyInB"}
1
+ {"version":3,"file":"overview.d.ts","sourceRoot":"","sources":["../../src/host/overview.ts"],"names":[],"mappings":"AAWA,OAAO,EAAkD,KAAK,UAAU,EAAE,MAAM,aAAa,CAAA;AAE7F,OAAO,EAOL,KAAK,cAAc,EACnB,KAAK,QAAQ,EACb,KAAK,UAAU,EAChB,MAAM,eAAe,CAAA;AACtB,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,eAAe,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAuC9G,mDAAmD;AACnD,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,OAAO,CAAA;IACjB,YAAY,EAAE,UAAU,CAAC,cAAc,CAAC,CAAA;IACxC,SAAS,EAAE,OAAO,CAAA;IAClB,OAAO,EAAE,OAAO,CAAA;IAChB,SAAS,EAAE,OAAO,CAAA;IAClB,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,UAAU,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,cAAc,CAAC,EAAE,cAAc,CAAA;IAC/B,KAAK,EAAE,eAAe,GAAG,IAAI,CAAA;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,OAAO,CAAA;IACnB,QAAQ,EAAE,UAAU,EAAE,CAAA;IACtB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC5B,aAAa,EAAE,MAAM,CAAA;IACrB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,MAAM,EAAE,CAAA;IACxB;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAA;CAChD;AAED,wCAAwC;AACxC,MAAM,WAAW,QAAQ;IACvB,WAAW,EAAE,MAAM,CAAA;IACnB,0EAA0E;IAC1E,QAAQ,EAAE,MAAM,CAAA;IAChB;;;;;;OAMG;IACH,aAAa,EAAE,MAAM,CAAA;IACrB,UAAU,EAAE,gBAAgB,CAAA;IAC5B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,OAAO,EAAE,WAAW,EAAE,CAAA;CACvB;AAED,sCAAsC;AACtC,MAAM,WAAW,eAAe;IAC9B,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,MAAM,CAAC,EAAE,IAAI,GAAG,IAAI,CAAA;IACpB,sEAAsE;IACtE,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB;;;;;OAKG;IACH,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB;AAED;;;;;;;;GAQG;AACH,wBAAsB,aAAa,CACjC,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,EAClC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,EAC/B,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,QAAQ,CAAC,CAgKnB"}
@@ -10,6 +10,7 @@
10
10
  import { compareVersions } from './version.js';
11
11
  import { repoUrlOf } from './repo.js';
12
12
  import { inlineIcon, pickText, registryBase, sourceKind } from './bundle.js';
13
+ import { runtimeVersionOf } from './runtime.js';
13
14
  import { cachedTags, fetchPackument, shapePackument, versionsMissingFromMirror, PACKUMENT_CONCURRENCY, } from './registry.js';
14
15
  /** Inline data-URL icons above this size are dropped from the overview payload. */
15
16
  const INLINE_ICON_LIMIT = 2048;
@@ -61,6 +62,15 @@ export async function buildOverview(ctx, cache, tagCache, options) {
61
62
  const savedRegistry = typeof options.registry === 'string' ? options.registry.trim() : '';
62
63
  const base = registryBase(registries, savedRegistry);
63
64
  const locale = options.locale === 'zh' ? 'zh' : 'en';
65
+ /*
66
+ * The runtime version the host's own gate quotes decides whether a published
67
+ * version can be installed at all. It is read from this process rather than
68
+ * from the profile, because a profile's `node_modules` holds links into an npx
69
+ * cache that can be a different build entirely.
70
+ */
71
+ const runtimeVersion = typeof options.runtimeVersion === 'string'
72
+ ? options.runtimeVersion
73
+ : runtimeVersionOf(process.argv);
64
74
  const installed = bundles.filter((bundle) => bundle.installed === true);
65
75
  const rows = await mapLimited(installed, PACKUMENT_CONCURRENCY, async (bundle) => {
66
76
  const kind = sourceKind(bundle.source);
@@ -118,7 +128,7 @@ export async function buildOverview(ctx, cache, tagCache, options) {
118
128
  * actually loaded. Omitting it left every row `current: false`, so the
119
129
  * version the user already has still offered a "back to latest" button.
120
130
  */
121
- const shaped = shapePackument(data, bundle.version, undefined);
131
+ const shaped = shapePackument(data, bundle.version, undefined, runtimeVersion);
122
132
  entry.latest = shaped.latest;
123
133
  entry.repoUrl = shaped.repoUrl;
124
134
  entry.versions = shaped.versions;
@@ -143,7 +153,7 @@ export async function buildOverview(ctx, cache, tagCache, options) {
143
153
  const tagNames = repoUrl === undefined
144
154
  ? undefined
145
155
  : await cachedTags(repoUrl, tagCache, options.force === true);
146
- const shaped = shapePackument(data, bundle.version, tagNames);
156
+ const shaped = shapePackument(data, bundle.version, tagNames, runtimeVersion);
147
157
  entry.latest = shaped.latest;
148
158
  entry.repoUrl = shaped.repoUrl;
149
159
  entry.versions = shaped.versions;
@@ -152,6 +162,20 @@ export async function buildOverview(ctx, cache, tagCache, options) {
152
162
  entry.versionError = shaped.versionError;
153
163
  entry.upgradable =
154
164
  entry.latest !== undefined && compareVersions(entry.latest, bundle.version) > 0;
165
+ /*
166
+ * A newer release the host would refuse is not an upgrade. The install would
167
+ * be rejected by the compatibility gate after the manager had already
168
+ * started replacing the bundle, which is how a "switch version" click used
169
+ * to leave the package removed. Mark it instead: the row says why, and the
170
+ * version list keeps the same answer for every older release.
171
+ */
172
+ if (entry.upgradable && entry.latest !== undefined) {
173
+ const head = shaped.versions.find((version) => version.version === entry.latest);
174
+ if (head !== undefined && head.compatible === false) {
175
+ entry.upgradable = false;
176
+ entry.blocked = { version: head.version, requires: head.requires ?? '' };
177
+ }
178
+ }
155
179
  /*
156
180
  * Ask the upstream registry what this mirror is missing. The mirror's own
157
181
  * document cannot answer that — it simply omits the version — so without
@@ -177,7 +201,7 @@ export async function buildOverview(ctx, cache, tagCache, options) {
177
201
  registry: base,
178
202
  savedRegistry,
179
203
  registries,
180
- runtimeVersion: typeof runtime === 'string' ? runtime : null,
204
+ runtimeVersion: typeof runtime === 'string' ? runtime : (runtimeVersion ?? null),
181
205
  bundles: rows,
182
206
  };
183
207
  }
@@ -1 +1 @@
1
- {"version":3,"file":"overview.js","sourceRoot":"","sources":["../../src/host/overview.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"overview.js","sourceRoot":"","sources":["../../src/host/overview.ts"],"names":[],"mappings":"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"}
@@ -35,7 +35,44 @@ export interface VersionManifest extends RepoManifest {
35
35
  dsh?: unknown;
36
36
  };
37
37
  } | undefined;
38
+ peerDependencies?: Record<string, unknown> | undefined;
38
39
  }
40
+ /**
41
+ * The DSH requirement one published version declares, and where it came from.
42
+ *
43
+ * The host refuses to install a plugin whose declaration does not admit the
44
+ * running runtime, so the page has to read the same declaration — from the same
45
+ * place, in the same order — before it offers the version.
46
+ */
47
+ export interface DshRequirement {
48
+ /** The range as the manifest wrote it, e.g. `>=0.2.0-rc.2 <0.3.0-0`. */
49
+ range: string;
50
+ /** Which field it came from; `engines` wins over `peerDependencies`. */
51
+ source: 'engines' | 'peers';
52
+ /** How many `@deepseek-ai/dsh*` peers had to match; 1 for an engine range. */
53
+ count: number;
54
+ }
55
+ /**
56
+ * Read the DSH requirement out of one published manifest.
57
+ *
58
+ * This mirrors the host gate exactly: `engines.dsh` decides alone when present,
59
+ * and only otherwise do the `@deepseek-ai/dsh*` peer ranges matter. Reading them
60
+ * in the other order would mark versions usable that the host then refuses,
61
+ * which is the failure this whole path exists to prevent.
62
+ *
63
+ * @param manifest - one entry of a packument's `versions` map.
64
+ * @returns the requirement, or `undefined` when the manifest declares none.
65
+ */
66
+ export declare function dshRequirementOf(manifest: VersionManifest | undefined): DshRequirement | undefined;
67
+ /**
68
+ * Does one published version admit a runtime version?
69
+ *
70
+ * @param manifest - the published manifest.
71
+ * @param runtimeVersion - the DSH build this process is running, when known.
72
+ * @returns `false` only when both sides are known and the range rejects the
73
+ * runtime; `undefined` when either side is missing.
74
+ */
75
+ export declare function meetsDshRequirement(manifest: VersionManifest | undefined, runtimeVersion: string | undefined): boolean | undefined;
39
76
  /** The packument fields this module reads beyond {@link PackumentLike}. */
40
77
  export interface FullPackument extends PackumentLike {
41
78
  versions?: Record<string, VersionManifest | undefined> | undefined;
@@ -87,6 +124,18 @@ export interface VersionRow {
87
124
  * a version as an ordinary upgrade sets the person up for exactly that.
88
125
  */
89
126
  unavailable?: string;
127
+ /**
128
+ * `false` when this version's declared DSH requirement excludes the runtime
129
+ * this process is running.
130
+ *
131
+ * Absent — not `true` — when either side is unknown: a version whose manifest
132
+ * declares nothing, or a host whose own version could not be read, is not
133
+ * evidence of incompatibility. Only a range that was read and did not admit
134
+ * the runtime sets this to `false`.
135
+ */
136
+ compatible?: boolean;
137
+ /** The DSH requirement behind {@link compatible}, for the tooltip. */
138
+ requires?: string;
90
139
  }
91
140
  /** The packument slice the tab renders. */
92
141
  export interface ShapedPackument {
@@ -232,5 +281,5 @@ export declare function probeRegistry(base: string): Promise<ProbeResult>;
232
281
  * @param tagNames - the repository's tag names, when known.
233
282
  * @returns the slice.
234
283
  */
235
- export declare function shapePackument(packument: FullPackument | undefined, installedVersion: string | undefined, tagNames: ReadonlySet<string> | undefined): ShapedPackument;
284
+ export declare function shapePackument(packument: FullPackument | undefined, installedVersion: string | undefined, tagNames: ReadonlySet<string> | undefined, runtimeVersion?: string | undefined): ShapedPackument;
236
285
  //# sourceMappingURL=registry.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/host/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/host/registry.ts"],"names":[],"mappings":"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"}