@detergent-software/atk 8.1.2-dev.3 → 8.1.2-dev.31

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 (131) hide show
  1. package/CHANGELOG.md +202 -0
  2. package/build/commands/browse.js +5 -9
  3. package/build/commands/browse.js.map +1 -1
  4. package/build/commands/install.js +2 -2
  5. package/build/commands/install.js.map +1 -1
  6. package/build/commands/list.js +2 -2
  7. package/build/commands/list.js.map +1 -1
  8. package/build/commands/login.js +2 -2
  9. package/build/commands/login.js.map +1 -1
  10. package/build/commands/register.js +3 -3
  11. package/build/commands/register.js.map +1 -1
  12. package/build/commands/sync.d.ts.map +1 -1
  13. package/build/commands/sync.js +16 -11
  14. package/build/commands/sync.js.map +1 -1
  15. package/build/commands/uninstall.d.ts +9 -1
  16. package/build/commands/uninstall.d.ts.map +1 -1
  17. package/build/commands/uninstall.js +23 -26
  18. package/build/commands/uninstall.js.map +1 -1
  19. package/build/commands/update.d.ts +9 -1
  20. package/build/commands/update.d.ts.map +1 -1
  21. package/build/commands/update.js +54 -14
  22. package/build/commands/update.js.map +1 -1
  23. package/build/components/InstallConfirmBar.d.ts.map +1 -1
  24. package/build/components/InstallConfirmBar.js +2 -1
  25. package/build/components/InstallConfirmBar.js.map +1 -1
  26. package/build/components/ListActionBar.d.ts.map +1 -1
  27. package/build/components/ListActionBar.js +3 -2
  28. package/build/components/ListActionBar.js.map +1 -1
  29. package/build/components/RunStoppedHint.d.ts +13 -0
  30. package/build/components/RunStoppedHint.d.ts.map +1 -0
  31. package/build/components/RunStoppedHint.js +12 -0
  32. package/build/components/RunStoppedHint.js.map +1 -0
  33. package/build/components/SkippedAssetSection.d.ts +2 -0
  34. package/build/components/SkippedAssetSection.d.ts.map +1 -1
  35. package/build/components/SkippedAssetSection.js +1 -1
  36. package/build/components/SkippedAssetSection.js.map +1 -1
  37. package/build/components/SyncDriftedList.d.ts +3 -2
  38. package/build/components/SyncDriftedList.d.ts.map +1 -1
  39. package/build/components/SyncDriftedList.js +11 -3
  40. package/build/components/SyncDriftedList.js.map +1 -1
  41. package/build/components/index.d.ts +1 -0
  42. package/build/components/index.d.ts.map +1 -1
  43. package/build/components/index.js +1 -0
  44. package/build/components/index.js.map +1 -1
  45. package/build/hooks/useCommand.js +2 -2
  46. package/build/hooks/useCommand.js.map +1 -1
  47. package/build/hooks/useInitState.js +5 -5
  48. package/build/hooks/useInitState.js.map +1 -1
  49. package/build/hooks/useListActions.d.ts.map +1 -1
  50. package/build/hooks/useListActions.js +34 -18
  51. package/build/hooks/useListActions.js.map +1 -1
  52. package/build/hooks/usePruneState.js +7 -7
  53. package/build/hooks/usePruneState.js.map +1 -1
  54. package/build/hooks/usePublishState.js +3 -3
  55. package/build/hooks/usePublishState.js.map +1 -1
  56. package/build/hooks/useRegistryChangeState.js +2 -2
  57. package/build/hooks/useRegistryChangeState.js.map +1 -1
  58. package/build/hooks/useSetupState.js +3 -3
  59. package/build/hooks/useSetupState.js.map +1 -1
  60. package/build/hooks/useUninstallState.d.ts +16 -29
  61. package/build/hooks/useUninstallState.d.ts.map +1 -1
  62. package/build/hooks/useUninstallState.js +147 -140
  63. package/build/hooks/useUninstallState.js.map +1 -1
  64. package/build/lib/adapter.d.ts.map +1 -1
  65. package/build/lib/adapter.js +3 -3
  66. package/build/lib/adapter.js.map +1 -1
  67. package/build/lib/asset-tools.d.ts +5 -0
  68. package/build/lib/asset-tools.d.ts.map +1 -1
  69. package/build/lib/asset-tools.js +7 -0
  70. package/build/lib/asset-tools.js.map +1 -1
  71. package/build/lib/auth.d.ts.map +1 -1
  72. package/build/lib/auth.js +3 -3
  73. package/build/lib/auth.js.map +1 -1
  74. package/build/lib/checksum.d.ts.map +1 -1
  75. package/build/lib/checksum.js +2 -1
  76. package/build/lib/checksum.js.map +1 -1
  77. package/build/lib/diagnostics.d.ts.map +1 -1
  78. package/build/lib/diagnostics.js +6 -5
  79. package/build/lib/diagnostics.js.map +1 -1
  80. package/build/lib/diff-command.d.ts.map +1 -1
  81. package/build/lib/diff-command.js +10 -6
  82. package/build/lib/diff-command.js.map +1 -1
  83. package/build/lib/entra.d.ts.map +1 -1
  84. package/build/lib/entra.js +3 -2
  85. package/build/lib/entra.js.map +1 -1
  86. package/build/lib/errors.d.ts +9 -0
  87. package/build/lib/errors.d.ts.map +1 -1
  88. package/build/lib/errors.js +29 -0
  89. package/build/lib/errors.js.map +1 -1
  90. package/build/lib/file-snapshot.d.ts +17 -0
  91. package/build/lib/file-snapshot.d.ts.map +1 -0
  92. package/build/lib/file-snapshot.js +41 -0
  93. package/build/lib/file-snapshot.js.map +1 -0
  94. package/build/lib/installer.d.ts +64 -3
  95. package/build/lib/installer.d.ts.map +1 -1
  96. package/build/lib/installer.js +177 -48
  97. package/build/lib/installer.js.map +1 -1
  98. package/build/lib/lockfile.d.ts +23 -4
  99. package/build/lib/lockfile.d.ts.map +1 -1
  100. package/build/lib/lockfile.js +32 -14
  101. package/build/lib/lockfile.js.map +1 -1
  102. package/build/lib/org.d.ts +16 -0
  103. package/build/lib/org.d.ts.map +1 -1
  104. package/build/lib/org.js +18 -0
  105. package/build/lib/org.js.map +1 -1
  106. package/build/lib/owned-paths.d.ts +9 -0
  107. package/build/lib/owned-paths.d.ts.map +1 -0
  108. package/build/lib/owned-paths.js +23 -0
  109. package/build/lib/owned-paths.js.map +1 -0
  110. package/build/lib/publisher.d.ts.map +1 -1
  111. package/build/lib/publisher.js +2 -1
  112. package/build/lib/publisher.js.map +1 -1
  113. package/build/lib/registry.d.ts.map +1 -1
  114. package/build/lib/registry.js +10 -6
  115. package/build/lib/registry.js.map +1 -1
  116. package/build/lib/setup.d.ts.map +1 -1
  117. package/build/lib/setup.js +4 -3
  118. package/build/lib/setup.js.map +1 -1
  119. package/build/lib/sync.d.ts +17 -4
  120. package/build/lib/sync.d.ts.map +1 -1
  121. package/build/lib/sync.js +110 -41
  122. package/build/lib/sync.js.map +1 -1
  123. package/build/lib/uninstaller.d.ts +21 -4
  124. package/build/lib/uninstaller.d.ts.map +1 -1
  125. package/build/lib/uninstaller.js +45 -36
  126. package/build/lib/uninstaller.js.map +1 -1
  127. package/build/lib/updater.d.ts +64 -3
  128. package/build/lib/updater.d.ts.map +1 -1
  129. package/build/lib/updater.js +355 -83
  130. package/build/lib/updater.js.map +1 -1
  131. package/package.json +1 -1
@@ -2,12 +2,13 @@ import { existsSync } from 'node:fs';
2
2
  import { readdir, readFile, rmdir, unlink } from 'node:fs/promises';
3
3
  import { dirname, join } from 'node:path';
4
4
  import { getPlacement, resolveInstalledPaths } from './adapter.js';
5
- import { excludeToolFromAsset, getRemainingTools, supportsType } from './asset-tools.js';
5
+ import { excludeToolFromAsset, getRemainingTools, isExcludedForTools, supportsType } from './asset-tools.js';
6
6
  import { getConfigEntriesForTool } from './config-entries.js';
7
7
  import { detectConfigFormat, readConfigFile, resolveConfigFormat, writeConfigFile, } from './config-file.js';
8
- import { GuidedError } from './errors.js';
8
+ import { errorMessage, GuidedError } from './errors.js';
9
9
  import { removeHookGroup } from './hook-config.js';
10
- import { findDependents, findInstalledAsset, findOrphanedDependencies, readLockfile, removeAssetFromLockfile, withLockfileLock, writeLockfile, } from './lockfile.js';
10
+ import { findDependents, findInstalledAsset, findOrphanedDependencies, identityKey, readLockfile, removeAssetFromLockfile, withLockfileLock, writeLockfile, } from './lockfile.js';
11
+ import { pathsOwnedByOthers } from './owned-paths.js';
11
12
  import { writeTextFile } from './write-file.js';
12
13
  export class UninstallerError extends GuidedError {
13
14
  name = 'UninstallerError';
@@ -38,7 +39,7 @@ export async function executeBundleUninstall(plan, options) {
38
39
  for (const asset of plan.assetsToRemove) {
39
40
  try {
40
41
  onProgress?.(`Removing ${asset.name}...`);
41
- await removeAssetForAdapters(asset, adapters, projectDir, onProgress);
42
+ await removeAssetForAdapters(asset, adapters, projectDir, lockfile, onProgress);
42
43
  const dropped = dropOrExcludeEntry(lockfile, asset, adapters, toolScope);
43
44
  lockfile = dropped.lockfile;
44
45
  if (dropped.remainingTools.length > 0) {
@@ -49,7 +50,7 @@ export async function executeBundleUninstall(plan, options) {
49
50
  catch (err) {
50
51
  errors.push({
51
52
  asset: asset.name,
52
- error: err instanceof Error ? err.message : String(err),
53
+ error: errorMessage(err),
53
54
  });
54
55
  }
55
56
  }
@@ -57,7 +58,7 @@ export async function executeBundleUninstall(plan, options) {
57
58
  for (const orphan of plan.orphansToRemove) {
58
59
  try {
59
60
  onProgress?.(`Removing orphaned dependency ${orphan.name}...`);
60
- await removeAssetForAdapters(orphan, adapters, projectDir, onProgress);
61
+ await removeAssetForAdapters(orphan, adapters, projectDir, lockfile, onProgress);
61
62
  const dropped = dropOrExcludeEntry(lockfile, orphan, adapters, toolScope);
62
63
  lockfile = dropped.lockfile;
63
64
  if (dropped.remainingTools.length > 0) {
@@ -68,7 +69,7 @@ export async function executeBundleUninstall(plan, options) {
68
69
  catch (err) {
69
70
  errors.push({
70
71
  asset: orphan.name,
71
- error: err instanceof Error ? err.message : String(err),
72
+ error: errorMessage(err),
72
73
  });
73
74
  }
74
75
  }
@@ -88,9 +89,9 @@ export async function executeBundleUninstall(plan, options) {
88
89
  * Compute a bundle uninstall plan.
89
90
  * Identifies which bundle assets can be removed, which must be skipped (because
90
91
  * non-bundle assets depend on them), and which transitive dependencies would
91
- * become orphaned.
92
+ * become orphaned. `removingTools` works as in {@link planUninstall}.
92
93
  */
93
- export function planBundleUninstall(lockfile, bundleName, bundleVersion, bundleOrg) {
94
+ export function planBundleUninstall(lockfile, bundleName, bundleVersion, bundleOrg, removingTools = []) {
94
95
  const emptyPlan = {
95
96
  assetsToRemove: [],
96
97
  assetsToSkip: [],
@@ -107,14 +108,14 @@ export function planBundleUninstall(lockfile, bundleName, bundleVersion, bundleO
107
108
  if (bundleAssets.length === 0) {
108
109
  return emptyPlan;
109
110
  }
110
- const bundleAssetNames = new Set(bundleAssets.map((a) => a.name));
111
+ const bundleAssetKeys = new Set(bundleAssets.map(identityKey));
111
112
  const assetsToRemove = [];
112
113
  const assetsToSkip = [];
113
114
  // Determine which assets can be removed and which must be skipped
114
115
  for (const asset of bundleAssets) {
115
116
  const dependents = findDependents(lockfile, asset.name, asset.type, asset.org);
116
117
  // A non-bundle dependent is one with a different bundleOrigin or no bundleOrigin at all
117
- const nonBundleDependents = dependents.filter((d) => !isThisBundle(d.bundleOrigin));
118
+ const nonBundleDependents = dependents.filter((d) => !isThisBundle(d.bundleOrigin) && !isExcludedForTools(d, removingTools));
118
119
  if (nonBundleDependents.length > 0) {
119
120
  const dependentNames = nonBundleDependents.map((d) => d.name);
120
121
  assetsToSkip.push({
@@ -129,14 +130,14 @@ export function planBundleUninstall(lockfile, bundleName, bundleVersion, bundleO
129
130
  // Order removable assets so dependents are removed before their dependencies
130
131
  const ordered = topologicalSortForRemoval(assetsToRemove);
131
132
  // Compute orphaned transitive dependencies
132
- const namesBeingRemoved = new Set(ordered.map((a) => a.name));
133
133
  const orphanSet = new Map();
134
134
  for (const asset of ordered) {
135
- const orphans = findOrphanedDependencies(lockfile, asset, [...namesBeingRemoved, ...orphanSet.keys()]);
135
+ const orphans = findOrphanedDependencies(lockfile, asset, [...ordered, ...orphanSet.values()], removingTools);
136
136
  for (const orphan of orphans) {
137
137
  // Only include orphans that are NOT themselves bundle assets
138
- if (!bundleAssetNames.has(orphan.name) && !orphanSet.has(orphan.name)) {
139
- orphanSet.set(orphan.name, orphan);
138
+ const key = identityKey(orphan);
139
+ if (!bundleAssetKeys.has(key) && !orphanSet.has(key)) {
140
+ orphanSet.set(key, orphan);
140
141
  }
141
142
  }
142
143
  }
@@ -153,27 +154,27 @@ export function planBundleUninstall(lockfile, bundleName, bundleVersion, bundleO
153
154
  * Compute the uninstall plan before removing anything.
154
155
  * Identifies dependents (for warnings) and orphaned dependencies (for cascade removal).
155
156
  * Handles transitive orphans via BFS.
157
+ *
158
+ * A tool-scoped uninstall passes the tools it removes for as `removingTools`, so that assets
159
+ * already uninstalled for all of them are not counted as dependents.
156
160
  */
157
- export function planUninstall(lockfile, assetName, org) {
158
- const primary = findInstalledAsset(lockfile, assetName, undefined, org);
161
+ export function planUninstall(lockfile, assetName, org, type, removingTools = []) {
162
+ const primary = findInstalledAsset(lockfile, assetName, type, org);
159
163
  if (!primary) {
160
164
  throw new UninstallerError(`Asset "${assetName}" is not installed.`);
161
165
  }
162
- const dependents = findDependents(lockfile, assetName, primary.type, org);
166
+ const dependents = findDependents(lockfile, assetName, primary.type, org).filter((d) => !isExcludedForTools(d, removingTools));
163
167
  // Collect orphaned dependencies using BFS for transitive orphans
164
168
  const allOrphans = [];
165
- const visited = new Set();
169
+ const visited = new Set([identityKey(primary)]);
166
170
  const queue = [primary];
167
- const allBeingRemoved = [assetName];
168
- visited.add(primary.name);
169
171
  while (queue.length > 0) {
170
172
  const current = queue.shift();
171
- const orphans = findOrphanedDependencies(lockfile, current, allBeingRemoved);
173
+ const orphans = findOrphanedDependencies(lockfile, current, [primary, ...allOrphans], removingTools);
172
174
  for (const orphan of orphans) {
173
- if (!visited.has(orphan.name)) {
174
- visited.add(orphan.name);
175
+ if (!visited.has(identityKey(orphan))) {
176
+ visited.add(identityKey(orphan));
175
177
  allOrphans.push(orphan);
176
- allBeingRemoved.push(orphan.name);
177
178
  queue.push(orphan);
178
179
  }
179
180
  }
@@ -190,15 +191,21 @@ export function planUninstall(lockfile, assetName, org) {
190
191
  *
191
192
  * Uses the adapter to dynamically resolve installed file paths and config entries
192
193
  * from the asset's source paths, rather than reading pre-computed paths from the lockfile.
194
+ * A file that another entry of `lockfile` also places for the tool is kept.
193
195
  */
194
- export async function removeSingleAsset(installed, adapter, projectDir, onProgress) {
196
+ export async function removeSingleAsset(installed, adapter, projectDir, { lockfile, onProgress }) {
195
197
  onProgress?.(`Removing files for ${installed.name}...`);
196
198
  // Dynamically resolve installed paths and config entries via the adapter
197
199
  const resolved = resolveInstalledPaths(installed, adapter, projectDir);
200
+ const ownedByOthers = pathsOwnedByOthers(lockfile, installed, adapter, projectDir);
198
201
  // Delete placed files (resolve relative paths to absolute)
199
202
  const filesRemoved = [];
200
203
  for (const file of resolved.files) {
201
204
  const absolutePath = join(projectDir, file.installedPath);
205
+ if (ownedByOthers.has(absolutePath)) {
206
+ onProgress?.(`Keeping ${absolutePath}: another installed asset also owns it`);
207
+ continue;
208
+ }
202
209
  if (existsSync(absolutePath)) {
203
210
  await unlink(absolutePath);
204
211
  filesRemoved.push(absolutePath);
@@ -247,15 +254,17 @@ export async function removeSingleAsset(installed, adapter, projectDir, onProgre
247
254
  * Uninstall a single asset by name, with optional cascade removal of orphaned dependencies.
248
255
  */
249
256
  export async function uninstallAsset(assetName, options) {
250
- const { adapter, additionalAdapters = [], cascade = true, keepLockfileEntry = false, lockfile: precomputedLockfile, onProgress, org, plan: precomputedPlan, projectDir, toolScope, } = options;
257
+ const { adapter, additionalAdapters = [], cascade = true, keepLockfileEntry = false, lockfile: precomputedLockfile, managedFrom, onProgress, org, plan: precomputedPlan, projectDir, toolScope, type, } = options;
251
258
  const adapters = [adapter, ...additionalAdapters];
252
259
  onProgress?.(`Reading lockfile...`);
253
260
  let lockfile = precomputedLockfile ?? (await readLockfile(projectDir));
254
261
  // Compute the plan before removing anything
255
- const plan = precomputedPlan ?? planUninstall(lockfile, assetName, org);
262
+ // Outside a tool scope the entries are dropped for every tool, so every dependent counts.
263
+ const removingTools = toolScope ? adapters.map((a) => a.tool) : [];
264
+ const plan = precomputedPlan ?? planUninstall(lockfile, assetName, org, type, removingTools);
256
265
  // Remove primary asset. Key the lockfile removal on the entry the plan resolved,
257
266
  // not the caller-supplied org — the lookup may have fallen back to a global entry.
258
- const primaryRemoval = await removeAssetForAdapters(plan.primary, adapters, projectDir, onProgress);
267
+ const primaryRemoval = await removeAssetForAdapters(plan.primary, adapters, projectDir, managedFrom ?? lockfile, onProgress);
259
268
  let primaryRemainingTools = [];
260
269
  if (!keepLockfileEntry) {
261
270
  const dropped = dropOrExcludeEntry(lockfile, plan.primary, adapters, toolScope);
@@ -276,7 +285,7 @@ export async function uninstallAsset(assetName, options) {
276
285
  if (cascade && plan.orphanedDependencies.length > 0) {
277
286
  for (const orphan of plan.orphanedDependencies) {
278
287
  onProgress?.(`Removing orphaned dependency ${orphan.name}...`);
279
- const orphanRemoval = await removeAssetForAdapters(orphan, adapters, projectDir, onProgress);
288
+ const orphanRemoval = await removeAssetForAdapters(orphan, adapters, projectDir, lockfile, onProgress);
280
289
  const dropped = dropOrExcludeEntry(lockfile, orphan, adapters, toolScope);
281
290
  lockfile = dropped.lockfile;
282
291
  results.push({
@@ -319,7 +328,7 @@ async function cleanupEmptyDirectories(dirPath, onProgress) {
319
328
  }
320
329
  catch (error) {
321
330
  // Directory doesn't exist or can't be read — log for debugging
322
- onProgress?.(`Warning: Failed to clean up directory ${dirPath} — ${error instanceof Error ? error.message : String(error)}`);
331
+ onProgress?.(`Warning: Failed to clean up directory ${dirPath} — ${errorMessage(error)}`);
323
332
  }
324
333
  }
325
334
  /**
@@ -350,11 +359,11 @@ function keptEntryFields(remainingTools) {
350
359
  * Remove a single asset from disk for every given adapter, merging the per-tool results.
351
360
  * Each adapter only cleans the files and config entries of its own tool.
352
361
  */
353
- async function removeAssetForAdapters(installed, adapters, projectDir, onProgress) {
362
+ async function removeAssetForAdapters(installed, adapters, projectDir, lockfile, onProgress) {
354
363
  const configEntriesCleaned = [];
355
364
  const filesRemoved = [];
356
365
  for (const adapter of adapters) {
357
- const removal = await removeSingleAsset(installed, adapter, projectDir, onProgress);
366
+ const removal = await removeSingleAsset(installed, adapter, projectDir, { lockfile, onProgress });
358
367
  configEntriesCleaned.push(...removal.configEntriesCleaned);
359
368
  filesRemoved.push(...removal.filesRemoved);
360
369
  }
@@ -412,7 +421,7 @@ async function removeConfigEntry(configFilePath, configKeyPath, assetName, comma
412
421
  }
413
422
  catch (error) {
414
423
  // Non-fatal — log but don't fail the uninstall
415
- onProgress?.(`Warning: Failed to remove config entry from ${configFilePath} — ${error instanceof Error ? error.message : String(error)}`);
424
+ onProgress?.(`Warning: Failed to remove config entry from ${configFilePath} — ${errorMessage(error)}`);
416
425
  return false;
417
426
  }
418
427
  }
@@ -453,7 +462,7 @@ async function removeFromEnabledList(enabledListFilePath, enabledListKey, names,
453
462
  }
454
463
  catch (error) {
455
464
  // Non-fatal — log but don't fail the uninstall
456
- onProgress?.(`Warning: Failed to update enabled list ${enabledListFilePath} — ${error instanceof Error ? error.message : String(error)}`);
465
+ onProgress?.(`Warning: Failed to update enabled list ${enabledListFilePath} — ${errorMessage(error)}`);
457
466
  return false;
458
467
  }
459
468
  }
@@ -488,7 +497,7 @@ async function removeMemoryTemplateSection(filePath, assetName, onProgress) {
488
497
  return true;
489
498
  }
490
499
  catch (error) {
491
- onProgress?.(`Warning: Failed to remove memory-template section from ${filePath} — ${error instanceof Error ? error.message : String(error)}`);
500
+ onProgress?.(`Warning: Failed to remove memory-template section from ${filePath} — ${errorMessage(error)}`);
492
501
  return false;
493
502
  }
494
503
  }
@@ -1 +1 @@
1
- {"version":3,"file":"uninstaller.js","sourceRoot":"","sources":["../../src/lib/uninstaller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"uninstaller.js","sourceRoot":"","sources":["../../src/lib/uninstaller.ts"],"names":[],"mappings":"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"}
@@ -23,9 +23,29 @@ export interface UpdateAssetsResult {
23
23
  org?: string;
24
24
  type: AssetType;
25
25
  }>;
26
+ /**
27
+ * Assets skipped because their update failed for an earlier tool in the run (`failedFor`), or
28
+ * because their update would move `dependency`, whose update did.
29
+ */
30
+ failedSkipped?: Array<{
31
+ dependency?: {
32
+ name: string;
33
+ org?: string;
34
+ type: AssetType;
35
+ };
36
+ failedFor: string;
37
+ name: string;
38
+ org?: string;
39
+ type: AssetType;
40
+ }>;
26
41
  failures: UpdateFailure[];
27
42
  /** Assets that were skipped during bulk update because they are frozen. */
28
43
  frozenSkipped?: OutdatedAsset[];
44
+ /**
45
+ * Present only when the run stopped at a run-wide failure (`isRunWideFailure`):
46
+ * the names of the assets after it that were not attempted.
47
+ */
48
+ notAttempted?: string[];
29
49
  results: UpdateResult[];
30
50
  /** Assets that were skipped during bulk update because they are pinned. */
31
51
  skipped?: OutdatedAsset[];
@@ -33,30 +53,60 @@ export interface UpdateAssetsResult {
33
53
  export interface UpdateFailure extends ErrorGuidance {
34
54
  error: string;
35
55
  name: string;
56
+ /** Organization scope of the asset. */
57
+ org?: string;
36
58
  type: AssetType;
37
59
  }
38
60
  export interface UpdateOptions {
39
61
  /** Adapter for the target tool. */
40
62
  adapter: Adapter;
63
+ /**
64
+ * Adapters of every tool configured for the project. A dropped dependency is removed for
65
+ * `adapter` only and keeps its lockfile entry while another of these tools still has it.
66
+ * Omit when `adapter` is the only tool.
67
+ */
68
+ configuredAdapters?: Adapter[];
69
+ /**
70
+ * Assets whose update failed for the first tool that tried it in a multi-tool run, keyed
71
+ * `${type}:${org ?? ''}:${name}`, with that tool's id. They are not updated for this tool, so
72
+ * every tool and the lockfile stay on the version they had.
73
+ */
74
+ failedFor?: Map<string, string>;
41
75
  /** Force update even if the asset is pinned. */
42
76
  force?: boolean;
43
77
  /** Set of frozen asset composite keys in format `${type}:${org ?? ''}:${name}`. */
44
78
  frozenAssets?: Set<string>;
45
- /** Pre-read lockfile to avoid redundant reads (used for dropped dependency cleanup). */
46
- lockfile?: Lockfile;
47
79
  /** Callback for progress updates. */
48
80
  onProgress?: (message: string) => void;
49
81
  /** Project root directory. */
50
82
  projectDir: string;
51
83
  /** Target version to update to (defaults to latest). */
52
84
  targetVersion?: string;
85
+ /**
86
+ * The lockfile as this tool has it. The lockfile is shared, so in a multi-tool update it already
87
+ * lists the version an earlier tool installed, while this tool still has the files of the version
88
+ * it had. The update removes this tool's files and checks for conflicts against it.
89
+ * `updateAsset` defaults to the lockfile on disk; `updateAssets` to the lockfile it is given,
90
+ * plus what its own updates install.
91
+ */
92
+ toolLockfile?: Lockfile;
93
+ /** Type of the named assets, when a name is installed as more than one type. */
94
+ type?: AssetType;
53
95
  }
54
96
  export interface UpdateResult {
55
97
  fromVersion: string;
56
98
  installResult: InstallResult;
57
99
  name: string;
100
+ /** Organization scope of the asset. */
101
+ org?: string;
58
102
  toVersion: string;
59
103
  type: AssetType;
104
+ /** Cleanup that failed after the new version was installed. */
105
+ warnings?: UpdateWarning[];
106
+ }
107
+ export interface UpdateWarning {
108
+ command: string;
109
+ message: string;
60
110
  }
61
111
  export declare class UpdaterError extends ApiCodeError {
62
112
  name: string;
@@ -67,9 +117,20 @@ export declare class UpdaterError extends ApiCodeError {
67
117
  * using the version-aware `findAsset` lookup.
68
118
  */
69
119
  export declare function checkOutdated(lockfile: Lockfile, registry: Registry, frozenNames?: Set<string>): OutdatedAsset[];
120
+ /**
121
+ * The installed asset `atk update <spec>` names. `@org/name` names that org's entry only. A
122
+ * bare name resolves the way `install` resolved it: the lockfile org's entry, else the global
123
+ * one. A name installed as more than one type needs `type` to pick one.
124
+ */
125
+ export declare function findUpdateTarget(lockfile: Lockfile, spec: string, { type, version }?: {
126
+ type?: AssetType;
127
+ version?: string;
128
+ }): InstalledAsset;
70
129
  /**
71
130
  * Update a single asset to the target version (defaults to latest).
72
- * Uninstalls the current version and installs the target from registry.
131
+ * Downloads the target version, then uninstalls the current version and installs the target.
132
+ * A failed uninstall or install puts back the files the update changed, from a snapshot taken after the
133
+ * download, so the rollback needs no second download.
73
134
  */
74
135
  export declare function updateAsset(assetName: string, installed: InstalledAsset, registry: Registry, options: UpdateOptions): Promise<UpdateResult>;
75
136
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"updater.d.ts","sourceRoot":"","sources":["../../src/lib/updater.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"updater.d.ts","sourceRoot":"","sources":["../../src/lib/updater.ts"],"names":[],"mappings":"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"}