@detergent-software/atk 8.7.0-dev.1 → 8.7.0-dev.11
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.
- package/CHANGELOG.md +106 -0
- package/build/commands/audit.d.ts.map +1 -1
- package/build/commands/audit.js +34 -11
- package/build/commands/audit.js.map +1 -1
- package/build/commands/browse.d.ts.map +1 -1
- package/build/commands/browse.js +23 -15
- package/build/commands/browse.js.map +1 -1
- package/build/commands/freeze.d.ts.map +1 -1
- package/build/commands/freeze.js +11 -6
- package/build/commands/freeze.js.map +1 -1
- package/build/commands/index.d.ts.map +1 -1
- package/build/commands/index.js +1 -0
- package/build/commands/index.js.map +1 -1
- package/build/commands/install.d.ts.map +1 -1
- package/build/commands/install.js +94 -29
- package/build/commands/install.js.map +1 -1
- package/build/commands/list.d.ts +2 -1
- package/build/commands/list.d.ts.map +1 -1
- package/build/commands/list.js +82 -66
- package/build/commands/list.js.map +1 -1
- package/build/commands/move.d.ts +28 -0
- package/build/commands/move.d.ts.map +1 -0
- package/build/commands/move.js +180 -0
- package/build/commands/move.js.map +1 -0
- package/build/commands/outdated.d.ts +2 -1
- package/build/commands/outdated.d.ts.map +1 -1
- package/build/commands/outdated.js +67 -24
- package/build/commands/outdated.js.map +1 -1
- package/build/commands/pin.d.ts.map +1 -1
- package/build/commands/pin.js +12 -7
- package/build/commands/pin.js.map +1 -1
- package/build/commands/prune.d.ts.map +1 -1
- package/build/commands/prune.js +17 -10
- package/build/commands/prune.js.map +1 -1
- package/build/commands/sync.d.ts.map +1 -1
- package/build/commands/sync.js +24 -15
- package/build/commands/sync.js.map +1 -1
- package/build/commands/thaw.d.ts.map +1 -1
- package/build/commands/thaw.js +11 -6
- package/build/commands/thaw.js.map +1 -1
- package/build/commands/uninstall.d.ts.map +1 -1
- package/build/commands/uninstall.js +20 -15
- package/build/commands/uninstall.js.map +1 -1
- package/build/commands/unpin.d.ts.map +1 -1
- package/build/commands/unpin.js +11 -6
- package/build/commands/unpin.js.map +1 -1
- package/build/commands/update.d.ts.map +1 -1
- package/build/commands/update.js +13 -13
- package/build/commands/update.js.map +1 -1
- package/build/components/CrossScopeWarning.d.ts +12 -0
- package/build/components/CrossScopeWarning.d.ts.map +1 -0
- package/build/components/CrossScopeWarning.js +13 -0
- package/build/components/CrossScopeWarning.js.map +1 -0
- package/build/components/DryRunBanner.d.ts +3 -1
- package/build/components/DryRunBanner.d.ts.map +1 -1
- package/build/components/DryRunBanner.js +2 -2
- package/build/components/DryRunBanner.js.map +1 -1
- package/build/components/InstallConfirmBar.d.ts.map +1 -1
- package/build/components/InstallConfirmBar.js +1 -3
- package/build/components/InstallConfirmBar.js.map +1 -1
- package/build/components/InstallSummary.d.ts +3 -1
- package/build/components/InstallSummary.d.ts.map +1 -1
- package/build/components/InstallSummary.js +2 -2
- package/build/components/InstallSummary.js.map +1 -1
- package/build/components/ListActionBar.d.ts +4 -2
- package/build/components/ListActionBar.d.ts.map +1 -1
- package/build/components/ListActionBar.js +5 -4
- package/build/components/ListActionBar.js.map +1 -1
- package/build/components/ListBrowseList.d.ts +7 -6
- package/build/components/ListBrowseList.d.ts.map +1 -1
- package/build/components/ListBrowseList.js +10 -6
- package/build/components/ListBrowseList.js.map +1 -1
- package/build/components/StatusBadge.d.ts +1 -1
- package/build/components/StatusBadge.d.ts.map +1 -1
- package/build/components/StatusBadge.js +1 -0
- package/build/components/StatusBadge.js.map +1 -1
- package/build/components/SyncAllInSync.d.ts +3 -1
- package/build/components/SyncAllInSync.d.ts.map +1 -1
- package/build/components/SyncAllInSync.js +2 -2
- package/build/components/SyncAllInSync.js.map +1 -1
- package/build/components/SyncDriftedList.d.ts +3 -1
- package/build/components/SyncDriftedList.d.ts.map +1 -1
- package/build/components/SyncDriftedList.js +3 -3
- package/build/components/SyncDriftedList.js.map +1 -1
- package/build/components/SyncNoAssets.d.ts +3 -1
- package/build/components/SyncNoAssets.d.ts.map +1 -1
- package/build/components/SyncNoAssets.js +2 -2
- package/build/components/SyncNoAssets.js.map +1 -1
- package/build/components/index.d.ts +1 -0
- package/build/components/index.d.ts.map +1 -1
- package/build/components/index.js +1 -0
- package/build/components/index.js.map +1 -1
- package/build/hooks/useInitState.d.ts.map +1 -1
- package/build/hooks/useInitState.js +4 -2
- package/build/hooks/useInitState.js.map +1 -1
- package/build/hooks/useListActions.d.ts +19 -6
- package/build/hooks/useListActions.d.ts.map +1 -1
- package/build/hooks/useListActions.js +37 -33
- package/build/hooks/useListActions.js.map +1 -1
- package/build/hooks/useListState.d.ts +29 -12
- package/build/hooks/useListState.d.ts.map +1 -1
- package/build/hooks/useListState.js +22 -6
- package/build/hooks/useListState.js.map +1 -1
- package/build/hooks/usePruneState.d.ts +6 -0
- package/build/hooks/usePruneState.d.ts.map +1 -1
- package/build/hooks/usePruneState.js +6 -1
- package/build/hooks/usePruneState.js.map +1 -1
- package/build/hooks/useResolvedScope.d.ts +21 -0
- package/build/hooks/useResolvedScope.d.ts.map +1 -0
- package/build/hooks/useResolvedScope.js +15 -0
- package/build/hooks/useResolvedScope.js.map +1 -0
- package/build/hooks/useUninstallState.d.ts +17 -8
- package/build/hooks/useUninstallState.d.ts.map +1 -1
- package/build/hooks/useUninstallState.js +48 -12
- package/build/hooks/useUninstallState.js.map +1 -1
- package/build/lib/adapter.d.ts +41 -2
- package/build/lib/adapter.d.ts.map +1 -1
- package/build/lib/adapter.js +147 -12
- package/build/lib/adapter.js.map +1 -1
- package/build/lib/checksum.d.ts.map +1 -1
- package/build/lib/checksum.js +2 -1
- package/build/lib/checksum.js.map +1 -1
- package/build/lib/config-entries.d.ts +5 -3
- package/build/lib/config-entries.d.ts.map +1 -1
- package/build/lib/config-entries.js +7 -4
- package/build/lib/config-entries.js.map +1 -1
- package/build/lib/config-file.d.ts +10 -3
- package/build/lib/config-file.d.ts.map +1 -1
- package/build/lib/config-file.js +29 -7
- package/build/lib/config-file.js.map +1 -1
- package/build/lib/config-lock.d.ts +3 -1
- package/build/lib/config-lock.d.ts.map +1 -1
- package/build/lib/config-lock.js +12 -5
- package/build/lib/config-lock.js.map +1 -1
- package/build/lib/cross-scope.d.ts +50 -0
- package/build/lib/cross-scope.d.ts.map +1 -0
- package/build/lib/cross-scope.js +132 -0
- package/build/lib/cross-scope.js.map +1 -0
- package/build/lib/diagnostics.d.ts +15 -2
- package/build/lib/diagnostics.d.ts.map +1 -1
- package/build/lib/diagnostics.js +152 -10
- package/build/lib/diagnostics.js.map +1 -1
- package/build/lib/diff-command.d.ts.map +1 -1
- package/build/lib/diff-command.js +7 -7
- package/build/lib/diff-command.js.map +1 -1
- package/build/lib/init.d.ts.map +1 -1
- package/build/lib/init.js +2 -1
- package/build/lib/init.js.map +1 -1
- package/build/lib/installed-for-tool.d.ts +2 -1
- package/build/lib/installed-for-tool.d.ts.map +1 -1
- package/build/lib/installed-for-tool.js +7 -4
- package/build/lib/installed-for-tool.js.map +1 -1
- package/build/lib/installer.d.ts +2 -2
- package/build/lib/installer.d.ts.map +1 -1
- package/build/lib/installer.js +111 -40
- package/build/lib/installer.js.map +1 -1
- package/build/lib/lockfile.d.ts +1 -1
- package/build/lib/lockfile.d.ts.map +1 -1
- package/build/lib/lockfile.js +2 -2
- package/build/lib/lockfile.js.map +1 -1
- package/build/lib/mover.d.ts +103 -0
- package/build/lib/mover.d.ts.map +1 -0
- package/build/lib/mover.js +375 -0
- package/build/lib/mover.js.map +1 -0
- package/build/lib/owned-paths.d.ts.map +1 -1
- package/build/lib/owned-paths.js +8 -8
- package/build/lib/owned-paths.js.map +1 -1
- package/build/lib/read-scopes.d.ts +32 -0
- package/build/lib/read-scopes.d.ts.map +1 -0
- package/build/lib/read-scopes.js +55 -0
- package/build/lib/read-scopes.js.map +1 -0
- package/build/lib/root-path.d.ts +7 -0
- package/build/lib/root-path.d.ts.map +1 -0
- package/build/lib/root-path.js +10 -0
- package/build/lib/root-path.js.map +1 -0
- package/build/lib/schemas/adapter.d.ts +49 -1
- package/build/lib/schemas/adapter.d.ts.map +1 -1
- package/build/lib/schemas/adapter.js +36 -0
- package/build/lib/schemas/adapter.js.map +1 -1
- package/build/lib/schemas/lockfile.d.ts +2 -0
- package/build/lib/schemas/lockfile.d.ts.map +1 -1
- package/build/lib/schemas/lockfile.js +8 -2
- package/build/lib/schemas/lockfile.js.map +1 -1
- package/build/lib/scope.d.ts +11 -0
- package/build/lib/scope.d.ts.map +1 -1
- package/build/lib/scope.js +12 -0
- package/build/lib/scope.js.map +1 -1
- package/build/lib/sync.d.ts +2 -1
- package/build/lib/sync.d.ts.map +1 -1
- package/build/lib/sync.js +12 -5
- package/build/lib/sync.js.map +1 -1
- package/build/lib/toml-edit.d.ts +10 -0
- package/build/lib/toml-edit.d.ts.map +1 -0
- package/build/lib/toml-edit.js +311 -0
- package/build/lib/toml-edit.js.map +1 -0
- package/build/lib/tool-resolver.d.ts +12 -0
- package/build/lib/tool-resolver.d.ts.map +1 -1
- package/build/lib/tool-resolver.js +34 -8
- package/build/lib/tool-resolver.js.map +1 -1
- package/build/lib/uninstaller.d.ts +37 -2
- package/build/lib/uninstaller.d.ts.map +1 -1
- package/build/lib/uninstaller.js +121 -35
- package/build/lib/uninstaller.js.map +1 -1
- package/build/lib/updater.d.ts +3 -2
- package/build/lib/updater.d.ts.map +1 -1
- package/build/lib/updater.js +18 -12
- package/build/lib/updater.js.map +1 -1
- package/build/lib/write-file.d.ts +5 -2
- package/build/lib/write-file.d.ts.map +1 -1
- package/build/lib/write-file.js +6 -3
- package/build/lib/write-file.js.map +1 -1
- package/package.json +1 -1
- package/tool-adapters/claude-code.json +13 -0
- package/tool-adapters/codex-cli.json +28 -0
- package/tool-adapters/copilot-cli.json +46 -2
package/build/lib/uninstaller.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { existsSync } from 'node:fs';
|
|
1
|
+
import { existsSync, realpathSync } from 'node:fs';
|
|
2
2
|
import { readdir, readFile, rmdir, unlink } from 'node:fs/promises';
|
|
3
|
-
import { dirname,
|
|
4
|
-
import { getPlacement, resolveInstalledPaths } from './adapter.js';
|
|
3
|
+
import { dirname, resolve } from 'node:path';
|
|
4
|
+
import { adapterAsPlaced, adapterForScope, getPlacement, loadAllAdapters, resolveInstalledPaths } from './adapter.js';
|
|
5
5
|
import { excludeToolFromAsset, getRemainingTools, isExcludedForTools, supportsType } from './asset-tools.js';
|
|
6
6
|
import { verifyChecksum } from './checksum.js';
|
|
7
7
|
import { getConfigEntriesForTool } from './config-entries.js';
|
|
8
|
-
import { readConfigFile, resolveConfigFormat, writeConfigFile } from './config-file.js';
|
|
8
|
+
import { readConfigFile, removeEmptiedConfigFile, resolveConfigFormat, writeConfigFile, } from './config-file.js';
|
|
9
9
|
import { configLockPath, withConfigLock } from './config-lock.js';
|
|
10
10
|
import { removeFromEnabledList } from './enabled-list.js';
|
|
11
11
|
import { errorMessage, GuidedError } from './errors.js';
|
|
@@ -13,10 +13,42 @@ import { removeHookGroup } from './hook-config.js';
|
|
|
13
13
|
import { addAssetToLockfile, findDependents, findInstalledAsset, findOrphanedDependencies, identityKey, readLockfile, removeAssetFromLockfile, withLockfileLock, writeLockfile, } from './lockfile.js';
|
|
14
14
|
import { formatOrgName } from './org.js';
|
|
15
15
|
import { configEntriesOwnedByOthers, configEntriesToRemove, holdsAnotherOwnersValue, pathsOwnedByOthers, } from './owned-paths.js';
|
|
16
|
+
import { fromRoot } from './root-path.js';
|
|
17
|
+
import { isSamePath } from './same-path.js';
|
|
16
18
|
import { writeTextFile } from './write-file.js';
|
|
17
19
|
export class UninstallerError extends GuidedError {
|
|
18
20
|
name = 'UninstallerError';
|
|
19
21
|
}
|
|
22
|
+
/**
|
|
23
|
+
* The adapters of the other bundled tools, beyond `removing`, that still have ATK's copy of one of
|
|
24
|
+
* `assets` (see {@link hasCopyForTool}, with `placedByAtk`), scoped as `scope` places them. An
|
|
25
|
+
* uninstall that drops the entries for every tool removes these copies too rather than leave them
|
|
26
|
+
* untracked: one placed with `--tool` for a tool the scope wasn't set up for, or for a tool since
|
|
27
|
+
* taken out of the scope's tools. A tool whose placements can't be resolved here is skipped.
|
|
28
|
+
*/
|
|
29
|
+
export async function adaptersWithCopies(assets, removing, projectDir, { lockfile, onProgress, scope }) {
|
|
30
|
+
const removingTools = new Set(removing.map((a) => a.tool));
|
|
31
|
+
const found = [];
|
|
32
|
+
for (const bundled of await loadAllAdapters()) {
|
|
33
|
+
if (removingTools.has(bundled.tool))
|
|
34
|
+
continue;
|
|
35
|
+
let adapter;
|
|
36
|
+
try {
|
|
37
|
+
adapter = adapterForScope(bundled, scope, projectDir);
|
|
38
|
+
}
|
|
39
|
+
catch (error) {
|
|
40
|
+
onProgress?.(`Not checking ${bundled.tool} for copies: ${errorMessage(error)}`);
|
|
41
|
+
continue;
|
|
42
|
+
}
|
|
43
|
+
for (const asset of assets) {
|
|
44
|
+
if (await hasCopyForTool(asset, adapter, projectDir, { lockfile, placedByAtk: true })) {
|
|
45
|
+
found.push(adapter);
|
|
46
|
+
break;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
return found;
|
|
51
|
+
}
|
|
20
52
|
/**
|
|
21
53
|
* Execute a bundle uninstall plan, removing assets and orphaned dependencies.
|
|
22
54
|
* Errors are collected per-asset rather than aborting the entire operation.
|
|
@@ -25,8 +57,9 @@ export async function executeBundleUninstall(plan, options) {
|
|
|
25
57
|
// Bundle membership was already resolved by planBundleUninstall keyed on
|
|
26
58
|
// bundleOrigin (name, org); each removal below uses the asset's own org, so
|
|
27
59
|
// no ambient org scope participates here.
|
|
28
|
-
const { adapter, additionalAdapters = [], onProgress, projectDir, toolScope } = options;
|
|
60
|
+
const { adapter, additionalAdapters = [], onProgress, placedByAtkTools = [], projectDir, toolScope } = options;
|
|
29
61
|
const adapters = [adapter, ...additionalAdapters];
|
|
62
|
+
const removal = { onProgress, placedByAtkTools };
|
|
30
63
|
return withLockfileLock(projectDir, async () => {
|
|
31
64
|
let lockfile = await readLockfile(projectDir);
|
|
32
65
|
const keptEntries = [];
|
|
@@ -44,7 +77,7 @@ export async function executeBundleUninstall(plan, options) {
|
|
|
44
77
|
for (const asset of plan.assetsToRemove) {
|
|
45
78
|
try {
|
|
46
79
|
onProgress?.(`Removing ${asset.name}...`);
|
|
47
|
-
await removeAssetForAdapters(asset, adapters, projectDir, lockfile,
|
|
80
|
+
await removeAssetForAdapters(asset, adapters, projectDir, lockfile, removal);
|
|
48
81
|
const dropped = dropOrExcludeEntry(lockfile, asset, adapters, toolScope);
|
|
49
82
|
lockfile = dropped.lockfile;
|
|
50
83
|
if (dropped.remainingTools.length > 0) {
|
|
@@ -75,7 +108,7 @@ export async function executeBundleUninstall(plan, options) {
|
|
|
75
108
|
for (const orphan of plan.orphansToRemove) {
|
|
76
109
|
try {
|
|
77
110
|
onProgress?.(`Removing orphaned dependency ${orphan.name}...`);
|
|
78
|
-
await removeAssetForAdapters(orphan, adapters, projectDir, lockfile,
|
|
111
|
+
await removeAssetForAdapters(orphan, adapters, projectDir, lockfile, removal);
|
|
79
112
|
const dropped = dropOrExcludeEntry(lockfile, orphan, adapters, toolScope);
|
|
80
113
|
lockfile = dropped.lockfile;
|
|
81
114
|
if (dropped.remainingTools.length > 0) {
|
|
@@ -124,8 +157,8 @@ export async function hasCopyForTool(asset, adapter, projectDir, { lockfile, pla
|
|
|
124
157
|
if (getConfigEntriesForTool(asset, adapter).length > 0)
|
|
125
158
|
return true;
|
|
126
159
|
const ownedByOthers = pathsOwnedByOthers(lockfile, asset, adapter, projectDir);
|
|
127
|
-
for (const file of resolveInstalledPaths(asset, adapter, projectDir).files) {
|
|
128
|
-
const path =
|
|
160
|
+
for (const file of resolveInstalledPaths(asset, adapterAsPlaced(adapter, asset), projectDir).files) {
|
|
161
|
+
const path = fromRoot(projectDir, file.installedPath);
|
|
129
162
|
if (ownedByOthers.has(path) || !existsSync(path))
|
|
130
163
|
continue;
|
|
131
164
|
if (!placedByAtk || (await verifyChecksum(path, file.checksum)))
|
|
@@ -234,35 +267,60 @@ export function planUninstall(lockfile, assetName, org, type, removingTools = []
|
|
|
234
267
|
};
|
|
235
268
|
}
|
|
236
269
|
/**
|
|
237
|
-
*
|
|
238
|
-
*
|
|
239
|
-
*
|
|
240
|
-
*
|
|
241
|
-
*
|
|
242
|
-
* A file or config entry that another entry of `lockfile` also places for the tool is kept.
|
|
270
|
+
* Delete the files `installed` placed for the adapter's tool, at the adapter's placements, and the
|
|
271
|
+
* empty directories they leave below the placements' own. A file another entry of `lockfile` also
|
|
272
|
+
* places for the tool is kept, and so is one that is on disk the same file as one of `keep`. With
|
|
273
|
+
* `placedByAtk`, so is one that doesn't hold what ATK placed (its recorded checksum).
|
|
274
|
+
* Returns the absolute paths removed.
|
|
243
275
|
*/
|
|
244
|
-
export async function
|
|
245
|
-
onProgress?.(`Removing files for ${installed.name}...`);
|
|
246
|
-
// Dynamically resolve installed paths via the adapter
|
|
276
|
+
export async function removePlacedFiles(installed, adapter, projectDir, { keep = [], lockfile, onProgress, placedByAtk = false, }) {
|
|
247
277
|
const resolved = resolveInstalledPaths(installed, adapter, projectDir);
|
|
248
278
|
const ownedByOthers = pathsOwnedByOthers(lockfile, installed, adapter, projectDir);
|
|
249
|
-
//
|
|
279
|
+
// Two spellings of one directory (another case on Windows, a symlink) are one file on disk.
|
|
280
|
+
const kept = new Set(keep.map(realPath));
|
|
250
281
|
const filesRemoved = [];
|
|
282
|
+
const keptDirs = placementBaseDirs(adapter, projectDir);
|
|
251
283
|
for (const file of resolved.files) {
|
|
252
|
-
const absolutePath =
|
|
284
|
+
const absolutePath = fromRoot(projectDir, file.installedPath);
|
|
253
285
|
if (ownedByOthers.has(absolutePath)) {
|
|
254
286
|
onProgress?.(`Keeping ${absolutePath}: another installed asset also owns it`);
|
|
255
287
|
continue;
|
|
256
288
|
}
|
|
289
|
+
if (kept.has(realPath(absolutePath)))
|
|
290
|
+
continue;
|
|
291
|
+
if (placedByAtk && existsSync(absolutePath) && !(await verifyChecksum(absolutePath, file.checksum))) {
|
|
292
|
+
onProgress?.(`Keeping ${absolutePath}: it is not the file ATK placed`);
|
|
293
|
+
continue;
|
|
294
|
+
}
|
|
257
295
|
if (existsSync(absolutePath)) {
|
|
258
296
|
await unlink(absolutePath);
|
|
259
297
|
filesRemoved.push(absolutePath);
|
|
260
298
|
// Clean up empty parent directories
|
|
261
|
-
await cleanupEmptyDirectories(dirname(absolutePath), onProgress);
|
|
299
|
+
await cleanupEmptyDirectories(dirname(absolutePath), keptDirs, onProgress);
|
|
262
300
|
}
|
|
263
301
|
}
|
|
302
|
+
return filesRemoved;
|
|
303
|
+
}
|
|
304
|
+
/**
|
|
305
|
+
* Remove a single asset's files and config entries from disk.
|
|
306
|
+
* Does NOT touch the lockfile — caller is responsible for lockfile updates.
|
|
307
|
+
*
|
|
308
|
+
* Uses the adapter to dynamically resolve installed file paths and config entries
|
|
309
|
+
* from the asset's source paths, rather than reading pre-computed paths from the lockfile.
|
|
310
|
+
* At the user scope they resolve in the user config directory the asset was placed in for the
|
|
311
|
+
* tool, which is not the current one when its `userConfigDir.env` moved since.
|
|
312
|
+
* A file or config entry that another entry of `lockfile` also places for the tool is kept, and
|
|
313
|
+
* with `placedByAtk` a file that doesn't hold what ATK placed (see {@link removePlacedFiles}).
|
|
314
|
+
*/
|
|
315
|
+
export async function removeSingleAsset(installed, currentAdapter, projectDir, { lockfile, onProgress, placedByAtk = false, }) {
|
|
316
|
+
onProgress?.(`Removing files for ${installed.name}...`);
|
|
317
|
+
const adapter = adapterAsPlaced(currentAdapter, installed);
|
|
318
|
+
const filesRemoved = await removePlacedFiles(installed, adapter, projectDir, { lockfile, onProgress, placedByAtk });
|
|
264
319
|
// Clean up this tool's config entries, except one holding the value of another asset that owns it.
|
|
265
|
-
|
|
320
|
+
// With `placedByAtk`, an entry the lockfile didn't record for the tool may be the user's own, so
|
|
321
|
+
// only a memory-template's block, which carries ATK's markers, is rebuilt from the placement.
|
|
322
|
+
const recorded = getConfigEntriesForTool(installed, adapter).length > 0;
|
|
323
|
+
const entriesToClean = configEntriesToRemove(installed, adapter, projectDir).filter((entry) => !placedByAtk || recorded || entry.key.startsWith('memory-template.'));
|
|
266
324
|
const entriesOwnedByOthers = configEntriesOwnedByOthers(lockfile, installed, adapter, projectDir);
|
|
267
325
|
const placement = getPlacement(adapter, installed.type);
|
|
268
326
|
const configEntriesCleaned = [];
|
|
@@ -270,7 +328,7 @@ export async function removeSingleAsset(installed, adapter, projectDir, { lockfi
|
|
|
270
328
|
const entriesRemoved = [];
|
|
271
329
|
// The asset's own checksum isn't part of what the result reports.
|
|
272
330
|
for (const { checksum: _checksum, ...entry } of entriesToClean) {
|
|
273
|
-
const absoluteConfigPath =
|
|
331
|
+
const absoluteConfigPath = fromRoot(projectDir, entry.file);
|
|
274
332
|
if (await holdsAnotherOwnersValue(entry, entriesOwnedByOthers, projectDir)) {
|
|
275
333
|
onProgress?.(`Keeping ${entry.key} in ${absoluteConfigPath}: another installed asset also owns it`);
|
|
276
334
|
continue;
|
|
@@ -296,7 +354,7 @@ export async function removeSingleAsset(installed, adapter, projectDir, { lockfi
|
|
|
296
354
|
const prefix = `${placement.configKey}.`;
|
|
297
355
|
const names = entriesRemoved.filter((e) => e.key.startsWith(prefix)).map((e) => e.key.slice(prefix.length));
|
|
298
356
|
if (names.length > 0) {
|
|
299
|
-
await removeFromEnabledList(
|
|
357
|
+
await removeFromEnabledList(fromRoot(projectDir, placement.enabledListFile), placement.enabledListKey, names, true, onProgress);
|
|
300
358
|
}
|
|
301
359
|
}
|
|
302
360
|
return { configEntriesCleaned, filesRemoved };
|
|
@@ -323,8 +381,9 @@ export async function removeUndeclaredCopy(installed, adapter, projectDir, { man
|
|
|
323
381
|
* Uninstall a single asset by name, with optional cascade removal of orphaned dependencies.
|
|
324
382
|
*/
|
|
325
383
|
export async function uninstallAsset(assetName, options) {
|
|
326
|
-
const { adapter, additionalAdapters = [], cascade = true, keepLockfileEntry = false, lockfile: precomputedLockfile, managedFrom, onProgress, org, plan: precomputedPlan, projectDir, toolScope, type, } = options;
|
|
384
|
+
const { adapter, additionalAdapters = [], cascade = true, keepLockfileEntry = false, lockfile: precomputedLockfile, managedFrom, onProgress, org, placedByAtkTools = [], plan: precomputedPlan, projectDir, toolScope, type, } = options;
|
|
327
385
|
const adapters = [adapter, ...additionalAdapters];
|
|
386
|
+
const removal = { onProgress, placedByAtkTools };
|
|
328
387
|
onProgress?.(`Reading lockfile...`);
|
|
329
388
|
let lockfile = precomputedLockfile ?? (await readLockfile(projectDir));
|
|
330
389
|
// Compute the plan before removing anything
|
|
@@ -333,7 +392,7 @@ export async function uninstallAsset(assetName, options) {
|
|
|
333
392
|
const plan = precomputedPlan ?? planUninstall(lockfile, assetName, org, type, removingTools);
|
|
334
393
|
// Remove primary asset. Key the lockfile removal on the entry the plan resolved,
|
|
335
394
|
// not the caller-supplied org — the lookup may have fallen back to a global entry.
|
|
336
|
-
const primaryRemoval = await removeAssetForAdapters(plan.primary, adapters, projectDir, managedFrom ?? lockfile,
|
|
395
|
+
const primaryRemoval = await removeAssetForAdapters(plan.primary, adapters, projectDir, managedFrom ?? lockfile, removal);
|
|
337
396
|
let primaryRemainingTools = [];
|
|
338
397
|
if (!keepLockfileEntry) {
|
|
339
398
|
const dropped = dropOrExcludeEntry(lockfile, plan.primary, adapters, toolScope);
|
|
@@ -355,7 +414,7 @@ export async function uninstallAsset(assetName, options) {
|
|
|
355
414
|
if (cascade && plan.orphanedDependencies.length > 0) {
|
|
356
415
|
for (const orphan of plan.orphanedDependencies) {
|
|
357
416
|
onProgress?.(`Removing orphaned dependency ${orphan.name}...`);
|
|
358
|
-
const orphanRemoval = await removeAssetForAdapters(orphan, adapters, projectDir, lockfile,
|
|
417
|
+
const orphanRemoval = await removeAssetForAdapters(orphan, adapters, projectDir, lockfile, removal);
|
|
359
418
|
const dropped = dropOrExcludeEntry(lockfile, orphan, adapters, toolScope);
|
|
360
419
|
lockfile = dropped.lockfile;
|
|
361
420
|
results.push({
|
|
@@ -377,13 +436,15 @@ export async function uninstallAsset(assetName, options) {
|
|
|
377
436
|
}
|
|
378
437
|
/**
|
|
379
438
|
* Remove empty parent directories up the tree.
|
|
380
|
-
* Stops when it encounters a non-empty directory or the .claude directory itself.
|
|
439
|
+
* Stops when it encounters a non-empty directory, one of `keptDirs`, or the .claude directory itself.
|
|
381
440
|
*/
|
|
382
|
-
async function cleanupEmptyDirectories(dirPath, onProgress) {
|
|
441
|
+
async function cleanupEmptyDirectories(dirPath, keptDirs, onProgress) {
|
|
383
442
|
try {
|
|
384
443
|
// Don't remove well-known root directories
|
|
385
444
|
const dirName = dirPath.replace(/\\/g, '/');
|
|
386
|
-
|
|
445
|
+
const absoluteDir = resolve(dirPath);
|
|
446
|
+
if (keptDirs.some((kept) => isSamePath(kept, absoluteDir)) ||
|
|
447
|
+
dirName.endsWith('/.claude') ||
|
|
387
448
|
dirName.endsWith('/.claude/agents') ||
|
|
388
449
|
dirName.endsWith('/.claude/hooks') ||
|
|
389
450
|
dirName.endsWith('/.claude/rules') ||
|
|
@@ -394,7 +455,7 @@ async function cleanupEmptyDirectories(dirPath, onProgress) {
|
|
|
394
455
|
if (entries.length === 0) {
|
|
395
456
|
await rmdir(dirPath);
|
|
396
457
|
// Recurse up to clean parent if also empty
|
|
397
|
-
await cleanupEmptyDirectories(dirname(dirPath), onProgress);
|
|
458
|
+
await cleanupEmptyDirectories(dirname(dirPath), keptDirs, onProgress);
|
|
398
459
|
}
|
|
399
460
|
}
|
|
400
461
|
catch (error) {
|
|
@@ -426,15 +487,40 @@ function dropOrExcludeEntry(lockfile, asset, adapters, toolScope) {
|
|
|
426
487
|
function keptEntryFields(remainingTools) {
|
|
427
488
|
return remainingTools.length > 0 ? { lockfileEntryKept: true, remainingTools } : {};
|
|
428
489
|
}
|
|
490
|
+
/**
|
|
491
|
+
* The directories the adapter's placements put assets in (`.claude/skills` for
|
|
492
|
+
* `.claude/skills/{name}/`), as absolute paths. They belong to the tool, so removing its last
|
|
493
|
+
* asset leaves them, wherever its config directory is (`CLAUDE_CONFIG_DIR`). Every placed file is
|
|
494
|
+
* under one, so cleaning up from a file stops at its base before it reaches anything above.
|
|
495
|
+
*/
|
|
496
|
+
function placementBaseDirs(adapter, projectDir) {
|
|
497
|
+
return Object.values(adapter.placements)
|
|
498
|
+
.filter(({ path }) => path)
|
|
499
|
+
.map(({ path }) => {
|
|
500
|
+
const nameAt = path.indexOf('{name}');
|
|
501
|
+
return resolve(projectDir, nameAt === -1 ? dirname(path) : path.slice(0, nameAt));
|
|
502
|
+
});
|
|
503
|
+
}
|
|
504
|
+
/** The file's canonical path (real case, links resolved), or the path itself when it doesn't exist. */
|
|
505
|
+
function realPath(path) {
|
|
506
|
+
try {
|
|
507
|
+
return realpathSync.native(path);
|
|
508
|
+
}
|
|
509
|
+
catch {
|
|
510
|
+
return resolve(path);
|
|
511
|
+
}
|
|
512
|
+
}
|
|
429
513
|
/**
|
|
430
514
|
* Remove a single asset from disk for every given adapter, merging the per-tool results.
|
|
431
|
-
* Each adapter only cleans the files and config entries of its own tool
|
|
515
|
+
* Each adapter only cleans the files and config entries of its own tool; one of `placedByAtkTools`
|
|
516
|
+
* only the files that still hold what ATK placed.
|
|
432
517
|
*/
|
|
433
|
-
async function removeAssetForAdapters(installed, adapters, projectDir, lockfile, onProgress) {
|
|
518
|
+
async function removeAssetForAdapters(installed, adapters, projectDir, lockfile, { onProgress, placedByAtkTools }) {
|
|
434
519
|
const configEntriesCleaned = [];
|
|
435
520
|
const filesRemoved = [];
|
|
436
521
|
for (const adapter of adapters) {
|
|
437
|
-
const
|
|
522
|
+
const placedByAtk = placedByAtkTools?.includes(adapter.tool) ?? false;
|
|
523
|
+
const removal = await removeSingleAsset(installed, adapter, projectDir, { lockfile, onProgress, placedByAtk });
|
|
438
524
|
configEntriesCleaned.push(...removal.configEntriesCleaned);
|
|
439
525
|
filesRemoved.push(...removal.filesRemoved);
|
|
440
526
|
}
|
|
@@ -484,7 +570,7 @@ async function removeConfigEntry(configFilePath, configKeyPath, assetName, comma
|
|
|
484
570
|
}
|
|
485
571
|
// If the whole config file is now empty, delete it rather than leaving a bare `{}`.
|
|
486
572
|
if (Object.keys(config).length === 0) {
|
|
487
|
-
await
|
|
573
|
+
await removeEmptiedConfigFile(configFilePath, format, writeOptions);
|
|
488
574
|
return true;
|
|
489
575
|
}
|
|
490
576
|
await writeConfigFile(configFilePath, config, format, onProgress, writeOptions);
|
|
@@ -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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"}
|
package/build/lib/updater.d.ts
CHANGED
|
@@ -183,9 +183,10 @@ export declare function excludedAtVersion(registry: Registry, installed: Install
|
|
|
183
183
|
* The installed asset `atk update <spec>` names. `@org/name` names that org's entry only. A
|
|
184
184
|
* bare name resolves the way `install` resolved it: the lockfile org's entry, else the global
|
|
185
185
|
* one. A name installed as more than one type needs `type` to pick one. The commands its errors
|
|
186
|
-
* suggest run in `scope
|
|
186
|
+
* suggest run in `scope`, and a "not installed" error names `root`'s scope.
|
|
187
187
|
*/
|
|
188
|
-
export declare function findUpdateTarget(lockfile: Lockfile, spec: string, { scope, type, version }?: {
|
|
188
|
+
export declare function findUpdateTarget(lockfile: Lockfile, spec: string, { root, scope, type, version }?: {
|
|
189
|
+
root?: string;
|
|
189
190
|
scope?: Scope;
|
|
190
191
|
type?: AssetType;
|
|
191
192
|
version?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"updater.d.ts","sourceRoot":"","sources":["../../src/lib/updater.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"updater.d.ts","sourceRoot":"","sources":["../../src/lib/updater.ts"],"names":[],"mappings":"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"}
|
package/build/lib/updater.js
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import { join } from 'node:path';
|
|
2
1
|
import { compare, valid } from 'semver';
|
|
3
|
-
import { getPlacement, resolveInstalledPaths } from './adapter.js';
|
|
2
|
+
import { adapterAsPlaced, getPlacement, resolveInstalledPaths } from './adapter.js';
|
|
4
3
|
import { declarationAllows, isExcludedAtVersion, isExcludedForTool, isUndeclaredForTool, placesAsset, supportsType, } from './asset-tools.js';
|
|
5
4
|
import { getCredential } from './auth.js';
|
|
6
5
|
import { getConfigEntriesForTool } from './config-entries.js';
|
|
@@ -12,7 +11,8 @@ import { withoutKeptDependencies } from './multi-tool-install.js';
|
|
|
12
11
|
import { formatOrgName, parseOrgFromName, scopeSwitchGuidance } from './org.js';
|
|
13
12
|
import { findAsset } from './registry.js';
|
|
14
13
|
import { resolveInstallPlan } from './resolver.js';
|
|
15
|
-
import {
|
|
14
|
+
import { fromRoot } from './root-path.js';
|
|
15
|
+
import { scopedCommand, scopeLabel } from './scope.js';
|
|
16
16
|
import { removeUndeclaredCopy, uninstallAsset } from './uninstaller.js';
|
|
17
17
|
export class UpdaterError extends ApiCodeError {
|
|
18
18
|
name = 'UpdaterError';
|
|
@@ -96,9 +96,9 @@ export function excludedAtVersion(registry, installed, version, adapter) {
|
|
|
96
96
|
* The installed asset `atk update <spec>` names. `@org/name` names that org's entry only. A
|
|
97
97
|
* bare name resolves the way `install` resolved it: the lockfile org's entry, else the global
|
|
98
98
|
* one. A name installed as more than one type needs `type` to pick one. The commands its errors
|
|
99
|
-
* suggest run in `scope
|
|
99
|
+
* suggest run in `scope`, and a "not installed" error names `root`'s scope.
|
|
100
100
|
*/
|
|
101
|
-
export function findUpdateTarget(lockfile, spec, { scope, type, version } = {}) {
|
|
101
|
+
export function findUpdateTarget(lockfile, spec, { root, scope, type, version } = {}) {
|
|
102
102
|
const { name, org } = parseOrgFromName(spec);
|
|
103
103
|
const named = (lockfile.assets ?? []).filter((a) => a.name === name && (!type || a.type === type));
|
|
104
104
|
let matches = named.filter((a) => a.org === (org ?? lockfile.org));
|
|
@@ -112,15 +112,16 @@ export function findUpdateTarget(lockfile, spec, { scope, type, version } = {})
|
|
|
112
112
|
}
|
|
113
113
|
if (matches.length === 1)
|
|
114
114
|
return matches[0];
|
|
115
|
+
const notInstalled = `Asset "${spec}" is not installed${root ? ` in ${scopeLabel({ root, scope: scope ?? 'project' })}` : ''}.`;
|
|
115
116
|
const elsewhere = [...new Set(named.map((a) => formatOrgName(a.org, a.name)))].sort();
|
|
116
117
|
if (elsewhere.length > 0) {
|
|
117
|
-
throw new UpdaterError(
|
|
118
|
+
throw new UpdaterError(`${notInstalled} Installed as: ${elsewhere.join(', ')}.`, elsewhere.length === 1
|
|
118
119
|
? {
|
|
119
120
|
command: scopedCommand(`atk update ${elsewhere[0]}${versionSuffix}${type ? ` --type ${type}` : ''}`, scope),
|
|
120
121
|
}
|
|
121
122
|
: {});
|
|
122
123
|
}
|
|
123
|
-
throw new UpdaterError(
|
|
124
|
+
throw new UpdaterError(notInstalled);
|
|
124
125
|
}
|
|
125
126
|
/**
|
|
126
127
|
* After every tool's update in a run: remove the adapter's tool's copy of each hook its update
|
|
@@ -181,6 +182,7 @@ export async function updateAssets(assetNames, lockfile, registry, options) {
|
|
|
181
182
|
// and delegate directly to updateAsset which handles version comparison.
|
|
182
183
|
if (options.targetVersion && assetNames && assetNames.length === 1) {
|
|
183
184
|
const installed = findUpdateTarget(lockfile, assetNames[0], {
|
|
185
|
+
root: options.projectDir,
|
|
184
186
|
scope: options.scope,
|
|
185
187
|
type: options.type,
|
|
186
188
|
version: options.targetVersion,
|
|
@@ -239,7 +241,7 @@ export async function updateAssets(assetNames, lockfile, registry, options) {
|
|
|
239
241
|
const frozenSkipped = [];
|
|
240
242
|
const skipped = [];
|
|
241
243
|
if (assetNames && assetNames.length > 0) {
|
|
242
|
-
const targets = assetNames.map((spec) => findUpdateTarget(lockfile, spec, { scope: options.scope, type: options.type }));
|
|
244
|
+
const targets = assetNames.map((spec) => findUpdateTarget(lockfile, spec, { root: options.projectDir, scope: options.scope, type: options.type }));
|
|
243
245
|
toUpdate = outdated.filter((o) => targets.some((t) => isSameAsset(t, o)));
|
|
244
246
|
// Check for names that aren't outdated
|
|
245
247
|
for (const target of targets) {
|
|
@@ -786,9 +788,13 @@ function updateTouchedPaths(lockfiles, plan, installed, adapter, projectDir) {
|
|
|
786
788
|
const relativePaths = [];
|
|
787
789
|
const replaced = lockfiles.flatMap((lockfile) => plan.entries.flatMap((e) => findInstalledAsset(lockfile, e.asset.name, e.asset.type, e.asset.org) ?? []));
|
|
788
790
|
for (const asset of [...installed, ...replaced]) {
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
|
|
791
|
+
// Where the copy is, and where the update writes it when the tool's config directory moved since.
|
|
792
|
+
for (const placedBy of new Set([adapter, adapterAsPlaced(adapter, asset)])) {
|
|
793
|
+
const resolved = resolveInstalledPaths(asset, placedBy, projectDir);
|
|
794
|
+
relativePaths.push(...resolved.files.map((f) => f.installedPath));
|
|
795
|
+
relativePaths.push(...resolved.configEntries.map((e) => e.file));
|
|
796
|
+
}
|
|
797
|
+
relativePaths.push(...getConfigEntriesForTool(asset, adapter).map((e) => e.file));
|
|
792
798
|
}
|
|
793
799
|
for (const { asset } of plan.entries) {
|
|
794
800
|
const placement = getPlacement(adapter, asset.type);
|
|
@@ -802,7 +808,7 @@ function updateTouchedPaths(lockfiles, plan, installed, adapter, projectDir) {
|
|
|
802
808
|
if (asset.type === 'memory-template')
|
|
803
809
|
relativePaths.push(placement.path.replace(/\{name\}/g, asset.name));
|
|
804
810
|
}
|
|
805
|
-
return [getLockfilePath(projectDir), ...relativePaths.map((p) =>
|
|
811
|
+
return [getLockfilePath(projectDir), ...relativePaths.map((p) => fromRoot(projectDir, p))];
|
|
806
812
|
}
|
|
807
813
|
/** `toolLockfile` with the on-disk lockfile entries of the assets an update installed with `plan`. */
|
|
808
814
|
async function withInstalledEntries(toolLockfile, plan, { projectDir }) {
|