@anthonyalayo/drizzle-kit 1.0.2 → 1.0.4
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/api.d.mts +2891 -0
- package/api.d.ts +2891 -0
- package/api.js +47534 -0
- package/api.mjs +47521 -0
- package/bin.cjs +80043 -0
- package/{src/index.ts → index-Z-1TKnbX.d.mts} +123 -141
- package/index-Z-1TKnbX.d.ts +308 -0
- package/index.d.mts +2 -0
- package/index.d.ts +2 -0
- package/index.js +32 -0
- package/index.mjs +7 -0
- package/package.json +1 -1
- package/utils.js +6056 -0
- package/utils.mjs +6032 -0
- package/.gitignore +0 -25
- package/build.dev.ts +0 -51
- package/build.ts +0 -112
- package/imports-checker/analyze.ts +0 -78
- package/imports-checker/checker.ts +0 -296
- package/imports-checker/grammar/grammar.ohm +0 -121
- package/imports-checker/grammar/grammar.ohm-bundle.d.ts +0 -164
- package/imports-checker/grammar/grammar.ohm-bundle.js +0 -753
- package/imports-checker/index.ts +0 -48
- package/patches/difflib@0.2.4.patch +0 -31
- package/src/@types/utils.ts +0 -58
- package/src/api.ts +0 -504
- package/src/cli/commands/_es5.ts +0 -2
- package/src/cli/commands/check.ts +0 -52
- package/src/cli/commands/drop.ts +0 -60
- package/src/cli/commands/introspect.ts +0 -772
- package/src/cli/commands/libSqlPushUtils.ts +0 -355
- package/src/cli/commands/migrate.ts +0 -1526
- package/src/cli/commands/mysqlIntrospect.ts +0 -53
- package/src/cli/commands/mysqlPushUtils.ts +0 -352
- package/src/cli/commands/mysqlUp.ts +0 -102
- package/src/cli/commands/pgIntrospect.ts +0 -55
- package/src/cli/commands/pgPushUtils.ts +0 -269
- package/src/cli/commands/pgUp.ts +0 -217
- package/src/cli/commands/push.ts +0 -637
- package/src/cli/commands/singlestoreIntrospect.ts +0 -53
- package/src/cli/commands/singlestorePushUtils.ts +0 -456
- package/src/cli/commands/singlestoreUp.ts +0 -1
- package/src/cli/commands/sqliteIntrospect.ts +0 -96
- package/src/cli/commands/sqlitePushUtils.ts +0 -322
- package/src/cli/commands/sqliteUp.ts +0 -52
- package/src/cli/commands/utils.ts +0 -858
- package/src/cli/connections.ts +0 -914
- package/src/cli/index.ts +0 -48
- package/src/cli/schema.ts +0 -794
- package/src/cli/selector-ui.ts +0 -38
- package/src/cli/utils.ts +0 -112
- package/src/cli/validations/cli.ts +0 -79
- package/src/cli/validations/common.ts +0 -193
- package/src/cli/validations/libsql.ts +0 -27
- package/src/cli/validations/mysql.ts +0 -61
- package/src/cli/validations/outputs.ts +0 -91
- package/src/cli/validations/postgres.ts +0 -83
- package/src/cli/validations/singlestore.ts +0 -61
- package/src/cli/validations/sqlite.ts +0 -104
- package/src/cli/validations/studio.ts +0 -24
- package/src/cli/views.ts +0 -658
- package/src/extensions/getTablesFilterByExtensions.ts +0 -16
- package/src/extensions/vector.ts +0 -10
- package/src/global.ts +0 -61
- package/src/introspect-mysql.ts +0 -1030
- package/src/introspect-pg.ts +0 -1435
- package/src/introspect-singlestore.ts +0 -913
- package/src/introspect-sqlite.ts +0 -533
- package/src/jsonDiffer.js +0 -882
- package/src/jsonStatements.ts +0 -3590
- package/src/loader.mjs +0 -57
- package/src/migrationPreparator.ts +0 -217
- package/src/schemaValidator.ts +0 -23
- package/src/serializer/index.ts +0 -142
- package/src/serializer/mysqlImports.ts +0 -38
- package/src/serializer/mysqlSchema.ts +0 -423
- package/src/serializer/mysqlSerializer.ts +0 -999
- package/src/serializer/pgImports.ts +0 -106
- package/src/serializer/pgSchema.ts +0 -937
- package/src/serializer/pgSerializer.ts +0 -2223
- package/src/serializer/singlestoreImports.ts +0 -38
- package/src/serializer/singlestoreSchema.ts +0 -257
- package/src/serializer/singlestoreSerializer.ts +0 -767
- package/src/serializer/sqliteImports.ts +0 -41
- package/src/serializer/sqliteSchema.ts +0 -352
- package/src/serializer/sqliteSerializer.ts +0 -931
- package/src/serializer/studio.ts +0 -694
- package/src/serializer/utils.ts +0 -45
- package/src/simulator.ts +0 -157
- package/src/snapshotsDiffer.ts +0 -4398
- package/src/sqlgenerator.ts +0 -4212
- package/src/statementCombiner.ts +0 -597
- package/src/utils/certs.ts +0 -44
- package/src/utils/words.ts +0 -1333
- package/src/utils.ts +0 -370
- package/tests/bin.test.ts +0 -58
- package/tests/cli/d1http.config.ts +0 -12
- package/tests/cli/drizzle.config.ts +0 -9
- package/tests/cli/durable-sqlite.config.ts +0 -7
- package/tests/cli/expo.config.ts +0 -7
- package/tests/cli/postgres.config.ts +0 -13
- package/tests/cli/postgres2.config.ts +0 -17
- package/tests/cli/schema.ts +0 -1
- package/tests/cli/turso.config.ts +0 -10
- package/tests/cli-export.test.ts +0 -79
- package/tests/cli-generate.test.ts +0 -259
- package/tests/cli-migrate.test.ts +0 -103
- package/tests/cli-push.test.ts +0 -126
- package/tests/common.ts +0 -15
- package/tests/indexes/common.ts +0 -21
- package/tests/indexes/pg.test.ts +0 -245
- package/tests/introspect/libsql.test.ts +0 -35
- package/tests/introspect/mysql.test.ts +0 -319
- package/tests/introspect/pg.test.ts +0 -894
- package/tests/introspect/singlestore.test.ts +0 -275
- package/tests/introspect/sqlite.test.ts +0 -122
- package/tests/libsql-checks.test.ts +0 -308
- package/tests/libsql-statements.test.ts +0 -989
- package/tests/libsql-views.test.ts +0 -218
- package/tests/migrate/libsq-schema.ts +0 -6
- package/tests/migrate/libsql-migrate.test.ts +0 -58
- package/tests/migrate/migrations/0000_little_blizzard.sql +0 -4
- package/tests/migrate/migrations/0001_nebulous_storm.sql +0 -10
- package/tests/migrate/migrations/meta/0000_snapshot.json +0 -40
- package/tests/migrate/migrations/meta/0001_snapshot.json +0 -40
- package/tests/migrate/migrations/meta/_journal.json +0 -20
- package/tests/mysql-checks.test.ts +0 -291
- package/tests/mysql-generated.test.ts +0 -1290
- package/tests/mysql-schemas.test.ts +0 -156
- package/tests/mysql-views.test.ts +0 -553
- package/tests/mysql.test.ts +0 -863
- package/tests/pg-array.test.ts +0 -368
- package/tests/pg-checks.test.ts +0 -329
- package/tests/pg-columns.test.ts +0 -484
- package/tests/pg-domains.test.ts +0 -306
- package/tests/pg-enums.test.ts +0 -751
- package/tests/pg-generated.test.ts +0 -529
- package/tests/pg-identity.test.ts +0 -447
- package/tests/pg-schemas.test.ts +0 -105
- package/tests/pg-sequences.test.ts +0 -298
- package/tests/pg-tables.test.ts +0 -1021
- package/tests/pg-views.test.ts +0 -1929
- package/tests/push/common.ts +0 -58
- package/tests/push/libsql.test.ts +0 -1400
- package/tests/push/mysql-push.test.ts +0 -345
- package/tests/push/mysql.test.ts +0 -788
- package/tests/push/pg.test.ts +0 -4341
- package/tests/push/singlestore-push.test.ts +0 -894
- package/tests/push/singlestore.test.ts +0 -444
- package/tests/push/sqlite.test.ts +0 -1613
- package/tests/rls/pg-policy.test.ts +0 -1656
- package/tests/rls/pg-role.test.ts +0 -234
- package/tests/schemaDiffer.ts +0 -2852
- package/tests/singlestore-generated.test.ts +0 -1290
- package/tests/singlestore-schemas.test.ts +0 -155
- package/tests/singlestore.test.ts +0 -978
- package/tests/sqlite-checks.test.ts +0 -308
- package/tests/sqlite-columns.test.ts +0 -1049
- package/tests/sqlite-generated.test.ts +0 -1726
- package/tests/sqlite-tables.test.ts +0 -637
- package/tests/sqlite-views.test.ts +0 -218
- package/tests/statements-combiner/libsql-statements-combiner.test.ts +0 -1812
- package/tests/statements-combiner/singlestore-statements-combiner.test.ts +0 -882
- package/tests/statements-combiner/sqlite-statements-combiner.test.ts +0 -1211
- package/tests/test/sqlite.test.ts +0 -39
- package/tests/testsinglestore.ts +0 -29
- package/tests/validations.test.ts +0 -869
- package/tests/wrap-param.test.ts +0 -16
- package/tsconfig.build.json +0 -4
- package/tsconfig.cli-types.json +0 -9
- package/tsconfig.json +0 -28
- package/vitest.config.ts +0 -34
|
@@ -1,298 +0,0 @@
|
|
|
1
|
-
import { pgSchema, pgSequence } from 'drizzle-orm/pg-core';
|
|
2
|
-
import { expect, test } from 'vitest';
|
|
3
|
-
import { diffTestSchemas } from './schemaDiffer';
|
|
4
|
-
|
|
5
|
-
test('create sequence', async () => {
|
|
6
|
-
const from = {};
|
|
7
|
-
const to = {
|
|
8
|
-
seq: pgSequence('name', { startWith: 100 }),
|
|
9
|
-
};
|
|
10
|
-
|
|
11
|
-
const { statements, sqlStatements } = await diffTestSchemas(from, to, []);
|
|
12
|
-
|
|
13
|
-
expect(statements).toStrictEqual([
|
|
14
|
-
{
|
|
15
|
-
name: 'name',
|
|
16
|
-
schema: 'public',
|
|
17
|
-
type: 'create_sequence',
|
|
18
|
-
values: {
|
|
19
|
-
cache: '1',
|
|
20
|
-
cycle: false,
|
|
21
|
-
increment: '1',
|
|
22
|
-
maxValue: '9223372036854775807',
|
|
23
|
-
minValue: '1',
|
|
24
|
-
startWith: '100',
|
|
25
|
-
},
|
|
26
|
-
},
|
|
27
|
-
]);
|
|
28
|
-
expect(sqlStatements).toStrictEqual([
|
|
29
|
-
'CREATE SEQUENCE "public"."name" INCREMENT BY 1 MINVALUE 1 MAXVALUE 9223372036854775807 START WITH 100 CACHE 1;',
|
|
30
|
-
]);
|
|
31
|
-
});
|
|
32
|
-
|
|
33
|
-
test('create sequence: all fields', async () => {
|
|
34
|
-
const from = {};
|
|
35
|
-
const to = {
|
|
36
|
-
seq: pgSequence('name', {
|
|
37
|
-
startWith: 100,
|
|
38
|
-
maxValue: 10000,
|
|
39
|
-
minValue: 100,
|
|
40
|
-
cycle: true,
|
|
41
|
-
cache: 10,
|
|
42
|
-
increment: 2,
|
|
43
|
-
}),
|
|
44
|
-
};
|
|
45
|
-
|
|
46
|
-
const { statements, sqlStatements } = await diffTestSchemas(from, to, []);
|
|
47
|
-
|
|
48
|
-
expect(statements).toStrictEqual([
|
|
49
|
-
{
|
|
50
|
-
type: 'create_sequence',
|
|
51
|
-
name: 'name',
|
|
52
|
-
schema: 'public',
|
|
53
|
-
values: {
|
|
54
|
-
startWith: '100',
|
|
55
|
-
maxValue: '10000',
|
|
56
|
-
minValue: '100',
|
|
57
|
-
cycle: true,
|
|
58
|
-
cache: '10',
|
|
59
|
-
increment: '2',
|
|
60
|
-
},
|
|
61
|
-
},
|
|
62
|
-
]);
|
|
63
|
-
expect(sqlStatements).toStrictEqual([
|
|
64
|
-
'CREATE SEQUENCE "public"."name" INCREMENT BY 2 MINVALUE 100 MAXVALUE 10000 START WITH 100 CACHE 10 CYCLE;',
|
|
65
|
-
]);
|
|
66
|
-
});
|
|
67
|
-
|
|
68
|
-
test('create sequence: custom schema', async () => {
|
|
69
|
-
const customSchema = pgSchema('custom');
|
|
70
|
-
const from = {};
|
|
71
|
-
const to = {
|
|
72
|
-
seq: customSchema.sequence('name', { startWith: 100 }),
|
|
73
|
-
};
|
|
74
|
-
|
|
75
|
-
const { statements, sqlStatements } = await diffTestSchemas(from, to, []);
|
|
76
|
-
|
|
77
|
-
expect(statements).toStrictEqual([
|
|
78
|
-
{
|
|
79
|
-
name: 'name',
|
|
80
|
-
schema: 'custom',
|
|
81
|
-
type: 'create_sequence',
|
|
82
|
-
values: {
|
|
83
|
-
cache: '1',
|
|
84
|
-
cycle: false,
|
|
85
|
-
increment: '1',
|
|
86
|
-
maxValue: '9223372036854775807',
|
|
87
|
-
minValue: '1',
|
|
88
|
-
startWith: '100',
|
|
89
|
-
},
|
|
90
|
-
},
|
|
91
|
-
]);
|
|
92
|
-
expect(sqlStatements).toStrictEqual([
|
|
93
|
-
'CREATE SEQUENCE "custom"."name" INCREMENT BY 1 MINVALUE 1 MAXVALUE 9223372036854775807 START WITH 100 CACHE 1;',
|
|
94
|
-
]);
|
|
95
|
-
});
|
|
96
|
-
|
|
97
|
-
test('create sequence: custom schema + all fields', async () => {
|
|
98
|
-
const customSchema = pgSchema('custom');
|
|
99
|
-
const from = {};
|
|
100
|
-
const to = {
|
|
101
|
-
seq: customSchema.sequence('name', {
|
|
102
|
-
startWith: 100,
|
|
103
|
-
maxValue: 10000,
|
|
104
|
-
minValue: 100,
|
|
105
|
-
cycle: true,
|
|
106
|
-
cache: 10,
|
|
107
|
-
increment: 2,
|
|
108
|
-
}),
|
|
109
|
-
};
|
|
110
|
-
|
|
111
|
-
const { statements, sqlStatements } = await diffTestSchemas(from, to, []);
|
|
112
|
-
|
|
113
|
-
expect(statements).toStrictEqual([
|
|
114
|
-
{
|
|
115
|
-
type: 'create_sequence',
|
|
116
|
-
name: 'name',
|
|
117
|
-
schema: 'custom',
|
|
118
|
-
values: {
|
|
119
|
-
startWith: '100',
|
|
120
|
-
maxValue: '10000',
|
|
121
|
-
minValue: '100',
|
|
122
|
-
cycle: true,
|
|
123
|
-
cache: '10',
|
|
124
|
-
increment: '2',
|
|
125
|
-
},
|
|
126
|
-
},
|
|
127
|
-
]);
|
|
128
|
-
expect(sqlStatements).toStrictEqual([
|
|
129
|
-
'CREATE SEQUENCE "custom"."name" INCREMENT BY 2 MINVALUE 100 MAXVALUE 10000 START WITH 100 CACHE 10 CYCLE;',
|
|
130
|
-
]);
|
|
131
|
-
});
|
|
132
|
-
|
|
133
|
-
test('drop sequence', async () => {
|
|
134
|
-
const from = { seq: pgSequence('name', { startWith: 100 }) };
|
|
135
|
-
const to = {};
|
|
136
|
-
|
|
137
|
-
const { statements, sqlStatements } = await diffTestSchemas(from, to, []);
|
|
138
|
-
|
|
139
|
-
expect(statements).toStrictEqual([
|
|
140
|
-
{
|
|
141
|
-
type: 'drop_sequence',
|
|
142
|
-
name: 'name',
|
|
143
|
-
schema: 'public',
|
|
144
|
-
},
|
|
145
|
-
]);
|
|
146
|
-
expect(sqlStatements).toStrictEqual(['DROP SEQUENCE "public"."name";']);
|
|
147
|
-
});
|
|
148
|
-
|
|
149
|
-
test('drop sequence: custom schema', async () => {
|
|
150
|
-
const customSchema = pgSchema('custom');
|
|
151
|
-
const from = { seq: customSchema.sequence('name', { startWith: 100 }) };
|
|
152
|
-
const to = {};
|
|
153
|
-
|
|
154
|
-
const { statements, sqlStatements } = await diffTestSchemas(from, to, []);
|
|
155
|
-
|
|
156
|
-
expect(statements).toStrictEqual([
|
|
157
|
-
{
|
|
158
|
-
type: 'drop_sequence',
|
|
159
|
-
name: 'name',
|
|
160
|
-
schema: 'custom',
|
|
161
|
-
},
|
|
162
|
-
]);
|
|
163
|
-
expect(sqlStatements).toStrictEqual(['DROP SEQUENCE "custom"."name";']);
|
|
164
|
-
});
|
|
165
|
-
|
|
166
|
-
// rename sequence
|
|
167
|
-
|
|
168
|
-
test('rename sequence', async () => {
|
|
169
|
-
const from = { seq: pgSequence('name', { startWith: 100 }) };
|
|
170
|
-
const to = { seq: pgSequence('name_new', { startWith: 100 }) };
|
|
171
|
-
|
|
172
|
-
const { statements, sqlStatements } = await diffTestSchemas(from, to, [
|
|
173
|
-
'public.name->public.name_new',
|
|
174
|
-
]);
|
|
175
|
-
|
|
176
|
-
expect(statements).toStrictEqual([
|
|
177
|
-
{
|
|
178
|
-
type: 'rename_sequence',
|
|
179
|
-
nameFrom: 'name',
|
|
180
|
-
nameTo: 'name_new',
|
|
181
|
-
schema: 'public',
|
|
182
|
-
},
|
|
183
|
-
]);
|
|
184
|
-
expect(sqlStatements).toStrictEqual([
|
|
185
|
-
'ALTER SEQUENCE "public"."name" RENAME TO "name_new";',
|
|
186
|
-
]);
|
|
187
|
-
});
|
|
188
|
-
|
|
189
|
-
test('rename sequence in custom schema', async () => {
|
|
190
|
-
const customSchema = pgSchema('custom');
|
|
191
|
-
|
|
192
|
-
const from = { seq: customSchema.sequence('name', { startWith: 100 }) };
|
|
193
|
-
const to = { seq: customSchema.sequence('name_new', { startWith: 100 }) };
|
|
194
|
-
|
|
195
|
-
const { statements, sqlStatements } = await diffTestSchemas(from, to, [
|
|
196
|
-
'custom.name->custom.name_new',
|
|
197
|
-
]);
|
|
198
|
-
|
|
199
|
-
expect(statements).toStrictEqual([
|
|
200
|
-
{
|
|
201
|
-
type: 'rename_sequence',
|
|
202
|
-
nameFrom: 'name',
|
|
203
|
-
nameTo: 'name_new',
|
|
204
|
-
schema: 'custom',
|
|
205
|
-
},
|
|
206
|
-
]);
|
|
207
|
-
expect(sqlStatements).toStrictEqual([
|
|
208
|
-
'ALTER SEQUENCE "custom"."name" RENAME TO "name_new";',
|
|
209
|
-
]);
|
|
210
|
-
});
|
|
211
|
-
|
|
212
|
-
test('move sequence between schemas #1', async () => {
|
|
213
|
-
const customSchema = pgSchema('custom');
|
|
214
|
-
const from = { seq: pgSequence('name', { startWith: 100 }) };
|
|
215
|
-
const to = { seq: customSchema.sequence('name', { startWith: 100 }) };
|
|
216
|
-
|
|
217
|
-
const { statements, sqlStatements } = await diffTestSchemas(from, to, [
|
|
218
|
-
'public.name->custom.name',
|
|
219
|
-
]);
|
|
220
|
-
|
|
221
|
-
expect(statements).toStrictEqual([
|
|
222
|
-
{
|
|
223
|
-
type: 'move_sequence',
|
|
224
|
-
name: 'name',
|
|
225
|
-
schemaFrom: 'public',
|
|
226
|
-
schemaTo: 'custom',
|
|
227
|
-
},
|
|
228
|
-
]);
|
|
229
|
-
expect(sqlStatements).toStrictEqual([
|
|
230
|
-
'ALTER SEQUENCE "public"."name" SET SCHEMA "custom";',
|
|
231
|
-
]);
|
|
232
|
-
});
|
|
233
|
-
|
|
234
|
-
test('move sequence between schemas #2', async () => {
|
|
235
|
-
const customSchema = pgSchema('custom');
|
|
236
|
-
const from = { seq: customSchema.sequence('name', { startWith: 100 }) };
|
|
237
|
-
const to = { seq: pgSequence('name', { startWith: 100 }) };
|
|
238
|
-
|
|
239
|
-
const { statements, sqlStatements } = await diffTestSchemas(from, to, [
|
|
240
|
-
'custom.name->public.name',
|
|
241
|
-
]);
|
|
242
|
-
|
|
243
|
-
expect(statements).toStrictEqual([
|
|
244
|
-
{
|
|
245
|
-
type: 'move_sequence',
|
|
246
|
-
name: 'name',
|
|
247
|
-
schemaFrom: 'custom',
|
|
248
|
-
schemaTo: 'public',
|
|
249
|
-
},
|
|
250
|
-
]);
|
|
251
|
-
expect(sqlStatements).toStrictEqual([
|
|
252
|
-
'ALTER SEQUENCE "custom"."name" SET SCHEMA "public";',
|
|
253
|
-
]);
|
|
254
|
-
});
|
|
255
|
-
|
|
256
|
-
// Add squasher for sequences to make alters work +
|
|
257
|
-
// Run all tests +
|
|
258
|
-
// Finish introspect for sequences +
|
|
259
|
-
// Check push for sequences +
|
|
260
|
-
|
|
261
|
-
// add tests for generated to postgresql +
|
|
262
|
-
// add tests for generated to mysql +
|
|
263
|
-
// add tests for generated to sqlite +
|
|
264
|
-
|
|
265
|
-
// add tests for identity to postgresql
|
|
266
|
-
|
|
267
|
-
// check introspect generated(all dialects) +
|
|
268
|
-
// check push generated(all dialect) +
|
|
269
|
-
|
|
270
|
-
// add introspect ts file logic for all the features
|
|
271
|
-
// manually test everything
|
|
272
|
-
// beta release
|
|
273
|
-
|
|
274
|
-
test('alter sequence', async () => {
|
|
275
|
-
const from = { seq: pgSequence('name', { startWith: 100 }) };
|
|
276
|
-
const to = { seq: pgSequence('name', { startWith: 105 }) };
|
|
277
|
-
|
|
278
|
-
const { statements, sqlStatements } = await diffTestSchemas(from, to, []);
|
|
279
|
-
|
|
280
|
-
expect(statements).toStrictEqual([
|
|
281
|
-
{
|
|
282
|
-
name: 'name',
|
|
283
|
-
schema: 'public',
|
|
284
|
-
type: 'alter_sequence',
|
|
285
|
-
values: {
|
|
286
|
-
cache: '1',
|
|
287
|
-
cycle: false,
|
|
288
|
-
increment: '1',
|
|
289
|
-
maxValue: '9223372036854775807',
|
|
290
|
-
minValue: '1',
|
|
291
|
-
startWith: '105',
|
|
292
|
-
},
|
|
293
|
-
},
|
|
294
|
-
]);
|
|
295
|
-
expect(sqlStatements).toStrictEqual([
|
|
296
|
-
'ALTER SEQUENCE "public"."name" INCREMENT BY 1 MINVALUE 1 MAXVALUE 9223372036854775807 START WITH 105 CACHE 1;',
|
|
297
|
-
]);
|
|
298
|
-
});
|