@wavehouse/chtypes 0.2.2 → 0.3.0
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 +47 -0
- package/dist/discover.d.ts +12 -4
- package/dist/discover.d.ts.map +1 -1
- package/dist/discover.js +13 -16
- package/dist/discover.js.map +1 -1
- package/dist/errors.d.ts +10 -5
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +10 -5
- package/dist/errors.js.map +1 -1
- package/dist/ffi.d.ts +39 -3
- package/dist/ffi.d.ts.map +1 -1
- package/dist/ffi.js +132 -7
- package/dist/ffi.js.map +1 -1
- package/dist/format.d.ts +27 -8
- package/dist/format.d.ts.map +1 -1
- package/dist/format.js +27 -8
- package/dist/format.js.map +1 -1
- package/dist/index.d.ts +3 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/library.d.ts +61 -0
- package/dist/library.d.ts.map +1 -1
- package/dist/library.js +74 -0
- package/dist/library.js.map +1 -1
- package/dist/registry.d.ts +109 -30
- package/dist/registry.d.ts.map +1 -1
- package/dist/registry.js +175 -67
- package/dist/registry.js.map +1 -1
- package/dist/results.d.ts +79 -1
- package/dist/results.d.ts.map +1 -1
- package/dist/results.js +94 -18
- package/dist/results.js.map +1 -1
- package/dist/schema.d.ts +99 -12
- package/dist/schema.d.ts.map +1 -1
- package/dist/schema.js +45 -9
- package/dist/schema.js.map +1 -1
- package/dist/transform.d.ts.map +1 -1
- package/dist/transform.js +6 -0
- package/dist/transform.js.map +1 -1
- package/package.json +1 -1
package/dist/registry.js
CHANGED
|
@@ -20,11 +20,10 @@
|
|
|
20
20
|
*
|
|
21
21
|
* Where a registry IS follows the search path of docs/guides/fetch.md §1 (`paths.ts`):
|
|
22
22
|
* the explicit directory, `CHTYPES_REGISTRY`, the per-user cache, then the
|
|
23
|
-
* reserved system locations.
|
|
24
|
-
*
|
|
25
|
-
*
|
|
26
|
-
*
|
|
27
|
-
* `open()`.
|
|
23
|
+
* reserved system locations. Construction READS THE MANIFESTS on that path and
|
|
24
|
+
* `dlopen`s nothing; a line is taken, on request, from the first directory that
|
|
25
|
+
* has it. A line no directory has is the one §7 error,
|
|
26
|
+
* `ArtifactMissingError` — or, with `autofetch`, a fetch on first `open()`.
|
|
28
27
|
*/
|
|
29
28
|
import { createHash } from 'node:crypto';
|
|
30
29
|
import { existsSync, readdirSync, readFileSync, statSync } from 'node:fs';
|
|
@@ -36,13 +35,20 @@ import { Library, minorOf } from './library.js';
|
|
|
36
35
|
import { cacheRegistryDir, ENV_AUTOFETCH, ENV_REGISTRY, fetchDestination, hostPlatform, registrySearchPath, systemRegistryDirs, } from './paths.js';
|
|
37
36
|
/**
|
|
38
37
|
* The artifact-directory loader — the multi-version entry point of this
|
|
39
|
-
* package.
|
|
40
|
-
*
|
|
41
|
-
*
|
|
42
|
-
*
|
|
43
|
-
*
|
|
44
|
-
* `
|
|
45
|
-
*
|
|
38
|
+
* package.
|
|
39
|
+
*
|
|
40
|
+
* **Construction reads `manifest.json` files and `dlopen`s nothing**, with or
|
|
41
|
+
* without a directory. Nothing in this package opens an artifact except a
|
|
42
|
+
* request for a specific version (`for()` / `open()`) or an explicit
|
|
43
|
+
* `preload` — not `versions()`, not `libraries()`, not `has()`. An open costs
|
|
44
|
+
* about 120 MB resident per version, which a listing call must not spend on a
|
|
45
|
+
* caller's behalf.
|
|
46
|
+
*
|
|
47
|
+
* An open dlopens the artifact into its own symbol scope (`RTLD_LOCAL`),
|
|
48
|
+
* verifies its ABI revision against this binding's `ABI_REVISION` (a different
|
|
49
|
+
* nonzero revision is refused; 0 means the artifact predates the probe and
|
|
50
|
+
* degrades per symbol), and runs that library's one-time `chs_init` with the
|
|
51
|
+
* registry's timezone and the artifact's own `unsafe_families.txt`.
|
|
46
52
|
*
|
|
47
53
|
* Libraries are never dlclosed; `close()` joins background threads only.
|
|
48
54
|
* Loading the same artifact path from two `Registry` instances shares one
|
|
@@ -50,9 +56,9 @@ import { cacheRegistryDir, ENV_AUTOFETCH, ENV_REGISTRY, fetchDestination, hostPl
|
|
|
50
56
|
*/
|
|
51
57
|
export class Registry {
|
|
52
58
|
/**
|
|
53
|
-
* The primary registry directory: the first on the search path that
|
|
54
|
-
* artifacts
|
|
55
|
-
*
|
|
59
|
+
* The primary registry directory: the first on the search path that holds
|
|
60
|
+
* artifacts — or, with `autofetch` and nothing installed anywhere, the
|
|
61
|
+
* directory the first fetch will create.
|
|
56
62
|
*/
|
|
57
63
|
dir;
|
|
58
64
|
/** The §1 search path, in order, every candidate whether or not it exists. */
|
|
@@ -62,27 +68,39 @@ export class Registry {
|
|
|
62
68
|
byId = new Map();
|
|
63
69
|
byPath = new Map();
|
|
64
70
|
loaded = [];
|
|
71
|
+
/**
|
|
72
|
+
* Minor line -> the FIRST directory on the search path that holds it, as the
|
|
73
|
+
* construction-time manifest scan found it. What `versions()` answers from,
|
|
74
|
+
* and what makes "no artifact anywhere" and a bad `preload` entry decidable
|
|
75
|
+
* at construction without a single `dlopen`.
|
|
76
|
+
*/
|
|
77
|
+
known = new Map();
|
|
65
78
|
timezone;
|
|
66
79
|
verifyChecksums;
|
|
67
80
|
autofetch;
|
|
68
81
|
fetchOptions;
|
|
69
82
|
explicit;
|
|
70
83
|
/**
|
|
71
|
-
* Scan
|
|
84
|
+
* Scan a registry. Reads manifests; opens nothing unless `preload` names a
|
|
85
|
+
* line.
|
|
72
86
|
*
|
|
73
87
|
* @param dir - the registry root; the head of the search path. Absent, the
|
|
74
88
|
* path is `CHTYPES_REGISTRY`, the per-user artifact cache, then the system
|
|
75
89
|
* locations (see `registrySearchPath` / `defaultRegistryDir`).
|
|
76
|
-
* @param options - timezone, checksum verification, autofetch — see
|
|
77
|
-
*
|
|
78
|
-
*
|
|
79
|
-
* directory
|
|
80
|
-
*
|
|
81
|
-
*
|
|
82
|
-
*
|
|
90
|
+
* @param options - timezone, checksum verification, autofetch, preload — see
|
|
91
|
+
* `RegistryOptions`.
|
|
92
|
+
* @throws {RegistryError} for what manifests can decide, and only that: a
|
|
93
|
+
* directory named explicitly (the argument or `CHTYPES_REGISTRY`) that does
|
|
94
|
+
* not exist, and no directory on the search path holding a readable
|
|
95
|
+
* `<minor>/manifest.json` — both suppressed when autofetch is on. A
|
|
96
|
+
* `preload` entry no directory holds is `ArtifactMissingError`. Everything
|
|
97
|
+
* a bad artifact can be wrong about — a failed checksum, a load failure, a
|
|
98
|
+
* library whose ClickHouse version disagrees with its manifest — is
|
|
99
|
+
* reported by the call that opens it, which is `preload`'s open at
|
|
100
|
+
* construction or the first `for()` otherwise.
|
|
83
101
|
* @throws {ChtypesError} when an artifact reports a different nonzero ABI
|
|
84
102
|
* revision than this binding speaks, or `chs_init` fails (e.g. an unknown
|
|
85
|
-
* timezone — the message names it).
|
|
103
|
+
* timezone — the message names it); again, from the call that opens it.
|
|
86
104
|
*/
|
|
87
105
|
constructor(dir, options = {}) {
|
|
88
106
|
this.platform = hostPlatform();
|
|
@@ -102,6 +120,41 @@ export class Registry {
|
|
|
102
120
|
throw new RegistryError(`chtypes: cannot read registry ${d}: not a directory`);
|
|
103
121
|
}
|
|
104
122
|
}
|
|
123
|
+
// The scan: every directory on the path, in order, first one holding a line
|
|
124
|
+
// wins. Manifests only — this is the cheap half of what construction used
|
|
125
|
+
// to do, and it is all that is left of it.
|
|
126
|
+
for (const root of this.searchPath) {
|
|
127
|
+
if (!isDirectory(root))
|
|
128
|
+
continue;
|
|
129
|
+
let entries;
|
|
130
|
+
try {
|
|
131
|
+
entries = readdirSync(root);
|
|
132
|
+
}
|
|
133
|
+
catch {
|
|
134
|
+
continue; // unreadable: not a registry, and not this call's business
|
|
135
|
+
}
|
|
136
|
+
for (const entry of entries.sort()) {
|
|
137
|
+
// A dot-directory is never a version: fetch stages its downloads and
|
|
138
|
+
// unpacks in hidden siblings, and a .DS_Store is not a version either.
|
|
139
|
+
if (entry.startsWith('.'))
|
|
140
|
+
continue;
|
|
141
|
+
const sub = path.join(root, entry);
|
|
142
|
+
if (!isDirectory(sub))
|
|
143
|
+
continue;
|
|
144
|
+
// A registry may legitimately hold scratch directories: a missing or
|
|
145
|
+
// unparseable manifest is skipped in silence.
|
|
146
|
+
const manifest = readManifest(sub);
|
|
147
|
+
if (manifest === null)
|
|
148
|
+
continue;
|
|
149
|
+
// The manifest's own claim; the directory name is only the last
|
|
150
|
+
// resort, exactly as it is when the library is finally loaded and
|
|
151
|
+
// names itself.
|
|
152
|
+
const claimed = manifest.clickhouse_minor ?? minorOf(manifest.clickhouse_version ?? '');
|
|
153
|
+
const line = claimed !== '' ? claimed : entry;
|
|
154
|
+
if (!this.known.has(line))
|
|
155
|
+
this.known.set(line, sub);
|
|
156
|
+
}
|
|
157
|
+
}
|
|
105
158
|
const primary = this.searchPath.find((d) => looksLikeRegistry(d));
|
|
106
159
|
if (primary === undefined) {
|
|
107
160
|
if (!this.autofetch) {
|
|
@@ -110,33 +163,26 @@ export class Registry {
|
|
|
110
163
|
'or set CHTYPES_AUTOFETCH=1 to fetch on first use.');
|
|
111
164
|
}
|
|
112
165
|
this.dir = fetchDestination(this.explicit, this.platform);
|
|
113
|
-
return;
|
|
114
166
|
}
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
try {
|
|
118
|
-
entries = readdirSync(this.dir);
|
|
167
|
+
else {
|
|
168
|
+
this.dir = primary;
|
|
119
169
|
}
|
|
120
|
-
|
|
121
|
-
|
|
170
|
+
// The one eager path, and the only thing here that opens anything.
|
|
171
|
+
for (const version of options.preload ?? []) {
|
|
172
|
+
this.preloadLine(version);
|
|
122
173
|
}
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
// unparseable manifest is skipped in silence.
|
|
133
|
-
const manifest = readManifest(sub);
|
|
134
|
-
if (manifest === null)
|
|
135
|
-
continue;
|
|
136
|
-
this.load(sub, manifest);
|
|
174
|
+
}
|
|
175
|
+
/**
|
|
176
|
+
* Open one `preload` entry, before the constructor returns, without
|
|
177
|
+
* fetching. Resolution is `for()`'s, and so is the failure: a line no
|
|
178
|
+
* directory holds is the same `ArtifactMissingError`, raised earlier.
|
|
179
|
+
*/
|
|
180
|
+
preloadLine(version) {
|
|
181
|
+
if (version === '') {
|
|
182
|
+
throw new RegistryError("chtypes: preload: an empty version does not mean 'pick one'");
|
|
137
183
|
}
|
|
138
|
-
if (this.
|
|
139
|
-
throw new
|
|
184
|
+
if (this.resolve(version) === undefined) {
|
|
185
|
+
throw new ArtifactMissingError(minorOf(version), this.platform, this.searchPath);
|
|
140
186
|
}
|
|
141
187
|
}
|
|
142
188
|
/** dlopen one artifact directory, cross-check it, `chs_init` it, index it. */
|
|
@@ -145,6 +191,11 @@ export class Registry {
|
|
|
145
191
|
if (already !== undefined)
|
|
146
192
|
return already;
|
|
147
193
|
const libPath = path.join(sub, manifest.library);
|
|
194
|
+
// Unconditional, unlike the hash below: nearly free (one stat, never a
|
|
195
|
+
// re-hash of the library's contents), and it catches the commonest shape
|
|
196
|
+
// of a broken artifact directory — a truncated or partially-written
|
|
197
|
+
// library file (issue #82).
|
|
198
|
+
checkLibraryBytes(libPath, manifest);
|
|
148
199
|
if (this.verifyChecksums)
|
|
149
200
|
verifyChecksum(libPath, manifest);
|
|
150
201
|
// A directory that has a manifest and does not load is broken, not absent.
|
|
@@ -193,11 +244,63 @@ export class Registry {
|
|
|
193
244
|
lookup(version) {
|
|
194
245
|
return this.byId.get(version) ?? this.byId.get(minorOf(version));
|
|
195
246
|
}
|
|
196
|
-
/**
|
|
247
|
+
/**
|
|
248
|
+
* Resolve without fetching: what is already open, then the line's directory
|
|
249
|
+
* as the construction-time scan recorded it, then a fresh walk of the search
|
|
250
|
+
* path for a line installed since. `undefined` means no directory holds it,
|
|
251
|
+
* which is a fetch's cue on `open()` and the §7 error everywhere else —
|
|
252
|
+
* `preload` never fetches, and this is the one function that makes the
|
|
253
|
+
* preload path and the first-use path identical in everything else.
|
|
254
|
+
*/
|
|
255
|
+
resolve(version) {
|
|
256
|
+
const hit = this.lookup(version);
|
|
257
|
+
if (hit !== undefined)
|
|
258
|
+
return hit;
|
|
259
|
+
const minor = minorOf(version);
|
|
260
|
+
// The scan already resolved every line it could see to the FIRST directory
|
|
261
|
+
// holding it, and it knows which line a manifest claims even when the
|
|
262
|
+
// directory is not named after it — which the <dir>/<minor> walk below
|
|
263
|
+
// cannot see.
|
|
264
|
+
const scanned = this.known.get(minor);
|
|
265
|
+
if (scanned !== undefined) {
|
|
266
|
+
const manifest = readManifest(scanned);
|
|
267
|
+
if (manifest !== null) {
|
|
268
|
+
this.load(scanned, manifest);
|
|
269
|
+
const found = this.lookup(version);
|
|
270
|
+
if (found !== undefined)
|
|
271
|
+
return found;
|
|
272
|
+
}
|
|
273
|
+
}
|
|
274
|
+
for (const dir of this.searchPath) {
|
|
275
|
+
if (this.loadLine(dir, minor) !== null) {
|
|
276
|
+
const found = this.lookup(version);
|
|
277
|
+
if (found !== undefined)
|
|
278
|
+
return found;
|
|
279
|
+
}
|
|
280
|
+
}
|
|
281
|
+
return undefined;
|
|
282
|
+
}
|
|
283
|
+
/**
|
|
284
|
+
* Every ClickHouse minor line this registry CAN ANSWER FOR, oldest first —
|
|
285
|
+
* the ones it has opened plus the ones its construction-time manifest scan
|
|
286
|
+
* discovered on the search path.
|
|
287
|
+
*
|
|
288
|
+
* That is one meaning in all four bindings, and it is the meaning that
|
|
289
|
+
* survives lazy loading: "the lines that happen to be open" would read as an
|
|
290
|
+
* empty registry until the first `for()`. It opens nothing.
|
|
291
|
+
*/
|
|
197
292
|
versions() {
|
|
198
|
-
|
|
293
|
+
const lines = new Set(this.loaded.map((l) => l.minor));
|
|
294
|
+
for (const line of this.known.keys())
|
|
295
|
+
lines.add(line);
|
|
296
|
+
return [...lines].sort(compareMinor);
|
|
199
297
|
}
|
|
200
|
-
/**
|
|
298
|
+
/**
|
|
299
|
+
* The libraries this registry has OPENED, in release order (oldest minor
|
|
300
|
+
* line first) — what is open right now, never what could be. A discovered
|
|
301
|
+
* line that no `for()` and no `preload` has opened appears in `versions()`
|
|
302
|
+
* and not here. It opens nothing.
|
|
303
|
+
*/
|
|
201
304
|
libraries() {
|
|
202
305
|
return this.loaded;
|
|
203
306
|
}
|
|
@@ -206,10 +309,11 @@ export class Registry {
|
|
|
206
309
|
* ("25.8.28.1-lts") both work, and an unknown patch inside a loaded minor line
|
|
207
310
|
* resolves to that line — asking for "25.8.30.16" finds the loaded 25.8.
|
|
208
311
|
*
|
|
209
|
-
*
|
|
210
|
-
* directory on the search path that holds it
|
|
211
|
-
*
|
|
212
|
-
* synchronous; `open()` is the one that
|
|
312
|
+
* **This is what opens an artifact.** Construction does not: the line is
|
|
313
|
+
* taken from the first directory on the search path that holds it
|
|
314
|
+
* (docs/guides/fetch.md §1), `dlopen`ed once, and joins `libraries()` from
|
|
315
|
+
* then on. Never a fetch: this call is synchronous; `open()` is the one that
|
|
316
|
+
* may fetch.
|
|
213
317
|
*
|
|
214
318
|
* Failure is the one §7 error, never a fallback to the nearest version:
|
|
215
319
|
* answering 26.7 semantics from a 25.8 artifact is a lie, and silent
|
|
@@ -224,18 +328,10 @@ export class Registry {
|
|
|
224
328
|
* @throws {RegistryError} when a directory holds the line but it does not load.
|
|
225
329
|
*/
|
|
226
330
|
for(version) {
|
|
227
|
-
const hit = this.
|
|
331
|
+
const hit = this.resolve(version);
|
|
228
332
|
if (hit !== undefined)
|
|
229
333
|
return hit;
|
|
230
|
-
|
|
231
|
-
for (const dir of this.searchPath) {
|
|
232
|
-
if (this.loadLine(dir, minor) !== null) {
|
|
233
|
-
const found = this.lookup(version);
|
|
234
|
-
if (found !== undefined)
|
|
235
|
-
return found;
|
|
236
|
-
}
|
|
237
|
-
}
|
|
238
|
-
throw new ArtifactMissingError(minor, this.platform, this.searchPath);
|
|
334
|
+
throw new ArtifactMissingError(minorOf(version), this.platform, this.searchPath);
|
|
239
335
|
}
|
|
240
336
|
/**
|
|
241
337
|
* `for()`, with the lazy fetch of docs/guides/fetch.md §6 in front of it: a line no
|
|
@@ -392,15 +488,27 @@ function readUnsafeFamilies(dir, manifest) {
|
|
|
392
488
|
return (manifest.unsafe_families ?? '').trim();
|
|
393
489
|
}
|
|
394
490
|
}
|
|
491
|
+
/**
|
|
492
|
+
* Compare `libPath`'s on-disk size to `manifest.library_bytes` — the load-path
|
|
493
|
+
* check `load()` runs on EVERY open, whether or not `verifyChecksums` is on
|
|
494
|
+
* (issue #82). A manifest with no `library_bytes` (`undefined`, the shape a
|
|
495
|
+
* manifest predating the field parses to) is not asked, so this is a no-op
|
|
496
|
+
* for one.
|
|
497
|
+
*/
|
|
498
|
+
function checkLibraryBytes(libPath, manifest) {
|
|
499
|
+
if (manifest.library_bytes === undefined)
|
|
500
|
+
return;
|
|
501
|
+
const actual = statSync(libPath).size;
|
|
502
|
+
if (actual !== manifest.library_bytes) {
|
|
503
|
+
throw new RegistryError(`chtypes: ${libPath} is ${actual} bytes, manifest says ${manifest.library_bytes}`);
|
|
504
|
+
}
|
|
505
|
+
}
|
|
395
506
|
function verifyChecksum(libPath, manifest) {
|
|
396
507
|
const expected = manifest.library_sha256;
|
|
397
508
|
if (expected === undefined || expected === '') {
|
|
398
509
|
throw new RegistryError(`chtypes: ${libPath} cannot be verified: its manifest carries no library_sha256`);
|
|
399
510
|
}
|
|
400
511
|
const bytes = readFileSync(libPath);
|
|
401
|
-
if (manifest.library_bytes !== undefined && bytes.byteLength !== manifest.library_bytes) {
|
|
402
|
-
throw new RegistryError(`chtypes: ${libPath} is ${bytes.byteLength} bytes, manifest says ${manifest.library_bytes}`);
|
|
403
|
-
}
|
|
404
512
|
const actual = createHash('sha256').update(bytes).digest('hex');
|
|
405
513
|
// Case-insensitive: a hex digest is the same digest in either case, and Go
|
|
406
514
|
// and Rust already lower-case before comparing. Comparing raw here made an
|
package/dist/registry.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"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"}
|
package/dist/results.d.ts
CHANGED
|
@@ -72,10 +72,58 @@ export interface Value {
|
|
|
72
72
|
/**
|
|
73
73
|
* Where the value came from: `input` | `default` | `default_substituted` |
|
|
74
74
|
* `absent` | `skipped` | `default_volatile_unresolved` | `default_pending` |
|
|
75
|
-
* `default_expr_unsupported`
|
|
75
|
+
* `default_expr_unsupported` | `ephemeral_input` | `materialized_input`
|
|
76
|
+
* (revision 5 — see {@link Source}) (the C ABI contract §`src` values).
|
|
77
|
+
* `ephemeral_input` is excluded from `RowResult.values`/`values`, like
|
|
78
|
+
* `skipped`; never seen here. `materialized_input` stays in `values`.
|
|
76
79
|
*/
|
|
77
80
|
readonly source: string;
|
|
78
81
|
}
|
|
82
|
+
/**
|
|
83
|
+
* The two revision-5 `source` provenances `columns_json` introduces (issue
|
|
84
|
+
* #53), plus the pre-existing `Skipped` provenance named alongside them
|
|
85
|
+
* (issue #90). A plain const object, not a closed union: `source` is a
|
|
86
|
+
* growing vocabulary arriving from the C layer, and an unrecognized spelling
|
|
87
|
+
* from a newer artifact must pass through unchanged, not be rejected.
|
|
88
|
+
*/
|
|
89
|
+
export declare const Source: {
|
|
90
|
+
/**
|
|
91
|
+
* MATERIALIZED / ALIAS / EPHEMERAL, never read from an input row.
|
|
92
|
+
* Predates revision 5 — unlike the two provenances below — but
|
|
93
|
+
* `rowResultOf` has excluded it from `values` from the start, the same
|
|
94
|
+
* exclusion `EphemeralInput` was modeled on. Named here, in the same
|
|
95
|
+
* idiom, so the exclusion can be keyed on a symbol rather than a bare
|
|
96
|
+
* string literal.
|
|
97
|
+
*/
|
|
98
|
+
readonly Skipped: 'skipped';
|
|
99
|
+
/**
|
|
100
|
+
* A listed EPHEMERAL column's read value. The server reads it — it is in
|
|
101
|
+
* scope for the DEFAULT expressions that reference it — and it is never
|
|
102
|
+
* stored and never exported. `rowResultOf` excludes it from `values`
|
|
103
|
+
* exactly as it already excludes `Source.Skipped`: a value that is never
|
|
104
|
+
* stored must not sit where a caller reads the stored row (a hash, a
|
|
105
|
+
* signature).
|
|
106
|
+
*/
|
|
107
|
+
readonly EphemeralInput: 'ephemeral_input';
|
|
108
|
+
/**
|
|
109
|
+
* A listed MATERIALIZED column's supplied value under
|
|
110
|
+
* `insert_allow_materialized_columns=1`. The supplied value REPLACES the
|
|
111
|
+
* column's expression and IS stored — unlike `EphemeralInput`, it stays
|
|
112
|
+
* IN `values`.
|
|
113
|
+
*/
|
|
114
|
+
readonly MaterializedInput: 'materialized_input';
|
|
115
|
+
/**
|
|
116
|
+
* A VOLATILE DEFAULT (`now()`/`now64(n)`/`today()`/`yesterday()`, or an
|
|
117
|
+
* expression over one) this library resolved locally rather than
|
|
118
|
+
* ClickHouse — the caller MUST send it as an explicit column on any later
|
|
119
|
+
* INSERT, or the value silently drifts each attempt. `rowResultOf` has
|
|
120
|
+
* always populated `substituted` for exactly this src value; like
|
|
121
|
+
* `Skipped` before issue #90, it had no named constant of its own (issue
|
|
122
|
+
* #122).
|
|
123
|
+
*/
|
|
124
|
+
readonly DefaultSubstituted: 'default_substituted';
|
|
125
|
+
};
|
|
126
|
+
export type Source = (typeof Source)[keyof typeof Source];
|
|
79
127
|
/** A silent change: input 256 into UInt8 stored as 0. */
|
|
80
128
|
export interface Transform {
|
|
81
129
|
readonly column: string;
|
|
@@ -146,6 +194,25 @@ export interface RowResult {
|
|
|
146
194
|
readonly substituted: Substitution[];
|
|
147
195
|
/** MATERIALIZED values — durable, but not part of `SELECT *`. */
|
|
148
196
|
readonly computed: Computed[];
|
|
197
|
+
/**
|
|
198
|
+
* `Schema#rows(..., { rowFilter })` only: this row's filter verdict,
|
|
199
|
+
* beside `outcome` above — the two are independent facts, and neither
|
|
200
|
+
* replaces the other (docs/guides/filters.md "Exporting only the rows a
|
|
201
|
+
* filter admits"). `undefined` when no filter was attached to the call
|
|
202
|
+
* that produced this row (every plain `row()`/`rows()` call, and `rows()`
|
|
203
|
+
* with no `rowFilter`). A security-enforcing caller MUST fail closed —
|
|
204
|
+
* hide the row / fail the request — on a verdict that is `undefined` or
|
|
205
|
+
* not `isAnswer()`.
|
|
206
|
+
*/
|
|
207
|
+
readonly verdict: Verdict | undefined;
|
|
208
|
+
/**
|
|
209
|
+
* Set beside `'e'` (the predicate threw, ClickHouse's own code/message),
|
|
210
|
+
* beside an eval-time `'d'` (the admission envelope), and for a row whose
|
|
211
|
+
* own `outcome` is not `'accepted'` (its own parse error, reported as
|
|
212
|
+
* `'d'`). 0/`''` otherwise.
|
|
213
|
+
*/
|
|
214
|
+
readonly verdictCode: number;
|
|
215
|
+
readonly verdictErr: string;
|
|
149
216
|
}
|
|
150
217
|
/**
|
|
151
218
|
* The verdict on a whole request body, which may hold many rows. Returned by
|
|
@@ -222,6 +289,16 @@ export interface BatchResult {
|
|
|
222
289
|
* server verdict.
|
|
223
290
|
*/
|
|
224
291
|
readonly exportDeclined: string | undefined;
|
|
292
|
+
/**
|
|
293
|
+
* `rows(..., { rowFilter })` only: accepted rows whose verdict is `'t'`,
|
|
294
|
+
* and accepted rows with any other verdict, respectively. `rowsPassed +
|
|
295
|
+
* rowsCut` equals the accepted-row count. Both `0` when no filter was
|
|
296
|
+
* attached — indistinguishable from "filter attached, nothing passed and
|
|
297
|
+
* nothing accepted", so key presence on whether `rowFilter` was passed,
|
|
298
|
+
* never on these being nonzero.
|
|
299
|
+
*/
|
|
300
|
+
readonly rowsPassed: number;
|
|
301
|
+
readonly rowsCut: number;
|
|
225
302
|
}
|
|
226
303
|
/** One row's byte range inside an export `payload` — see `BatchResult#spans`. */
|
|
227
304
|
export interface Span {
|
|
@@ -259,6 +336,7 @@ export interface ColumnDoc {
|
|
|
259
336
|
/** True when `stored` is a genuine JSON null. */
|
|
260
337
|
readonly storedIsNull: boolean;
|
|
261
338
|
}
|
|
339
|
+
export declare function columnDocOf(raw: Json): ColumnDoc;
|
|
262
340
|
/** Turn one row document into a `RowResult`. */
|
|
263
341
|
export declare function rowResultOf(doc: Json): RowResult;
|
|
264
342
|
/**
|
package/dist/results.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"results.d.ts","sourceRoot":"","sources":["../src/results.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,EAWL,KAAK,IAAI,EACV,MAAM,WAAW,CAAC;AAGnB;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,eAAO,MAAM,OAAO;aAClB,QAAQ,EAAE,UAAU;aACpB,QAAQ,EAAE,UAAU;aACpB,gBAAgB,EAAE,mBAAmB;aACrC,WAAW,EAAE,aAAa;aAC1B,OAAO,EAAE,SAAS;CACV,CAAC;AACX,MAAM,MAAM,OAAO,GAAG,CAAC,OAAO,OAAO,CAAC,CAAC,MAAM,OAAO,OAAO,CAAC,CAAC;AAI7D;;;;;;;;GAQG;AACH,MAAM,WAAW,KAAK;IACpB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,kFAAkF;IAClF,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,2DAA2D;IAC3D,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,kFAAkF;IAClF,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB
|
|
1
|
+
{"version":3,"file":"results.d.ts","sourceRoot":"","sources":["../src/results.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,EAWL,KAAK,IAAI,EACV,MAAM,WAAW,CAAC;AAGnB;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,eAAO,MAAM,OAAO;aAClB,QAAQ,EAAE,UAAU;aACpB,QAAQ,EAAE,UAAU;aACpB,gBAAgB,EAAE,mBAAmB;aACrC,WAAW,EAAE,aAAa;aAC1B,OAAO,EAAE,SAAS;CACV,CAAC;AACX,MAAM,MAAM,OAAO,GAAG,CAAC,OAAO,OAAO,CAAC,CAAC,MAAM,OAAO,OAAO,CAAC,CAAC;AAI7D;;;;;;;;GAQG;AACH,MAAM,WAAW,KAAK;IACpB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,kFAAkF;IAClF,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,2DAA2D;IAC3D,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,kFAAkF;IAClF,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB;;;;;;;OAOG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED;;;;;;GAMG;AACH,eAAO,MAAM,MAAM;IACjB;;;;;;;OAOG;aACH,OAAO,EAAE,SAAS;IAClB;;;;;;;OAOG;aACH,cAAc,EAAE,iBAAiB;IACjC;;;;;OAKG;aACH,iBAAiB,EAAE,oBAAoB;IACvC;;;;;;;;OAQG;aACH,kBAAkB,EAAE,qBAAqB;CACjC,CAAC;AACX,MAAM,MAAM,MAAM,GAAG,CAAC,OAAO,MAAM,CAAC,CAAC,MAAM,OAAO,MAAM,CAAC,CAAC;AAE1D,yDAAyD;AACzD,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,8EAA8E;IAC9E,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,iFAAiF;IACjF,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,uDAAuD;IACvD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,wDAAwD;IACxD,GAAG,EAAE,MAAM,CAAC;IACZ,gFAAgF;IAChF,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;CACzB;AAED,sEAAsE;AACtE,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,gEAAgE;IAChE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,gFAAgF;IAChF,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,uEAAuE;IACvE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED,4EAA4E;AAC5E,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,sCAAsC;IACtC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED;;;;;GAKG;AACH,MAAM,WAAW,SAAS;IACxB,uEAAuE;IACvE,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC;IACzB,6DAA6D;IAC7D,QAAQ,CAAC,WAAW,EAAE,SAAS,EAAE,CAAC;IAClC,+EAA+E;IAC/E,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B;;;;;;OAMG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,gDAAgD;IAChD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,4CAA4C;IAC5C,QAAQ,CAAC,aAAa,EAAE,MAAM,EAAE,CAAC;IACjC,kEAAkE;IAClE,QAAQ,CAAC,mBAAmB,EAAE,MAAM,EAAE,CAAC;IACvC;;;;;OAKG;IACH,QAAQ,CAAC,WAAW,EAAE,YAAY,EAAE,CAAC;IACrC,iEAAiE;IACjE,QAAQ,CAAC,QAAQ,EAAE,QAAQ,EAAE,CAAC;IAC9B;;;;;;;;;OASG;IACH,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,SAAS,CAAC;IACtC;;;;;OAKG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;GAKG;AACH,MAAM,WAAW,WAAW;IAC1B;;;;;;OAMG;IACH,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC;IAC3B,sEAAsE;IACtE,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,0EAA0E;IAC1E,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,gDAAgD;IAChD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,sDAAsD;IACtD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,qEAAqE;IACrE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B;;;;;OAKG;IACH,QAAQ,CAAC,WAAW,EAAE,SAAS,EAAE,CAAC;IAClC;;;;;OAKG;IACH,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IACrC,yEAAyE;IACzE,QAAQ,CAAC,eAAe,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAE1C;;;;;;;;;;;;;;;OAeG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC;;;;;;;OAOG;IACH,QAAQ,CAAC,KAAK,EAAE,SAAS,IAAI,EAAE,GAAG,SAAS,CAAC;IAC5C;;;;;;OAMG;IACH,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5C;;;;;;;OAOG;IACH,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,iFAAiF;AACjF,MAAM,WAAW,IAAI;IACnB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACtB;AAED,gEAAgE;AAChE,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,uEAAuE;IACvE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,yEAAyE;IACzE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,iFAAiF;IACjF,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,6EAA6E;IAC7E,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,iDAAiD;IACjD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B;;;;OAIG;IACH,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC;IAClC,iDAAiD;IACjD,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;CAChC;AA8BD,wBAAgB,WAAW,CAAC,GAAG,EAAE,IAAI,GAAG,SAAS,CA+BhD;AAED,gDAAgD;AAChD,wBAAgB,WAAW,CAAC,GAAG,EAAE,IAAI,GAAG,SAAS,CAgEhD;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,GAAE,MAAM,GAAG,IAAW,GAAG,WAAW,CA+DnF;AAID;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,eAAO,MAAM,OAAO;aAClB,IAAI,EAAE,GAAG;aACT,KAAK,EAAE,GAAG;aACV,KAAK,EAAE,GAAG;aACV,OAAO,EAAE,GAAG;CACJ,CAAC;AACX,MAAM,MAAM,OAAO,GAAG,CAAC,OAAO,OAAO,CAAC,CAAC,MAAM,OAAO,OAAO,CAAC,CAAC;AAE7D;iFACiF;AACjF,wBAAgB,QAAQ,CAAC,CAAC,EAAE,OAAO,GAAG,OAAO,CAE5C;AA0BD;;;;;GAKG;AACH,eAAO,MAAM,aAAa;aACxB,EAAE,EAAE,IAAI;aACR,QAAQ,EAAE,UAAU;aACpB,WAAW,EAAE,aAAa;CAClB,CAAC;AACX,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,OAAO,aAAa,CAAC,CAAC;AAE/E;;;;;;GAMG;AACH,eAAO,MAAM,WAAW;aACtB,IAAI,EAAE,EAAE;aACR,OAAO,EAAE,SAAS;aAClB,YAAY,EAAE,cAAc;aAC5B,KAAK,EAAE,OAAO;aACd,SAAS,EAAE,WAAW;CACd,CAAC;AACX,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,OAAO,WAAW,CAAC,CAAC;AAEzE;;wBAEwB;AACxB,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACtB;AAED,gCAAgC;AAChC,MAAM,WAAW,YAAY;IAC3B;iEAC6D;IAC7D,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC;IAChC;kFAC8E;IAC9E,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,yCAAyC;IACzC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,kEAAkE;IAClE,QAAQ,CAAC,mBAAmB,EAAE,MAAM,EAAE,CAAC;IACvC;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,EAAE,OAAO,EAAE,CAAC;IAC7B,2CAA2C;IAC3C,QAAQ,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC;CACnC;AAED,sDAAsD;AACtD,wBAAgB,cAAc,CAAC,GAAG,EAAE,IAAI,GAAG,YAAY,CAyBtD"}
|