@wavehouse/chtypes 2.0.0-dev.0 → 2.0.0-dev.10

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 (135) hide show
  1. package/CHANGELOG.md +85 -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 +6 -1
  7. package/dist/abi2/calls.gen.d.ts.map +1 -1
  8. package/dist/abi2/calls.gen.js +8 -3
  9. package/dist/abi2/calls.gen.js.map +1 -1
  10. package/dist/abi2/decls.gen.d.ts +3 -1
  11. package/dist/abi2/decls.gen.d.ts.map +1 -1
  12. package/dist/abi2/decls.gen.js +104 -3
  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 +16 -38
  16. package/dist/abi2/errors.d.ts.map +1 -1
  17. package/dist/abi2/errors.js +16 -42
  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.js +2 -2
  28. package/dist/abi2/loader.js.map +1 -1
  29. package/dist/abi2/vocab.gen.d.ts +41 -0
  30. package/dist/abi2/vocab.gen.d.ts.map +1 -1
  31. package/dist/abi2/vocab.gen.js +65 -1
  32. package/dist/abi2/vocab.gen.js.map +1 -1
  33. package/dist/cli.d.ts +11 -5
  34. package/dist/cli.d.ts.map +1 -1
  35. package/dist/cli.js +130 -20
  36. package/dist/cli.js.map +1 -1
  37. package/dist/documents.d.ts +63 -3
  38. package/dist/documents.d.ts.map +1 -1
  39. package/dist/documents.js +79 -4
  40. package/dist/documents.js.map +1 -1
  41. package/dist/env.d.ts +8 -1
  42. package/dist/env.d.ts.map +1 -1
  43. package/dist/env.js +17 -8
  44. package/dist/env.js.map +1 -1
  45. package/dist/index.d.ts +9 -7
  46. package/dist/index.d.ts.map +1 -1
  47. package/dist/index.js +7 -5
  48. package/dist/index.js.map +1 -1
  49. package/dist/library.d.ts +13 -2
  50. package/dist/library.d.ts.map +1 -1
  51. package/dist/library.js +23 -3
  52. package/dist/library.js.map +1 -1
  53. package/dist/ocifetch/channel.d.ts +84 -0
  54. package/dist/ocifetch/channel.d.ts.map +1 -1
  55. package/dist/ocifetch/channel.js +157 -2
  56. package/dist/ocifetch/channel.js.map +1 -1
  57. package/dist/ocifetch/constants.gen.d.ts +28 -0
  58. package/dist/ocifetch/constants.gen.d.ts.map +1 -1
  59. package/dist/ocifetch/constants.gen.js +30 -1
  60. package/dist/ocifetch/constants.gen.js.map +1 -1
  61. package/dist/ocifetch/dsse.d.ts +5 -1
  62. package/dist/ocifetch/dsse.d.ts.map +1 -1
  63. package/dist/ocifetch/dsse.js +10 -3
  64. package/dist/ocifetch/dsse.js.map +1 -1
  65. package/dist/ocifetch/ensure.d.ts +68 -8
  66. package/dist/ocifetch/ensure.d.ts.map +1 -1
  67. package/dist/ocifetch/ensure.js +305 -66
  68. package/dist/ocifetch/ensure.js.map +1 -1
  69. package/dist/ocifetch/errors.d.ts +101 -25
  70. package/dist/ocifetch/errors.d.ts.map +1 -1
  71. package/dist/ocifetch/errors.js +74 -36
  72. package/dist/ocifetch/errors.js.map +1 -1
  73. package/dist/ocifetch/hold.d.ts +66 -0
  74. package/dist/ocifetch/hold.d.ts.map +1 -0
  75. package/dist/ocifetch/hold.js +150 -0
  76. package/dist/ocifetch/hold.js.map +1 -0
  77. package/dist/ocifetch/http.d.ts +10 -2
  78. package/dist/ocifetch/http.d.ts.map +1 -1
  79. package/dist/ocifetch/http.js +31 -12
  80. package/dist/ocifetch/http.js.map +1 -1
  81. package/dist/ocifetch/index.d.ts +10 -5
  82. package/dist/ocifetch/index.d.ts.map +1 -1
  83. package/dist/ocifetch/index.js +8 -3
  84. package/dist/ocifetch/index.js.map +1 -1
  85. package/dist/ocifetch/localverify.d.ts +3 -1
  86. package/dist/ocifetch/localverify.d.ts.map +1 -1
  87. package/dist/ocifetch/localverify.js +6 -1
  88. package/dist/ocifetch/localverify.js.map +1 -1
  89. package/dist/ocifetch/lock.d.ts +2 -1
  90. package/dist/ocifetch/lock.d.ts.map +1 -1
  91. package/dist/ocifetch/lock.js +7 -5
  92. package/dist/ocifetch/lock.js.map +1 -1
  93. package/dist/ocifetch/oci.d.ts +45 -3
  94. package/dist/ocifetch/oci.d.ts.map +1 -1
  95. package/dist/ocifetch/oci.js +125 -58
  96. package/dist/ocifetch/oci.js.map +1 -1
  97. package/dist/ocifetch/prune.d.ts +48 -0
  98. package/dist/ocifetch/prune.d.ts.map +1 -0
  99. package/dist/ocifetch/prune.js +383 -0
  100. package/dist/ocifetch/prune.js.map +1 -0
  101. package/dist/ocifetch/referrers.d.ts +24 -0
  102. package/dist/ocifetch/referrers.d.ts.map +1 -1
  103. package/dist/ocifetch/referrers.js +92 -5
  104. package/dist/ocifetch/referrers.js.map +1 -1
  105. package/dist/ocifetch/resolve.d.ts +37 -0
  106. package/dist/ocifetch/resolve.d.ts.map +1 -0
  107. package/dist/ocifetch/resolve.js +90 -0
  108. package/dist/ocifetch/resolve.js.map +1 -0
  109. package/dist/ocifetch/retired.d.ts +61 -0
  110. package/dist/ocifetch/retired.d.ts.map +1 -0
  111. package/dist/ocifetch/retired.js +236 -0
  112. package/dist/ocifetch/retired.js.map +1 -0
  113. package/dist/ocifetch/revocation.d.ts +151 -0
  114. package/dist/ocifetch/revocation.d.ts.map +1 -0
  115. package/dist/ocifetch/revocation.js +481 -0
  116. package/dist/ocifetch/revocation.js.map +1 -0
  117. package/dist/ocifetch/types.d.ts +18 -2
  118. package/dist/ocifetch/types.d.ts.map +1 -1
  119. package/dist/ocifetch/types.js.map +1 -1
  120. package/dist/registry.d.ts +80 -3
  121. package/dist/registry.d.ts.map +1 -1
  122. package/dist/registry.js +168 -9
  123. package/dist/registry.js.map +1 -1
  124. package/dist/schema.d.ts +10 -0
  125. package/dist/schema.d.ts.map +1 -1
  126. package/dist/schema.js.map +1 -1
  127. package/dist/server.d.ts +27 -0
  128. package/dist/server.d.ts.map +1 -0
  129. package/dist/server.js +35 -0
  130. package/dist/server.js.map +1 -0
  131. package/dist/settings.d.ts +21 -0
  132. package/dist/settings.d.ts.map +1 -1
  133. package/dist/settings.js +35 -0
  134. package/dist/settings.js.map +1 -1
  135. package/package.json +1 -1
package/dist/documents.js CHANGED
@@ -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 { batchOutcomeOf, defaultKindOf, filterOutcomeOf, outcomeOf, reasonLossy, reasonOf, sourceIsStored, sourceOf, verdictOf, } from './abi2/index.js';
34
+ import { batchOutcomeOf, declinedLayerOf, declinedTierOf, defaultKindOf, filterOutcomeOf, mergeReasonOf, outcomeOf, reasonLossy, reasonOf, sourceIsStored, sourceOf, verdictOf, } from './abi2/index.js';
35
35
  import { internalError, parseStrictJson } from './abi2/index.js';
36
36
  /** This build's own error-code table: lookups are map reads over the library's own entries. An unknown code or name is absent, never synthesized; names match exactly. */
37
37
  export class ErrorCodeTable {
@@ -187,6 +187,26 @@ function engineCellOf(doc, v) {
187
187
  bad(doc, 'engine_rows[][].null', 'a boolean', nullFlag);
188
188
  return { column: nameOf(doc, o, 'name'), text: bytesOr(doc, o, 'stored'), null: nullFlag, value: bytesField(doc, o, 'value') };
189
189
  }
190
+ /** One entry of `at_merge`. An unlisted reason is its unknown(n): kept, never a failure (r3). */
191
+ function atMergeOf(doc, v) {
192
+ const o = asObject(doc, 'at_merge[]', v);
193
+ const reason = mergeReasonOf(strOr(doc, o, 'reason', ''));
194
+ const rowsRaw = o.input_rows;
195
+ return {
196
+ row: intOr(doc, o, 'row', 0),
197
+ reason,
198
+ column: bytesField(doc, o, 'column'),
199
+ stored: bytesField(doc, o, 'stored'),
200
+ inputRows: rowsRaw === undefined || rowsRaw === null
201
+ ? undefined
202
+ : asArray(doc, 'at_merge[].input_rows', rowsRaw).map((n) => {
203
+ const i = intOf(doc, 'at_merge[].input_rows[]', n);
204
+ if (i < 0)
205
+ bad(doc, 'at_merge[].input_rows[]', 'a non-negative integer', n);
206
+ return i;
207
+ }),
208
+ };
209
+ }
190
210
  function spanOf(doc, key, v) {
191
211
  const o = asObject(doc, key, v);
192
212
  return { off: intOf(doc, `${key}.off`, o.off), len: intOf(doc, `${key}.len`, o.len) };
@@ -288,6 +308,11 @@ export function decodeBatch(bytes, payload) {
288
308
  const outcome = batchOutcomeOf(strOr(doc, o, 'outcome', ''));
289
309
  const spansRaw = o.row_spans;
290
310
  const engineRaw = o.engine_rows;
311
+ const exportDeclined = bytesOr(doc, o, 'export_declined');
312
+ // A declined export has no payload and no spans, whatever buffer the call returned: the library
313
+ // returns a NULL out_export for it (builds up to 20261011.105019 returned a zero-length buffer), and
314
+ // the document's export_declined decides, never the buffer.
315
+ const declined = exportDeclined.length > 0;
291
316
  return {
292
317
  outcome,
293
318
  errCode: intOr(doc, o, 'code', 0),
@@ -296,17 +321,19 @@ export function decodeBatch(bytes, payload) {
296
321
  rowsRead: intOr(doc, o, 'rows_read', 0),
297
322
  rowsSkipped: intOr(doc, o, 'rows_skipped', 0),
298
323
  transformed: listOf(doc, o, 'transformed').map((t) => transformOf(doc, t)),
324
+ unsupportedSettings: bytesListOf(doc, o, 'unsupported_settings'),
299
325
  engineRows: engineRaw === undefined
300
326
  ? undefined
301
327
  : asArray(doc, 'engine_rows', engineRaw).map((row) => asArray(doc, 'engine_rows[]', row).map((c) => engineCellOf(doc, c))),
302
- payload,
303
- spans: spansRaw === undefined ? undefined : asArray(doc, 'row_spans', spansRaw).map((s) => spanOf(doc, 'row_spans[]', s)),
304
- exportDeclined: bytesOr(doc, o, 'export_declined'),
328
+ payload: declined ? undefined : payload,
329
+ spans: spansRaw === undefined || declined ? undefined : asArray(doc, 'row_spans', spansRaw).map((s) => spanOf(doc, 'row_spans[]', s)),
330
+ exportDeclined,
305
331
  rowsPassed: intOr(doc, o, 'rows_passed', 0),
306
332
  rowsCut: intOr(doc, o, 'rows_cut', 0),
307
333
  partitionCount: optInt(doc, o, 'partition_count'),
308
334
  unconsumed: listOf(doc, o, 'unconsumed').map((s) => spanOf(doc, 'unconsumed[]', s)),
309
335
  framing: o.framing === undefined ? undefined : framingOf(doc, o.framing),
336
+ atMerge: listOf(doc, o, 'at_merge').map((a) => atMergeOf(doc, a)),
310
337
  };
311
338
  }
312
339
  // ----------------------------------------------------------- the filter
@@ -337,7 +364,27 @@ export function decodeFilterResult(bytes) {
337
364
  export function decodeSchemaDescription(bytes) {
338
365
  const doc = 'schema_description';
339
366
  const o = asObject(doc, '$', parseDoc(doc, bytes));
367
+ const serverValue = o.server;
368
+ const replicatedValue = o.replicated;
369
+ let server;
370
+ if (serverValue !== undefined && serverValue !== null) {
371
+ const so = asObject(doc, '$.server', serverValue);
372
+ server = {
373
+ timezone: strOr(doc, so, 'timezone', ''),
374
+ settings: stringMapOf(doc, so, 'settings', '$.server'),
375
+ macros: stringMapOf(doc, so, 'macros', '$.server'),
376
+ };
377
+ }
378
+ let replicated;
379
+ if (replicatedValue !== undefined && replicatedValue !== null) {
380
+ const ro = asObject(doc, '$.replicated', replicatedValue);
381
+ replicated = { zookeeperPath: bytesOr(doc, ro, 'zookeeper_path'), replicaName: bytesOr(doc, ro, 'replica_name') };
382
+ }
340
383
  return {
384
+ server,
385
+ replicated,
386
+ // Over every layer known at schema compile, with or without a server.
387
+ filterDeclinedSettings: declinedSettingsOf(doc, o),
341
388
  columns: listOf(doc, o, 'columns').map((c) => {
342
389
  const co = asObject(doc, 'columns[]', c);
343
390
  // An unlisted default_kind is its unknown(n): kept, never a failure (r3).
@@ -346,6 +393,34 @@ export function decodeSchemaDescription(bytes) {
346
393
  }),
347
394
  };
348
395
  }
396
+ /** A schema description's `filter_declined_settings`: absent (or `null`) is empty, as in every binding. An unlisted tier or layer is its unknown(n): kept, never a failure (r3). */
397
+ function declinedSettingsOf(doc, o) {
398
+ const v = o.filter_declined_settings;
399
+ if (v === undefined || v === null)
400
+ return [];
401
+ return asArray(doc, '$.filter_declined_settings', v).map((e) => {
402
+ const eo = asObject(doc, '$.filter_declined_settings[]', e);
403
+ return {
404
+ name: nameOf(doc, eo, 'name'),
405
+ tier: declinedTierOf(strOr(doc, eo, 'tier', '')),
406
+ layer: declinedLayerOf(strOr(doc, eo, 'layer', '')),
407
+ };
408
+ });
409
+ }
410
+ /** An object whose values are plain JSON strings: `undefined` when absent, an object (even an empty one) when present, so absent and `{}` stay apart. */
411
+ function stringMapOf(doc, o, key, path) {
412
+ const v = o[key];
413
+ if (v === undefined || v === null)
414
+ return undefined;
415
+ const m = asObject(doc, `${path}.${key}`, v);
416
+ const out = {};
417
+ for (const [k, e] of Object.entries(m)) {
418
+ if (typeof e !== 'string')
419
+ bad(doc, `${path}.${key}.${k}`, 'a JSON string', e);
420
+ Object.defineProperty(out, k, { value: e, enumerable: true, writable: true, configurable: true });
421
+ }
422
+ return out;
423
+ }
349
424
  /** Decode a `discovery` document. */
350
425
  export function decodeDiscovery(bytes) {
351
426
  const doc = 'discovery';
@@ -1 +1 @@
1
- {"version":3,"file":"documents.js","sourceRoot":"","sources":["../src/documents.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"documents.js","sourceRoot":"","sources":["../src/documents.ts"],"names":[],"mappings":"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"}
package/dist/env.d.ts CHANGED
@@ -16,7 +16,14 @@
16
16
  * names each one it ignores, once and loudly. A test that selected the v1
17
17
  * contract reads them as v1 does.
18
18
  */
19
- import { type FetchV1Options } from './ocifetch/index.js';
19
+ import { type FetchV1Options, type TrustedKey } from './ocifetch/index.js';
20
+ /**
21
+ * Raw 32-byte ed25519 public keys, each as 64 hex characters (the
22
+ * `CHTYPES_TRUSTED_KEYS` spelling, and the `trustedKeys` option's, as in every
23
+ * binding), as trust-list records whose key id is derived (`sha256-first16hex`).
24
+ * A key that is not 64 hex characters is a `UsageError` naming `where`.
25
+ */
26
+ export declare function trustedKeysOfHex(keys: readonly string[], where: string): TrustedKey[];
20
27
  /** Fills each option the caller left unset from its environment variable. Pure over `process.env`, except the one retired-variable warning. */
21
28
  export declare function withEnvironment<T extends FetchV1Options>(options: T): T;
22
29
  //# sourceMappingURL=env.d.ts.map
package/dist/env.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAaH,OAAO,EAAiB,KAAK,cAAc,EAAiD,MAAM,qBAAqB,CAAC;AAUxH,+IAA+I;AAC/I,wBAAgB,eAAe,CAAC,CAAC,SAAS,cAAc,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,CAiCvE"}
1
+ {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAaH,OAAO,EAAiB,KAAK,cAAc,EAAgC,KAAK,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAUxH;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,UAAU,EAAE,CASrF;AAED,+IAA+I;AAC/I,wBAAgB,eAAe,CAAC,CAAC,SAAS,cAAc,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,CA6BvE"}
package/dist/env.js CHANGED
@@ -25,6 +25,22 @@ function flag(name) {
25
25
  const v = process.env[name];
26
26
  return v !== undefined && ['1', 'true', 'yes', 'on'].includes(v.trim().toLowerCase());
27
27
  }
28
+ /**
29
+ * Raw 32-byte ed25519 public keys, each as 64 hex characters (the
30
+ * `CHTYPES_TRUSTED_KEYS` spelling, and the `trustedKeys` option's, as in every
31
+ * binding), as trust-list records whose key id is derived (`sha256-first16hex`).
32
+ * A key that is not 64 hex characters is a `UsageError` naming `where`.
33
+ */
34
+ export function trustedKeysOfHex(keys, where) {
35
+ const list = [];
36
+ for (const k of keys) {
37
+ if (typeof k !== 'string' || !RAW_KEY.test(k)) {
38
+ throw usageError(`${where}: ${JSON.stringify(k)} is not a raw ed25519 public key (64 hex characters)`);
39
+ }
40
+ list.push({ keyid: keyIdOfRawKey(k), ed25519Hex: k.toLowerCase() });
41
+ }
42
+ return list;
43
+ }
28
44
  /** Fills each option the caller left unset from its environment variable. Pure over `process.env`, except the one retired-variable warning. */
29
45
  export function withEnvironment(options) {
30
46
  const out = { ...options };
@@ -44,14 +60,7 @@ export function withEnvironment(options) {
44
60
  out.allowUnsigned = true;
45
61
  const keys = process.env[ENV_TRUSTED_KEYS_NAME];
46
62
  if (overridable && out.trustedKeys === undefined && keys !== undefined && keys.trim() !== '') {
47
- const list = [];
48
- for (const k of keys.split(',').map((x) => x.trim()).filter((x) => x !== '')) {
49
- if (!RAW_KEY.test(k)) {
50
- throw usageError(`${ENV_TRUSTED_KEYS_NAME}: ${JSON.stringify(k)} is not a raw ed25519 public key (64 hex characters)`);
51
- }
52
- list.push({ keyid: keyIdOfRawKey(k), ed25519Hex: k.toLowerCase() });
53
- }
54
- out.trustedKeys = list;
63
+ out.trustedKeys = trustedKeysOfHex(keys.split(',').map((x) => x.trim()).filter((x) => x !== ''), ENV_TRUSTED_KEYS_NAME);
55
64
  }
56
65
  const target = process.env[ENV_TARGET_NAME];
57
66
  if (out.platform === undefined && target !== undefined && target !== '') {
package/dist/env.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"env.js","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"env.js","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -14,15 +14,17 @@
14
14
  * Nothing here reimplements a ClickHouse rule: every answer comes from
15
15
  * ClickHouse's own C++, vendored per release behind the C ABI, and every result
16
16
  * is a one-to-one decode of the document the library returned. `Registry.open`,
17
- * `for` and `installed` are asynchronous only because the fetch layer is.
17
+ * `for`, `installed` and `fetch` are asynchronous only because the fetch layer
18
+ * is; `fetch` installs a build and opens nothing.
18
19
  */
19
- export { type BuildInfo, type Capabilities, type BatchOutcome, batchOutcomeKnown, DefaultKind, defaultKindKnown, DiscoverQueryParam, discoverQueryParamKnown, DocFlags, EXPORT_NONE, FilterOutcome, filterOutcomeKnown, Format, formatChName, formatKnown, Outcome, outcomeKnown, Reason, reasonKnown, reasonLossy, Source, sourceIsStored, sourceKnown, Status, statusKnown, statusName, type Unknown, Verdict, verdictAnswered, verdictKnown, } from './abi2/index.js';
20
- export { ArtifactCorruptError, ArtifactError, ArtifactIncompatibleError, CallError, type CallErrorFields, ChtypesError, InternalError, isChtypesError, LoaderCorruptError, type LoaderErrorFields, SchemaError, UnsupportedError, UsageError, } from './abi2/index.js';
21
- export { type BatchResult, type Column, type Computed, type DiscoveredColumn, type EngineCell, type Discovery, type ErrorCodeEntry, ErrorCodeTable, type FilterResult, type FilterRowError, type Framing, type Header, type RowResult, type SchemaDescription, type Span, type Transform, type Value, } from './documents.js';
20
+ export { type BuildInfo, type Capabilities, DeclinedLayer, declinedLayerKnown, DeclinedTier, declinedTierKnown, DefaultKind, defaultKindKnown, DiscoverQueryParam, discoverQueryParamKnown, DocFlags, EXPORT_NONE, FilterOutcome, filterOutcomeKnown, Format, formatChName, formatKnown, MergeReason, mergeReasonKnown, Outcome, outcomeKnown, Reason, reasonKnown, reasonLossy, Source, sourceIsStored, sourceKnown, Status, statusKnown, statusName, type Unknown, Verdict, verdictAnswered, verdictKnown, } from './abi2/index.js';
21
+ export { ArtifactCorruptError, ArtifactError, ArtifactIncompatibleError, CallError, type CallErrorFields, ChtypesError, InternalError, SchemaError, UnsupportedError, UsageError, } from './abi2/index.js';
22
+ export { type AtMergeEntry, type BatchResult, type Column, type Computed, type DeclinedSetting, type DiscoveredColumn, type EngineCell, type Discovery, type ErrorCodeEntry, ErrorCodeTable, type FilterResult, type FilterRowError, type Framing, type Header, type RowResult, type SchemaDescription, type SchemaReplicated, type SchemaServer, type Span, type Transform, type Value, } from './documents.js';
22
23
  export { Library, openUnverified } from './library.js';
23
- export { ArtifactMissingError, ArtifactPinnedError, ArtifactUnpublishedError, ArtifactUntrustedError, type CacheFault, CacheUnusableError, type Resolved, SourceForbiddenError, SourceIncompatibleError, SourceUnauthorizedError, SourceUnreachableError, } from './ocifetch/index.js';
24
- export { type FetchOptions, Registry, type RegistryOptions } from './registry.js';
24
+ export { type Advisory, ArtifactMissingError, ArtifactPinnedError, ArtifactRevokedError, ArtifactUnpublishedError, ArtifactUntrustedError, type CacheFault, CacheUnusableError, CODE_ARTIFACT_CORRUPT, CODE_ARTIFACT_INCOMPATIBLE, CODE_ARTIFACT_MISSING, CODE_ARTIFACT_PINNED, CODE_ARTIFACT_REVOKED, CODE_ARTIFACT_UNPUBLISHED, CODE_ARTIFACT_UNTRUSTED, CODE_CACHE_UNUSABLE, CODE_SOURCE_FORBIDDEN, CODE_SOURCE_INCOMPATIBLE, CODE_SOURCE_RETIRED, CODE_SOURCE_UNAUTHORIZED, CODE_SOURCE_UNREACHABLE, type ErrorCode, type Resolved, type Revocation, SourceForbiddenError, SourceIncompatibleError, SourceRetiredError, SourceUnauthorizedError, SourceUnreachableError, } from './ocifetch/index.js';
25
+ export { cacheRoot, type FetchOptions, Registry, type RegistryOptions, searchDirs } from './registry.js';
25
26
  export { Block, type CompileOptions, type EvalOptions, Filter, type FilterOptions, type RowOptions, type RowsOptions, Schema, } from './schema.js';
26
- export type { BytesIn, Settings } from './settings.js';
27
+ export { Server } from './server.js';
28
+ export type { BytesIn, ServerProfile, Settings } from './settings.js';
27
29
  export { setup, type SetupOptions } from './setup.js';
28
30
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EACL,KAAK,SAAS,EACd,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,iBAAiB,EACjB,WAAW,EACX,gBAAgB,EAChB,kBAAkB,EAClB,uBAAuB,EACvB,QAAQ,EACR,WAAW,EACX,aAAa,EACb,kBAAkB,EAClB,MAAM,EACN,YAAY,EACZ,WAAW,EACX,OAAO,EACP,YAAY,EACZ,MAAM,EACN,WAAW,EACX,WAAW,EACX,MAAM,EACN,cAAc,EACd,WAAW,EACX,MAAM,EACN,WAAW,EACX,UAAU,EACV,KAAK,OAAO,EACZ,OAAO,EACP,eAAe,EACf,YAAY,GACb,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,oBAAoB,EACpB,aAAa,EACb,yBAAyB,EACzB,SAAS,EACT,KAAK,eAAe,EACpB,YAAY,EACZ,aAAa,EACb,cAAc,EACd,kBAAkB,EAClB,KAAK,iBAAiB,EACtB,WAAW,EACX,gBAAgB,EAChB,UAAU,GACX,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,MAAM,EACX,KAAK,QAAQ,EACb,KAAK,gBAAgB,EACrB,KAAK,UAAU,EACf,KAAK,SAAS,EACd,KAAK,cAAc,EACnB,cAAc,EACd,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,KAAK,OAAO,EACZ,KAAK,MAAM,EACX,KAAK,SAAS,EACd,KAAK,iBAAiB,EACtB,KAAK,IAAI,EACT,KAAK,SAAS,EACd,KAAK,KAAK,GACX,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,wBAAwB,EACxB,sBAAsB,EACtB,KAAK,UAAU,EACf,kBAAkB,EAClB,KAAK,QAAQ,EACb,oBAAoB,EACpB,uBAAuB,EACvB,uBAAuB,EACvB,sBAAsB,GACvB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,KAAK,YAAY,EAAE,QAAQ,EAAE,KAAK,eAAe,EAAE,MAAM,eAAe,CAAC;AAClF,OAAO,EACL,KAAK,EACL,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,MAAM,EACN,KAAK,aAAa,EAClB,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,MAAM,GACP,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,KAAK,EAAE,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EACL,KAAK,SAAS,EACd,KAAK,YAAY,EACjB,aAAa,EACb,kBAAkB,EAClB,YAAY,EACZ,iBAAiB,EACjB,WAAW,EACX,gBAAgB,EAChB,kBAAkB,EAClB,uBAAuB,EACvB,QAAQ,EACR,WAAW,EACX,aAAa,EACb,kBAAkB,EAClB,MAAM,EACN,YAAY,EACZ,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,OAAO,EACP,YAAY,EACZ,MAAM,EACN,WAAW,EACX,WAAW,EACX,MAAM,EACN,cAAc,EACd,WAAW,EACX,MAAM,EACN,WAAW,EACX,UAAU,EACV,KAAK,OAAO,EACZ,OAAO,EACP,eAAe,EACf,YAAY,GACb,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,oBAAoB,EACpB,aAAa,EACb,yBAAyB,EACzB,SAAS,EACT,KAAK,eAAe,EACpB,YAAY,EACZ,aAAa,EACb,WAAW,EACX,gBAAgB,EAChB,UAAU,GACX,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,MAAM,EACX,KAAK,QAAQ,EACb,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,UAAU,EACf,KAAK,SAAS,EACd,KAAK,cAAc,EACnB,cAAc,EACd,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,KAAK,OAAO,EACZ,KAAK,MAAM,EACX,KAAK,SAAS,EACd,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,KAAK,IAAI,EACT,KAAK,SAAS,EACd,KAAK,KAAK,GACX,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EACL,KAAK,QAAQ,EACb,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,EACpB,wBAAwB,EACxB,sBAAsB,EACtB,KAAK,UAAU,EACf,kBAAkB,EAClB,qBAAqB,EACrB,0BAA0B,EAC1B,qBAAqB,EACrB,oBAAoB,EACpB,qBAAqB,EACrB,yBAAyB,EACzB,uBAAuB,EACvB,mBAAmB,EACnB,qBAAqB,EACrB,wBAAwB,EACxB,mBAAmB,EACnB,wBAAwB,EACxB,uBAAuB,EACvB,KAAK,SAAS,EACd,KAAK,QAAQ,EACb,KAAK,UAAU,EACf,oBAAoB,EACpB,uBAAuB,EACvB,kBAAkB,EAClB,uBAAuB,EACvB,sBAAsB,GACvB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,KAAK,YAAY,EAAE,QAAQ,EAAE,KAAK,eAAe,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACzG,OAAO,EACL,KAAK,EACL,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,MAAM,EACN,KAAK,aAAa,EAClB,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,MAAM,GACP,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACtE,OAAO,EAAE,KAAK,EAAE,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC"}
package/dist/index.js CHANGED
@@ -14,14 +14,16 @@
14
14
  * Nothing here reimplements a ClickHouse rule: every answer comes from
15
15
  * ClickHouse's own C++, vendored per release behind the C ABI, and every result
16
16
  * is a one-to-one decode of the document the library returned. `Registry.open`,
17
- * `for` and `installed` are asynchronous only because the fetch layer is.
17
+ * `for`, `installed` and `fetch` are asynchronous only because the fetch layer
18
+ * is; `fetch` installs a build and opens nothing.
18
19
  */
19
- export { batchOutcomeKnown, DefaultKind, defaultKindKnown, DiscoverQueryParam, discoverQueryParamKnown, DocFlags, EXPORT_NONE, FilterOutcome, filterOutcomeKnown, Format, formatChName, formatKnown, Outcome, outcomeKnown, Reason, reasonKnown, reasonLossy, Source, sourceIsStored, sourceKnown, Status, statusKnown, statusName, Verdict, verdictAnswered, verdictKnown, } from './abi2/index.js';
20
- export { ArtifactCorruptError, ArtifactError, ArtifactIncompatibleError, CallError, ChtypesError, InternalError, isChtypesError, LoaderCorruptError, SchemaError, UnsupportedError, UsageError, } from './abi2/index.js';
20
+ export { DeclinedLayer, declinedLayerKnown, DeclinedTier, declinedTierKnown, DefaultKind, defaultKindKnown, DiscoverQueryParam, discoverQueryParamKnown, DocFlags, EXPORT_NONE, FilterOutcome, filterOutcomeKnown, Format, formatChName, formatKnown, MergeReason, mergeReasonKnown, Outcome, outcomeKnown, Reason, reasonKnown, reasonLossy, Source, sourceIsStored, sourceKnown, Status, statusKnown, statusName, Verdict, verdictAnswered, verdictKnown, } from './abi2/index.js';
21
+ export { ArtifactCorruptError, ArtifactError, ArtifactIncompatibleError, CallError, ChtypesError, InternalError, SchemaError, UnsupportedError, UsageError, } from './abi2/index.js';
21
22
  export { ErrorCodeTable, } from './documents.js';
22
23
  export { Library, openUnverified } from './library.js';
23
- export { ArtifactMissingError, ArtifactPinnedError, ArtifactUnpublishedError, ArtifactUntrustedError, CacheUnusableError, SourceForbiddenError, SourceIncompatibleError, SourceUnauthorizedError, SourceUnreachableError, } from './ocifetch/index.js';
24
- export { Registry } from './registry.js';
24
+ export { ArtifactMissingError, ArtifactPinnedError, ArtifactRevokedError, ArtifactUnpublishedError, ArtifactUntrustedError, CacheUnusableError, CODE_ARTIFACT_CORRUPT, CODE_ARTIFACT_INCOMPATIBLE, CODE_ARTIFACT_MISSING, CODE_ARTIFACT_PINNED, CODE_ARTIFACT_REVOKED, CODE_ARTIFACT_UNPUBLISHED, CODE_ARTIFACT_UNTRUSTED, CODE_CACHE_UNUSABLE, CODE_SOURCE_FORBIDDEN, CODE_SOURCE_INCOMPATIBLE, CODE_SOURCE_RETIRED, CODE_SOURCE_UNAUTHORIZED, CODE_SOURCE_UNREACHABLE, SourceForbiddenError, SourceIncompatibleError, SourceRetiredError, SourceUnauthorizedError, SourceUnreachableError, } from './ocifetch/index.js';
25
+ export { cacheRoot, Registry, searchDirs } from './registry.js';
25
26
  export { Block, Filter, Schema, } from './schema.js';
27
+ export { Server } from './server.js';
26
28
  export { setup } from './setup.js';
27
29
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAIL,iBAAiB,EACjB,WAAW,EACX,gBAAgB,EAChB,kBAAkB,EAClB,uBAAuB,EACvB,QAAQ,EACR,WAAW,EACX,aAAa,EACb,kBAAkB,EAClB,MAAM,EACN,YAAY,EACZ,WAAW,EACX,OAAO,EACP,YAAY,EACZ,MAAM,EACN,WAAW,EACX,WAAW,EACX,MAAM,EACN,cAAc,EACd,WAAW,EACX,MAAM,EACN,WAAW,EACX,UAAU,EAEV,OAAO,EACP,eAAe,EACf,YAAY,GACb,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,oBAAoB,EACpB,aAAa,EACb,yBAAyB,EACzB,SAAS,EAET,YAAY,EACZ,aAAa,EACb,cAAc,EACd,kBAAkB,EAElB,WAAW,EACX,gBAAgB,EAChB,UAAU,GACX,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAQL,cAAc,GAUf,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,wBAAwB,EACxB,sBAAsB,EAEtB,kBAAkB,EAElB,oBAAoB,EACpB,uBAAuB,EACvB,uBAAuB,EACvB,sBAAsB,GACvB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAqB,QAAQ,EAAwB,MAAM,eAAe,CAAC;AAClF,OAAO,EACL,KAAK,EAGL,MAAM,EAIN,MAAM,GACP,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,KAAK,EAAqB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAGL,aAAa,EACb,kBAAkB,EAClB,YAAY,EACZ,iBAAiB,EACjB,WAAW,EACX,gBAAgB,EAChB,kBAAkB,EAClB,uBAAuB,EACvB,QAAQ,EACR,WAAW,EACX,aAAa,EACb,kBAAkB,EAClB,MAAM,EACN,YAAY,EACZ,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,OAAO,EACP,YAAY,EACZ,MAAM,EACN,WAAW,EACX,WAAW,EACX,MAAM,EACN,cAAc,EACd,WAAW,EACX,MAAM,EACN,WAAW,EACX,UAAU,EAEV,OAAO,EACP,eAAe,EACf,YAAY,GACb,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,oBAAoB,EACpB,aAAa,EACb,yBAAyB,EACzB,SAAS,EAET,YAAY,EACZ,aAAa,EACb,WAAW,EACX,gBAAgB,EAChB,UAAU,GACX,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAUL,cAAc,GAYf,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAEL,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,EACpB,wBAAwB,EACxB,sBAAsB,EAEtB,kBAAkB,EAClB,qBAAqB,EACrB,0BAA0B,EAC1B,qBAAqB,EACrB,oBAAoB,EACpB,qBAAqB,EACrB,yBAAyB,EACzB,uBAAuB,EACvB,mBAAmB,EACnB,qBAAqB,EACrB,wBAAwB,EACxB,mBAAmB,EACnB,wBAAwB,EACxB,uBAAuB,EAIvB,oBAAoB,EACpB,uBAAuB,EACvB,kBAAkB,EAClB,uBAAuB,EACvB,sBAAsB,GACvB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAqB,QAAQ,EAAwB,UAAU,EAAE,MAAM,eAAe,CAAC;AACzG,OAAO,EACL,KAAK,EAGL,MAAM,EAIN,MAAM,GACP,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,EAAE,KAAK,EAAqB,MAAM,YAAY,CAAC"}
package/dist/library.d.ts CHANGED
@@ -9,7 +9,8 @@ import { type BuildInfo, type LoadedImage } from './abi2/index.js';
9
9
  import { type Discovery, type ErrorCodeTable } from './documents.js';
10
10
  import type { Resolved } from './ocifetch/index.js';
11
11
  import { Schema, type CompileOptions } from './schema.js';
12
- import { type BytesIn } from './settings.js';
12
+ import { Server } from './server.js';
13
+ import { type BytesIn, type ServerProfile } from './settings.js';
13
14
  export declare class Library {
14
15
  #private;
15
16
  /** The fetch record this library was opened by; undefined when opened unverified. */
@@ -40,7 +41,17 @@ export declare class Library {
40
41
  discoverColumns(rows: Uint8Array): Discovery;
41
42
  /** Live handle counts per kind in this image: a diagnostic. */
42
43
  liveHandles(): Readonly<Record<string, number>>;
43
- /** Compile exactly one `CREATE TABLE` statement. */
44
+ /**
45
+ * Describe one ClickHouse server from a profile (`chs_server_create`). The
46
+ * library validates the whole profile here, once: a zone DateLUT cannot load,
47
+ * or a setting the server's SET check refuses, is the library's own refusal (a
48
+ * `SchemaError` carrying ClickHouse's code); a malformed macro set is a
49
+ * `UsageError`; a build that will not describe the profile declines it (an
50
+ * `UnsupportedError`). The binding checks none of it first. No server option is
51
+ * defined yet, so the options document is empty.
52
+ */
53
+ newServer(profile: ServerProfile): Server;
54
+ /** Compile exactly one `CREATE TABLE` statement, on `options.server` or on the image's own server. */
44
55
  compileTable(createTable: BytesIn, options?: CompileOptions): Schema;
45
56
  }
46
57
  /** The one `Library` of an image: two registries, two spellings or a hardlink of one artifact share one image and one object. */
@@ -1 +1 @@
1
- {"version":3,"file":"library.d.ts","sourceRoot":"","sources":["../src/library.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,KAAK,SAAS,EAAsC,KAAK,WAAW,EAAoC,MAAM,iBAAiB,CAAC;AACzI,OAAO,EACL,KAAK,SAAS,EAId,KAAK,cAAc,EACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AAE1D,OAAO,EAAE,KAAK,OAAO,EAA2B,MAAM,eAAe,CAAC;AAEtE,qBAAa,OAAO;;IAKlB,qFAAqF;IACrF,QAAQ,CAAC,QAAQ,EAAE,QAAQ,GAAG,SAAS,CAAC;IAExC,+DAA+D;IAC/D,YAAY,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,GAAG,SAAS,EAI7D;IAED,oDAAoD;IACpD,IAAI,SAAS,IAAI,SAAS,CAEzB;IAED,kGAAkG;IAClG,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED,wEAAwE;IACxE,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,8BAA8B;IAC9B,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,oFAAoF;IACpF,YAAY,CAAC,QAAQ,EAAE,OAAO,GAAG,MAAM,CAEtC;IAED,mFAAmF;IACnF,eAAe,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,CAErC;IAED,2DAA2D;IAC3D,uBAAuB,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,CAE7C;IAED,6DAA6D;IAC7D,YAAY,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,CAElC;IAED,8GAA8G;IAC9G,UAAU,IAAI,cAAc,CAG3B;IAED,2IAA2I;IAC3I,aAAa,IAAI,MAAM,CAEtB;IAED,+FAA+F;IAC/F,eAAe,CAAC,IAAI,EAAE,UAAU,GAAG,SAAS,CAE3C;IAED,+DAA+D;IAC/D,WAAW,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAE9C;IAED,oDAAoD;IACpD,YAAY,CAAC,WAAW,EAAE,OAAO,EAAE,OAAO,GAAE,cAAmB,GAAG,MAAM,CAKvE;CACF;AAID,iIAAiI;AACjI,wBAAgB,SAAS,CAAC,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,GAAG,SAAS,GAAG,OAAO,CAOrF;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE;IAAE,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAc1F"}
1
+ {"version":3,"file":"library.d.ts","sourceRoot":"","sources":["../src/library.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,KAAK,SAAS,EAAsC,KAAK,WAAW,EAAoC,MAAM,iBAAiB,CAAC;AACzI,OAAO,EACL,KAAK,SAAS,EAId,KAAK,cAAc,EACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AAE1D,OAAO,EAAE,MAAM,EAAkB,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,KAAK,OAAO,EAAgD,KAAK,aAAa,EAAE,MAAM,eAAe,CAAC;AAE/G,qBAAa,OAAO;;IAKlB,qFAAqF;IACrF,QAAQ,CAAC,QAAQ,EAAE,QAAQ,GAAG,SAAS,CAAC;IAExC,+DAA+D;IAC/D,YAAY,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,GAAG,SAAS,EAI7D;IAED,oDAAoD;IACpD,IAAI,SAAS,IAAI,SAAS,CAEzB;IAED,kGAAkG;IAClG,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED,wEAAwE;IACxE,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,8BAA8B;IAC9B,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,oFAAoF;IACpF,YAAY,CAAC,QAAQ,EAAE,OAAO,GAAG,MAAM,CAEtC;IAED,mFAAmF;IACnF,eAAe,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,CAErC;IAED,2DAA2D;IAC3D,uBAAuB,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,CAE7C;IAED,6DAA6D;IAC7D,YAAY,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,CAElC;IAED,8GAA8G;IAC9G,UAAU,IAAI,cAAc,CAG3B;IAED,2IAA2I;IAC3I,aAAa,IAAI,MAAM,CAEtB;IAED,+FAA+F;IAC/F,eAAe,CAAC,IAAI,EAAE,UAAU,GAAG,SAAS,CAE3C;IAED,+DAA+D;IAC/D,WAAW,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAE9C;IAED;;;;;;;;OAQG;IACH,SAAS,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM,CAExC;IAED,sGAAsG;IACtG,YAAY,CAAC,WAAW,EAAE,OAAO,EAAE,OAAO,GAAE,cAAmB,GAAG,MAAM,CAYvE;CACF;AAID,iIAAiI;AACjI,wBAAgB,SAAS,CAAC,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,GAAG,SAAS,GAAG,OAAO,CAOrF;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE;IAAE,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAc1F"}
package/dist/library.js CHANGED
@@ -9,7 +9,8 @@ import { checkUnverifiedAllowed, openUnverified as loadUnverified } from './abi2
9
9
  import { decodeDiscovery, decodeErrorCodes, decodeLiveHandles, } from './documents.js';
10
10
  import { Schema } from './schema.js';
11
11
  import { commitSetup, latchSetup, settleFailedOpen, setupGeneration } from './setup.js';
12
- import { bytesIn, encodeSettings } from './settings.js';
12
+ import { Server, serverHandleOf } from './server.js';
13
+ import { bytesIn, encodeServerProfile, encodeSettings } from './settings.js';
13
14
  export class Library {
14
15
  #image;
15
16
  #calls;
@@ -71,9 +72,28 @@ export class Library {
71
72
  liveHandles() {
72
73
  return decodeLiveHandles(this.#calls.liveHandles());
73
74
  }
74
- /** Compile exactly one `CREATE TABLE` statement. */
75
+ /**
76
+ * Describe one ClickHouse server from a profile (`chs_server_create`). The
77
+ * library validates the whole profile here, once: a zone DateLUT cannot load,
78
+ * or a setting the server's SET check refuses, is the library's own refusal (a
79
+ * `SchemaError` carrying ClickHouse's code); a malformed macro set is a
80
+ * `UsageError`; a build that will not describe the profile declines it (an
81
+ * `UnsupportedError`). The binding checks none of it first. No server option is
82
+ * defined yet, so the options document is empty.
83
+ */
84
+ newServer(profile) {
85
+ return new Server(this.#calls.serverCreate(encodeServerProfile(profile), Buffer.alloc(0)));
86
+ }
87
+ /** Compile exactly one `CREATE TABLE` statement, on `options.server` or on the image's own server. */
75
88
  compileTable(createTable, options = {}) {
76
- return new Schema(this.#calls, this.#calls.schemaCreate(bytesIn(createTable), encodeSettings(options.settings, options.sessionTimezone)));
89
+ // The server, or NULL: with none, the schema is on the image's own server,
90
+ // exactly as before the server profile existed. A closed server is refused
91
+ // before the call by its handle's guard (its `ptr` raises a UsageError),
92
+ // because a freed handle would cross as NULL and the library would compile
93
+ // on the image's server instead of refusing. No schema option is defined
94
+ // yet: length 0, which the library reads as `{}`.
95
+ const server = options.server === undefined || options.server === null ? null : serverHandleOf(options.server);
96
+ return new Schema(this.#calls, this.#calls.schemaCreate(server, bytesIn(createTable), encodeSettings(options.settings, options.sessionTimezone), Buffer.alloc(0)));
77
97
  }
78
98
  }
79
99
  const libraries = new Map();
@@ -1 +1 @@
1
- {"version":3,"file":"library.js","sourceRoot":"","sources":["../src/library.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"library.js","sourceRoot":"","sources":["../src/library.ts"],"names":[],"mappings":"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"}
@@ -21,6 +21,19 @@
21
21
  * subroot `<cache>/v2-dev`, never as a whole layout;
22
22
  * - a signed predicate must say abi 2.
23
23
  *
24
+ * It also resolves one tag the v1 contract never asks for: a version request
25
+ * fetches `<tag>--fp-<its own fingerprint>` first, the newest dev build of the
26
+ * ABI this binding speaks, and falls back to `<tag>` only when no base has that
27
+ * alias (`docs/guides/fetch-v1.md` §3, "The dev channel's alias step"), so a
28
+ * dev build of a newer fingerprint never strands this one. Its cache lookups
29
+ * (`resolveInstalled`, and `ensure`'s offline answer and its monotonic rule)
30
+ * see only the records whose signed `abi_fingerprint` is its own: a build of
31
+ * another fingerprint in a shared cache is never returned and never kept over
32
+ * this one's own, and it is never removed or rewritten either. It is
33
+ * automatic, with no override; the trust checks are unchanged, and a listing
34
+ * never shows an alias. The fingerprint is the ABI layer's generated `ABI_FINGERPRINT`,
35
+ * never a hand-written copy.
36
+ *
24
37
  * The v1 contract itself stays in this module, unchanged, because the
25
38
  * fetch-v1 conformance cases (`tests/fixtures/fetch-v1`) are its
26
39
  * specification and the dev channel shares every other rule with it. Only a
@@ -41,6 +54,16 @@ export declare const DEV_CACHE_DIR = "v2-dev";
41
54
  export declare const DEV_RECORD_SCHEMA = 2;
42
55
  /** The abi a dev predicate must carry. */
43
56
  export declare const DEV_ABI_GENERATION = 2;
57
+ /** Joins a tag and a fingerprint into the dev channel's alias tag: `<tag>--fp-<64 lowercase hex>` (`docs/guides/fetch-v1.md` §3). */
58
+ export declare const ALIAS_SEPARATOR = "--fp-";
59
+ /**
60
+ * The environment twin of the `offline` option (public issue #528): `CHTYPES_OFFLINE=1` reads the cache only and
61
+ * makes no request. It names no source, so rule r6 holds. Not a generated constant: the generated set is the v1
62
+ * fetch contract's.
63
+ */
64
+ export declare const ENV_OFFLINE_NAME = "CHTYPES_OFFLINE";
65
+ /** Whether offline mode is on: the option is true OR `CHTYPES_OFFLINE=1`; neither turns the other off. Read per call, with the other environment variables. */
66
+ export declare function offlineMode(option: boolean | undefined): boolean;
44
67
  /** What every lock, frozen or update request gets from a 2.0.0-dev SDK, before any network call (rule r6). */
45
68
  export declare const PINNING_REFUSED: string;
46
69
  /** One fetch contract. */
@@ -64,11 +87,16 @@ export interface Channel {
64
87
  readonly overridable: boolean;
65
88
  /** Whether lock, frozen and update are honored. */
66
89
  readonly pinnable: boolean;
90
+ /** The fingerprint, 64 lowercase hex, this contract's SDK speaks: a version request resolves its alias tag before the tag itself, and the cache lookups see only records signed with it. `''` does neither (the v1 contract and every production channel). */
91
+ readonly ownFingerprint: string;
92
+ /** Whether build-level revocation is on (`docs/guides/fetch-v1.md`, "Build-level revocation"): generation 2, the dev channel and the production one. The v1 contract has none of it. */
93
+ readonly revocation: boolean;
67
94
  }
68
95
  /** The contract this process fetches under: the dev channel, unless a test selected another. */
69
96
  export declare function activeChannel(): Channel;
70
97
  /** The fetch contract this process speaks: `v2-dev` in every process but a test that selected another. */
71
98
  export declare function channelName(): string;
99
+ export declare function testOnly(what: string): void;
72
100
  /**
73
101
  * Makes this TEST process speak the v1 fetch contract (`docs/guides/fetch-v1.md`):
74
102
  * overrides, locks, schema-1 records and abi-1 predicates. The fetch-v1
@@ -77,6 +105,12 @@ export declare function channelName(): string;
77
105
  * restores the previous contract; throws outside a vitest worker.
78
106
  */
79
107
  export declare function useFetchV1ForTests(): () => void;
108
+ /**
109
+ * Makes this TEST process speak the production generation-2 channel: the v1
110
+ * contract with abi 2, schema-2 records and the `v2` subroot. Returns the
111
+ * restore function; throws outside a vitest worker.
112
+ */
113
+ export declare function useProdV2ForTests(): () => void;
80
114
  /**
81
115
  * Makes this TEST process's dev channel honor the base, trust and unsigned
82
116
  * overrides, so a test can reach a fixture registry signed with the test key;
@@ -85,6 +119,56 @@ export declare function useFetchV1ForTests(): () => void;
85
119
  * vitest worker.
86
120
  */
87
121
  export declare function allowOverridesForTests(): () => void;
122
+ /**
123
+ * Makes this TEST process's active contract speak `fingerprint` (64 lowercase
124
+ * hex) as the dev channel speaks its own: a version request resolves that
125
+ * fingerprint's alias tag first, and the cache lookups see only records signed
126
+ * with it. The fetch-v1 conformance cases that carry `request.own_fingerprint`
127
+ * run under it, against fixtures that name a fixture fingerprint. Everything
128
+ * else stays the active contract's. Returns the restore function; throws
129
+ * outside a vitest worker or on a fingerprint that is not 64 lowercase hex.
130
+ */
131
+ export declare function useOwnFingerprintForTests(fingerprint: string): () => void;
132
+ /**
133
+ * The alias a version request for `tag` resolves first under a contract with
134
+ * an own fingerprint, or `undefined` when it resolves `tag` alone: under the
135
+ * v1 contract and every production channel, and for a request that is not a
136
+ * version spelling (an arbitrary tag has no alias).
137
+ */
138
+ export declare function aliasTag(tag: string, channel?: Channel): string | undefined;
139
+ /**
140
+ * Whether a cache record (or a pre-seeded entry) whose SIGNED predicate is
141
+ * `predicate` may answer a request under the active contract: under one with
142
+ * an own fingerprint (the dev channel), only when the predicate's
143
+ * `abi_fingerprint` is that fingerprint; under every other, always. A record
144
+ * it cannot see is never returned and never kept by the monotonic rule, and
145
+ * nothing removes or rewrites it: another SDK of another fingerprint owns it.
146
+ */
147
+ export declare function visibleToChannel(predicate: {
148
+ readonly abi_fingerprint?: unknown;
149
+ }, channel?: Channel): boolean;
150
+ /**
151
+ * The dev channel's answer for an SDK whose fingerprint no published build
152
+ * carries yet (`docs/guides/fetch-v1.md` §3; public issue #578): when every
153
+ * base answered its own alias 404 (`aliasAbsent`) and the build the tag names
154
+ * is signed for another fingerprint (`predicate`, the SIGNED predicate, the
155
+ * field `visibleToChannel` keys on), it throws `ArtifactUnpublishedError`, the
156
+ * code a request no build answers gets, naming both fingerprints. Nothing is
157
+ * installed and an install of that build is never reported, because the
158
+ * lookup this SDK opens through would refuse it. It returns in every other
159
+ * case: the alias answered, the tag's build is this SDK's own, or the contract
160
+ * has no own fingerprint.
161
+ *
162
+ * The expired alias with a usable cache (public issue #581): `cachedOwnBuild`
163
+ * looks up, through the filter open uses, the cache's verified record of this
164
+ * SDK's OWN fingerprint for the request, and resolves to its build id (`''`
165
+ * for a record that names none) or `undefined` for no record. When there is
166
+ * one the message grows by `cachedOwnSuffix`; the code does not change.
167
+ */
168
+ export declare function aheadOfRegistry(aliasAbsent: boolean, predicate: {
169
+ readonly abi_fingerprint?: unknown;
170
+ readonly build?: unknown;
171
+ }, cachedOwnBuild?: () => Promise<string | undefined>, channel?: Channel): Promise<void>;
88
172
  /** Makes this TEST process speak the dev channel exactly as every other process does (undoing either function above). Returns the restore function. */
89
173
  export declare function useDevChannelForTests(): () => void;
90
174
  /** Prints, once per process per setting, that a dev SDK ignores it (rule r6: "a dev SDK says so, once and loudly"). */
@@ -1 +1 @@
1
- {"version":3,"file":"channel.d.ts","sourceRoot":"","sources":["../../src/ocifetch/channel.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAYH,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7D,4DAA4D;AAC5D,eAAO,MAAM,gBAAgB,0DAA0D,CAAC;AACxF,qEAAqE;AACrE,eAAO,MAAM,UAAU,qBAAqB,CAAC;AAC7C,kHAAkH;AAClH,eAAO,MAAM,WAAW,qEAAqE,CAAC;AAC9F,yHAAyH;AACzH,eAAO,MAAM,aAAa,WAAW,CAAC;AACtC,8FAA8F;AAC9F,eAAO,MAAM,iBAAiB,IAAI,CAAC;AACnC,0CAA0C;AAC1C,eAAO,MAAM,kBAAkB,IAAI,CAAC;AAEpC,8GAA8G;AAC9G,eAAO,MAAM,eAAe,QAEyE,CAAC;AAEtG,0BAA0B;AAC1B,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,2EAA2E;IAC3E,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,iEAAiE;IACjE,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,4EAA4E;IAC5E,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,4EAA4E;IAC5E,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,uEAAuE;IACvE,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,yBAAyB;IACzB,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,8BAA8B;IAC9B,QAAQ,CAAC,IAAI,EAAE,SAAS,UAAU,EAAE,CAAC;IACrC,kEAAkE;IAClE,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B,mDAAmD;IACnD,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;CAC5B;AAgCD,gGAAgG;AAChG,wBAAgB,aAAa,IAAI,OAAO,CAEvC;AAED,0GAA0G;AAC1G,wBAAgB,WAAW,IAAI,MAAM,CAEpC;AAqBD;;;;;;GAMG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,IAAI,CAG/C;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,IAAI,MAAM,IAAI,CAGnD;AAED,uJAAuJ;AACvJ,wBAAgB,qBAAqB,IAAI,MAAM,IAAI,CAGlD;AASD,uHAAuH;AACvH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAOjD;AAED,gDAAgD;AAChD,wBAAgB,qBAAqB,IAAI,SAAS,MAAM,EAAE,CAEzD;AAED,0IAA0I;AAC1I,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,MAAM,IAAI,CAW/E;AAOD;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,CAQlE;AAED,iFAAiF;AACjF,wBAAgB,aAAa,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAE9D;AAID,qDAAqD;AACrD,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,cAAc,GAAG,SAAS,MAAM,EAAE,CAQ3E;AAED,8JAA8J;AAC9J,qBAAa,mBAAoB,SAAQ,KAAK;IAC5C,QAAQ,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;IAEtC,YAAY,SAAS,EAAE,SAAS,MAAM,EAAE,EAIvC;CACF;AAED,2JAA2J;AAC3J,wBAAgB,aAAa,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,CAI3D"}
1
+ {"version":3,"file":"channel.d.ts","sourceRoot":"","sources":["../../src/ocifetch/channel.ts"],"names":[],"mappings":"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"}