@typed-sql/cli 2.0.0-rc.1 → 2.1.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,85 @@
1
1
  # @typed-sql/cli
2
2
 
3
+ ## 2.1.0-rc.1
4
+
5
+ ### Patch Changes
6
+
7
+ - Publish the coherent 2.1.0-rc.1 release-candidate train.
8
+
9
+ ## 2.1.0-rc.0
10
+
11
+ ### Minor Changes
12
+
13
+ - 65b662f: Add structured opt-in debug events and confirmed support-bundle generation with privacy-safe default redaction.
14
+ - 4a12de5: Reject unsupported TypeScript compiler and preview patches before project work begins. Add
15
+ `typed-sql doctor` with human and JSON reports for Node.js, TypeScript, grammar, schema, redacted
16
+ server evidence, language-server/bridge metadata, and editor protocol compatibility.
17
+ - 1c64475: Add deterministic versioned dialect capability states backed by normalized server versions,
18
+ settings, extensions, and compile options. Query manifests now invalidate on capability changes and
19
+ record evidence for capabilities each query uses, while the CLI exposes a human-readable capability
20
+ report. The boolean capability map remains available as an additive migration bridge.
21
+
22
+ ### Patch Changes
23
+
24
+ - Updated dependencies [58bd4d1]
25
+ - Updated dependencies [58aa9ef]
26
+ - Updated dependencies [f902a97]
27
+ - Updated dependencies [65b662f]
28
+ - Updated dependencies [e433feb]
29
+ - Updated dependencies [0efc90c]
30
+ - Updated dependencies [ff0e3bb]
31
+ - Updated dependencies [6f5b977]
32
+ - Updated dependencies [1c64475]
33
+ - Updated dependencies [1c64475]
34
+ - Updated dependencies [1c64475]
35
+ - Updated dependencies [5d5d849]
36
+ - Updated dependencies [4a12de5]
37
+ - Updated dependencies [1c64475]
38
+ - @typed-sql/core@2.1.0-rc.0
39
+ - @typed-sql/compiler@2.1.0-rc.0
40
+ - @typed-sql/config@2.1.0-rc.0
41
+ - @typed-sql/schema@2.1.0-rc.0
42
+
43
+ ## 2.0.0
44
+
45
+ ### Major Changes
46
+
47
+ - 3f063f6: Add deterministic, secret-free query manifests with bounded structural variants, inferred result
48
+ and parameter descriptions, semantic evidence, runtime-correlatable fingerprints, unresolved
49
+ entries, compatible parsing, canonical serialization, incremental per-file reuse, tsconfig project
50
+ discovery, and a dedicated CLI command.
51
+ - 6a7ae58: Add opt-in live query verification through grammar-owned PostgreSQL PREPARE and MySQL
52
+ COM_STMT_PREPARE adapters, bounded neutral comparison, deterministic secret-free proof artifacts,
53
+ offline cache validation, explicit unsupported classifications, CLI workflows, real database E2E,
54
+ and performance budgets.
55
+ - b4f1b6e: Add deterministic migration compatibility analysis across before/after schema snapshots and query
56
+ manifests. Reports classify both rolling-deployment directions, retain exact source and dependency
57
+ evidence, fail closed for unknown semantics, redact defaults and paths, and support configurable CI
58
+ severity through `typed-sql compat`.
59
+ - b2ec119: Add opt-in, grammar-neutral query-plan governance with PostgreSQL and MySQL structured EXPLAIN
60
+ adapters, transient application-owned samples, redacted fingerprint-keyed artifacts, absolute and
61
+ comparable regression budgets, explicit uncertainty, CLI capture and review, documentation, and
62
+ performance coverage.
63
+
64
+ ### Patch Changes
65
+
66
+ - Updated dependencies [7ea5d2f]
67
+ - Updated dependencies [29afc3d]
68
+ - Updated dependencies [3f063f6]
69
+ - Updated dependencies [6a7ae58]
70
+ - Updated dependencies [b06fd0a]
71
+ - Updated dependencies [9c72dab]
72
+ - Updated dependencies [3050209]
73
+ - Updated dependencies [1b054b6]
74
+ - Updated dependencies [b4f1b6e]
75
+ - Updated dependencies [87189c3]
76
+ - Updated dependencies [e654fae]
77
+ - Updated dependencies [b2ec119]
78
+ - @typed-sql/core@2.0.0
79
+ - @typed-sql/compiler@2.0.0
80
+ - @typed-sql/schema@2.0.0
81
+ - @typed-sql/config@2.0.0
82
+
3
83
  ## 2.0.0-rc.1
4
84
 
5
85
  ### Patch Changes
package/README.md CHANGED
@@ -14,6 +14,7 @@ Install a grammar and its application-owned driver, then create `typed-sql.confi
14
14
 
15
15
  ```sh
16
16
  pnpm exec typed-sql generate
17
+ pnpm exec typed-sql doctor
17
18
  pnpm exec typed-sql check --file src/query.ts --project tsconfig.json
18
19
  pnpm exec typed-sql drift
19
20
  pnpm exec typed-sql manifest
@@ -26,6 +27,11 @@ pnpm exec typed-sql compat --before before.schema.json --after after.schema.json
26
27
  Use `--config path/to/typed-sql.config.ts` to bypass config discovery. Run
27
28
  `pnpm exec typed-sql --help` for command options.
28
29
 
30
+ `typed-sql doctor` checks the exact Node.js and TypeScript boundary, grammar and schema identities,
31
+ redacted server evidence, installed language-server/bridge metadata, and editor protocol window.
32
+ Use `--json` for automation and `--protocol <version>` to check a specific client. The report emits
33
+ hashes and setting names, never setting values, schema expressions, source text, or absolute paths.
34
+
29
35
  The CLI contains no PostgreSQL, MySQL, `pg`, or `mysql2` dependency. It loads the installed grammar
30
36
  and schema provider through the application config. Read
31
37
  [Configuration](https://github.com/Lojhan/typed-sql/blob/main/docs/getting-started/configuration.md) and
@@ -1,11 +1,24 @@
1
1
  #!/usr/bin/env node
2
+ import { createHash } from "node:crypto";
2
3
  import { mkdir, readFile, writeFile } from "node:fs/promises";
4
+ import { createRequire } from "node:module";
3
5
  import { dirname, join, parse, resolve } from "node:path";
4
6
  import { fileURLToPath } from "node:url";
5
- import { analyzeSchemaCompatibility, assertQueryVerificationProofCurrent, buildQueryManifest, captureQueryPlans, checkFile, collectQueryVerificationCandidates, listProjectSourceFiles, parseQueryManifest, parseQueryPlanArtifact, parseQueryVerificationProof, reviewQueryPlans, serializeQueryManifest, serializeQueryPlanArtifact, serializeQueryPlanReviewReport, serializeQueryVerificationProof, serializeSchemaCompatibilityReport, verifyQueryManifest, } from "@typed-sql/compiler";
7
+ import { analyzeSchemaCompatibility, assertQueryVerificationProofCurrent, buildQueryManifest, captureQueryPlans, checkFile, collectQueryVerificationCandidates, listProjectSourceFiles, parseQueryManifest, parseQueryPlanArtifact, parseQueryVerificationProof, reviewQueryPlans, serializeQueryManifest, serializeQueryPlanArtifact, serializeQueryPlanReviewReport, serializeQueryVerificationProof, serializeSchemaCompatibilityReport, TYPESCRIPT_COMPILER_SUPPORT_POLICY, typeScriptCompilerVersionSupport, verifyQueryManifest, } from "@typed-sql/compiler";
6
8
  import { fromConfig, loadConfig } from "@typed-sql/config";
7
- import { checkSchemaDrift, generateSchemaPackage, loadGeneratedSchemaSnapshot, parseSchemaSnapshot, } from "@typed-sql/schema";
8
- const commands = new Set(["check", "compat", "explain", "generate", "drift", "manifest", "verify"]);
9
+ import { createDebugEvent, createSupportBundle, resolveDialectCapabilityStates, serializeSupportBundle, } from "@typed-sql/core";
10
+ import { calculateSchemaHash, calculateTypePolicyHash, checkSchemaDrift, generateSchemaPackage, loadGeneratedSchemaSnapshot, parseSchemaSnapshot, } from "@typed-sql/schema";
11
+ const commands = new Set([
12
+ "capabilities",
13
+ "check",
14
+ "compat",
15
+ "doctor",
16
+ "explain",
17
+ "generate",
18
+ "drift",
19
+ "manifest",
20
+ "verify",
21
+ ]);
9
22
  async function packageVersion() {
10
23
  let directory = dirname(fileURLToPath(import.meta.url));
11
24
  const root = parse(directory).root;
@@ -30,8 +43,10 @@ Usage:
30
43
  typed-sql <command> [options]
31
44
 
32
45
  Commands:
46
+ capabilities Report versioned grammar support from the generated snapshot
33
47
  check Infer SQL result types and verify them with TypeScript 7
34
48
  compat Analyze rolling-deployment compatibility from two snapshots and manifests
49
+ doctor Report runtime, compiler, grammar, schema, server, and editor compatibility
35
50
  explain Capture and review structured database query plans
36
51
  generate Introspect or load a schema snapshot and generate the typed contract
37
52
  drift Compare the generated contract with the live database catalog
@@ -43,8 +58,12 @@ Global options:
43
58
  -v, --version Show the installed CLI version
44
59
 
45
60
  Examples:
61
+ typed-sql capabilities --config typed-sql.config.ts
46
62
  typed-sql check --config typed-sql.config.ts --file src/query.ts --project tsconfig.json
47
63
  typed-sql compat --before schema.before.json --after schema.after.json --before-manifest old.json --after-manifest new.json
64
+ typed-sql doctor --config typed-sql.config.ts --json
65
+ typed-sql doctor --config typed-sql.config.ts --support-bundle-preview
66
+ typed-sql doctor --config typed-sql.config.ts --support-bundle support.json --confirm-support-bundle
48
67
  typed-sql explain --manifest .typed-sql/queries.json --out .typed-sql/plans.json
49
68
  typed-sql explain --compare .typed-sql/plans.json
50
69
  typed-sql generate --config typed-sql.config.ts --out generated/db
@@ -60,8 +79,11 @@ function parseArguments(args) {
60
79
  const argument = args[index];
61
80
  if (!argument.startsWith("--"))
62
81
  throw new Error(`Unexpected argument ${argument}`);
63
- if (argument === "--live") {
64
- options.live = "true";
82
+ if (argument === "--live" ||
83
+ argument === "--json" ||
84
+ argument === "--support-bundle-preview" ||
85
+ argument === "--confirm-support-bundle") {
86
+ options[argument.slice(2)] = "true";
65
87
  continue;
66
88
  }
67
89
  const equals = argument.indexOf("=");
@@ -86,6 +108,65 @@ function required(options, name) {
86
108
  async function readSnapshot(path, validate) {
87
109
  return validate(JSON.parse(await readFile(path, "utf8")));
88
110
  }
111
+ async function packageMetadata(directory, name) {
112
+ const require = createRequire(join(directory, "package.json"));
113
+ let file;
114
+ try {
115
+ file = require.resolve(`${name}/package.json`);
116
+ }
117
+ catch (error) {
118
+ if (!(error instanceof Error && "code" in error && error.code === "ERR_PACKAGE_PATH_NOT_EXPORTED")) {
119
+ if (error instanceof Error && "code" in error && error.code === "MODULE_NOT_FOUND")
120
+ return undefined;
121
+ throw error;
122
+ }
123
+ let entry;
124
+ try {
125
+ entry = require.resolve(name);
126
+ }
127
+ catch (entryError) {
128
+ if (entryError instanceof Error && "code" in entryError && entryError.code === "MODULE_NOT_FOUND") {
129
+ return undefined;
130
+ }
131
+ throw entryError;
132
+ }
133
+ let current = dirname(entry);
134
+ const root = parse(current).root;
135
+ while (true) {
136
+ const candidate = join(current, "package.json");
137
+ try {
138
+ const manifest = JSON.parse(await readFile(candidate, "utf8"));
139
+ if (manifest.name === name) {
140
+ file = candidate;
141
+ break;
142
+ }
143
+ }
144
+ catch (readError) {
145
+ if (!(readError instanceof Error && "code" in readError && readError.code === "ENOENT"))
146
+ throw readError;
147
+ }
148
+ if (current === root)
149
+ return undefined;
150
+ current = dirname(current);
151
+ }
152
+ }
153
+ const value = JSON.parse(await readFile(file, "utf8"));
154
+ return {
155
+ ...(typeof value.version === "string" ? { version: value.version } : {}),
156
+ ...(typeof value.typedSql === "object" && value.typedSql !== null
157
+ ? { typedSql: value.typedSql }
158
+ : {}),
159
+ };
160
+ }
161
+ function nodeVersionSupport(value) {
162
+ const match = /^v?(\d+)\.(\d+)\.(\d+)/u.exec(value);
163
+ if (match === null)
164
+ return "unknown";
165
+ const major = Number(match[1]);
166
+ const minor = Number(match[2]);
167
+ return major > 22 || (major === 22 && minor >= 11) ? "supported" : "unsupported";
168
+ }
169
+ const fingerprint = (value) => `sha256:${createHash("sha256").update(JSON.stringify(value)).digest("hex")}`;
89
170
  async function readPreviousManifest(path) {
90
171
  try {
91
172
  return parseQueryManifest(JSON.parse(await readFile(path, "utf8")));
@@ -159,6 +240,170 @@ async function main() {
159
240
  const dialect = config.dialect;
160
241
  const policy = config.typePolicy ?? dialect.defaultTypePolicy;
161
242
  const schemaFile = fromConfig(loaded.directory, parsed.options.schema ?? config.schema.file);
243
+ if (parsed.command === "doctor") {
244
+ if (parsed.options.json !== undefined && parsed.options.json !== "true") {
245
+ throw new Error("--json does not accept a value");
246
+ }
247
+ const requestedProtocol = parsed.options.protocol === undefined ? undefined : Number(parsed.options.protocol);
248
+ if (requestedProtocol !== undefined && (!Number.isSafeInteger(requestedProtocol) || requestedProtocol < 1)) {
249
+ throw new Error("--protocol must be a positive integer");
250
+ }
251
+ const schema = await readSnapshot(schemaFile, (value) => dialect.validateSnapshot(value));
252
+ const states = resolveDialectCapabilityStates(dialect, schema, policy);
253
+ const [typescript, languageServer, bridge] = await Promise.all([
254
+ packageMetadata(loaded.directory, "typescript"),
255
+ packageMetadata(loaded.directory, "@typed-sql/language-server"),
256
+ packageMetadata(loaded.directory, "@typed-sql/ts-bridge"),
257
+ ]);
258
+ const typescriptVersion = typescript?.version;
259
+ const typescriptSupport = typescriptVersion === undefined ? "unknown" : typeScriptCompilerVersionSupport(typescriptVersion);
260
+ const acceptedProtocols = Array.isArray(languageServer?.typedSql?.acceptedProtocolVersions)
261
+ ? languageServer.typedSql.acceptedProtocolVersions.filter((value) => Number.isSafeInteger(value) && value > 0)
262
+ : [];
263
+ const legacyProtocol = languageServer?.typedSql?.legacyUnversionedProtocolVersion;
264
+ const clientProtocol = requestedProtocol ??
265
+ (typeof legacyProtocol === "number" && Number.isSafeInteger(legacyProtocol) ? legacyProtocol : undefined);
266
+ const protocolCompatibility = languageServer === undefined
267
+ ? "not-installed"
268
+ : clientProtocol !== undefined && acceptedProtocols.includes(clientProtocol)
269
+ ? "compatible"
270
+ : "unsupported";
271
+ const errors = [];
272
+ const warnings = [];
273
+ const nodeSupport = nodeVersionSupport(process.version);
274
+ if (nodeSupport !== "supported")
275
+ errors.push(`Node.js ${process.version} is outside the supported runtime range.`);
276
+ if (typescriptSupport !== "supported") {
277
+ errors.push(`TypeScript ${typescriptVersion ?? "not installed"} does not match ${TYPESCRIPT_COMPILER_SUPPORT_POLICY.exactVersion}.`);
278
+ }
279
+ if (languageServer === undefined)
280
+ warnings.push("@typed-sql/language-server is not installed; editor analysis is optional.");
281
+ else {
282
+ if (bridge === undefined)
283
+ errors.push("@typed-sql/language-server is installed without @typed-sql/ts-bridge.");
284
+ if (protocolCompatibility !== "compatible") {
285
+ errors.push(`Editor protocol ${clientProtocol ?? "unversioned"} is outside the installed server window.`);
286
+ }
287
+ const serverPreview = languageServer.typedSql?.typescriptPreviewVersion;
288
+ const bridgePreview = bridge?.typedSql?.typescriptPreviewVersion;
289
+ if (typeof serverPreview !== "string" || typeof bridgePreview !== "string" || serverPreview !== bridgePreview) {
290
+ errors.push("Language-server and bridge TypeScript preview metadata do not match.");
291
+ }
292
+ }
293
+ const capabilityLevels = { exact: 0, conservative: 0, unsupported: 0 };
294
+ for (const state of Object.values(states))
295
+ capabilityLevels[state.level] += 1;
296
+ const report = {
297
+ formatVersion: 1,
298
+ status: errors.length === 0 ? "ok" : "error",
299
+ runtime: { node: { version: process.version, support: nodeSupport } },
300
+ typescript: {
301
+ version: typescriptVersion ?? null,
302
+ expected: TYPESCRIPT_COMPILER_SUPPORT_POLICY.exactVersion,
303
+ support: typescriptSupport,
304
+ },
305
+ grammar: {
306
+ id: dialect.id,
307
+ version: dialect.grammarVersion,
308
+ capabilityFingerprint: fingerprint(states),
309
+ capabilityLevels,
310
+ },
311
+ schema: {
312
+ formatVersion: schema.formatVersion,
313
+ dialect: schema.dialect,
314
+ dialectVersion: schema.dialectVersion ?? null,
315
+ hash: calculateSchemaHash(schema),
316
+ typePolicyHash: calculateTypePolicyHash(policy),
317
+ },
318
+ server: schema.server === undefined
319
+ ? null
320
+ : {
321
+ product: schema.server.product,
322
+ version: schema.server.version,
323
+ versionKey: schema.server.versionKey,
324
+ featureCount: schema.server.features.length,
325
+ settingKeys: Object.keys(schema.server.settings).sort(),
326
+ },
327
+ editor: {
328
+ languageServer: {
329
+ installed: languageServer !== undefined,
330
+ version: languageServer?.version ?? null,
331
+ releaseTrack: languageServer?.typedSql?.releaseTrack ?? null,
332
+ },
333
+ bridge: {
334
+ installed: bridge !== undefined,
335
+ version: bridge?.version ?? null,
336
+ backend: bridge?.typedSql?.typescriptBackend ?? null,
337
+ typescriptPreviewVersion: bridge?.typedSql?.typescriptPreviewVersion ?? null,
338
+ },
339
+ protocol: {
340
+ client: requestedProtocol === undefined ? "legacy-unversioned" : requestedProtocol,
341
+ normalizedClientVersion: clientProtocol ?? null,
342
+ acceptedVersions: acceptedProtocols,
343
+ compatibility: protocolCompatibility,
344
+ },
345
+ },
346
+ errors,
347
+ warnings,
348
+ };
349
+ const supportBundlePath = parsed.options["support-bundle"];
350
+ const previewSupportBundle = parsed.options["support-bundle-preview"] === "true";
351
+ const confirmSupportBundle = parsed.options["confirm-support-bundle"] === "true";
352
+ if (confirmSupportBundle && supportBundlePath === undefined)
353
+ throw new Error("--confirm-support-bundle requires --support-bundle <path>");
354
+ if (supportBundlePath !== undefined && !confirmSupportBundle)
355
+ throw new Error("Preview the inventory, then pass --confirm-support-bundle to write the support bundle");
356
+ if (previewSupportBundle || supportBundlePath !== undefined) {
357
+ const bundle = createSupportBundle([
358
+ createDebugEvent({
359
+ phase: "doctor",
360
+ event: "compatibility",
361
+ ...(report.status === "error" ? { failure: { code: "TSQL_DOCTOR", classification: "compatibility" } } : {}),
362
+ context: report,
363
+ }),
364
+ ], { version, node: { version: process.version } });
365
+ process.stderr.write(`Support bundle inventory:\n${JSON.stringify(bundle.inventory, null, 2)}\n`);
366
+ if (supportBundlePath !== undefined) {
367
+ const path = resolve(supportBundlePath);
368
+ await mkdir(dirname(path), { recursive: true });
369
+ await writeFile(path, serializeSupportBundle(bundle));
370
+ process.stderr.write(`Wrote redacted support bundle to ${path}\n`);
371
+ }
372
+ }
373
+ if (parsed.options.json === "true")
374
+ process.stdout.write(`${JSON.stringify(report, null, 2)}\n`);
375
+ else {
376
+ process.stdout.write([
377
+ `typed-sql doctor: ${report.status}`,
378
+ `Node.js: ${report.runtime.node.version} (${report.runtime.node.support})`,
379
+ `TypeScript: ${report.typescript.version ?? "not installed"} (${report.typescript.support}; expected ${report.typescript.expected})`,
380
+ `Grammar: ${report.grammar.id} ${report.grammar.version}`,
381
+ `Schema: format ${report.schema.formatVersion} ${report.schema.hash}`,
382
+ `Server: ${report.server === null ? "no evidence" : `${report.server.product} ${report.server.version}`}`,
383
+ `Language server: ${report.editor.languageServer.installed ? `${report.editor.languageServer.version} (${report.editor.protocol.compatibility})` : "not installed (optional)"}`,
384
+ ...errors.map((message) => `error: ${message}`),
385
+ ...warnings.map((message) => `warning: ${message}`),
386
+ "",
387
+ ].join("\n"));
388
+ }
389
+ if (errors.length > 0)
390
+ process.exitCode = 1;
391
+ return;
392
+ }
393
+ if (parsed.command === "capabilities") {
394
+ const schema = await readSnapshot(schemaFile, (value) => dialect.validateSnapshot(value));
395
+ const states = resolveDialectCapabilityStates(dialect, schema, policy);
396
+ process.stdout.write([
397
+ `Capabilities for ${dialect.id} grammar ${dialect.grammarVersion}`,
398
+ ...Object.entries(states).flatMap(([capability, state]) => [
399
+ `${capability}: ${state.level}${state.diagnostic === undefined ? "" : ` (${state.diagnostic})`}`,
400
+ ` ${state.reason}`,
401
+ ...state.evidence.map(({ kind, key, value }) => ` ${kind}: ${key}=${value}`),
402
+ ]),
403
+ "",
404
+ ].join("\n"));
405
+ return;
406
+ }
162
407
  if (parsed.command === "compat") {
163
408
  const beforeFile = fromConfig(loaded.directory, required(parsed.options, "before"));
164
409
  const afterFile = fromConfig(loaded.directory, required(parsed.options, "after"));
@@ -378,7 +623,8 @@ async function main() {
378
623
  const current = await config.schema.provider.introspect();
379
624
  const drift = checkSchemaDrift(generated, current, policy);
380
625
  if (drift.drifted) {
381
- process.stderr.write(`error TSQ301: Schema drift detected (schemaChanged=${drift.schemaChanged}, typePolicyChanged=${drift.typePolicyChanged})\n`);
626
+ const changes = drift.changes.map(({ kind, key }) => `${kind}:${key}`).join(",");
627
+ process.stderr.write(`error TSQ301: Schema drift detected (schemaChanged=${drift.schemaChanged}, typePolicyChanged=${drift.typePolicyChanged}, changes=${changes})\n`);
382
628
  process.exitCode = 1;
383
629
  }
384
630
  else
@@ -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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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@typed-sql/cli",
3
- "version": "2.0.0-rc.1",
3
+ "version": "2.1.0-rc.1",
4
4
  "description": "Config-driven typed-sql generation, checking, verification, and migration compatibility CLI.",
5
5
  "license": "MIT",
6
6
  "author": "Lojhan",
@@ -35,10 +35,10 @@
35
35
  "typed-sql": "./dist/packages/cli/src/cli.js"
36
36
  },
37
37
  "dependencies": {
38
- "@typed-sql/compiler": "2.0.0-rc.1",
39
- "@typed-sql/config": "2.0.0-rc.1",
40
- "@typed-sql/schema": "2.0.0-rc.1",
41
- "@typed-sql/core": "2.0.0-rc.1"
38
+ "@typed-sql/compiler": "2.1.0-rc.1",
39
+ "@typed-sql/core": "2.1.0-rc.1",
40
+ "@typed-sql/schema": "2.1.0-rc.1",
41
+ "@typed-sql/config": "2.1.0-rc.1"
42
42
  },
43
43
  "scripts": {
44
44
  "test": "poku test --reporter=compact --enforce",