@wavehouse/chtypes 2.0.0-dev.1 → 2.0.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.
Files changed (145) hide show
  1. package/CHANGELOG.md +97 -0
  2. package/README.md +5 -1
  3. package/dist/abi2/buildinfo.d.ts +1 -1
  4. package/dist/abi2/buildinfo.js +3 -3
  5. package/dist/abi2/buildinfo.js.map +1 -1
  6. package/dist/abi2/calls.gen.d.ts +5 -5
  7. package/dist/abi2/calls.gen.d.ts.map +1 -1
  8. package/dist/abi2/calls.gen.js +11 -11
  9. package/dist/abi2/calls.gen.js.map +1 -1
  10. package/dist/abi2/decls.gen.d.ts +2 -1
  11. package/dist/abi2/decls.gen.d.ts.map +1 -1
  12. package/dist/abi2/decls.gen.js +78 -20
  13. package/dist/abi2/decls.gen.js.map +1 -1
  14. package/dist/abi2/errmap.gen.js +1 -1
  15. package/dist/abi2/errors.d.ts +21 -40
  16. package/dist/abi2/errors.d.ts.map +1 -1
  17. package/dist/abi2/errors.js +20 -44
  18. package/dist/abi2/errors.js.map +1 -1
  19. package/dist/abi2/index.d.ts +2 -2
  20. package/dist/abi2/index.d.ts.map +1 -1
  21. package/dist/abi2/index.js +1 -1
  22. package/dist/abi2/index.js.map +1 -1
  23. package/dist/abi2/libc.gen.d.ts +2 -0
  24. package/dist/abi2/libc.gen.d.ts.map +1 -1
  25. package/dist/abi2/libc.gen.js +11 -1
  26. package/dist/abi2/libc.gen.js.map +1 -1
  27. package/dist/abi2/loader.d.ts +4 -2
  28. package/dist/abi2/loader.d.ts.map +1 -1
  29. package/dist/abi2/loader.js +2 -2
  30. package/dist/abi2/loader.js.map +1 -1
  31. package/dist/abi2/raw.d.ts.map +1 -1
  32. package/dist/abi2/raw.js +4 -1
  33. package/dist/abi2/raw.js.map +1 -1
  34. package/dist/abi2/vocab.gen.d.ts +90 -1
  35. package/dist/abi2/vocab.gen.d.ts.map +1 -1
  36. package/dist/abi2/vocab.gen.js +144 -4
  37. package/dist/abi2/vocab.gen.js.map +1 -1
  38. package/dist/cli.d.ts +11 -5
  39. package/dist/cli.d.ts.map +1 -1
  40. package/dist/cli.js +130 -20
  41. package/dist/cli.js.map +1 -1
  42. package/dist/documents.d.ts +100 -7
  43. package/dist/documents.d.ts.map +1 -1
  44. package/dist/documents.js +135 -8
  45. package/dist/documents.js.map +1 -1
  46. package/dist/env.d.ts +8 -1
  47. package/dist/env.d.ts.map +1 -1
  48. package/dist/env.js +17 -8
  49. package/dist/env.js.map +1 -1
  50. package/dist/index.d.ts +10 -7
  51. package/dist/index.d.ts.map +1 -1
  52. package/dist/index.js +8 -5
  53. package/dist/index.js.map +1 -1
  54. package/dist/library.d.ts +13 -2
  55. package/dist/library.d.ts.map +1 -1
  56. package/dist/library.js +24 -5
  57. package/dist/library.js.map +1 -1
  58. package/dist/ocifetch/channel.d.ts +84 -0
  59. package/dist/ocifetch/channel.d.ts.map +1 -1
  60. package/dist/ocifetch/channel.js +157 -2
  61. package/dist/ocifetch/channel.js.map +1 -1
  62. package/dist/ocifetch/constants.gen.d.ts +28 -0
  63. package/dist/ocifetch/constants.gen.d.ts.map +1 -1
  64. package/dist/ocifetch/constants.gen.js +30 -1
  65. package/dist/ocifetch/constants.gen.js.map +1 -1
  66. package/dist/ocifetch/dsse.d.ts +5 -1
  67. package/dist/ocifetch/dsse.d.ts.map +1 -1
  68. package/dist/ocifetch/dsse.js +10 -3
  69. package/dist/ocifetch/dsse.js.map +1 -1
  70. package/dist/ocifetch/ensure.d.ts +68 -8
  71. package/dist/ocifetch/ensure.d.ts.map +1 -1
  72. package/dist/ocifetch/ensure.js +305 -66
  73. package/dist/ocifetch/ensure.js.map +1 -1
  74. package/dist/ocifetch/errors.d.ts +101 -25
  75. package/dist/ocifetch/errors.d.ts.map +1 -1
  76. package/dist/ocifetch/errors.js +74 -36
  77. package/dist/ocifetch/errors.js.map +1 -1
  78. package/dist/ocifetch/hold.d.ts +66 -0
  79. package/dist/ocifetch/hold.d.ts.map +1 -0
  80. package/dist/ocifetch/hold.js +150 -0
  81. package/dist/ocifetch/hold.js.map +1 -0
  82. package/dist/ocifetch/http.d.ts +10 -2
  83. package/dist/ocifetch/http.d.ts.map +1 -1
  84. package/dist/ocifetch/http.js +31 -12
  85. package/dist/ocifetch/http.js.map +1 -1
  86. package/dist/ocifetch/index.d.ts +10 -5
  87. package/dist/ocifetch/index.d.ts.map +1 -1
  88. package/dist/ocifetch/index.js +8 -3
  89. package/dist/ocifetch/index.js.map +1 -1
  90. package/dist/ocifetch/localverify.d.ts +3 -1
  91. package/dist/ocifetch/localverify.d.ts.map +1 -1
  92. package/dist/ocifetch/localverify.js +6 -1
  93. package/dist/ocifetch/localverify.js.map +1 -1
  94. package/dist/ocifetch/lock.d.ts +2 -1
  95. package/dist/ocifetch/lock.d.ts.map +1 -1
  96. package/dist/ocifetch/lock.js +7 -5
  97. package/dist/ocifetch/lock.js.map +1 -1
  98. package/dist/ocifetch/oci.d.ts +45 -3
  99. package/dist/ocifetch/oci.d.ts.map +1 -1
  100. package/dist/ocifetch/oci.js +125 -58
  101. package/dist/ocifetch/oci.js.map +1 -1
  102. package/dist/ocifetch/prune.d.ts +48 -0
  103. package/dist/ocifetch/prune.d.ts.map +1 -0
  104. package/dist/ocifetch/prune.js +383 -0
  105. package/dist/ocifetch/prune.js.map +1 -0
  106. package/dist/ocifetch/referrers.d.ts +24 -0
  107. package/dist/ocifetch/referrers.d.ts.map +1 -1
  108. package/dist/ocifetch/referrers.js +92 -5
  109. package/dist/ocifetch/referrers.js.map +1 -1
  110. package/dist/ocifetch/resolve.d.ts +37 -0
  111. package/dist/ocifetch/resolve.d.ts.map +1 -0
  112. package/dist/ocifetch/resolve.js +90 -0
  113. package/dist/ocifetch/resolve.js.map +1 -0
  114. package/dist/ocifetch/retired.d.ts +61 -0
  115. package/dist/ocifetch/retired.d.ts.map +1 -0
  116. package/dist/ocifetch/retired.js +236 -0
  117. package/dist/ocifetch/retired.js.map +1 -0
  118. package/dist/ocifetch/revocation.d.ts +151 -0
  119. package/dist/ocifetch/revocation.d.ts.map +1 -0
  120. package/dist/ocifetch/revocation.js +481 -0
  121. package/dist/ocifetch/revocation.js.map +1 -0
  122. package/dist/ocifetch/types.d.ts +18 -2
  123. package/dist/ocifetch/types.d.ts.map +1 -1
  124. package/dist/ocifetch/types.js.map +1 -1
  125. package/dist/registry.d.ts +80 -3
  126. package/dist/registry.d.ts.map +1 -1
  127. package/dist/registry.js +168 -9
  128. package/dist/registry.js.map +1 -1
  129. package/dist/schema.d.ts +52 -9
  130. package/dist/schema.d.ts.map +1 -1
  131. package/dist/schema.js +6 -6
  132. package/dist/schema.js.map +1 -1
  133. package/dist/server.d.ts +27 -0
  134. package/dist/server.d.ts.map +1 -0
  135. package/dist/server.js +35 -0
  136. package/dist/server.js.map +1 -0
  137. package/dist/settings.d.ts +101 -9
  138. package/dist/settings.d.ts.map +1 -1
  139. package/dist/settings.js +201 -27
  140. package/dist/settings.js.map +1 -1
  141. package/dist/setup.d.ts +3 -2
  142. package/dist/setup.d.ts.map +1 -1
  143. package/dist/setup.js +2 -3
  144. package/dist/setup.js.map +1 -1
  145. package/package.json +2 -2
package/dist/cli.js CHANGED
@@ -9,14 +9,20 @@
9
9
  * usage status before anything else, and keeps its cache under `v2-dev`:
10
10
  *
11
11
  * chtypes fetch <version>... | --all [--frozen] [--offline] [--lock <file>] [--update] [--strict]
12
+ * [--allow-revoked] [--require-revocation-check]
12
13
  * chtypes verify re-hash every installed library against its verified record
13
- * chtypes list what is installed, and the versions the registry publishes
14
- * chtypes where the v1 cache root
14
+ * chtypes list what is installed, and the lines the registry publishes
15
+ * chtypes where [--all] the v1 cache root; --all: every directory searched
16
+ * chtypes resolve <version> [--json] the build and manifest each platform resolves to, verified; installs nothing
17
+ * chtypes prune [--line <line>] [--keep <n>] [--dry-run]
18
+ * remove the builds of each line newer ones supersede, keeping the newest n
15
19
  *
16
20
  * Options per cli-common: `fetch` takes `--platform`, `--cache`, `--lock`, `--frozen`,
17
- * `--offline`, `--update`; `verify`, `list` and `where` take `--cache` (`list` also
18
- * `--offline`); every command takes `--strict`; `-h/--help` anywhere, `--version` at
19
- * top level. The registry base comes only from `CHTYPES_ARTIFACTS_URL`.
21
+ * `--offline`, `--update`, `--allow-revoked`, `--require-revocation-check`; `verify`, `list` and `where` take `--cache` (`list` also
22
+ * `--offline`); `resolve` takes `--cache`, `--offline` and `--json`; `prune` takes
23
+ * `--cache`, `--line`, `--keep` and `--dry-run`; every command takes `--strict`;
24
+ * `-h/--help` anywhere, `--version` at top level. The registry base comes only from
25
+ * `CHTYPES_ARTIFACTS_URL`.
20
26
  *
21
27
  * Exit statuses: 0 ok, 2 usage, and for every fetch error the status the
22
28
  * `errors` table of `spec/fetch-v1/constants.json` gives its code (generated
@@ -34,11 +40,11 @@ import { createRequire } from 'node:module';
34
40
  import os from 'node:os';
35
41
  import { fileURLToPath } from 'node:url';
36
42
  import { parseArgs } from 'node:util';
37
- import { isChtypesError, UsageError } from './abi2/index.js';
43
+ import { ChtypesError, UsageError } from './abi2/index.js';
38
44
  import { withEnvironment } from './env.js';
39
- import { ERROR_EXIT_CODES } from './ocifetch/constants.gen.js';
45
+ import { CODE_ARTIFACT_CORRUPT, CODE_ARTIFACT_REVOKED, ERROR_EXIT_CODES } from './ocifetch/constants.gen.js';
40
46
  import { strictMode } from './ocifetch/faults.js';
41
- import { activeChannel, ArtifactMissingError, ArtifactUnpublishedError, cacheRoot, DEV_CACHE_DIR, DEV_CHANNEL_BASE, DEV_KEY_ID, ensure, FetchV1Error, hostPlatformKey, isFilesystemError, isPlatformKey, listInstalled, listTags, missingNotes, PinningRefusedError, pinningRequested, probeCache, verifyInstalled, } from './ocifetch/index.js';
47
+ import { activeChannel, ArtifactMissingError, ArtifactUnpublishedError, cacheRoot, DEV_CACHE_DIR, DEV_CHANNEL_BASE, DEV_KEY_ID, ensure, exitStatusOf, FetchV1Error, hostPlatformKey, isFilesystemError, isLine, isPlatformKey, listInstalled, listTags, missingNotes, offlineMode, PinningRefusedError, pinningRequested, probeCache, prune, resolveBuilds, searchDirs, SpellingRefusedError, verifyInstalled, } from './ocifetch/index.js';
42
48
  /** The exit status of a usage error: the one status the error table does not own. */
43
49
  export const EXIT_USAGE = 2;
44
50
  /** Success. */
@@ -48,19 +54,30 @@ const EXIT_OTHER = 1;
48
54
  const USAGE = `usage: chtypes <command> [options]
49
55
 
50
56
  chtypes fetch <version>... | --all [--frozen] [--offline] [--lock <file>] [--update] [--strict]
57
+ [--allow-revoked] [--require-revocation-check]
51
58
  chtypes verify [--strict]
52
59
  chtypes list [--strict]
53
- chtypes where [--strict]
60
+ chtypes where [--strict] [--all]
61
+ chtypes resolve <version> [--json] [--offline] [--strict]
62
+ the build and manifest each platform resolves to, verified; installs nothing
63
+ chtypes prune [--line <line>] [--keep <n>] [--dry-run] [--strict]
64
+ remove the builds of each line newer ones supersede, keeping the newest n (default 1)
54
65
 
55
66
  <version> a ClickHouse version: 26.8, 26.8.15 or 26.8.15.10 (no "v", no channel suffix)
56
- --all every line (two-part version) the registry publishes for the platform
67
+ --all every line (two-part version) the registry publishes for the platform; with 'where', every directory searched (the cache root first)
68
+ --json with 'resolve': one JSON array on one line, one object per platform, instead of one line per platform
69
+ --line with 'prune': only this line, such as 26.8 (default: every line)
70
+ --keep with 'prune': how many of each line's newest builds stay, per platform (at least 1; default 1)
71
+ --dry-run with 'prune': print what would be removed, and remove nothing
57
72
  --frozen fetch exactly what the lock file pins, by digest; refuse anything it does not (default lock: chtypes.lock)
58
- --offline never touch the network: an installed, verified build is fine, anything else fails
73
+ --offline never touch the network: an installed, verified build is fine, anything else fails (or set CHTYPES_OFFLINE=1)
59
74
  --lock record what was installed into this lock file
60
75
  --update re-resolve every request the lock holds and rewrite it (requires --lock; not with --frozen or --offline)
61
76
  --platform <os>-<arch>: linux-amd64, linux-arm64 or darwin-arm64 (default: this host, or CHTYPES_TARGET)
62
77
  --cache a cache, used through its ${DEV_CACHE_DIR} subroot (default: CHTYPES_CACHE/${DEV_CACHE_DIR}, else \${XDG_CACHE_HOME:-~/.cache}/chtypes/${DEV_CACHE_DIR})
63
78
  --strict a cache that cannot be read is CHTYPES_CACHE_UNUSABLE, never not-installed (default: CHTYPES_CACHE_STRICT=1)
79
+ --allow-revoked use a revoked build anyway, with a warning (this call only; never a lock or an update)
80
+ --require-revocation-check a revocation status that cannot be read is an error, not a warning
64
81
  -h, --help this text; --version "chtypes <version>"
65
82
 
66
83
  this is a 2.0.0-dev CLI (UNSTABLE, staging only, not for production): it fetches only from
@@ -88,10 +105,20 @@ const CONFIG = {
88
105
  platform: { type: 'string' },
89
106
  cache: { type: 'string' },
90
107
  strict: { type: 'boolean' },
108
+ 'allow-revoked': { type: 'boolean' },
109
+ 'require-revocation-check': { type: 'boolean' },
110
+ json: { type: 'boolean' },
111
+ line: { type: 'string' },
112
+ keep: { type: 'string' },
113
+ 'dry-run': { type: 'boolean' },
91
114
  help: { type: 'boolean', short: 'h' },
92
115
  version: { type: 'boolean' },
93
116
  },
94
117
  };
118
+ /** The options only `resolve` and `prune` take: every other command refuses them as a usage error, as it did before they existed. */
119
+ const RESOLVE_AND_PRUNE_OPTIONS = ['json', 'line', 'keep', 'dry-run'];
120
+ /** The options only `fetch` takes (build-level revocation): every other command refuses them. */
121
+ const FETCH_ONLY_REVOCATION_OPTIONS = ['allow-revoked', 'require-revocation-check'];
95
122
  /** A command-line mistake: exits with the usage status. */
96
123
  class CliUsageError extends Error {
97
124
  }
@@ -136,13 +163,21 @@ export async function runCli(argv, io = defaultIo) {
136
163
  try {
137
164
  switch (command) {
138
165
  case 'fetch':
166
+ refuseOptions(command, values, RESOLVE_AND_PRUNE_OPTIONS);
139
167
  return await cmdFetch(rest, values, io);
140
168
  case 'verify':
169
+ refuseOptions(command, values, [...RESOLVE_AND_PRUNE_OPTIONS, ...FETCH_ONLY_REVOCATION_OPTIONS]);
141
170
  return await cmdVerify(rest, values, io);
142
171
  case 'list':
172
+ refuseOptions(command, values, [...RESOLVE_AND_PRUNE_OPTIONS, ...FETCH_ONLY_REVOCATION_OPTIONS]);
143
173
  return await cmdList(rest, values, io);
144
174
  case 'where':
175
+ refuseOptions(command, values, [...RESOLVE_AND_PRUNE_OPTIONS, ...FETCH_ONLY_REVOCATION_OPTIONS]);
145
176
  return await cmdWhere(rest, values, io);
177
+ case 'resolve':
178
+ return await cmdResolve(rest, values, io);
179
+ case 'prune':
180
+ return await cmdPrune(rest, values, io);
146
181
  default:
147
182
  throw new CliUsageError(`unknown command ${JSON.stringify(command)}`);
148
183
  }
@@ -181,10 +216,12 @@ function fetchOptions(values, forFetch) {
181
216
  ...(values.strict === true ? { strictCache: true } : {}),
182
217
  ...(forFetch
183
218
  ? {
184
- offline: values.offline === true,
219
+ ...(values.offline === true ? { offline: true } : {}),
185
220
  frozen: values.frozen === true,
186
221
  update: values.update === true,
187
222
  lockWrite: lockPath !== undefined && values.frozen !== true && values.update !== true,
223
+ ...(values['allow-revoked'] === true ? { allowRevoked: true } : {}),
224
+ ...(values['require-revocation-check'] === true ? { requireRevocationCheck: true } : {}),
188
225
  }
189
226
  : {}),
190
227
  });
@@ -237,7 +274,7 @@ async function cmdFetch(requests, values, io) {
237
274
  }
238
275
  /** Every line: the two-part spellings the registry publishes (or, offline, the lines already installed for the platform). */
239
276
  async function allLines(options) {
240
- if (options.offline === true) {
277
+ if (offlineMode(options.offline)) {
241
278
  const platform = options.platform ?? hostPlatformKey(os.platform(), os.arch());
242
279
  const lines = new Set();
243
280
  for (const r of await listInstalled(options))
@@ -245,7 +282,7 @@ async function allLines(options) {
245
282
  lines.add(r.predicate.clickhouse_minor);
246
283
  return [...lines];
247
284
  }
248
- return (await listTags(options)).filter((t) => t.split('.').length === 2);
285
+ return listTags(options);
249
286
  }
250
287
  async function cmdVerify(rest, values, io) {
251
288
  noArguments('verify', rest);
@@ -265,15 +302,26 @@ async function cmdVerify(rest, values, io) {
265
302
  }
266
303
  await sayNotes(io, options);
267
304
  let bad = 0;
305
+ let revoked = 0;
268
306
  for (const r of results) {
269
- if (!r.ok) {
307
+ if (r.revocation !== undefined) {
308
+ // A build a stored revocation refuses (fetch-v1.md, "Build-level revocation"); it is reported whatever its bytes say.
309
+ revoked += 1;
310
+ io.stderr(`REVOKED ${r.version} ${r.platform} ${r.dir}: ${r.detail}\n`);
311
+ }
312
+ else if (!r.ok) {
270
313
  bad += 1;
271
314
  io.stderr(`BAD ${r.platform} ${r.dir} ${r.detail}\n`);
272
315
  }
273
316
  }
317
+ if (revoked > 0) {
318
+ // Exit 11 wins over a mismatch's 1: a revocation is the more specific finding.
319
+ io.stderr(`chtypes: ${revoked} of ${results.length} installed build(s) under ${root} are revoked [${CODE_ARTIFACT_REVOKED}]\n`);
320
+ return ERROR_EXIT_CODES[CODE_ARTIFACT_REVOKED] ?? EXIT_OTHER;
321
+ }
274
322
  if (bad > 0)
275
323
  io.stderr(`${bad} of ${results.length} build(s) FAILED verification in ${root}\n`);
276
- return bad === 0 ? EXIT_OK : (ERROR_EXIT_CODES['CHTYPES_ARTIFACT_CORRUPT'] ?? EXIT_OTHER);
324
+ return bad === 0 ? EXIT_OK : (ERROR_EXIT_CODES[CODE_ARTIFACT_CORRUPT] ?? EXIT_OTHER);
277
325
  }
278
326
  async function cmdList(rest, values, io) {
279
327
  noArguments('list', rest);
@@ -282,7 +330,7 @@ async function cmdList(rest, values, io) {
282
330
  for (const r of installed)
283
331
  io.stdout(`installed ${r.version} ${r.platform} ${r.dir}\n`);
284
332
  await sayNotes(io, options);
285
- if (values.offline)
333
+ if (offlineMode(values.offline === true ? true : undefined))
286
334
  return EXIT_OK;
287
335
  for (const t of await listTags(options))
288
336
  io.stdout(`published ${t} support unknown\n`);
@@ -294,9 +342,71 @@ async function cmdWhere(rest, values, io) {
294
342
  // Strict mode checks the root before naming it.
295
343
  if (strictMode(options.strictCache))
296
344
  await probeCache(options);
345
+ // --all: every directory searched (the cache root first), one per line (public issue #530).
346
+ if (values.all) {
347
+ for (const dir of searchDirs(options))
348
+ io.stdout(`${dir}\n`);
349
+ return EXIT_OK;
350
+ }
297
351
  io.stdout(`${cacheRoot(options.cacheDir)}\n`);
298
352
  return EXIT_OK;
299
353
  }
354
+ /** `chtypes resolve` (public issue #493): what one spelling resolves to on every platform, verified, and nothing installed. */
355
+ async function cmdResolve(rest, values, io) {
356
+ refuseOptions('resolve', values, ['all', 'frozen', 'update', 'lock', 'platform', 'line', 'keep', 'dry-run', ...FETCH_ONLY_REVOCATION_OPTIONS]);
357
+ const [spelling] = rest;
358
+ if (spelling === undefined || rest.length !== 1)
359
+ throw new CliUsageError(`resolve takes exactly one version spelling (got ${rest.length})`);
360
+ const options = { ...fetchOptions(values, false), ...(values.offline === true ? { offline: true } : {}) };
361
+ const { resolutions, warnings } = await resolveBuilds(spelling, options);
362
+ for (const w of warnings)
363
+ io.stderr(`chtypes: warning: ${w}\n`);
364
+ if (values.json === true) {
365
+ // One line, the members in this order, as every binding's CLI prints them.
366
+ const doc = resolutions.map((r) => ({ platform: r.platform, version: r.version, build: r.build, manifest: r.manifest }));
367
+ io.stdout(`${JSON.stringify(doc)}\n`);
368
+ return EXIT_OK;
369
+ }
370
+ for (const r of resolutions)
371
+ io.stdout(`resolved ${r.version} ${r.platform} ${r.build} ${r.manifest}\n`);
372
+ return EXIT_OK;
373
+ }
374
+ /** `chtypes prune` (public issue #494): remove the builds of each line newer installed builds supersede, keeping the newest n per platform, never one in use. */
375
+ async function cmdPrune(rest, values, io) {
376
+ refuseOptions('prune', values, ['all', 'frozen', 'update', 'lock', 'platform', 'offline', 'json', ...FETCH_ONLY_REVOCATION_OPTIONS]);
377
+ if (rest.length > 0)
378
+ throw new CliUsageError(`prune takes no positional arguments (${rest.join(' ')}); a line is --line <line>`);
379
+ const keepText = values.keep ?? '1';
380
+ if (!/^[+-]?[0-9]+$/.test(keepText))
381
+ throw new CliUsageError(`--keep takes a number of builds, at least 1, not ${JSON.stringify(keepText)}`);
382
+ const keep = Number(keepText);
383
+ if (keep < 1)
384
+ throw new CliUsageError(`--keep is at least 1, not ${keep}`);
385
+ const line = values.line ?? '';
386
+ if (line !== '' && !isLine(line))
387
+ throw new CliUsageError(`--line takes a two-part line such as 26.8, not ${JSON.stringify(line)}`);
388
+ const dryRun = values['dry-run'] === true;
389
+ const options = fetchOptions(values, false);
390
+ const results = await prune(options, { line, keep, dryRun });
391
+ let removed = 0;
392
+ for (const r of results) {
393
+ const word = r.inUse ? 'in-use' : dryRun ? 'would-prune' : 'pruned';
394
+ if (!r.inUse)
395
+ removed += 1;
396
+ io.stdout(`${word} ${r.version} ${r.platform} ${r.dir}\n`);
397
+ }
398
+ await sayNotes(io, options);
399
+ const root = cacheRoot(options.cacheDir);
400
+ io.stderr(dryRun ? `chtypes: would prune ${removed} build(s) under ${root}\n` : `chtypes: pruned ${removed} build(s) under ${root}\n`);
401
+ return EXIT_OK;
402
+ }
403
+ /** A usage error naming the first option in `names` the command was given: an option another command takes. */
404
+ function refuseOptions(command, values, names) {
405
+ for (const [name, value] of Object.entries(values)) {
406
+ if (value !== undefined && names.includes(name))
407
+ throw new CliUsageError(`${command} does not take --${name}`);
408
+ }
409
+ }
300
410
  /** What the cache says about itself in the default mode: a warning per root or entry it could not read, and the 0.x hint. */
301
411
  async function sayNotes(io, options) {
302
412
  for (const note of await missingNotes(options))
@@ -312,20 +422,20 @@ function report(err, io) {
312
422
  io.stderr(`chtypes: ${err.message}\n${USAGE}`);
313
423
  return EXIT_USAGE;
314
424
  }
315
- if (err instanceof PinningRefusedError) {
425
+ if (err instanceof PinningRefusedError || err instanceof SpellingRefusedError) {
316
426
  // The caller's misuse, never an artifact failure: the usage status.
317
427
  io.stderr(`${err.message}\n`);
318
428
  return EXIT_USAGE;
319
429
  }
320
430
  if (err instanceof FetchV1Error) {
321
431
  io.stderr(`${err.message} [${err.code}]\n`);
322
- return err.exitStatus;
432
+ return exitStatusOf(err.code);
323
433
  }
324
434
  if (err instanceof UsageError) {
325
435
  io.stderr(`${err.message}\n`);
326
436
  return EXIT_USAGE;
327
437
  }
328
- if (isChtypesError(err)) {
438
+ if (err instanceof ChtypesError) {
329
439
  io.stderr(`${err.message}\n`);
330
440
  return EXIT_OTHER;
331
441
  }
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -18,7 +18,7 @@
18
18
  * `<key>_b64` (standard base64 of the raw bytes, otherwise), and the
19
19
  * decoder surfaces a `Buffer` either way. Both present is an
20
20
  * `InternalError`; for a name, neither present is too. A list of names
21
- * (`unknown_fields`, `unsupported_settings`, header names) holds `{name}`
21
+ * (`unknown_fields`, a batch's `unsupported_settings`, `export_columns`, header names) holds `{name}`
22
22
  * or `{name_b64}` objects, never a bare string. `value_b64` is a scalar
23
23
  * String or FixedString value's raw bytes (rule 6), surfaced as `value`.
24
24
  * 4. A vocabulary fact (`Transform.lossy`, `Value.isStored`, a verdict's
@@ -31,7 +31,7 @@
31
31
  * 5. Unknown is never false and never empty: `framing.bomSkipped` and
32
32
  * `framing.header` are `null` when the document says `null`.
33
33
  */
34
- import { type DefaultKind, type FilterOutcome, type Outcome, type Verdict } from './abi2/index.js';
34
+ import { type DeclinedLayer, type DeclinedTier, type DefaultKind, type DefaultSupport, type FilterOutcome, type MergeReason, type Outcome, type Posture, type RefusalSite, type Verdict } from './abi2/index.js';
35
35
  /** The byte range of the input body a record occupies: `off` and `len`. */
36
36
  export interface Span {
37
37
  readonly off: number;
@@ -60,6 +60,26 @@ export interface EngineCell {
60
60
  /** The raw bytes of a scalar String or FixedString value (rule 6), when the document carries them. */
61
61
  readonly value: Buffer | undefined;
62
62
  }
63
+ /**
64
+ * One thing an `OPTIMIZE TABLE ... FINAL` of the part the INSERT writes would do to one of its rows, at the
65
+ * call's clock instant: an entry of the batch's `at_merge` list (ABI v2). `engineRows` stays exactly what the
66
+ * INSERT writer produces, so the two never contradict each other.
67
+ */
68
+ export interface AtMergeEntry {
69
+ /** Indexes `engineRows`: the part's row, not the input body's (the document's `part_row`). */
70
+ readonly partRow: number;
71
+ /** A `MergeReason` value; one the description does not list is its unknown(n), kept verbatim (rule r3). */
72
+ readonly reason: MergeReason;
73
+ /** The column a `ttl_column_reset` resets, as bytes (`column` or `column_b64`); `undefined` when the entry names none. */
74
+ readonly column: Buffer | undefined;
75
+ /**
76
+ * The column's value after the reset, as bytes (`stored` or `stored_b64`); `undefined` when the document carries
77
+ * none, which it omits when the column's DEFAULT reads the clock or a generator and the value is decided at the merge.
78
+ */
79
+ readonly stored: Buffer | undefined;
80
+ /** The input rows, each by its index in the body, that formed the part's row; `undefined` when the document carries none. */
81
+ readonly inputRows: readonly number[] | undefined;
82
+ }
63
83
  /** A silent change: what the input said, what is stored, and why. */
64
84
  export interface Transform {
65
85
  readonly column: Buffer;
@@ -82,19 +102,27 @@ export interface Computed {
82
102
  }
83
103
  export interface RowResult {
84
104
  readonly outcome: Outcome;
105
+ /** The document's `code`: ClickHouse's own error code, 0 only on a success, and -2 (`CHS_CODE_DECLINED`) where this build declined the row. */
85
106
  readonly errCode: number;
86
107
  readonly errMsg: Buffer;
108
+ /** The decline's catalog id (`spec/abi-v2/declines/declines.json`), from `reason`; `undefined` when the document carries none, which it does exactly where `errCode` is -2. Key on it, never on `errMsg`. */
109
+ readonly reason: string | undefined;
110
+ /** Where a single-row result's refusal sits, from `refused_at`; `undefined` for an accepted or skipped row. The rows of a batch carry neither this nor `refusedRow`: the batch's own say where. */
111
+ readonly refusedAt: RefusalSite | undefined;
112
+ /** The row index of a `row` refusal, from `refused_row`; `undefined` when the document carries none. */
113
+ readonly refusedRow: number | undefined;
87
114
  /** Every entry of `cols`, in document order. */
88
115
  readonly columns: readonly Value[];
89
116
  /** The entries of `columns` whose source is stored, in order. */
90
117
  readonly values: readonly Value[];
91
118
  readonly transformed: readonly Transform[];
92
119
  readonly unknownFields: readonly Buffer[];
93
- readonly unsupportedSettings: readonly Buffer[];
94
120
  readonly computed: readonly Computed[];
95
121
  /** Present only with an attached filter. */
96
122
  readonly verdict: Verdict | undefined;
97
123
  readonly verdictCode: number;
124
+ /** The catalog id of a declined verdict (`verdictCode` is -2), from `verdict_reason`; `undefined` when the document carries none. */
125
+ readonly verdictReason: string | undefined;
98
126
  readonly verdictErr: Buffer;
99
127
  readonly partitionId: Buffer | undefined;
100
128
  /** The bytes the reader consumed for this record. */
@@ -114,21 +142,39 @@ export interface Framing {
114
142
  }
115
143
  export interface BatchResult {
116
144
  readonly outcome: Outcome;
145
+ /** The document's `code`, as `RowResult.errCode`. */
117
146
  readonly errCode: number;
118
147
  readonly errMsg: Buffer;
148
+ /** The catalog id of a declined batch (`errCode` is -2), from `reason`; `undefined` when the document carries none. */
149
+ readonly reason: string | undefined;
150
+ /** Where a refusal or decline sits, from `refused_at`; `undefined` for an accepted batch. A `row` one names its row in `refusedRow` (below `rowsRead`). */
151
+ readonly refusedAt: RefusalSite | undefined;
152
+ readonly refusedRow: number | undefined;
119
153
  readonly rows: readonly RowResult[];
120
154
  readonly rowsRead: number;
121
155
  readonly rowsSkipped: number;
122
156
  /** Every transform in the batch, with its `row`, as the library lists them. */
123
157
  readonly transformed: readonly Transform[];
158
+ /** The call's own settings the library declined, from the batch's top-level list (ABI v2); empty when it names none. */
159
+ readonly unsupportedSettings: readonly Buffer[];
124
160
  /** Each stored row after the engine's insert-time merge, as a list of cells. */
125
161
  readonly engineRows: readonly (readonly EngineCell[])[] | undefined;
126
- /** The export buffer, present only when an export was asked for. */
162
+ /**
163
+ * What an `OPTIMIZE TABLE ... FINAL` of the part would do to its rows, at least: a later background merge can remove
164
+ * more as more rows expire, and a row both removed and reset lists only `ttl_delete` (ABI v2). Empty when the
165
+ * document carries none.
166
+ */
167
+ readonly atMerge: readonly AtMergeEntry[];
168
+ /** The export buffer: present only for an export that ran (possibly empty); absent when none was asked for or it was declined (`exportDeclined`). */
127
169
  readonly payload: Buffer | undefined;
128
- /** Each exported row's place in `payload`. */
129
- readonly spans: readonly Span[] | undefined;
170
+ /** Each row's place in `payload`, from `row_spans`: one entry per `rows` entry, index-aligned, `null` for a row not exported (a skipped row, or a row a filter cut). `undefined` when absent, and always `undefined` when the export was declined. */
171
+ readonly spans: readonly (Span | null)[] | undefined;
172
+ /** The export's one column list, in the order every line carries its columns, from `export_columns` (name objects); `undefined` when the document carries none (no export ran). */
173
+ readonly exportColumns: readonly Buffer[] | undefined;
130
174
  /** Why an asked-for export was declined, as bytes (`export_declined` or `export_declined_b64`); empty when none was. */
131
175
  readonly exportDeclined: Buffer;
176
+ /** The catalog id of a declined export, from `export_declined_reason`; `undefined` when the export ran or none was asked for. */
177
+ readonly exportDeclinedReason: string | undefined;
132
178
  readonly rowsPassed: number;
133
179
  readonly rowsCut: number;
134
180
  readonly partitionCount: number | undefined;
@@ -139,15 +185,22 @@ export interface BatchResult {
139
185
  export interface FilterRowError {
140
186
  readonly row: number;
141
187
  readonly code: number;
188
+ /** The catalog id where `code` is -2, from `reason`; `undefined` when the entry carries none. */
189
+ readonly reason: string | undefined;
142
190
  readonly msg: Buffer;
143
191
  }
144
192
  export interface FilterResult {
145
193
  readonly outcome: FilterOutcome;
194
+ /** The document's `code`, as `RowResult.errCode`. */
146
195
  readonly errCode: number;
147
196
  readonly errMsg: Buffer;
197
+ /** `reason`, `refusedAt` and `refusedRow` are the batch's (see `BatchResult`): where a refused or declined evaluation sits, and its catalog id. */
198
+ readonly reason: string | undefined;
199
+ readonly refusedAt: RefusalSite | undefined;
200
+ readonly refusedRow: number | undefined;
148
201
  readonly rowsRead: number;
149
202
  readonly unsupportedSettings: readonly Buffer[];
150
- /** One verdict per row, each read through the generated table. `error` and `decline` are never answers. */
203
+ /** One verdict per row, each read through the generated table. A verdict counts only when `outcome` is `ok`; otherwise treat every verdict as `decline`, whatever the verdict string holds. Under `ok`, `error` and `decline` are never answers. */
151
204
  readonly verdicts: readonly Verdict[];
152
205
  readonly errors: readonly FilterRowError[];
153
206
  }
@@ -157,9 +210,49 @@ export interface Column {
157
210
  readonly type: Buffer;
158
211
  readonly defaultKind: DefaultKind;
159
212
  readonly defaultExpr: Buffer;
213
+ /** What this build does with the column's DEFAULT, from `default_support` (reserved: `undefined` when the build reports none). */
214
+ readonly defaultSupport: DefaultSupport | undefined;
215
+ /** The catalog id behind a `declined` `defaultSupport`, from `default_support_reason`; `undefined` when absent. */
216
+ readonly defaultSupportReason: string | undefined;
217
+ /** The columns the column's expression reads, from `reads` (name objects; reserved: `undefined` when the build reports none). */
218
+ readonly reads: readonly Buffer[] | undefined;
219
+ }
220
+ /** One setting the schema compiles under that this build's filters do not honor in a WHERE: an entry of the schema description's `filter_declined_settings` (ABI v2). */
221
+ export interface DeclinedSetting {
222
+ /** The setting's name, as bytes (`name` or `name_b64`). */
223
+ readonly name: Buffer;
224
+ /** The tier this build line's WHERE-settings list gives it; one the description does not list is its unknown(n), kept verbatim (rule r3). */
225
+ readonly tier: DeclinedTier;
226
+ /** The settings layer it comes from, the highest one that sets the name; one the description does not list is its unknown(n), kept verbatim (rule r3). */
227
+ readonly layer: DeclinedLayer;
228
+ }
229
+ /**
230
+ * The server a schema was compiled on, as the library holds it. Its strings are
231
+ * the caller's own profile values given back, so they are plain text.
232
+ */
233
+ export interface SchemaServer {
234
+ /** The zone the schema's types bind: the profile's, else the image zone. */
235
+ readonly timezone: string;
236
+ /** The server's settings as the profile gave them; `{}` when it gave none. A value the document carries as `{"b64": ...}` (bytes that are not UTF-8) is a `Buffer` of those bytes; any other is its text. */
237
+ readonly settings: Readonly<Record<string, string | Buffer>> | undefined;
238
+ /** The server's macro set: `undefined` exactly when the profile carried no macros (unknown); present, even `{}`, is the complete set. */
239
+ readonly macros: Readonly<Record<string, string>> | undefined;
240
+ }
241
+ /** What ClickHouse's own TableZnodeInfo resolved for a Replicated engine, fully expanded. Both expand DDL bytes, so both are bytes. */
242
+ export interface SchemaReplicated {
243
+ readonly zookeeperPath: Buffer;
244
+ readonly replicaName: Buffer;
160
245
  }
161
246
  export interface SchemaDescription {
162
247
  readonly columns: readonly Column[];
248
+ /** How the schema's statement was compiled, from `posture`, which the document carries only for `load`: `undefined` is `create`. */
249
+ readonly posture: Posture | undefined;
250
+ /** The settings the schema compiles under that this build's filters do not honor in a WHERE, over every layer known at schema compile (the defaults `setup` set, the server profile and the schema's own settings); empty when it lists none. One entry per name, at the highest layer that sets it, ordered by layer and then by name bytes, as the library wrote it. A schema that lists any is one `compileFilter` declines (`UnsupportedError`), and a consumer that streams rows refuses such a tenant (`spec/abi-v2/where-settings/README.md`). */
251
+ readonly filterDeclinedSettings: readonly DeclinedSetting[];
252
+ /** The server the schema was compiled on: `undefined` exactly when it was compiled without one. */
253
+ readonly server: SchemaServer | undefined;
254
+ /** A Replicated engine's resolved ZooKeeper path and replica name: `undefined` when the document carries none. */
255
+ readonly replicated: SchemaReplicated | undefined;
163
256
  }
164
257
  export interface DiscoveredColumn {
165
258
  readonly name: Buffer;
@@ -1 +1 @@
1
- {"version":3,"file":"documents.d.ts","sourceRoot":"","sources":["../src/documents.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"documents.d.ts","sourceRoot":"","sources":["../src/documents.ts"],"names":[],"mappings":"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"}