@lyku/lockstep-pg 1.4.0 → 1.5.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/package.json +1 -1
- package/src/buildTableIndexCommand.d.ts.map +1 -1
- package/src/buildTableIndexCommand.js +21 -6
- package/src/buildTableIndexCommand.js.map +1 -1
- package/src/buildTableTriggerCommands.d.ts +13 -1
- package/src/buildTableTriggerCommands.d.ts.map +1 -1
- package/src/buildTableTriggerCommands.js +33 -14
- package/src/buildTableTriggerCommands.js.map +1 -1
- package/src/createTable.d.ts.map +1 -1
- package/src/createTable.js +23 -4
- package/src/createTable.js.map +1 -1
- package/src/dateToPostgresString.js +2 -2
- package/src/dateToPostgresString.js.map +1 -1
- package/src/diff.d.ts +12 -0
- package/src/diff.d.ts.map +1 -1
- package/src/diff.js +113 -6
- package/src/diff.js.map +1 -1
- package/src/drift.d.ts +8 -11
- package/src/drift.d.ts.map +1 -1
- package/src/drift.js +1 -298
- package/src/drift.js.map +1 -1
- package/src/form.d.ts.map +1 -1
- package/src/form.js +43 -2
- package/src/form.js.map +1 -1
- package/src/generateSql.d.ts.map +1 -1
- package/src/generateSql.js +69 -8
- package/src/generateSql.js.map +1 -1
- package/src/index.d.ts +3 -3
- package/src/index.d.ts.map +1 -1
- package/src/index.js +2 -4
- package/src/index.js.map +1 -1
- package/src/introspect.d.ts +12 -0
- package/src/introspect.d.ts.map +1 -1
- package/src/introspect.js +195 -34
- package/src/introspect.js.map +1 -1
- package/src/mapColumnType.d.ts.map +1 -1
- package/src/mapColumnType.js +6 -0
- package/src/mapColumnType.js.map +1 -1
- package/src/mapSnowflakeType.d.ts +9 -0
- package/src/mapSnowflakeType.d.ts.map +1 -0
- package/src/mapSnowflakeType.js +19 -0
- package/src/mapSnowflakeType.js.map +1 -0
- package/src/migrate.d.ts +11 -9
- package/src/migrate.d.ts.map +1 -1
- package/src/migrate.js +28 -345
- package/src/migrate.js.map +1 -1
- package/src/seed.d.ts.map +1 -1
- package/src/seed.js +6 -1
- package/src/seed.js.map +1 -1
package/src/introspect.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"introspect.d.ts","sourceRoot":"","sources":["../../../../libs/lockstep-pg/src/introspect.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,IAAI,CAAC;AAC5B,OAAO,KAAK,EACX,kBAAkB,EAClB,mBAAmB,EAEnB,MAAM,qBAAqB,CAAC;AAE7B,MAAM,WAAW,kBAAkB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,UAAU,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC5B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAED,MAAM,WAAW,iBAAiB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"introspect.d.ts","sourceRoot":"","sources":["../../../../libs/lockstep-pg/src/introspect.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,IAAI,CAAC;AAC5B,OAAO,KAAK,EACX,kBAAkB,EAClB,mBAAmB,EAEnB,MAAM,qBAAqB,CAAC;AAE7B,MAAM,WAAW,kBAAkB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,UAAU,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC5B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAED,MAAM,WAAW,iBAAiB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,uEAAuE;IACvE,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,sBAAsB;IACtC,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,iBAAiB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IACzC,OAAO,EAAE,iBAAiB,EAAE,CAAC;IAC7B,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,iBAAiB,EAAE,MAAM,EAAE,EAAE,CAAC;IAC9B;;;;OAIG;IACH,qBAAqB,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;IACnE,WAAW,EAAE,sBAAsB,EAAE,CAAC;CACtC;AA4DD;;GAEG;AACH,wBAAgB,eAAe,CAC9B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,GACb;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAyDhD;AAuFD;;GAEG;AACH,wBAAsB,eAAe,CACpC,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GACf,OAAO,CAAC,iBAAiB,CAAC,CAsM5B;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CACvC,MAAM,EAAE,MAAM,GACZ,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAgBzC;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAClC,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,kBAAkB,CAAC,mBAAmB,CAAC,GAC5C,iBAAiB,CAwPnB"}
|
package/src/introspect.js
CHANGED
|
@@ -95,12 +95,58 @@ export function normalizeDbType(pgType, udtName) {
|
|
|
95
95
|
/**
|
|
96
96
|
* Extract enum values from a CHECK constraint clause
|
|
97
97
|
*/
|
|
98
|
+
/** Return the content of the first balanced parenthesised group, or null if none. */
|
|
99
|
+
function extractBalancedParenGroup(s) {
|
|
100
|
+
const start = s.indexOf('(');
|
|
101
|
+
if (start === -1)
|
|
102
|
+
return null;
|
|
103
|
+
let depth = 0;
|
|
104
|
+
for (let i = start; i < s.length; i++) {
|
|
105
|
+
const ch = s.charAt(i);
|
|
106
|
+
if (ch === '(')
|
|
107
|
+
depth++;
|
|
108
|
+
else if (ch === ')') {
|
|
109
|
+
depth--;
|
|
110
|
+
if (depth === 0)
|
|
111
|
+
return s.slice(start + 1, i);
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
return null;
|
|
115
|
+
}
|
|
116
|
+
/** Split on top-level commas (commas not nested inside parentheses). */
|
|
117
|
+
function splitTopLevel(s) {
|
|
118
|
+
const parts = [];
|
|
119
|
+
let depth = 0;
|
|
120
|
+
let cur = '';
|
|
121
|
+
for (const ch of s) {
|
|
122
|
+
if (ch === '(')
|
|
123
|
+
depth++;
|
|
124
|
+
else if (ch === ')')
|
|
125
|
+
depth--;
|
|
126
|
+
if (ch === ',' && depth === 0) {
|
|
127
|
+
parts.push(cur);
|
|
128
|
+
cur = '';
|
|
129
|
+
}
|
|
130
|
+
else {
|
|
131
|
+
cur += ch;
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
if (cur.trim())
|
|
135
|
+
parts.push(cur);
|
|
136
|
+
return parts;
|
|
137
|
+
}
|
|
98
138
|
function extractEnumValues(checkClause) {
|
|
99
139
|
// Match patterns like:
|
|
100
140
|
// CHECK ((col = ANY (ARRAY['a'::text, 'b'::text])))
|
|
101
141
|
// CHECK (col IN ('a', 'b', 'c'))
|
|
102
142
|
// CHECK (("col" = ANY (ARRAY['a'::text, 'b'::text])))
|
|
103
|
-
|
|
143
|
+
// CHECK (("col" = 'a'::text)) -- Postgres collapses a single-value IN to equality.
|
|
144
|
+
// Match a true equality `= '` only — NOT comparisons like `>= '`, `<= '`, `!= '`
|
|
145
|
+
// (e.g. a numeric minimum `stock >= '-1'` must NOT be read as an enum).
|
|
146
|
+
const singleEquality = /(?:^|[^<>!])=\s*'/.test(checkClause);
|
|
147
|
+
if (!checkClause.includes(' IN (') &&
|
|
148
|
+
!checkClause.includes('ANY') &&
|
|
149
|
+
!singleEquality) {
|
|
104
150
|
return null;
|
|
105
151
|
}
|
|
106
152
|
const values = [];
|
|
@@ -156,9 +202,17 @@ export async function introspectTable(client, tableName) {
|
|
|
156
202
|
JOIN pg_attribute att ON att.attnum = ANY(con.conkey) AND att.attrelid = con.conrelid
|
|
157
203
|
WHERE con.conrelid = $1::regclass
|
|
158
204
|
AND con.contype = 'c'
|
|
159
|
-
`, [`"${tableName}"`]);
|
|
205
|
+
`, [`public."${tableName}"`]);
|
|
160
206
|
const checkConstraints = new Map();
|
|
161
207
|
for (const row of checkResult.rows) {
|
|
208
|
+
// A column can carry multiple CHECKs (e.g. an enum IN(...) plus a length check).
|
|
209
|
+
// Prefer the one that yields enum values so enumValues isn't lost to last-write-wins.
|
|
210
|
+
const existing = checkConstraints.get(row.column_name);
|
|
211
|
+
if (existing &&
|
|
212
|
+
extractEnumValues(existing.check_clause) &&
|
|
213
|
+
!extractEnumValues(row.check_clause)) {
|
|
214
|
+
continue;
|
|
215
|
+
}
|
|
162
216
|
checkConstraints.set(row.column_name, row);
|
|
163
217
|
}
|
|
164
218
|
// Build columns map
|
|
@@ -189,23 +243,35 @@ export async function introspectTable(client, tableName) {
|
|
|
189
243
|
// Parse index definition to extract columns
|
|
190
244
|
// Format: CREATE [UNIQUE] INDEX name ON table USING btree (col1, col2)
|
|
191
245
|
const isUnique = row.indexdef.includes('UNIQUE');
|
|
192
|
-
|
|
246
|
+
// Extract the index key list as a BALANCED paren group (the first '(' to its match),
|
|
247
|
+
// so expression indexes like (lower(email)) aren't truncated at the inner ')'.
|
|
248
|
+
const colsPart = extractBalancedParenGroup(row.indexdef);
|
|
193
249
|
const indexColumns = [];
|
|
194
|
-
if (
|
|
195
|
-
const colsPart
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
250
|
+
if (colsPart !== null) {
|
|
251
|
+
for (const part of splitTopLevel(colsPart)) {
|
|
252
|
+
const trimmed = part.trim();
|
|
253
|
+
// Leading identifier (optionally quoted); the !includes('(') guard below keeps
|
|
254
|
+
// expression indexes out of this branch, so trailing modifiers don't matter here.
|
|
255
|
+
const plain = trimmed.match(/^"?([A-Za-z_][A-Za-z0-9_]*)"?/);
|
|
256
|
+
if (plain && !trimmed.includes('(')) {
|
|
257
|
+
indexColumns.push(plain[1]);
|
|
258
|
+
}
|
|
259
|
+
else {
|
|
260
|
+
// Expression index, e.g. lower(email) — recover the first column identifier.
|
|
261
|
+
const inner = trimmed.match(/\(\s*"?([A-Za-z_][A-Za-z0-9_]*)"?/);
|
|
262
|
+
indexColumns.push(inner ? inner[1] : trimmed.replace(/"/g, '').split(' ')[0]);
|
|
263
|
+
}
|
|
202
264
|
}
|
|
203
265
|
}
|
|
266
|
+
// Capture the partial-index predicate (CREATE INDEX ... (col) WHERE (...)) so the diff
|
|
267
|
+
// can detect partial-index drift instead of silently dropping it.
|
|
268
|
+
const whereMatch = row.indexdef.match(/\bWHERE\b\s+(.+)$/i);
|
|
204
269
|
indexes.push({
|
|
205
270
|
name: row.indexname,
|
|
206
271
|
columns: indexColumns,
|
|
207
272
|
unique: isUnique,
|
|
208
273
|
definition: row.indexdef,
|
|
274
|
+
...(whereMatch ? { where: whereMatch[1].trim() } : {}),
|
|
209
275
|
});
|
|
210
276
|
}
|
|
211
277
|
// Get primary key
|
|
@@ -215,7 +281,7 @@ export async function introspectTable(client, tableName) {
|
|
|
215
281
|
JOIN pg_attribute a ON a.attrelid = i.indrelid AND a.attnum = ANY(i.indkey)
|
|
216
282
|
WHERE i.indrelid = $1::regclass AND i.indisprimary
|
|
217
283
|
ORDER BY array_position(i.indkey, a.attnum)
|
|
218
|
-
`, [`"${tableName}"`]);
|
|
284
|
+
`, [`public."${tableName}"`]);
|
|
219
285
|
const primaryKey = pkResult.rows.map((r) => r.column_name);
|
|
220
286
|
// Get unique constraints (excluding primary key)
|
|
221
287
|
const uniqueResult = await client.query(`
|
|
@@ -225,7 +291,7 @@ export async function introspectTable(client, tableName) {
|
|
|
225
291
|
WHERE con.conrelid = $1::regclass
|
|
226
292
|
AND con.contype = 'u'
|
|
227
293
|
ORDER BY con.conname, array_position(con.conkey, att.attnum)
|
|
228
|
-
`, [`"${tableName}"`]);
|
|
294
|
+
`, [`public."${tableName}"`]);
|
|
229
295
|
const uniqueByConstraint = new Map();
|
|
230
296
|
for (const row of uniqueResult.rows) {
|
|
231
297
|
const cols = uniqueByConstraint.get(row.constraint_name) ?? [];
|
|
@@ -233,6 +299,7 @@ export async function introspectTable(client, tableName) {
|
|
|
233
299
|
uniqueByConstraint.set(row.constraint_name, cols);
|
|
234
300
|
}
|
|
235
301
|
const uniqueConstraints = Array.from(uniqueByConstraint.values());
|
|
302
|
+
const uniqueConstraintNames = Array.from(uniqueByConstraint.entries()).map(([name, columns]) => ({ name, columns }));
|
|
236
303
|
// Get foreign key constraints
|
|
237
304
|
const fkResult = await client.query(`
|
|
238
305
|
SELECT
|
|
@@ -261,6 +328,7 @@ export async function introspectTable(client, tableName) {
|
|
|
261
328
|
indexes,
|
|
262
329
|
primaryKey,
|
|
263
330
|
uniqueConstraints,
|
|
331
|
+
uniqueConstraintNames,
|
|
264
332
|
foreignKeys,
|
|
265
333
|
};
|
|
266
334
|
}
|
|
@@ -291,12 +359,20 @@ export function modelToIntrospected(tableName, model) {
|
|
|
291
359
|
const columns = new Map();
|
|
292
360
|
if ('properties' in schema) {
|
|
293
361
|
const required = new Set('required' in schema ? schema.required : []);
|
|
294
|
-
|
|
362
|
+
// Managed (infra) columns live on the table model, not schema.properties, but are
|
|
363
|
+
// emitted into the DDL by buildTableCreationCommand — so the introspected model must
|
|
364
|
+
// include them too, else the diff sees them as extra DB columns and drops them
|
|
365
|
+
// (e.g. synced<T>'s `sequence`). They're nullable-with-default (never in `required`).
|
|
366
|
+
const managedCols = Object.entries((model.managedColumns ?? {}));
|
|
367
|
+
for (const [colName, colSchema] of [
|
|
368
|
+
...Object.entries(schema.properties),
|
|
369
|
+
...managedCols,
|
|
370
|
+
]) {
|
|
295
371
|
const col = colSchema;
|
|
296
372
|
let type = col.type;
|
|
297
373
|
let arrayItemType = null;
|
|
298
374
|
// Normalize type names
|
|
299
|
-
if (type === 'bigserial')
|
|
375
|
+
if (type === 'bigserial' || type === 'snowflake')
|
|
300
376
|
type = 'bigint';
|
|
301
377
|
if (type === 'serial')
|
|
302
378
|
type = 'integer';
|
|
@@ -314,8 +390,19 @@ export function modelToIntrospected(tableName, model) {
|
|
|
314
390
|
type = 'varchar';
|
|
315
391
|
if (type === 'character' || type === 'bpchar')
|
|
316
392
|
type = 'char';
|
|
317
|
-
// Enums are stored as text
|
|
318
|
-
|
|
393
|
+
// Enums are stored as text. Text columns with an enumerating pattern
|
|
394
|
+
// (^(a|b|c)$ — e.g. visibilityColumn) also carry their allowed values, so
|
|
395
|
+
// extract them too. Otherwise the diff sees the DB's real CHECK values vs the
|
|
396
|
+
// model's "no values" and tries to rewrite the constraint to an (invalid) empty set.
|
|
397
|
+
let enumValues = col.type === 'enum' && col.enum ? [...col.enum] : null;
|
|
398
|
+
if (enumValues === null &&
|
|
399
|
+
col.type === 'text' &&
|
|
400
|
+
'pattern' in col &&
|
|
401
|
+
typeof col.pattern === 'string') {
|
|
402
|
+
const patternMatch = col.pattern.match(/^\^\(([^)]+)\)\$$/);
|
|
403
|
+
if (patternMatch)
|
|
404
|
+
enumValues = patternMatch[1].split('|');
|
|
405
|
+
}
|
|
319
406
|
if (col.type === 'enum')
|
|
320
407
|
type = 'text';
|
|
321
408
|
if (col.type === 'array') {
|
|
@@ -342,18 +429,39 @@ export function modelToIntrospected(tableName, model) {
|
|
|
342
429
|
}
|
|
343
430
|
}
|
|
344
431
|
}
|
|
432
|
+
// serial/bigserial carry an implicit nextval() default from their backing sequence
|
|
433
|
+
// (Postgres names it "<table>_<col>_seq"); model it so the round-trip doesn't try to
|
|
434
|
+
// drop the sequence. normalizeDefault strips the ::regclass cast on both sides.
|
|
435
|
+
let defaultValue = null;
|
|
436
|
+
if ('default' in col && col.default !== undefined) {
|
|
437
|
+
const d = col.default;
|
|
438
|
+
if (typeof d === 'object' &&
|
|
439
|
+
d !== null &&
|
|
440
|
+
'sql' in d) {
|
|
441
|
+
defaultValue = d['sql'];
|
|
442
|
+
}
|
|
443
|
+
else if (typeof d === 'string') {
|
|
444
|
+
defaultValue = `'${d}'`;
|
|
445
|
+
}
|
|
446
|
+
else {
|
|
447
|
+
defaultValue = String(d);
|
|
448
|
+
}
|
|
449
|
+
}
|
|
450
|
+
else if (col.type === 'serial' || col.type === 'bigserial') {
|
|
451
|
+
const seq = `${tableName}_${colName}_seq`;
|
|
452
|
+
const quotedSeq = /[^a-z0-9_]/.test(seq) ? `"${seq}"` : seq;
|
|
453
|
+
defaultValue = `nextval('${quotedSeq}'::regclass)`;
|
|
454
|
+
}
|
|
345
455
|
columns.set(colName, {
|
|
346
456
|
name: colName,
|
|
347
457
|
type,
|
|
348
458
|
nullable: !required.has(colName),
|
|
349
|
-
default:
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
? col.
|
|
354
|
-
:
|
|
355
|
-
: null,
|
|
356
|
-
maxLength: 'maxLength' in col ? col.maxLength : null,
|
|
459
|
+
default: defaultValue,
|
|
460
|
+
maxLength: 'maxLength' in col
|
|
461
|
+
? col.maxLength
|
|
462
|
+
: 'length' in col
|
|
463
|
+
? col.length
|
|
464
|
+
: null,
|
|
357
465
|
checkConstraint: null, // We don't store the full clause
|
|
358
466
|
enumValues,
|
|
359
467
|
arrayItemType,
|
|
@@ -376,10 +484,41 @@ export function modelToIntrospected(tableName, model) {
|
|
|
376
484
|
}
|
|
377
485
|
else {
|
|
378
486
|
const objIdx = idx;
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
487
|
+
if (objIdx.raw !== undefined) {
|
|
488
|
+
// Expression / functional index. The diff matches it by name; recover the
|
|
489
|
+
// underlying columns from the raw SQL for the columns field (best-effort).
|
|
490
|
+
const recovered = splitTopLevel(objIdx.raw).map((part) => {
|
|
491
|
+
const t = part.trim();
|
|
492
|
+
const plain = t.match(/^"?([A-Za-z_][A-Za-z0-9_]*)"?/);
|
|
493
|
+
if (plain && !t.includes('('))
|
|
494
|
+
return plain[1];
|
|
495
|
+
const inner = t.match(/\(\s*"?([A-Za-z_][A-Za-z0-9_]*)"?/);
|
|
496
|
+
return inner ? inner[1] : t.replace(/"/g, '').split(' ')[0];
|
|
497
|
+
});
|
|
498
|
+
indexes.push({
|
|
499
|
+
name: objIdx.name ?? `idx_${tableName}_expr`,
|
|
500
|
+
columns: recovered,
|
|
501
|
+
unique: false,
|
|
502
|
+
definition: '',
|
|
503
|
+
...(objIdx.where ? { where: objIdx.where } : {}),
|
|
504
|
+
});
|
|
505
|
+
continue;
|
|
506
|
+
}
|
|
507
|
+
const rawCols = Array.isArray(objIdx.columns)
|
|
508
|
+
? objIdx.columns
|
|
509
|
+
: [objIdx.columns];
|
|
510
|
+
cols = rawCols.map((c) => c.split(' ')[0]);
|
|
382
511
|
name = objIdx.name ?? `idx_${tableName}_${cols.join('_')}`;
|
|
512
|
+
const hasModifiers = rawCols.some((c) => c.includes(' '));
|
|
513
|
+
indexes.push({
|
|
514
|
+
name,
|
|
515
|
+
columns: cols,
|
|
516
|
+
unique: false,
|
|
517
|
+
definition: '',
|
|
518
|
+
where: objIdx.where,
|
|
519
|
+
...(hasModifiers ? { fullColumns: rawCols } : {}),
|
|
520
|
+
});
|
|
521
|
+
continue;
|
|
383
522
|
}
|
|
384
523
|
indexes.push({
|
|
385
524
|
name,
|
|
@@ -395,18 +534,40 @@ export function modelToIntrospected(tableName, model) {
|
|
|
395
534
|
? model.primaryKey
|
|
396
535
|
: [model.primaryKey]
|
|
397
536
|
: [];
|
|
398
|
-
// Unique constraints
|
|
537
|
+
// Unique constraints. `unique` on a table model is a SINGLE constraint: either one
|
|
538
|
+
// column ('a') or one composite (['a','b']). A flat string[] is ONE composite — NOT
|
|
539
|
+
// one unique per column (that split was the bug behind phantom mutedUsers_userId_unique
|
|
540
|
+
// etc.). The legacy nested form ([['a','b'], ['c']] = multiple constraints) is also accepted.
|
|
399
541
|
const uniqueConstraints = [];
|
|
400
542
|
if (model.unique) {
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
543
|
+
const u = model.unique;
|
|
544
|
+
if (typeof u === 'string') {
|
|
545
|
+
uniqueConstraints.push([u]);
|
|
546
|
+
}
|
|
547
|
+
else if (Array.isArray(u)) {
|
|
548
|
+
if (u.every((x) => typeof x === 'string')) {
|
|
549
|
+
uniqueConstraints.push([...u]);
|
|
404
550
|
}
|
|
405
|
-
else
|
|
406
|
-
|
|
551
|
+
else {
|
|
552
|
+
for (const c of u) {
|
|
553
|
+
uniqueConstraints.push(typeof c === 'string' ? [c] : [...c]);
|
|
554
|
+
}
|
|
407
555
|
}
|
|
408
556
|
}
|
|
409
557
|
}
|
|
558
|
+
// Column-level `unique: true` — a single-column unique declared on the property itself.
|
|
559
|
+
// buildTableCreationCommand emits these as an inline UNIQUE, so the model's introspected
|
|
560
|
+
// form must report them too, else the round-trip sees a phantom drop_unique_constraint.
|
|
561
|
+
const props = 'properties' in schema
|
|
562
|
+
? schema.properties
|
|
563
|
+
: {};
|
|
564
|
+
for (const [colName, colSchema] of Object.entries(props)) {
|
|
565
|
+
if (colSchema &&
|
|
566
|
+
colSchema.unique === true &&
|
|
567
|
+
!uniqueConstraints.some((c) => c.length === 1 && c[0] === colName)) {
|
|
568
|
+
uniqueConstraints.push([colName]);
|
|
569
|
+
}
|
|
570
|
+
}
|
|
410
571
|
// Foreign keys — model format: { columnName: { referencedTable: referencedColumn } }
|
|
411
572
|
const foreignKeys = [];
|
|
412
573
|
if (model.foreignKeys) {
|
package/src/introspect.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"introspect.js","sourceRoot":"","sources":["../../../../libs/lockstep-pg/src/introspect.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"introspect.js","sourceRoot":"","sources":["../../../../libs/lockstep-pg/src/introspect.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mapColumnType.d.ts","sourceRoot":"","sources":["../../../../libs/lockstep-pg/src/mapColumnType.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"mapColumnType.d.ts","sourceRoot":"","sources":["../../../../libs/lockstep-pg/src/mapColumnType.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAO1D,wBAAgB,aAAa,CAC5B,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,mBAAmB,GAC/B,MAAM,CAwDR"}
|
package/src/mapColumnType.js
CHANGED
|
@@ -7,6 +7,7 @@ import { mapTimestamptzType } from './mapTimestamptzType';
|
|
|
7
7
|
import { mapCharType } from './mapCharType';
|
|
8
8
|
import { mapBigserialType } from './mapBigserialType';
|
|
9
9
|
import { mapSerialType } from './mapSerialType';
|
|
10
|
+
import { mapSnowflakeType } from './mapSnowflakeType';
|
|
10
11
|
export function mapColumnType(name, columnSchema) {
|
|
11
12
|
// console.log('switching', columnSchema.type);
|
|
12
13
|
switch (columnSchema.type) {
|
|
@@ -29,6 +30,8 @@ export function mapColumnType(name, columnSchema) {
|
|
|
29
30
|
return mapBigintType(name, columnSchema);
|
|
30
31
|
case 'bigserial':
|
|
31
32
|
return mapBigserialType(name, columnSchema);
|
|
33
|
+
case 'snowflake':
|
|
34
|
+
return mapSnowflakeType(name, columnSchema);
|
|
32
35
|
case 'serial':
|
|
33
36
|
return mapSerialType(name, columnSchema);
|
|
34
37
|
case 'boolean':
|
|
@@ -51,6 +54,9 @@ export function mapColumnType(name, columnSchema) {
|
|
|
51
54
|
case 'jsonb':
|
|
52
55
|
return 'JSONB';
|
|
53
56
|
case 'enum':
|
|
57
|
+
// An empty enum would emit `CHECK (... IN ())` — invalid, non-executable DDL.
|
|
58
|
+
if (!columnSchema.enum || columnSchema.enum.length === 0)
|
|
59
|
+
return 'TEXT';
|
|
54
60
|
return `TEXT CHECK ("${name}" IN (${columnSchema.enum
|
|
55
61
|
.map((e) => `'${e}'`)
|
|
56
62
|
.join(', ')}))`;
|
package/src/mapColumnType.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mapColumnType.js","sourceRoot":"","sources":["../../../../libs/lockstep-pg/src/mapColumnType.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAG1D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"mapColumnType.js","sourceRoot":"","sources":["../../../../libs/lockstep-pg/src/mapColumnType.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAG1D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,MAAM,UAAU,aAAa,CAC5B,IAAY,EACZ,YAAiC;IAEjC,+CAA+C;IAC/C,QAAQ,YAAY,CAAC,IAAI,EAAE,CAAC;QAC3B,KAAK,kBAAkB,CAAC;QACxB,KAAK,QAAQ;YACZ,OAAO,kBAAkB,CAAC;QAC3B,KAAK,MAAM,CAAC;QACZ,KAAK,QAAQ;YACZ,OAAO,MAAM,CAAC;QACf,KAAK,MAAM;YACV,OAAO,MAAM,CAAC;QACf,KAAK,SAAS,CAAC;QACf,KAAK,KAAK,CAAC;QACX,KAAK,MAAM;YACV,OAAO,cAAc,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;QAC3C,KAAK,MAAM,CAAC;QACZ,KAAK,UAAU;YACd,OAAO,UAAU,CAAC;QACnB,KAAK,QAAQ;YACZ,OAAO,aAAa,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;QAC1C,KAAK,WAAW;YACf,OAAO,gBAAgB,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;QAC7C,KAAK,WAAW;YACf,OAAO,gBAAgB,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;QAC7C,KAAK,QAAQ;YACZ,OAAO,aAAa,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;QAC1C,KAAK,SAAS;YACb,OAAO,SAAS,CAAC;QAClB,KAAK,MAAM,CAAC;QACZ,KAAK,WAAW,CAAC;QACjB,KAAK,QAAQ;YACZ,OAAO,WAAW,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;QACxC,KAAK,MAAM;YACV,OAAO,WAAW,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;QACxC,KAAK,SAAS,CAAC;QACf,KAAK,mBAAmB;YACvB,OAAO,cAAc,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;QAC3C,KAAK,WAAW;YACf,OAAO,WAAW,CAAC;QACpB,KAAK,aAAa;YACjB,OAAO,kBAAkB,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;QAC/C,KAAK,SAAS;YACb,OAAO,SAAS,CAAC;QAClB,KAAK,OAAO;YACX,OAAO,OAAO,CAAC;QAChB,KAAK,MAAM;YACV,8EAA8E;YAC9E,IAAI,CAAC,YAAY,CAAC,IAAI,IAAI,YAAY,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,MAAM,CAAC;YACxE,OAAO,gBAAgB,IAAI,SAAS,YAAY,CAAC,IAAI;iBACnD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC;iBACpB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QAClB,KAAK,OAAO;YACX,OAAO,YAAY,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;QACzC;YACC,MAAM,IAAI,KAAK,CAAC,4BAA4B,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;IACnE,CAAC;AACF,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { SnowflakeColumnModel } from '@lyku/lockstep-core';
|
|
2
|
+
/**
|
|
3
|
+
* Maps a snowflake column to DDL.
|
|
4
|
+
*
|
|
5
|
+
* Emits BIGINT NOT NULL (no sequence) — the ID is generated client-side
|
|
6
|
+
* by the snowflake Kysely plugin before the INSERT reaches Postgres.
|
|
7
|
+
*/
|
|
8
|
+
export declare const mapSnowflakeType: (name: string, columnSchema: SnowflakeColumnModel) => string;
|
|
9
|
+
//# sourceMappingURL=mapSnowflakeType.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mapSnowflakeType.d.ts","sourceRoot":"","sources":["../../../../libs/lockstep-pg/src/mapSnowflakeType.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAG3D;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,GAC5B,MAAM,MAAM,EACZ,cAAc,oBAAoB,KAChC,MAWF,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { numberChecks } from './numberChecks';
|
|
2
|
+
/**
|
|
3
|
+
* Maps a snowflake column to DDL.
|
|
4
|
+
*
|
|
5
|
+
* Emits BIGINT NOT NULL (no sequence) — the ID is generated client-side
|
|
6
|
+
* by the snowflake Kysely plugin before the INSERT reaches Postgres.
|
|
7
|
+
*/
|
|
8
|
+
export const mapSnowflakeType = (name, columnSchema) => {
|
|
9
|
+
const constraints = numberChecks(name, columnSchema);
|
|
10
|
+
constraints.push('NOT NULL');
|
|
11
|
+
if (columnSchema.primaryKey) {
|
|
12
|
+
constraints.push('PRIMARY KEY');
|
|
13
|
+
}
|
|
14
|
+
if (columnSchema.unique) {
|
|
15
|
+
constraints.push('UNIQUE');
|
|
16
|
+
}
|
|
17
|
+
return `BIGINT${constraints.length ? ' ' + constraints.join(' ') : ''}`;
|
|
18
|
+
};
|
|
19
|
+
//# sourceMappingURL=mapSnowflakeType.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mapSnowflakeType.js","sourceRoot":"","sources":["../../../../libs/lockstep-pg/src/mapSnowflakeType.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C;;;;;GAKG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC/B,IAAY,EACZ,YAAkC,EACzB,EAAE;IACX,MAAM,WAAW,GAAG,YAAY,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;IACrD,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAE7B,IAAI,YAAY,CAAC,UAAU,EAAE,CAAC;QAC7B,WAAW,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACjC,CAAC;IACD,IAAI,YAAY,CAAC,MAAM,EAAE,CAAC;QACzB,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC5B,CAAC;IACD,OAAO,SAAS,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;AACzE,CAAC,CAAC"}
|
package/src/migrate.d.ts
CHANGED
|
@@ -1,13 +1,15 @@
|
|
|
1
|
-
import {
|
|
2
|
-
interface MigrationResult {
|
|
3
|
-
safe: string[];
|
|
4
|
-
destructive: string[];
|
|
5
|
-
}
|
|
6
|
-
export declare function driftToSql(drifts: Drift[], config: DataformConfig): MigrationResult;
|
|
7
|
-
export declare function generateMigration(connectionString: string, config: DataformConfig): Promise<{
|
|
1
|
+
import type { DataformConfig } from './drift';
|
|
2
|
+
export interface MigrationResult {
|
|
8
3
|
safe: string;
|
|
9
4
|
destructive: string;
|
|
10
5
|
driftCount: number;
|
|
11
|
-
}
|
|
12
|
-
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Generate migration SQL by diffing the live database against the model config.
|
|
9
|
+
*
|
|
10
|
+
* This is the single source of truth: introspect the DB → convert each model with
|
|
11
|
+
* modelToIntrospected → diffDatabase → generateMigrationSql. (Replaces the old narrow
|
|
12
|
+
* detectDrift/driftToSql path; schemaDiff.ts uses the same pipeline for --apply.)
|
|
13
|
+
*/
|
|
14
|
+
export declare function generateMigration(connectionString: string, config: DataformConfig): Promise<MigrationResult>;
|
|
13
15
|
//# sourceMappingURL=migrate.d.ts.map
|
package/src/migrate.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrate.d.ts","sourceRoot":"","sources":["../../../../libs/lockstep-pg/src/migrate.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"migrate.d.ts","sourceRoot":"","sources":["../../../../libs/lockstep-pg/src/migrate.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAK9C,MAAM,WAAW,eAAe;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;GAMG;AACH,wBAAsB,iBAAiB,CACtC,gBAAgB,EAAE,MAAM,EACxB,MAAM,EAAE,cAAc,GACpB,OAAO,CAAC,eAAe,CAAC,CAsB1B"}
|