@detergent-software/atk 8.0.4-dev.2 → 8.1.0-dev.1
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 +7 -0
- package/README.md +1 -1
- package/build/cli.js +7 -0
- package/build/cli.js.map +1 -1
- package/build/commands/_app.js +3 -3
- package/build/commands/_app.js.map +1 -1
- package/build/commands/audit.d.ts.map +1 -1
- package/build/commands/audit.js +1 -0
- package/build/commands/audit.js.map +1 -1
- package/build/commands/browse.d.ts.map +1 -1
- package/build/commands/browse.js +3 -3
- package/build/commands/browse.js.map +1 -1
- package/build/commands/cache.d.ts.map +1 -1
- package/build/commands/cache.js +1 -0
- package/build/commands/cache.js.map +1 -1
- package/build/commands/checkout.d.ts.map +1 -1
- package/build/commands/checkout.js +1 -0
- package/build/commands/checkout.js.map +1 -1
- package/build/commands/config.d.ts.map +1 -1
- package/build/commands/config.js +1 -0
- package/build/commands/config.js.map +1 -1
- package/build/commands/diff.d.ts.map +1 -1
- package/build/commands/diff.js +1 -0
- package/build/commands/diff.js.map +1 -1
- package/build/commands/drift.d.ts.map +1 -1
- package/build/commands/drift.js +1 -0
- package/build/commands/drift.js.map +1 -1
- package/build/commands/freeze.d.ts.map +1 -1
- package/build/commands/freeze.js +1 -0
- package/build/commands/freeze.js.map +1 -1
- package/build/commands/info.d.ts.map +1 -1
- package/build/commands/info.js +1 -0
- package/build/commands/info.js.map +1 -1
- package/build/commands/install.d.ts.map +1 -1
- package/build/commands/install.js +4 -4
- package/build/commands/install.js.map +1 -1
- package/build/commands/list.d.ts.map +1 -1
- package/build/commands/list.js +3 -3
- package/build/commands/list.js.map +1 -1
- package/build/commands/login.d.ts.map +1 -1
- package/build/commands/login.js +3 -3
- package/build/commands/login.js.map +1 -1
- package/build/commands/logout.d.ts.map +1 -1
- package/build/commands/logout.js +1 -0
- package/build/commands/logout.js.map +1 -1
- package/build/commands/outdated.d.ts.map +1 -1
- package/build/commands/outdated.js +1 -0
- package/build/commands/outdated.js.map +1 -1
- package/build/commands/pin.d.ts.map +1 -1
- package/build/commands/pin.js +1 -0
- package/build/commands/pin.js.map +1 -1
- package/build/commands/prune.d.ts.map +1 -1
- package/build/commands/prune.js +1 -0
- package/build/commands/prune.js.map +1 -1
- package/build/commands/publish.js +1 -0
- package/build/commands/publish.js.map +1 -1
- package/build/commands/register.d.ts.map +1 -1
- package/build/commands/register.js +3 -3
- package/build/commands/register.js.map +1 -1
- package/build/commands/release-notes.d.ts.map +1 -1
- package/build/commands/release-notes.js +1 -0
- package/build/commands/release-notes.js.map +1 -1
- package/build/commands/reviewer.d.ts.map +1 -1
- package/build/commands/reviewer.js +1 -0
- package/build/commands/reviewer.js.map +1 -1
- package/build/commands/search.d.ts.map +1 -1
- package/build/commands/search.js +1 -0
- package/build/commands/search.js.map +1 -1
- package/build/commands/sync.d.ts.map +1 -1
- package/build/commands/sync.js +1 -0
- package/build/commands/sync.js.map +1 -1
- package/build/commands/thaw.d.ts.map +1 -1
- package/build/commands/thaw.js +1 -0
- package/build/commands/thaw.js.map +1 -1
- package/build/commands/uninstall.d.ts.map +1 -1
- package/build/commands/uninstall.js +1 -0
- package/build/commands/uninstall.js.map +1 -1
- package/build/commands/unpin.d.ts.map +1 -1
- package/build/commands/unpin.js +1 -0
- package/build/commands/unpin.js.map +1 -1
- package/build/commands/update.d.ts.map +1 -1
- package/build/commands/update.js +1 -0
- package/build/commands/update.js.map +1 -1
- package/build/commands/whoami.d.ts.map +1 -1
- package/build/commands/whoami.js +1 -0
- package/build/commands/whoami.js.map +1 -1
- package/build/commands/why.d.ts.map +1 -1
- package/build/commands/why.js +1 -0
- package/build/commands/why.js.map +1 -1
- package/build/components/NoticeBanner.d.ts +1 -2
- package/build/components/NoticeBanner.d.ts.map +1 -1
- package/build/components/NoticeBanner.js +1 -8
- package/build/components/NoticeBanner.js.map +1 -1
- package/build/components/index.d.ts +1 -1
- package/build/components/index.d.ts.map +1 -1
- package/build/components/index.js +1 -1
- package/build/components/index.js.map +1 -1
- package/build/hooks/useBrowseState.d.ts +2 -0
- package/build/hooks/useBrowseState.d.ts.map +1 -1
- package/build/hooks/useBrowseState.js +7 -1
- package/build/hooks/useBrowseState.js.map +1 -1
- package/build/hooks/useCommand.d.ts +1 -0
- package/build/hooks/useCommand.d.ts.map +1 -1
- package/build/hooks/useCommand.js +2 -4
- package/build/hooks/useCommand.js.map +1 -1
- package/build/hooks/useInitState.d.ts +2 -0
- package/build/hooks/useInitState.d.ts.map +1 -1
- package/build/hooks/useInitState.js +4 -6
- package/build/hooks/useInitState.js.map +1 -1
- package/build/hooks/useListState.d.ts +2 -0
- package/build/hooks/useListState.d.ts.map +1 -1
- package/build/hooks/useListState.js +7 -1
- package/build/hooks/useListState.js.map +1 -1
- package/build/hooks/usePruneState.d.ts +3 -0
- package/build/hooks/usePruneState.d.ts.map +1 -1
- package/build/hooks/usePruneState.js +5 -6
- package/build/hooks/usePruneState.js.map +1 -1
- package/build/hooks/usePublishState.d.ts +2 -0
- package/build/hooks/usePublishState.d.ts.map +1 -1
- package/build/hooks/usePublishState.js +6 -6
- package/build/hooks/usePublishState.js.map +1 -1
- package/build/hooks/useRegistryChangeState.d.ts +2 -0
- package/build/hooks/useRegistryChangeState.d.ts.map +1 -1
- package/build/hooks/useRegistryChangeState.js +4 -4
- package/build/hooks/useRegistryChangeState.js.map +1 -1
- package/build/hooks/useSetupState.d.ts +2 -0
- package/build/hooks/useSetupState.d.ts.map +1 -1
- package/build/hooks/useSetupState.js +4 -6
- package/build/hooks/useSetupState.js.map +1 -1
- package/build/hooks/useUninstallState.d.ts +3 -0
- package/build/hooks/useUninstallState.d.ts.map +1 -1
- package/build/hooks/useUninstallState.js +5 -6
- package/build/hooks/useUninstallState.js.map +1 -1
- package/build/lib/api-client.d.ts +2 -0
- package/build/lib/api-client.d.ts.map +1 -1
- package/build/lib/api-client.js +15 -1
- package/build/lib/api-client.js.map +1 -1
- package/build/lib/atk-api/client.d.ts +6 -0
- package/build/lib/atk-api/client.d.ts.map +1 -1
- package/build/lib/atk-api/client.js +1 -0
- package/build/lib/atk-api/client.js.map +1 -1
- package/build/lib/atk-api/errors.d.ts +9 -0
- package/build/lib/atk-api/errors.d.ts.map +1 -1
- package/build/lib/atk-api/errors.js +5 -0
- package/build/lib/atk-api/errors.js.map +1 -1
- package/build/lib/atk-api/generated/types.gen.d.ts +68 -0
- package/build/lib/atk-api/generated/types.gen.d.ts.map +1 -1
- package/build/lib/atk-api/testing.js +2 -0
- package/build/lib/atk-api/testing.js.map +1 -1
- package/build/lib/errors.d.ts +11 -0
- package/build/lib/errors.d.ts.map +1 -1
- package/build/lib/errors.js +13 -0
- package/build/lib/errors.js.map +1 -1
- package/build/lib/notices.d.ts +28 -8
- package/build/lib/notices.d.ts.map +1 -1
- package/build/lib/notices.js +32 -6
- package/build/lib/notices.js.map +1 -1
- package/build/lib/output.d.ts +3 -0
- package/build/lib/output.d.ts.map +1 -1
- package/build/lib/output.js +13 -4
- package/build/lib/output.js.map +1 -1
- package/build/lib/update-check.d.ts +12 -0
- package/build/lib/update-check.d.ts.map +1 -1
- package/build/lib/update-check.js +58 -12
- package/build/lib/update-check.js.map +1 -1
- package/build/lib/version.d.ts +2 -0
- package/build/lib/version.d.ts.map +1 -1
- package/build/lib/version.js +2 -0
- package/build/lib/version.js.map +1 -1
- package/package.json +1 -1
|
@@ -4,11 +4,13 @@ import { join } from 'node:path';
|
|
|
4
4
|
import { gt as semverGt, valid as semverValid } from 'semver';
|
|
5
5
|
import { getCacheDir, loadConfig } from './config.js';
|
|
6
6
|
import { fetchWithRetry } from './fetch-retry.js';
|
|
7
|
-
import {
|
|
7
|
+
import { addNotice } from './notices.js';
|
|
8
|
+
import { CLI_VERSION, isPreRelease, UPGRADE_COMMAND } from './version.js';
|
|
8
9
|
const NPM_REGISTRY_URL = 'https://registry.npmjs.org/@detergent-software/atk';
|
|
9
10
|
const NPM_CACHE_FILE = 'npm-version.json';
|
|
10
|
-
const UPGRADE_COMMAND = 'npm i -g @detergent-software/atk';
|
|
11
11
|
const DEFAULT_TTL_MINUTES = 60;
|
|
12
|
+
/** The JSON-mode refresh makes one attempt and gives up after this long, so it barely delays exit. */
|
|
13
|
+
export const BACKGROUND_REFRESH_TIMEOUT_MS = 1_500;
|
|
12
14
|
/**
|
|
13
15
|
* Check whether a newer version of @detergent-software/atk is available on npm.
|
|
14
16
|
*
|
|
@@ -53,11 +55,55 @@ export async function getUpdateInfo() {
|
|
|
53
55
|
return null;
|
|
54
56
|
}
|
|
55
57
|
}
|
|
56
|
-
|
|
58
|
+
/**
|
|
59
|
+
* The update check for JSON mode, which shows no banner. `cli.tsx` runs it
|
|
60
|
+
* before the command so the payload can carry the result: when the cached npm
|
|
61
|
+
* version (of any age) is newer than this CLI it records an `update-available`
|
|
62
|
+
* notice, with no network call on the way. A missing or stale cache starts one
|
|
63
|
+
* background fetch (no retries, {@link BACKGROUND_REFRESH_TIMEOUT_MS}) that
|
|
64
|
+
* only rewrites the cache, for the next run. Does nothing when
|
|
65
|
+
* `checkUpdates: false` is set. Never throws.
|
|
66
|
+
*/
|
|
67
|
+
export async function noteCachedUpdate() {
|
|
57
68
|
try {
|
|
58
|
-
const
|
|
59
|
-
|
|
60
|
-
|
|
69
|
+
const config = await loadConfig();
|
|
70
|
+
if (config.checkUpdates === false) {
|
|
71
|
+
return;
|
|
72
|
+
}
|
|
73
|
+
const channel = isPreRelease() ? 'dev' : 'latest';
|
|
74
|
+
const cacheDir = getCacheDir(config);
|
|
75
|
+
const cachePath = join(cacheDir, NPM_CACHE_FILE);
|
|
76
|
+
const ttlMs = (config.cacheTtlMinutes ?? DEFAULT_TTL_MINUTES) * 60 * 1000;
|
|
77
|
+
const cached = await readNpmCache(cachePath, channel);
|
|
78
|
+
if (cached && semverValid(CLI_VERSION) && semverValid(cached.version) && semverGt(cached.version, CLI_VERSION)) {
|
|
79
|
+
addNotice({ current: CLI_VERSION, kind: 'update-available', latest: cached.version });
|
|
80
|
+
}
|
|
81
|
+
if (!cached || cached.ageMs > ttlMs) {
|
|
82
|
+
void fetchLatestFromNpm(channel, 'once').then(async (fetched) => {
|
|
83
|
+
if (fetched) {
|
|
84
|
+
await writeNpmCache(cachePath, cacheDir, channel, fetched);
|
|
85
|
+
}
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
catch {
|
|
90
|
+
// Non-fatal: the payload simply carries no update notice.
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* The channel's dist-tag from npm, or null on any failure. `'retry'` uses the
|
|
95
|
+
* shared retry policy; `'once'` makes a single attempt that is aborted after
|
|
96
|
+
* {@link BACKGROUND_REFRESH_TIMEOUT_MS}.
|
|
97
|
+
*/
|
|
98
|
+
async function fetchLatestFromNpm(channel, attempts = 'retry') {
|
|
99
|
+
try {
|
|
100
|
+
const init = { headers: { accept: 'application/json' } };
|
|
101
|
+
const response = attempts === 'retry'
|
|
102
|
+
? await fetchWithRetry(NPM_REGISTRY_URL, init)
|
|
103
|
+
: await globalThis.fetch(NPM_REGISTRY_URL, {
|
|
104
|
+
...init,
|
|
105
|
+
signal: AbortSignal.timeout(BACKGROUND_REFRESH_TIMEOUT_MS),
|
|
106
|
+
});
|
|
61
107
|
if (!response.ok) {
|
|
62
108
|
return null;
|
|
63
109
|
}
|
|
@@ -75,17 +121,17 @@ async function fetchLatestFromNpm(channel) {
|
|
|
75
121
|
}
|
|
76
122
|
}
|
|
77
123
|
async function readCachedNpmVersion(cachePath, ttlMinutes, channel) {
|
|
124
|
+
const cached = await readNpmCache(cachePath, channel);
|
|
125
|
+
return cached && cached.ageMs <= ttlMinutes * 60 * 1000 ? cached.version : null;
|
|
126
|
+
}
|
|
127
|
+
/** The channel's cached version and the cache file's age, or null when there is none. */
|
|
128
|
+
async function readNpmCache(cachePath, channel) {
|
|
78
129
|
try {
|
|
79
130
|
const fileStat = await stat(cachePath);
|
|
80
|
-
const ageMs = Date.now() - fileStat.mtimeMs;
|
|
81
|
-
const ttlMs = ttlMinutes * 60 * 1000;
|
|
82
|
-
if (ageMs > ttlMs) {
|
|
83
|
-
return null;
|
|
84
|
-
}
|
|
85
131
|
const raw = await readFile(cachePath, 'utf-8');
|
|
86
132
|
const parsed = JSON.parse(raw);
|
|
87
133
|
const value = parsed[channel];
|
|
88
|
-
return typeof value === 'string' ? value : null;
|
|
134
|
+
return typeof value === 'string' ? { ageMs: Date.now() - fileStat.mtimeMs, version: value } : null;
|
|
89
135
|
}
|
|
90
136
|
catch {
|
|
91
137
|
return null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update-check.js","sourceRoot":"","sources":["../../src/lib/update-check.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACpE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,EAAE,IAAI,QAAQ,EAAE,KAAK,IAAI,WAAW,EAAE,MAAM,QAAQ,CAAC;AAE9D,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"update-check.js","sourceRoot":"","sources":["../../src/lib/update-check.ts"],"names":[],"mappings":"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"}
|
package/build/lib/version.d.ts
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
export declare const CLI_VERSION: string;
|
|
2
|
+
/** How to update the CLI; the API's `426 cli_outdated` message names the same command. */
|
|
3
|
+
export declare const UPGRADE_COMMAND = "npm i -g @detergent-software/atk";
|
|
2
4
|
export declare function isPreRelease(): boolean;
|
|
3
5
|
/**
|
|
4
6
|
* Parse a `name@version` specifier into its name and optional version parts.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/lib/version.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,WAAW,QAAc,CAAC;AAEvC,wBAAgB,YAAY,IAAI,OAAO,CAEtC;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAiBlF"}
|
|
1
|
+
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/lib/version.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,WAAW,QAAc,CAAC;AAEvC,0FAA0F;AAC1F,eAAO,MAAM,eAAe,qCAAqC,CAAC;AAElE,wBAAgB,YAAY,IAAI,OAAO,CAEtC;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAiBlF"}
|
package/build/lib/version.js
CHANGED
|
@@ -4,6 +4,8 @@ import { fileURLToPath } from 'node:url';
|
|
|
4
4
|
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
5
5
|
const pkg = JSON.parse(readFileSync(join(__dirname, '..', '..', 'package.json'), 'utf8'));
|
|
6
6
|
export const CLI_VERSION = pkg.version;
|
|
7
|
+
/** How to update the CLI; the API's `426 cli_outdated` message names the same command. */
|
|
8
|
+
export const UPGRADE_COMMAND = 'npm i -g @detergent-software/atk';
|
|
7
9
|
export function isPreRelease() {
|
|
8
10
|
return CLI_VERSION.includes('-');
|
|
9
11
|
}
|
package/build/lib/version.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/lib/version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,MAAM,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAC1D,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,CAAC,EAAE,MAAM,CAAC,CAAwB,CAAC;AAEjH,MAAM,CAAC,MAAM,WAAW,GAAG,GAAG,CAAC,OAAO,CAAC;AAEvC,MAAM,UAAU,YAAY;IAC1B,OAAO,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;AACnC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa;IAC5C,MAAM,MAAM,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAEtC,iFAAiF;IACjF,IAAI,MAAM,IAAI,CAAC,EAAE,CAAC;QAChB,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;IACzB,CAAC;IAED,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IACpC,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAExC,mEAAmE;IACnE,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,EAAE,IAAI,EAAE,CAAC;IAClB,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;AAC3B,CAAC"}
|
|
1
|
+
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/lib/version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,MAAM,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAC1D,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,CAAC,EAAE,MAAM,CAAC,CAAwB,CAAC;AAEjH,MAAM,CAAC,MAAM,WAAW,GAAG,GAAG,CAAC,OAAO,CAAC;AAEvC,0FAA0F;AAC1F,MAAM,CAAC,MAAM,eAAe,GAAG,kCAAkC,CAAC;AAElE,MAAM,UAAU,YAAY;IAC1B,OAAO,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;AACnC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa;IAC5C,MAAM,MAAM,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAEtC,iFAAiF;IACjF,IAAI,MAAM,IAAI,CAAC,EAAE,CAAC;QAChB,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;IACzB,CAAC;IAED,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IACpC,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAExC,mEAAmE;IACnE,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,EAAE,IAAI,EAAE,CAAC;IAClB,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;AAC3B,CAAC"}
|