@typed-sql/sqlite 2.0.0-rc.2 → 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.
Files changed (103) hide show
  1. package/CHANGELOG.md +68 -0
  2. package/README.md +3 -3
  3. package/dist/packages/sqlite/src/capabilities.d.ts +18 -0
  4. package/dist/packages/sqlite/src/capabilities.d.ts.map +1 -0
  5. package/dist/packages/sqlite/src/capabilities.js +155 -0
  6. package/dist/packages/sqlite/src/capabilities.js.map +1 -0
  7. package/dist/packages/sqlite/src/catalog/coercions.d.ts +6 -0
  8. package/dist/packages/sqlite/src/catalog/coercions.d.ts.map +1 -0
  9. package/dist/packages/sqlite/src/catalog/coercions.js +41 -0
  10. package/dist/packages/sqlite/src/catalog/coercions.js.map +1 -0
  11. package/dist/packages/sqlite/src/catalog/date-time.d.ts +5 -0
  12. package/dist/packages/sqlite/src/catalog/date-time.d.ts.map +1 -0
  13. package/dist/packages/sqlite/src/catalog/date-time.js +20 -0
  14. package/dist/packages/sqlite/src/catalog/date-time.js.map +1 -0
  15. package/dist/packages/sqlite/src/catalog/extensions.d.ts +5 -0
  16. package/dist/packages/sqlite/src/catalog/extensions.d.ts.map +1 -0
  17. package/dist/packages/sqlite/src/catalog/extensions.js +65 -0
  18. package/dist/packages/sqlite/src/catalog/extensions.js.map +1 -0
  19. package/dist/packages/sqlite/src/catalog/functions.d.ts +57 -0
  20. package/dist/packages/sqlite/src/catalog/functions.d.ts.map +1 -0
  21. package/dist/packages/sqlite/src/catalog/functions.js +165 -0
  22. package/dist/packages/sqlite/src/catalog/functions.js.map +1 -0
  23. package/dist/packages/sqlite/src/catalog/index.d.ts +8 -0
  24. package/dist/packages/sqlite/src/catalog/index.d.ts.map +1 -0
  25. package/dist/packages/sqlite/src/catalog/index.js +8 -0
  26. package/dist/packages/sqlite/src/catalog/index.js.map +1 -0
  27. package/dist/packages/sqlite/src/catalog/json.d.ts +5 -0
  28. package/dist/packages/sqlite/src/catalog/json.d.ts.map +1 -0
  29. package/dist/packages/sqlite/src/catalog/json.js +146 -0
  30. package/dist/packages/sqlite/src/catalog/json.js.map +1 -0
  31. package/dist/packages/sqlite/src/catalog/math.d.ts +4 -0
  32. package/dist/packages/sqlite/src/catalog/math.d.ts.map +1 -0
  33. package/dist/packages/sqlite/src/catalog/math.js +44 -0
  34. package/dist/packages/sqlite/src/catalog/math.js.map +1 -0
  35. package/dist/packages/sqlite/src/catalog/operators.d.ts +10 -0
  36. package/dist/packages/sqlite/src/catalog/operators.d.ts.map +1 -0
  37. package/dist/packages/sqlite/src/catalog/operators.js +52 -0
  38. package/dist/packages/sqlite/src/catalog/operators.js.map +1 -0
  39. package/dist/packages/sqlite/src/index.d.ts +5 -2
  40. package/dist/packages/sqlite/src/index.d.ts.map +1 -1
  41. package/dist/packages/sqlite/src/index.js +15 -16
  42. package/dist/packages/sqlite/src/index.js.map +1 -1
  43. package/dist/packages/sqlite/src/node-sqlite.d.ts +18 -3
  44. package/dist/packages/sqlite/src/node-sqlite.d.ts.map +1 -1
  45. package/dist/packages/sqlite/src/node-sqlite.js +136 -25
  46. package/dist/packages/sqlite/src/node-sqlite.js.map +1 -1
  47. package/dist/packages/sqlite/src/parser/index.d.ts +8 -0
  48. package/dist/packages/sqlite/src/parser/index.d.ts.map +1 -0
  49. package/dist/packages/sqlite/src/parser/index.js +4 -0
  50. package/dist/packages/sqlite/src/parser/index.js.map +1 -0
  51. package/dist/packages/sqlite/src/parser/parser.d.ts +14 -0
  52. package/dist/packages/sqlite/src/parser/parser.d.ts.map +1 -0
  53. package/dist/packages/sqlite/src/parser/parser.js +1122 -0
  54. package/dist/packages/sqlite/src/parser/parser.js.map +1 -0
  55. package/dist/packages/sqlite/src/parser/tokenizer.d.ts +14 -0
  56. package/dist/packages/sqlite/src/parser/tokenizer.d.ts.map +1 -0
  57. package/dist/packages/sqlite/src/parser/tokenizer.js +375 -0
  58. package/dist/packages/sqlite/src/parser/tokenizer.js.map +1 -0
  59. package/dist/packages/sqlite/src/parser/types.d.ts +313 -0
  60. package/dist/packages/sqlite/src/parser/types.d.ts.map +1 -0
  61. package/dist/packages/sqlite/src/parser/types.js +9 -0
  62. package/dist/packages/sqlite/src/parser/types.js.map +1 -0
  63. package/dist/packages/sqlite/src/parser/walk.d.ts +13 -0
  64. package/dist/packages/sqlite/src/parser/walk.d.ts.map +1 -0
  65. package/dist/packages/sqlite/src/parser/walk.js +180 -0
  66. package/dist/packages/sqlite/src/parser/walk.js.map +1 -0
  67. package/dist/packages/sqlite/src/prepared.d.ts +4 -3
  68. package/dist/packages/sqlite/src/prepared.d.ts.map +1 -1
  69. package/dist/packages/sqlite/src/prepared.js +7 -14
  70. package/dist/packages/sqlite/src/prepared.js.map +1 -1
  71. package/dist/packages/sqlite/src/provider.d.ts +27 -5
  72. package/dist/packages/sqlite/src/provider.d.ts.map +1 -1
  73. package/dist/packages/sqlite/src/provider.js +345 -14
  74. package/dist/packages/sqlite/src/provider.js.map +1 -1
  75. package/dist/packages/sqlite/src/resolver.d.ts +1 -1
  76. package/dist/packages/sqlite/src/resolver.d.ts.map +1 -1
  77. package/dist/packages/sqlite/src/resolver.js +989 -124
  78. package/dist/packages/sqlite/src/resolver.js.map +1 -1
  79. package/dist/packages/sqlite/src/runtime.d.ts +2 -0
  80. package/dist/packages/sqlite/src/runtime.d.ts.map +1 -1
  81. package/dist/packages/sqlite/src/runtime.js +1 -1
  82. package/dist/packages/sqlite/src/runtime.js.map +1 -1
  83. package/dist/packages/sqlite/src/schema-sql.d.ts +8 -0
  84. package/dist/packages/sqlite/src/schema-sql.d.ts.map +1 -0
  85. package/dist/packages/sqlite/src/schema-sql.js +157 -0
  86. package/dist/packages/sqlite/src/schema-sql.js.map +1 -0
  87. package/dist/packages/sqlite/src/semantics.d.ts +1 -1
  88. package/dist/packages/sqlite/src/semantics.d.ts.map +1 -1
  89. package/dist/packages/sqlite/src/semantics.js +44 -6
  90. package/dist/packages/sqlite/src/semantics.js.map +1 -1
  91. package/dist/packages/sqlite/src/snapshot.d.ts +10 -4
  92. package/dist/packages/sqlite/src/snapshot.d.ts.map +1 -1
  93. package/dist/packages/sqlite/src/snapshot.js +136 -3
  94. package/dist/packages/sqlite/src/snapshot.js.map +1 -1
  95. package/dist/packages/sqlite/src/support.d.ts +19 -0
  96. package/dist/packages/sqlite/src/support.d.ts.map +1 -0
  97. package/dist/packages/sqlite/src/support.js +59 -0
  98. package/dist/packages/sqlite/src/support.js.map +1 -0
  99. package/dist/packages/sqlite/src/type-policy.d.ts +3 -2
  100. package/dist/packages/sqlite/src/type-policy.d.ts.map +1 -1
  101. package/dist/packages/sqlite/src/type-policy.js +2 -12
  102. package/dist/packages/sqlite/src/type-policy.js.map +1 -1
  103. package/package.json +8 -8
@@ -1,5 +1,6 @@
1
- import { walkStatement } from "@typed-sql/ast";
2
1
  import { defineQuerySemantics, QUERY_SEMANTICS_VERSION, ResolverSchemaIndex, } from "@typed-sql/core";
2
+ import { SQLITE_CURRENT_TIME_KEYWORDS, sqliteBuiltinVolatility } from "./catalog/index.js";
3
+ import { walkStatement } from "./parser/index.js";
3
4
  const builtinVolatility = Object.freeze({
4
5
  AVG: "immutable",
5
6
  COALESCE: "immutable",
@@ -33,11 +34,28 @@ function key(dependency) {
33
34
  ].join("\0");
34
35
  }
35
36
  function functionVolatility(expression, index) {
36
- const builtin = builtinVolatility[expression.name.name.toUpperCase()];
37
- if (builtin !== undefined && expression.schema === undefined)
38
- return builtin;
39
37
  const candidates = index.functions(expression.name.name, expression.arguments.length, expression.schema?.name);
40
- return candidates.length === 1 ? (candidates[0].volatility ?? "unknown") : "unknown";
38
+ if (candidates.length === 1)
39
+ return candidates[0].volatility ?? "unknown";
40
+ const builtin = builtinVolatility[expression.name.name.toUpperCase()] ?? sqliteBuiltinVolatility(expression.name.name);
41
+ return builtin !== undefined && expression.schema === undefined ? builtin : "unknown";
42
+ }
43
+ function hasRecursiveCte(withClause) {
44
+ return withClause.queries.some((query) => {
45
+ let recursive = false;
46
+ walkStatement(query.statement, {
47
+ table(table) {
48
+ if (table.kind === "table" &&
49
+ table.schema === undefined &&
50
+ (query.name.quoted
51
+ ? table.name.name === query.name.name
52
+ : table.name.name.toLowerCase() === query.name.name.toLowerCase())) {
53
+ recursive = true;
54
+ }
55
+ },
56
+ });
57
+ return recursive;
58
+ });
41
59
  }
42
60
  export function analyzeSqliteSemantics(statement, snapshot) {
43
61
  const index = ResolverSchemaIndex.for(snapshot);
@@ -53,7 +71,7 @@ export function analyzeSqliteSemantics(statement, snapshot) {
53
71
  if (current.kind !== "select")
54
72
  write = true;
55
73
  if (current.with !== undefined)
56
- capabilities.add(current.with.recursive ? "recursiveCtes" : "ctes");
74
+ capabilities.add(hasRecursiveCte(current.with) ? "recursiveCtes" : "ctes");
57
75
  if (current.kind !== "select" && current.returning.length > 0)
58
76
  capabilities.add("returning");
59
77
  if (current.kind === "select") {
@@ -70,6 +88,22 @@ export function analyzeSqliteSemantics(statement, snapshot) {
70
88
  }
71
89
  },
72
90
  table(table, owner, context) {
91
+ if (table.kind === "table-function") {
92
+ hasRelation = true;
93
+ hasCall = true;
94
+ capabilities.add("tableFunctions");
95
+ const dependency = {
96
+ kind: "function",
97
+ access: "execute",
98
+ name: table.name.name,
99
+ ...(table.schema === undefined ? {} : { schema: table.schema.name }),
100
+ certainty: "syntactic",
101
+ range: table.range,
102
+ };
103
+ dependencies.set(key(dependency), dependency);
104
+ volatilities.push("immutable");
105
+ return;
106
+ }
73
107
  if (table.kind !== "table" ||
74
108
  (table.schema === undefined &&
75
109
  context.ctes.some((cte) => cte.quoted ? cte.name === table.name.name : cte.name.toLowerCase() === table.name.name.toLowerCase())))
@@ -90,6 +124,10 @@ export function analyzeSqliteSemantics(statement, snapshot) {
90
124
  },
91
125
  expression(expression, owner) {
92
126
  if (expression.kind === "column") {
127
+ if (expression.relation === undefined &&
128
+ !expression.column.quoted &&
129
+ SQLITE_CURRENT_TIME_KEYWORDS.has(expression.column.name.toUpperCase()))
130
+ volatilities.push("stable");
93
131
  const dependency = {
94
132
  kind: "column",
95
133
  access: owner.kind === "select" ? "read" : "unknown",
@@ -1 +1 @@
1
- {"version":3,"file":"semantics.js","sourceRoot":"","sources":["../../../../src/semantics.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"semantics.js","sourceRoot":"","sources":["../../../../src/semantics.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { type ColumnSnapshot, type SchemaSnapshot, type TableSnapshot } from "@typed-sql/schema";
1
+ import { type ColumnSnapshot, type SchemaSnapshotV1, type SchemaSnapshotV2, type TableSnapshot } from "@typed-sql/schema";
2
2
  export interface SqliteColumnSnapshot extends ColumnSnapshot {
3
3
  readonly generated?: "virtual" | "stored";
4
4
  readonly hidden?: boolean;
@@ -8,6 +8,7 @@ export interface SqliteIndexColumnSnapshot {
8
8
  readonly name?: string;
9
9
  readonly expression?: boolean;
10
10
  readonly descending?: boolean;
11
+ readonly collation?: string;
11
12
  }
12
13
  export interface SqliteIndexSnapshot {
13
14
  readonly name: string;
@@ -25,16 +26,21 @@ export interface SqliteForeignKeySnapshot {
25
26
  }
26
27
  export interface SqliteTableSnapshot extends TableSnapshot {
27
28
  readonly schema: string;
28
- readonly kind: "table" | "view" | "virtual";
29
+ readonly kind: "shadow" | "table" | "view" | "virtual";
29
30
  readonly strict: boolean;
30
31
  readonly withoutRowid: boolean;
32
+ readonly rowidAlias?: string;
31
33
  readonly columns: Readonly<Record<string, SqliteColumnSnapshot>>;
32
34
  readonly indexes: readonly SqliteIndexSnapshot[];
33
35
  readonly foreignKeys: readonly SqliteForeignKeySnapshot[];
34
36
  }
35
- export interface SqliteSchemaSnapshot extends SchemaSnapshot {
37
+ type SqliteSnapshotViews = {
36
38
  readonly dialect: "sqlite";
37
39
  readonly tables: Readonly<Record<string, SqliteTableSnapshot>>;
38
- }
40
+ };
41
+ export type SqliteSchemaSnapshotV1 = SchemaSnapshotV1 & SqliteSnapshotViews;
42
+ export type SqliteSchemaSnapshotV2 = SchemaSnapshotV2 & SqliteSnapshotViews;
43
+ export type SqliteSchemaSnapshot = SqliteSchemaSnapshotV1 | SqliteSchemaSnapshotV2;
39
44
  export declare function parseSqliteSchemaSnapshot(value: unknown): SqliteSchemaSnapshot;
45
+ export {};
40
46
  //# sourceMappingURL=snapshot.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"snapshot.d.ts","sourceRoot":"","sources":["../../../../src/snapshot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAuB,KAAK,cAAc,EAAE,KAAK,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEtH,MAAM,WAAW,oBAAqB,SAAQ,cAAc;IAC1D,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAC;IAC1C,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;CACtC;AAED,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,QAAQ,GAAG,QAAQ,GAAG,aAAa,CAAC;IACrD,QAAQ,CAAC,OAAO,EAAE,SAAS,yBAAyB,EAAE,CAAC;CACxD;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,iBAAiB,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,mBAAoB,SAAQ,aAAa;IACxD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC;IAC5C,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IAC/B,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC,CAAC;IACjE,QAAQ,CAAC,OAAO,EAAE,SAAS,mBAAmB,EAAE,CAAC;IACjD,QAAQ,CAAC,WAAW,EAAE,SAAS,wBAAwB,EAAE,CAAC;CAC3D;AAED,MAAM,WAAW,oBAAqB,SAAQ,cAAc;IAC1D,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC,CAAC;CAChE;AAwDD,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,OAAO,GAAG,oBAAoB,CAgE9E"}
1
+ {"version":3,"file":"snapshot.d.ts","sourceRoot":"","sources":["../../../../src/snapshot.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EAGnB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,aAAa,EACnB,MAAM,mBAAmB,CAAC;AAG3B,MAAM,WAAW,oBAAqB,SAAQ,cAAc;IAC1D,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAC;IAC1C,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;CACtC;AAED,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,QAAQ,GAAG,QAAQ,GAAG,aAAa,CAAC;IACrD,QAAQ,CAAC,OAAO,EAAE,SAAS,yBAAyB,EAAE,CAAC;CACxD;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,iBAAiB,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,mBAAoB,SAAQ,aAAa;IACxD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC;IACvD,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IAC/B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC,CAAC;IACjE,QAAQ,CAAC,OAAO,EAAE,SAAS,mBAAmB,EAAE,CAAC;IACjD,QAAQ,CAAC,WAAW,EAAE,SAAS,wBAAwB,EAAE,CAAC;CAC3D;AAED,KAAK,mBAAmB,GAAG;IACzB,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC,CAAC;CAChE,CAAC;AACF,MAAM,MAAM,sBAAsB,GAAG,gBAAgB,GAAG,mBAAmB,CAAC;AAC5E,MAAM,MAAM,sBAAsB,GAAG,gBAAgB,GAAG,mBAAmB,CAAC;AAC5E,MAAM,MAAM,oBAAoB,GAAG,sBAAsB,GAAG,sBAAsB,CAAC;AAsGnF,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,OAAO,GAAG,oBAAoB,CAgK9E"}
@@ -1,4 +1,5 @@
1
- import { parseSchemaSnapshot } from "@typed-sql/schema";
1
+ import { parseSchemaSnapshot, } from "@typed-sql/schema";
2
+ import { isKnownStrictSqliteType } from "./type-policy.js";
2
3
  function record(value) {
3
4
  return typeof value === "object" && value !== null && !Array.isArray(value);
4
5
  }
@@ -34,10 +35,14 @@ function parseIndex(value, path) {
34
35
  if (column.descending !== undefined && typeof column.descending !== "boolean") {
35
36
  throw new TypeError(`${path}.columns.${index}.descending must be a boolean`);
36
37
  }
38
+ if (column.collation !== undefined && typeof column.collation !== "string") {
39
+ throw new TypeError(`${path}.columns.${index}.collation must be a string`);
40
+ }
37
41
  return {
38
42
  ...(column.name === undefined ? {} : { name: column.name }),
39
43
  ...(column.expression === undefined ? {} : { expression: column.expression }),
40
44
  ...(column.descending === undefined ? {} : { descending: column.descending }),
45
+ ...(column.collation === undefined ? {} : { collation: column.collation }),
41
46
  };
42
47
  });
43
48
  return { name: value.name, unique: value.unique, partial: value.partial, origin: value.origin, columns };
@@ -59,10 +64,121 @@ function parseForeignKey(value, path) {
59
64
  onDelete: value.onDelete,
60
65
  };
61
66
  }
67
+ function assertSqliteV2Relation(relation, path) {
68
+ const strict = relation.capabilities?.strict;
69
+ const withoutRowid = relation.capabilities?.withoutRowid;
70
+ if (strict !== undefined && typeof strict !== "boolean")
71
+ throw new TypeError(`${path}.capabilities.strict must be a boolean`);
72
+ if (withoutRowid !== undefined && typeof withoutRowid !== "boolean") {
73
+ throw new TypeError(`${path}.capabilities.withoutRowid must be a boolean`);
74
+ }
75
+ const rowids = Object.values(relation.columns).filter(({ classification }) => classification === "rowid");
76
+ if (rowids.length > 1)
77
+ throw new TypeError(`${path}.columns may declare at most one rowid alias`);
78
+ if (withoutRowid === true && rowids.length > 0)
79
+ throw new TypeError(`${path} cannot combine WITHOUT ROWID and a rowid alias`);
80
+ if (withoutRowid === true && !relation.constraints.some(({ kind }) => kind === "primary-key")) {
81
+ throw new TypeError(`${path} requires primary-key evidence for a WITHOUT ROWID table`);
82
+ }
83
+ for (const [columnKey, column] of Object.entries(relation.columns)) {
84
+ const columnPath = `${path}.columns.${columnKey}`;
85
+ if (strict === true && !isKnownStrictSqliteType(column.databaseType)) {
86
+ throw new TypeError(`${columnPath}.databaseType is not valid for an SQLite STRICT table`);
87
+ }
88
+ if (column.generated !== "none" && (column.insertable !== false || column.updatable !== false)) {
89
+ throw new TypeError(`${columnPath} generated columns must not be writable`);
90
+ }
91
+ if (column.classification === "hidden" && (column.insertable !== false || column.updatable !== false)) {
92
+ throw new TypeError(`${columnPath} hidden columns must not be writable`);
93
+ }
94
+ if (relation.kind === "view" && (column.insertable !== false || column.updatable !== false)) {
95
+ throw new TypeError(`${columnPath} view columns require conservative write eligibility`);
96
+ }
97
+ if (column.classification === "rowid" &&
98
+ (withoutRowid === true ||
99
+ relation.kind !== "table" ||
100
+ column.databaseType.trim().toUpperCase() !== "INTEGER" ||
101
+ column.nullable ||
102
+ column.identity !== "by-default")) {
103
+ throw new TypeError(`${columnPath} has invalid SQLite rowid-alias evidence`);
104
+ }
105
+ }
106
+ }
62
107
  export function parseSqliteSchemaSnapshot(value) {
63
108
  const base = parseSchemaSnapshot(value);
64
109
  if (base.dialect !== "sqlite")
65
110
  throw new TypeError(`@typed-sql/sqlite cannot use a ${base.dialect} schema snapshot`);
111
+ if (base.formatVersion === 2) {
112
+ const tables = {};
113
+ for (const [key, relation] of Object.entries(base.relations)) {
114
+ assertSqliteV2Relation(relation, `schema.relations.${key}`);
115
+ const primary = relation.constraints.find(({ kind }) => kind === "primary-key");
116
+ const primaryPositions = new Map(primary?.columns.map((column, index) => [column, index + 1]) ?? []);
117
+ const indexes = relation.indexes.map((index) => {
118
+ const origin = index.extension?.attributes.origin;
119
+ return {
120
+ name: index.name,
121
+ unique: index.unique,
122
+ partial: index.predicate !== "none",
123
+ origin: origin === "primary-key" || origin === "unique" || origin === "create"
124
+ ? origin
125
+ : index.unique
126
+ ? "unique"
127
+ : "create",
128
+ columns: index.columns.map((column) => ({
129
+ ...(column.column === undefined ? {} : { name: column.column }),
130
+ ...(column.expressionHash === undefined ? {} : { expression: true }),
131
+ ...(column.descending === undefined ? {} : { descending: column.descending }),
132
+ ...(column.collation === undefined ? {} : { collation: column.collation }),
133
+ })),
134
+ };
135
+ });
136
+ const foreignKeys = relation.constraints.flatMap((constraint) => constraint.kind !== "foreign-key"
137
+ ? []
138
+ : [
139
+ {
140
+ columns: constraint.columns,
141
+ referencedTable: constraint.referencedRelation,
142
+ referencedColumns: constraint.referencedColumns,
143
+ onUpdate: constraint.onUpdate.replaceAll("-", " ").toUpperCase(),
144
+ onDelete: constraint.onDelete.replaceAll("-", " ").toUpperCase(),
145
+ },
146
+ ]);
147
+ tables[key] = {
148
+ ...(relation.schema === undefined ? { schema: "main" } : { schema: relation.schema }),
149
+ name: relation.name,
150
+ kind: relation.extension?.attributes.objectKind === "shadow"
151
+ ? "shadow"
152
+ : relation.kind === "virtual-table"
153
+ ? "virtual"
154
+ : relation.kind === "view"
155
+ ? "view"
156
+ : "table",
157
+ strict: relation.capabilities?.strict === true,
158
+ withoutRowid: relation.capabilities?.withoutRowid === true,
159
+ ...(() => {
160
+ const rowid = Object.values(relation.columns).find(({ classification }) => classification === "rowid");
161
+ return rowid === undefined ? {} : { rowidAlias: rowid.name };
162
+ })(),
163
+ columns: Object.fromEntries(Object.entries(relation.columns).map(([columnKey, column]) => [
164
+ columnKey,
165
+ {
166
+ name: column.name,
167
+ databaseType: column.databaseType,
168
+ tsType: column.tsType,
169
+ nullable: column.nullable,
170
+ ...(column.dimensions === undefined ? {} : { array: true }),
171
+ ...(column.generated === "none" ? {} : { generated: column.generated }),
172
+ ...(column.classification === "hidden" ? { hidden: true } : {}),
173
+ ...(primaryPositions.has(column.name) ? { primaryKeyPosition: primaryPositions.get(column.name) } : {}),
174
+ },
175
+ ])),
176
+ indexes,
177
+ foreignKeys,
178
+ };
179
+ }
180
+ return { ...base, dialect: "sqlite", tables };
181
+ }
66
182
  if (!record(value) || !record(value.tables))
67
183
  throw new TypeError("schema.tables must be an object");
68
184
  const tables = {};
@@ -74,15 +190,22 @@ export function parseSqliteSchemaSnapshot(value) {
74
190
  if (typeof schema !== "string")
75
191
  throw new TypeError(`schema.tables.${key}.schema must be a string`);
76
192
  const kind = raw.kind === undefined ? "table" : raw.kind;
77
- if (!(kind === "table" || kind === "view" || kind === "virtual")) {
78
- throw new TypeError(`schema.tables.${key}.kind must be table, view, or virtual`);
193
+ if (!(kind === "shadow" || kind === "table" || kind === "view" || kind === "virtual")) {
194
+ throw new TypeError(`schema.tables.${key}.kind must be shadow, table, view, or virtual`);
79
195
  }
80
196
  const strict = raw.strict ?? false;
81
197
  const withoutRowid = raw.withoutRowid ?? false;
198
+ const rowidAlias = raw.rowidAlias;
82
199
  if (typeof strict !== "boolean")
83
200
  throw new TypeError(`schema.tables.${key}.strict must be a boolean`);
84
201
  if (typeof withoutRowid !== "boolean")
85
202
  throw new TypeError(`schema.tables.${key}.withoutRowid must be a boolean`);
203
+ if (rowidAlias !== undefined && typeof rowidAlias !== "string") {
204
+ throw new TypeError(`schema.tables.${key}.rowidAlias must be a string`);
205
+ }
206
+ if (rowidAlias !== undefined && withoutRowid) {
207
+ throw new TypeError(`schema.tables.${key} cannot combine WITHOUT ROWID and a rowid alias`);
208
+ }
86
209
  const columns = {};
87
210
  for (const [columnKey, column] of Object.entries(table.columns)) {
88
211
  const rawColumn = record(raw.columns) ? raw.columns[columnKey] : undefined;
@@ -109,6 +232,15 @@ export function parseSqliteSchemaSnapshot(value) {
109
232
  ...(primaryKeyPosition === undefined ? {} : { primaryKeyPosition: primaryKeyPosition }),
110
233
  };
111
234
  }
235
+ if (rowidAlias !== undefined) {
236
+ const column = Object.values(columns).find(({ name }) => name.toLowerCase() === rowidAlias.toLowerCase());
237
+ if (column === undefined ||
238
+ column.databaseType.trim().toUpperCase() !== "INTEGER" ||
239
+ column.nullable ||
240
+ column.primaryKeyPosition !== 1) {
241
+ throw new TypeError(`schema.tables.${key}.rowidAlias must name its non-null INTEGER PRIMARY KEY column`);
242
+ }
243
+ }
112
244
  const indexes = raw.indexes === undefined ? [] : raw.indexes;
113
245
  const foreignKeys = raw.foreignKeys === undefined ? [] : raw.foreignKeys;
114
246
  if (!Array.isArray(indexes))
@@ -121,6 +253,7 @@ export function parseSqliteSchemaSnapshot(value) {
121
253
  kind,
122
254
  strict,
123
255
  withoutRowid,
256
+ ...(rowidAlias === undefined ? {} : { rowidAlias }),
124
257
  columns,
125
258
  indexes: indexes.map((index, offset) => parseIndex(index, `schema.tables.${key}.indexes.${offset}`)),
126
259
  foreignKeys: foreignKeys.map((foreignKey, offset) => parseForeignKey(foreignKey, `schema.tables.${key}.foreignKeys.${offset}`)),
@@ -1 +1 @@
1
- {"version":3,"file":"snapshot.js","sourceRoot":"","sources":["../../../../src/snapshot.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"snapshot.js","sourceRoot":"","sources":["../../../../src/snapshot.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ export declare const SQLITE_LANGUAGE_SUPPORT: Readonly<{
2
+ readonly minimum: "3.39.0";
3
+ readonly maximum: "3.53.4";
4
+ readonly unknownVersion: "conservative";
5
+ readonly newerVersion: "conservative";
6
+ }>;
7
+ export declare const NODE_SQLITE_RUNTIME_SUPPORT: Readonly<{
8
+ readonly minimum: "22.13.0";
9
+ readonly lines: readonly [22, 24, 26];
10
+ readonly execution: "synchronous";
11
+ readonly cancellation: false;
12
+ }>;
13
+ export type SqliteVersion = readonly [major: number, minor: number, patch: number];
14
+ export type SqliteVersionSupport = "supported" | "below-supported" | "newer-than-tested" | "prerelease" | "unknown";
15
+ export declare function parseSqliteVersion(value: string): SqliteVersion | undefined;
16
+ export declare function compareSqliteVersions(left: SqliteVersion, right: SqliteVersion): number;
17
+ export declare function sqliteVersionSupport(value: string): SqliteVersionSupport;
18
+ export declare function isNodeSqliteRuntimeSupported(value: string): boolean;
19
+ //# sourceMappingURL=support.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"support.d.ts","sourceRoot":"","sources":["../../../../src/support.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,uBAAuB;sBACzB,QAAQ;sBACR,QAAQ;6BACD,cAAc;2BAChB,cAAc;EACnB,CAAC;AAEZ,eAAO,MAAM,2BAA2B;sBAC7B,SAAS;;wBAEP,aAAa;;EAEf,CAAC;AAEZ,MAAM,MAAM,aAAa,GAAG,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AACnF,MAAM,MAAM,oBAAoB,GAAG,WAAW,GAAG,iBAAiB,GAAG,mBAAmB,GAAG,YAAY,GAAG,SAAS,CAAC;AAEpH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,CAK3E;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,GAAG,MAAM,CAMvF;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,oBAAoB,CAWxE;AAED,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAYnE"}
@@ -0,0 +1,59 @@
1
+ export const SQLITE_LANGUAGE_SUPPORT = Object.freeze({
2
+ minimum: "3.39.0",
3
+ maximum: "3.53.4",
4
+ unknownVersion: "conservative",
5
+ newerVersion: "conservative",
6
+ });
7
+ export const NODE_SQLITE_RUNTIME_SUPPORT = Object.freeze({
8
+ minimum: "22.13.0",
9
+ lines: Object.freeze([22, 24, 26]),
10
+ execution: "synchronous",
11
+ cancellation: false,
12
+ });
13
+ export function parseSqliteVersion(value) {
14
+ const match = /^(\d+)\.(\d+)\.(\d+)(?:\D.*)?$/u.exec(value.trim());
15
+ if (match === null)
16
+ return undefined;
17
+ const version = match.slice(1, 4).map(Number);
18
+ return version.every(Number.isSafeInteger) ? version : undefined;
19
+ }
20
+ export function compareSqliteVersions(left, right) {
21
+ for (let index = 0; index < left.length; index += 1) {
22
+ const difference = left[index] - right[index];
23
+ if (difference !== 0)
24
+ return difference;
25
+ }
26
+ return 0;
27
+ }
28
+ export function sqliteVersionSupport(value) {
29
+ const parsed = parseSqliteVersion(value);
30
+ if (parsed === undefined)
31
+ return "unknown";
32
+ if (/(?:alpha|beta|rc)/iu.test(value))
33
+ return "prerelease";
34
+ if (compareSqliteVersions(parsed, parseSqliteVersion(SQLITE_LANGUAGE_SUPPORT.minimum)) < 0) {
35
+ return "below-supported";
36
+ }
37
+ if (compareSqliteVersions(parsed, parseSqliteVersion(SQLITE_LANGUAGE_SUPPORT.maximum)) > 0) {
38
+ return "newer-than-tested";
39
+ }
40
+ return "supported";
41
+ }
42
+ export function isNodeSqliteRuntimeSupported(value) {
43
+ const match = /^v?(\d+)\.(\d+)\.(\d+)(?:\D.*)?$/u.exec(value.trim());
44
+ if (match === null)
45
+ return false;
46
+ const actual = match.slice(1, 4).map(Number);
47
+ if (!NODE_SQLITE_RUNTIME_SUPPORT.lines.includes(actual[0]))
48
+ return false;
49
+ const minimum = NODE_SQLITE_RUNTIME_SUPPORT.minimum.split(".").map(Number);
50
+ if (actual[0] !== minimum[0])
51
+ return true;
52
+ for (let index = 0; index < minimum.length; index += 1) {
53
+ const difference = actual[index] - minimum[index];
54
+ if (difference !== 0)
55
+ return difference > 0;
56
+ }
57
+ return true;
58
+ }
59
+ //# sourceMappingURL=support.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"support.js","sourceRoot":"","sources":["../../../../src/support.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,13 @@
1
1
  import type { SchemaSnapshot } from "@typed-sql/schema";
2
- export type SqliteAffinity = "integer" | "text" | "blob" | "real" | "numeric";
2
+ import { type SqliteAffinity, sqliteAffinity } from "./catalog/coercions.js";
3
+ export type { SqliteAffinity };
4
+ export { sqliteAffinity };
3
5
  export interface SqliteTypePolicy {
4
6
  readonly integer: "bigint" | "number";
5
7
  readonly flexible: "union" | "unknown";
6
8
  readonly unknown: "unknown" | "never";
7
9
  }
8
10
  export declare const defaultSqliteTypePolicy: SqliteTypePolicy;
9
- export declare function sqliteAffinity(databaseType: string): SqliteAffinity;
10
11
  export declare function isKnownStrictSqliteType(databaseType: string): boolean;
11
12
  export declare function isKnownSqliteType(databaseType: string): boolean;
12
13
  export declare function sqliteFlexibleType(policy: SqliteTypePolicy): string;
@@ -1 +1 @@
1
- {"version":3,"file":"type-policy.d.ts","sourceRoot":"","sources":["../../../../src/type-policy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAExD,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;AAE9E,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,OAAO,EAAE,QAAQ,GAAG,QAAQ,CAAC;IACtC,QAAQ,CAAC,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;IACvC,QAAQ,CAAC,OAAO,EAAE,SAAS,GAAG,OAAO,CAAC;CACvC;AAED,eAAO,MAAM,uBAAuB,EAAE,gBAIpC,CAAC;AAEH,wBAAgB,cAAc,CAAC,YAAY,EAAE,MAAM,GAAG,cAAc,CAOnE;AAED,wBAAgB,uBAAuB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAErE;AAED,wBAAgB,iBAAiB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAE/D;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAInE;AAED,wBAAgB,aAAa,CAC3B,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,gBAAgB,EACxB,OAAO,GAAE;IAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,cAAc,CAAA;CAAO,GAC5E,MAAM,CAmBR;AAED,wBAAgB,iBAAiB,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAaxF"}
1
+ {"version":3,"file":"type-policy.d.ts","sourceRoot":"","sources":["../../../../src/type-policy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,KAAK,cAAc,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAE7E,YAAY,EAAE,cAAc,EAAE,CAAC;AAC/B,OAAO,EAAE,cAAc,EAAE,CAAC;AAE1B,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,OAAO,EAAE,QAAQ,GAAG,QAAQ,CAAC;IACtC,QAAQ,CAAC,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;IACvC,QAAQ,CAAC,OAAO,EAAE,SAAS,GAAG,OAAO,CAAC;CACvC;AAED,eAAO,MAAM,uBAAuB,EAAE,gBAIpC,CAAC;AAEH,wBAAgB,uBAAuB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAErE;AAED,wBAAgB,iBAAiB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAE/D;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAInE;AAED,wBAAgB,aAAa,CAC3B,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,gBAAgB,EACxB,OAAO,GAAE;IAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,cAAc,CAAA;CAAO,GAC5E,MAAM,CAmBR;AAED,wBAAgB,iBAAiB,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAaxF"}
@@ -1,20 +1,10 @@
1
+ import { sqliteAffinity } from "./catalog/coercions.js";
2
+ export { sqliteAffinity };
1
3
  export const defaultSqliteTypePolicy = Object.freeze({
2
4
  integer: "bigint",
3
5
  flexible: "union",
4
6
  unknown: "unknown",
5
7
  });
6
- export function sqliteAffinity(databaseType) {
7
- const type = databaseType.trim().toUpperCase();
8
- if (type.includes("INT"))
9
- return "integer";
10
- if (type.includes("CHAR") || type.includes("CLOB") || type.includes("TEXT"))
11
- return "text";
12
- if (type.length === 0 || type.includes("BLOB"))
13
- return "blob";
14
- if (type.includes("REAL") || type.includes("FLOA") || type.includes("DOUB"))
15
- return "real";
16
- return "numeric";
17
- }
18
8
  export function isKnownStrictSqliteType(databaseType) {
19
9
  return ["ANY", "BLOB", "INT", "INTEGER", "REAL", "TEXT"].includes(databaseType.trim().toUpperCase());
20
10
  }
@@ -1 +1 @@
1
- {"version":3,"file":"type-policy.js","sourceRoot":"","sources":["../../../../src/type-policy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"type-policy.js","sourceRoot":"","sources":["../../../../src/type-policy.ts"],"names":[],"mappings":"AACA,OAAO,EAAuB,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAG7E,OAAO,EAAE,cAAc,EAAE,CAAC;AAQ1B,MAAM,CAAC,MAAM,uBAAuB,GAAqB,MAAM,CAAC,MAAM,CAAC;IACrE,OAAO,EAAE,QAAQ;IACjB,QAAQ,EAAE,OAAO;IACjB,OAAO,EAAE,SAAS;CACnB,CAAC,CAAC;AAEH,MAAM,UAAU,uBAAuB,CAAC,YAAoB;IAC1D,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;AACvG,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,YAAoB;IACpD,OAAO,YAAY,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;AACxC,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,MAAwB;IACzD,OAAO,MAAM,CAAC,QAAQ,KAAK,SAAS;QAClC,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACnF,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,YAAoB,EACpB,MAAwB,EACxB,OAAO,GAAoE,EAAE;IAE7E,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QACpB,OAAO,kBAAkB,CAAC,MAAM,CAAC,CAAC;IACpC,CAAC;IACD,QAAQ,YAAY,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC;QAC1C,KAAK,KAAK,CAAC;QACX,KAAK,SAAS;YACZ,OAAO,MAAM,CAAC,OAAO,CAAC;QACxB,KAAK,MAAM;YACT,OAAO,QAAQ,CAAC;QAClB,KAAK,MAAM;YACT,OAAO,QAAQ,CAAC;QAClB,KAAK,MAAM;YACT,OAAO,YAAY,CAAC;QACtB,KAAK,KAAK;YACR,OAAO,kBAAkB,CAAC,MAAM,CAAC,CAAC;QACpC;YACE,OAAO,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC,EAAE,MAAM,IAAI,MAAM,CAAC,OAAO,CAAC;IAC3F,CAAC;AACH,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,YAAoB,EAAE,MAAwB;IAC9E,QAAQ,cAAc,CAAC,YAAY,CAAC,EAAE,CAAC;QACrC,KAAK,SAAS;YACZ,OAAO,MAAM,CAAC,OAAO,CAAC;QACxB,KAAK,MAAM;YACT,OAAO,QAAQ,CAAC;QAClB,KAAK,MAAM;YACT,OAAO,QAAQ,CAAC;QAClB,KAAK,MAAM;YACT,OAAO,YAAY,CAAC;QACtB,KAAK,SAAS;YACZ,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAChE,CAAC;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@typed-sql/sqlite",
3
- "version": "2.0.0-rc.2",
3
+ "version": "2.1.0-rc.1",
4
4
  "description": "SQLite grammar, sound schema introspection, type resolution, and optional application-owned adapters for typed-sql.",
5
5
  "license": "MIT",
6
6
  "author": "Lojhan",
@@ -28,7 +28,7 @@
28
28
  "access": "public"
29
29
  },
30
30
  "typedSql": {
31
- "releaseTrack": "experimental"
31
+ "releaseTrack": "stable"
32
32
  },
33
33
  "sideEffects": false,
34
34
  "type": "module",
@@ -38,16 +38,16 @@
38
38
  "./node-sqlite": "./dist/packages/sqlite/src/node-sqlite.js"
39
39
  },
40
40
  "dependencies": {
41
- "@typed-sql/ast": "2.0.0",
42
- "@typed-sql/core": "2.0.0",
43
- "@typed-sql/schema": "2.0.0"
41
+ "@typed-sql/ast": "2.1.0-rc.1",
42
+ "@typed-sql/schema": "2.1.0-rc.1",
43
+ "@typed-sql/core": "2.1.0-rc.1"
44
44
  },
45
45
  "devDependencies": {
46
- "@typed-sql/conformance": "2.0.0"
46
+ "@typed-sql/conformance": "2.1.0-rc.1"
47
47
  },
48
48
  "scripts": {
49
- "test": "poku test --reporter=compact --enforce",
49
+ "test": "poku test --sequential --reporter=compact --enforce",
50
50
  "test:soundness": "poku test/soundness.test.ts --reporter=compact --enforce",
51
- "coverage": "poku test --coverage=@pokujs/c8 --coverageConfig=.c8rc.json --reporter=compact --enforce"
51
+ "coverage": "poku test --sequential --coverage=@pokujs/c8 --coverageConfig=.c8rc.json --reporter=compact --enforce"
52
52
  }
53
53
  }