drizzle-kit 0.30.2-0a0cdd2 → 0.30.2-15cd998

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 (4) hide show
  1. package/api.js +11 -231
  2. package/api.mjs +11 -231
  3. package/bin.cjs +29151 -44633
  4. package/package.json +1 -1
package/api.mjs CHANGED
@@ -12126,7 +12126,7 @@ function fromJson(statements, dialect6, action, json22) {
12126
12126
  }).filter((it) => it !== "");
12127
12127
  return result;
12128
12128
  }
12129
- var parseType, Convertor, PgCreateRoleConvertor, PgDropRoleConvertor, PgRenameRoleConvertor, PgAlterRoleConvertor, PgCreatePolicyConvertor, PgDropPolicyConvertor, PgRenamePolicyConvertor, PgAlterPolicyConvertor, PgCreateIndPolicyConvertor, PgDropIndPolicyConvertor, PgRenameIndPolicyConvertor, PgAlterIndPolicyConvertor, PgEnableRlsConvertor, PgDisableRlsConvertor, PgCreateTableConvertor, MySqlCreateTableConvertor, SingleStoreCreateTableConvertor, SQLiteCreateTableConvertor, PgCreateViewConvertor, MySqlCreateViewConvertor, SqliteCreateViewConvertor, PgDropViewConvertor, MySqlDropViewConvertor, SqliteDropViewConvertor, MySqlAlterViewConvertor, PgRenameViewConvertor, MySqlRenameViewConvertor, PgAlterViewSchemaConvertor, PgAlterViewAddWithOptionConvertor, PgAlterViewDropWithOptionConvertor, PgAlterViewAlterTablespaceConvertor, PgAlterViewAlterUsingConvertor, PgAlterTableAlterColumnSetGenerated, PgAlterTableAlterColumnDropGenerated, PgAlterTableAlterColumnAlterGenerated, PgAlterTableAddUniqueConstraintConvertor, PgAlterTableDropUniqueConstraintConvertor, PgAlterTableAddCheckConstraintConvertor, PgAlterTableDeleteCheckConstraintConvertor, MySQLAlterTableAddUniqueConstraintConvertor, MySQLAlterTableDropUniqueConstraintConvertor, MySqlAlterTableAddCheckConstraintConvertor, SingleStoreAlterTableAddUniqueConstraintConvertor, SingleStoreAlterTableDropUniqueConstraintConvertor, MySqlAlterTableDeleteCheckConstraintConvertor, CreatePgSequenceConvertor, DropPgSequenceConvertor, RenamePgSequenceConvertor, MovePgSequenceConvertor, AlterPgSequenceConvertor, CreateTypeEnumConvertor, DropTypeEnumConvertor, AlterTypeAddValueConvertor, AlterTypeSetSchemaConvertor, AlterRenameTypeConvertor, AlterTypeDropValueConvertor, PgDropTableConvertor, MySQLDropTableConvertor, SingleStoreDropTableConvertor, SQLiteDropTableConvertor, PgRenameTableConvertor, SqliteRenameTableConvertor, MySqlRenameTableConvertor, SingleStoreRenameTableConvertor, PgAlterTableRenameColumnConvertor, MySqlAlterTableRenameColumnConvertor, SingleStoreAlterTableRenameColumnConvertor, SQLiteAlterTableRenameColumnConvertor, PgAlterTableDropColumnConvertor, MySqlAlterTableDropColumnConvertor, SingleStoreAlterTableDropColumnConvertor, SQLiteAlterTableDropColumnConvertor, PgAlterTableAddColumnConvertor, MySqlAlterTableAddColumnConvertor, SingleStoreAlterTableAddColumnConvertor, SQLiteAlterTableAddColumnConvertor, PgAlterTableAlterColumnSetTypeConvertor, PgAlterTableAlterColumnSetDefaultConvertor, PgAlterTableAlterColumnDropDefaultConvertor, PgAlterTableAlterColumnDropGeneratedConvertor, PgAlterTableAlterColumnSetExpressionConvertor, PgAlterTableAlterColumnAlterrGeneratedConvertor, SqliteAlterTableAlterColumnDropGeneratedConvertor, SqliteAlterTableAlterColumnSetExpressionConvertor, SqliteAlterTableAlterColumnAlterGeneratedConvertor, MySqlAlterTableAlterColumnAlterrGeneratedConvertor, MySqlAlterTableAddPk, MySqlAlterTableDropPk, LibSQLModifyColumn, MySqlModifyColumn, SingleStoreAlterTableAlterColumnAlterrGeneratedConvertor, SingleStoreAlterTableAddPk, SingleStoreAlterTableDropPk, SingleStoreModifyColumn, PgAlterTableCreateCompositePrimaryKeyConvertor, PgAlterTableDeleteCompositePrimaryKeyConvertor, PgAlterTableAlterCompositePrimaryKeyConvertor, MySqlAlterTableCreateCompositePrimaryKeyConvertor, MySqlAlterTableDeleteCompositePrimaryKeyConvertor, MySqlAlterTableAlterCompositePrimaryKeyConvertor, PgAlterTableAlterColumnSetPrimaryKeyConvertor, PgAlterTableAlterColumnDropPrimaryKeyConvertor, PgAlterTableAlterColumnSetNotNullConvertor, PgAlterTableAlterColumnDropNotNullConvertor, PgCreateForeignKeyConvertor, LibSQLCreateForeignKeyConvertor, MySqlCreateForeignKeyConvertor, PgAlterForeignKeyConvertor, PgDeleteForeignKeyConvertor, MySqlDeleteForeignKeyConvertor, CreatePgIndexConvertor, CreateMySqlIndexConvertor, CreateSingleStoreIndexConvertor, CreateSqliteIndexConvertor, PgDropIndexConvertor, PgCreateSchemaConvertor, PgRenameSchemaConvertor, PgDropSchemaConvertor, PgAlterTableSetSchemaConvertor, PgAlterTableSetNewSchemaConvertor, PgAlterTableRemoveFromSchemaConvertor, SqliteDropIndexConvertor, MySqlDropIndexConvertor, SingleStoreDropIndexConvertor, SQLiteRecreateTableConvertor, LibSQLRecreateTableConvertor, SingleStoreRecreateTableConvertor, convertors;
12129
+ var parseType, Convertor, PgCreateRoleConvertor, PgDropRoleConvertor, PgRenameRoleConvertor, PgAlterRoleConvertor, PgCreatePolicyConvertor, PgDropPolicyConvertor, PgRenamePolicyConvertor, PgAlterPolicyConvertor, PgCreateIndPolicyConvertor, PgDropIndPolicyConvertor, PgRenameIndPolicyConvertor, PgAlterIndPolicyConvertor, PgEnableRlsConvertor, PgDisableRlsConvertor, PgCreateTableConvertor, MySqlCreateTableConvertor, SingleStoreCreateTableConvertor, SQLiteCreateTableConvertor, PgCreateViewConvertor, MySqlCreateViewConvertor, SqliteCreateViewConvertor, PgDropViewConvertor, MySqlDropViewConvertor, SqliteDropViewConvertor, MySqlAlterViewConvertor, PgRenameViewConvertor, MySqlRenameViewConvertor, PgAlterViewSchemaConvertor, PgAlterViewAddWithOptionConvertor, PgAlterViewDropWithOptionConvertor, PgAlterViewAlterTablespaceConvertor, PgAlterViewAlterUsingConvertor, PgAlterTableAlterColumnSetGenerated, PgAlterTableAlterColumnDropGenerated, PgAlterTableAlterColumnAlterGenerated, PgAlterTableAddUniqueConstraintConvertor, PgAlterTableDropUniqueConstraintConvertor, PgAlterTableAddCheckConstraintConvertor, PgAlterTableDeleteCheckConstraintConvertor, MySQLAlterTableAddUniqueConstraintConvertor, MySQLAlterTableDropUniqueConstraintConvertor, MySqlAlterTableAddCheckConstraintConvertor, SingleStoreAlterTableAddUniqueConstraintConvertor, SingleStoreAlterTableDropUniqueConstraintConvertor, MySqlAlterTableDeleteCheckConstraintConvertor, CreatePgSequenceConvertor, DropPgSequenceConvertor, RenamePgSequenceConvertor, MovePgSequenceConvertor, AlterPgSequenceConvertor, CreateTypeEnumConvertor, DropTypeEnumConvertor, AlterTypeAddValueConvertor, AlterTypeSetSchemaConvertor, AlterRenameTypeConvertor, AlterTypeDropValueConvertor, PgDropTableConvertor, MySQLDropTableConvertor, SingleStoreDropTableConvertor, SQLiteDropTableConvertor, PgRenameTableConvertor, SqliteRenameTableConvertor, MySqlRenameTableConvertor, SingleStoreRenameTableConvertor, PgAlterTableRenameColumnConvertor, MySqlAlterTableRenameColumnConvertor, SingleStoreAlterTableRenameColumnConvertor, SQLiteAlterTableRenameColumnConvertor, PgAlterTableDropColumnConvertor, MySqlAlterTableDropColumnConvertor, SingleStoreAlterTableDropColumnConvertor, SQLiteAlterTableDropColumnConvertor, PgAlterTableAddColumnConvertor, MySqlAlterTableAddColumnConvertor, SingleStoreAlterTableAddColumnConvertor, SQLiteAlterTableAddColumnConvertor, PgAlterTableAlterColumnSetTypeConvertor, PgAlterTableAlterColumnSetDefaultConvertor, PgAlterTableAlterColumnDropDefaultConvertor, PgAlterTableAlterColumnDropGeneratedConvertor, PgAlterTableAlterColumnSetExpressionConvertor, PgAlterTableAlterColumnAlterrGeneratedConvertor, SqliteAlterTableAlterColumnDropGeneratedConvertor, SqliteAlterTableAlterColumnSetExpressionConvertor, SqliteAlterTableAlterColumnAlterGeneratedConvertor, MySqlAlterTableAlterColumnAlterrGeneratedConvertor, MySqlAlterTableAddPk, MySqlAlterTableDropPk, LibSQLModifyColumn, MySqlModifyColumn, SingleStoreAlterTableAlterColumnAlterrGeneratedConvertor, SingleStoreAlterTableAddPk, SingleStoreAlterTableDropPk, SingleStoreModifyColumn, PgAlterTableCreateCompositePrimaryKeyConvertor, PgAlterTableDeleteCompositePrimaryKeyConvertor, PgAlterTableAlterCompositePrimaryKeyConvertor, MySqlAlterTableCreateCompositePrimaryKeyConvertor, MySqlAlterTableDeleteCompositePrimaryKeyConvertor, MySqlAlterTableAlterCompositePrimaryKeyConvertor, PgAlterTableAlterColumnSetPrimaryKeyConvertor, PgAlterTableAlterColumnDropPrimaryKeyConvertor, PgAlterTableAlterColumnSetNotNullConvertor, PgAlterTableAlterColumnDropNotNullConvertor, PgCreateForeignKeyConvertor, LibSQLCreateForeignKeyConvertor, MySqlCreateForeignKeyConvertor, PgAlterForeignKeyConvertor, PgDeleteForeignKeyConvertor, MySqlDeleteForeignKeyConvertor, CreatePgIndexConvertor, CreateMySqlIndexConvertor, CreateSingleStoreIndexConvertor, CreateSqliteIndexConvertor, PgDropIndexConvertor, PgCreateSchemaConvertor, PgRenameSchemaConvertor, PgDropSchemaConvertor, PgAlterTableSetSchemaConvertor, PgAlterTableSetNewSchemaConvertor, PgAlterTableRemoveFromSchemaConvertor, SqliteDropIndexConvertor, MySqlDropIndexConvertor, SingleStoreDropIndexConvertor, SQLiteRecreateTableConvertor, LibSQLRecreateTableConvertor, convertors;
12130
12130
  var init_sqlgenerator = __esm({
12131
12131
  "src/sqlgenerator.ts"() {
12132
12132
  "use strict";
@@ -12472,7 +12472,7 @@ var init_sqlgenerator = __esm({
12472
12472
  if (typeof compositePKs !== "undefined" && compositePKs.length > 0) {
12473
12473
  statement += ",\n";
12474
12474
  const compositePK5 = SingleStoreSquasher.unsquashPK(compositePKs[0]);
12475
- statement += ` CONSTRAINT \`${compositePK5.name}\` PRIMARY KEY(\`${compositePK5.columns.join(`\`,\``)}\`)`;
12475
+ statement += ` CONSTRAINT \`${st.compositePkName}\` PRIMARY KEY(\`${compositePK5.columns.join(`\`,\``)}\`)`;
12476
12476
  }
12477
12477
  if (typeof uniqueConstraints !== "undefined" && uniqueConstraints.length > 0) {
12478
12478
  for (const uniqueConstraint5 of uniqueConstraints) {
@@ -13127,7 +13127,7 @@ WITH ${withCheckOption} CHECK OPTION` : "";
13127
13127
  }
13128
13128
  convert(statement) {
13129
13129
  const { tableNameFrom, tableNameTo } = statement;
13130
- return `ALTER TABLE \`${tableNameFrom}\` RENAME TO \`${tableNameTo}\`;`;
13130
+ return `RENAME TABLE \`${tableNameFrom}\` TO \`${tableNameTo}\`;`;
13131
13131
  }
13132
13132
  };
13133
13133
  PgAlterTableRenameColumnConvertor = class extends Convertor {
@@ -13155,7 +13155,7 @@ WITH ${withCheckOption} CHECK OPTION` : "";
13155
13155
  }
13156
13156
  convert(statement) {
13157
13157
  const { tableName, oldColumnName, newColumnName } = statement;
13158
- return `ALTER TABLE \`${tableName}\` CHANGE \`${oldColumnName}\` \`${newColumnName}\`;`;
13158
+ return `ALTER TABLE \`${tableName}\` RENAME COLUMN \`${oldColumnName}\` TO \`${newColumnName}\`;`;
13159
13159
  }
13160
13160
  };
13161
13161
  SQLiteAlterTableRenameColumnConvertor = class extends Convertor {
@@ -14465,52 +14465,10 @@ ${BREAKPOINT}ALTER TABLE ${tableNameWithSchema} ADD CONSTRAINT "${statement.newC
14465
14465
  return sqlStatements;
14466
14466
  }
14467
14467
  };
14468
- SingleStoreRecreateTableConvertor = class extends Convertor {
14469
- can(statement, dialect6) {
14470
- return statement.type === "singlestore_recreate_table" && dialect6 === "singlestore";
14471
- }
14472
- convert(statement) {
14473
- const { tableName, columns, compositePKs, uniqueConstraints } = statement;
14474
- const columnNames = columns.map((it) => `\`${it.name}\``).join(", ");
14475
- const newTableName = `__new_${tableName}`;
14476
- const sqlStatements = [];
14477
- sqlStatements.push(
14478
- new SingleStoreCreateTableConvertor().convert({
14479
- type: "create_table",
14480
- tableName: newTableName,
14481
- columns,
14482
- compositePKs,
14483
- uniqueConstraints,
14484
- schema: ""
14485
- })
14486
- );
14487
- sqlStatements.push(
14488
- `INSERT INTO \`${newTableName}\`(${columnNames}) SELECT ${columnNames} FROM \`${tableName}\`;`
14489
- );
14490
- sqlStatements.push(
14491
- new SingleStoreDropTableConvertor().convert({
14492
- type: "drop_table",
14493
- tableName,
14494
- schema: ""
14495
- })
14496
- );
14497
- sqlStatements.push(
14498
- new SingleStoreRenameTableConvertor().convert({
14499
- fromSchema: "",
14500
- tableNameFrom: newTableName,
14501
- tableNameTo: tableName,
14502
- toSchema: "",
14503
- type: "rename_table"
14504
- })
14505
- );
14506
- return sqlStatements;
14507
- }
14508
- };
14509
14468
  convertors = [];
14510
14469
  convertors.push(new PgCreateTableConvertor());
14511
14470
  convertors.push(new MySqlCreateTableConvertor());
14512
14471
  convertors.push(new SingleStoreCreateTableConvertor());
14513
- convertors.push(new SingleStoreRecreateTableConvertor());
14514
14472
  convertors.push(new SQLiteCreateTableConvertor());
14515
14473
  convertors.push(new SQLiteRecreateTableConvertor());
14516
14474
  convertors.push(new LibSQLRecreateTableConvertor());
@@ -16506,7 +16464,7 @@ var init_jsonStatements = __esm({
16506
16464
  });
16507
16465
 
16508
16466
  // src/statementCombiner.ts
16509
- var prepareLibSQLRecreateTable, prepareSQLiteRecreateTable, libSQLCombineStatements, sqliteCombineStatements, prepareSingleStoreRecreateTable, singleStoreCombineStatements;
16467
+ var prepareLibSQLRecreateTable, prepareSQLiteRecreateTable, libSQLCombineStatements, sqliteCombineStatements;
16510
16468
  var init_statementCombiner = __esm({
16511
16469
  "src/statementCombiner.ts"() {
16512
16470
  "use strict";
@@ -16785,101 +16743,6 @@ var init_statementCombiner = __esm({
16785
16743
  const rest = combinedStatements.filter((it) => it.type !== "rename_table" && it.type !== "alter_table_rename_column");
16786
16744
  return [...renamedTables, ...renamedColumns, ...rest];
16787
16745
  };
16788
- prepareSingleStoreRecreateTable = (table5) => {
16789
- const { name: name2, columns, uniqueConstraints, indexes, compositePrimaryKeys } = table5;
16790
- const composites = Object.values(compositePrimaryKeys);
16791
- const statements = [
16792
- {
16793
- type: "singlestore_recreate_table",
16794
- tableName: name2,
16795
- columns: Object.values(columns),
16796
- compositePKs: composites,
16797
- uniqueConstraints: Object.values(uniqueConstraints)
16798
- }
16799
- ];
16800
- if (Object.keys(indexes).length) {
16801
- statements.push(...prepareCreateIndexesJson(name2, "", indexes));
16802
- }
16803
- return statements;
16804
- };
16805
- singleStoreCombineStatements = (statements, json22) => {
16806
- const newStatements = {};
16807
- for (const statement of statements) {
16808
- if (statement.type === "alter_table_alter_column_set_type" || statement.type === "alter_table_alter_column_set_notnull" || statement.type === "alter_table_alter_column_drop_notnull" || statement.type === "alter_table_alter_column_drop_autoincrement" || statement.type === "alter_table_alter_column_set_autoincrement" || statement.type === "alter_table_alter_column_drop_pk" || statement.type === "alter_table_alter_column_set_pk" || statement.type === "create_composite_pk" || statement.type === "alter_composite_pk" || statement.type === "delete_composite_pk") {
16809
- const tableName2 = statement.tableName;
16810
- const statementsForTable2 = newStatements[tableName2];
16811
- if (!statementsForTable2) {
16812
- newStatements[tableName2] = prepareSingleStoreRecreateTable(json22.tables[tableName2]);
16813
- continue;
16814
- }
16815
- if (!statementsForTable2.some(({ type }) => type === "recreate_table")) {
16816
- const wasRename = statementsForTable2.some(
16817
- ({ type }) => type === "rename_table" || type === "alter_table_rename_column"
16818
- );
16819
- const preparedStatements = prepareSingleStoreRecreateTable(json22.tables[tableName2]);
16820
- if (wasRename) {
16821
- newStatements[tableName2].push(...preparedStatements);
16822
- } else {
16823
- newStatements[tableName2] = preparedStatements;
16824
- }
16825
- continue;
16826
- }
16827
- continue;
16828
- }
16829
- if ((statement.type === "alter_table_alter_column_drop_default" || statement.type === "alter_table_alter_column_set_default") && statement.columnNotNull) {
16830
- const tableName2 = statement.tableName;
16831
- const statementsForTable2 = newStatements[tableName2];
16832
- if (!statementsForTable2) {
16833
- newStatements[tableName2] = prepareSingleStoreRecreateTable(json22.tables[tableName2]);
16834
- continue;
16835
- }
16836
- if (!statementsForTable2.some(({ type }) => type === "recreate_table")) {
16837
- const wasRename = statementsForTable2.some(({ type }) => type === "rename_table");
16838
- const preparedStatements = prepareSingleStoreRecreateTable(json22.tables[tableName2]);
16839
- if (wasRename) {
16840
- newStatements[tableName2].push(...preparedStatements);
16841
- } else {
16842
- newStatements[tableName2] = preparedStatements;
16843
- }
16844
- continue;
16845
- }
16846
- continue;
16847
- }
16848
- if (statement.type === "alter_table_add_column" && statement.column.primaryKey) {
16849
- const tableName2 = statement.tableName;
16850
- const statementsForTable2 = newStatements[tableName2];
16851
- if (!statementsForTable2) {
16852
- newStatements[tableName2] = prepareSingleStoreRecreateTable(json22.tables[tableName2]);
16853
- continue;
16854
- }
16855
- if (!statementsForTable2.some(({ type }) => type === "recreate_table")) {
16856
- const wasRename = statementsForTable2.some(({ type }) => type === "rename_table");
16857
- const preparedStatements = prepareSingleStoreRecreateTable(json22.tables[tableName2]);
16858
- if (wasRename) {
16859
- newStatements[tableName2].push(...preparedStatements);
16860
- } else {
16861
- newStatements[tableName2] = preparedStatements;
16862
- }
16863
- continue;
16864
- }
16865
- continue;
16866
- }
16867
- const tableName = statement.type === "rename_table" ? statement.tableNameTo : statement.tableName;
16868
- const statementsForTable = newStatements[tableName];
16869
- if (!statementsForTable) {
16870
- newStatements[tableName] = [statement];
16871
- continue;
16872
- }
16873
- if (!statementsForTable.some(({ type }) => type === "singlestore_recreate_table")) {
16874
- newStatements[tableName].push(statement);
16875
- }
16876
- }
16877
- const combinedStatements = Object.values(newStatements).flat();
16878
- const renamedTables = combinedStatements.filter((it) => it.type === "rename_table");
16879
- const renamedColumns = combinedStatements.filter((it) => it.type === "alter_table_rename_column");
16880
- const rest = combinedStatements.filter((it) => it.type !== "rename_table" && it.type !== "alter_table_rename_column");
16881
- return [...renamedTables, ...renamedColumns, ...rest];
16882
- };
16883
16746
  }
16884
16747
  });
16885
16748
 
@@ -18825,7 +18688,7 @@ var init_snapshotsDiffer = __esm({
18825
18688
  return [tableKey2, tableValue];
18826
18689
  }
18827
18690
  );
18828
- const diffResult = applyJsonDiff(columnsPatchedSnap1, json22);
18691
+ const diffResult = applyJsonDiff(tablesPatchedSnap1, json22);
18829
18692
  const typedResult = diffResultSchemeSingleStore.parse(diffResult);
18830
18693
  const jsonStatements = [];
18831
18694
  const jsonCreateIndexesForCreatedTables = createdTables.map((it) => {
@@ -18989,8 +18852,7 @@ var init_snapshotsDiffer = __esm({
18989
18852
  jsonStatements.push(...jsonDropColumnsStatemets);
18990
18853
  jsonStatements.push(...jsonAddedCompositePKs);
18991
18854
  jsonStatements.push(...jsonAlteredUniqueConstraints);
18992
- const combinedJsonStatements = singleStoreCombineStatements(jsonStatements, json22);
18993
- const sqlStatements = fromJson(combinedJsonStatements, "singlestore");
18855
+ const sqlStatements = fromJson(jsonStatements, "singlestore");
18994
18856
  const uniqueSqlStatements = [];
18995
18857
  sqlStatements.forEach((ss) => {
18996
18858
  if (!uniqueSqlStatements.includes(ss)) {
@@ -19002,7 +18864,7 @@ var init_snapshotsDiffer = __esm({
19002
18864
  });
19003
18865
  const _meta = prepareMigrationMeta([], rTables, rColumns);
19004
18866
  return {
19005
- statements: combinedJsonStatements,
18867
+ statements: jsonStatements,
19006
18868
  sqlStatements: uniqueSqlStatements,
19007
18869
  _meta
19008
18870
  };
@@ -22120,7 +21982,7 @@ var version;
22120
21982
  var init_version = __esm({
22121
21983
  "../drizzle-orm/dist/version.js"() {
22122
21984
  "use strict";
22123
- version = "0.38.3";
21985
+ version = "0.38.4";
22124
21986
  }
22125
21987
  });
22126
21988
 
@@ -45612,31 +45474,15 @@ var init_singlestoreImports = __esm({
45612
45474
  var singlestorePushUtils_exports = {};
45613
45475
  __export(singlestorePushUtils_exports, {
45614
45476
  filterStatements: () => filterStatements2,
45615
- findColumnTypeAlternations: () => findColumnTypeAlternations,
45616
45477
  logSuggestionsAndReturn: () => logSuggestionsAndReturn3
45617
45478
  });
45618
- function findColumnTypeAlternations(columns1, columns2) {
45619
- const changes = [];
45620
- for (const key in columns1) {
45621
- if (columns1.hasOwnProperty(key) && columns2.hasOwnProperty(key)) {
45622
- const col1 = columns1[key];
45623
- const col2 = columns2[key];
45624
- if (col1.type !== col2.type) {
45625
- changes.push(col2.name);
45626
- }
45627
- }
45628
- }
45629
- return changes;
45630
- }
45631
45479
  var import_hanji10, filterStatements2, logSuggestionsAndReturn3;
45632
45480
  var init_singlestorePushUtils = __esm({
45633
45481
  "src/cli/commands/singlestorePushUtils.ts"() {
45634
45482
  "use strict";
45635
45483
  init_source();
45636
45484
  import_hanji10 = __toESM(require_hanji());
45637
- init_sqlgenerator();
45638
45485
  init_singlestoreSchema();
45639
- init_utils();
45640
45486
  init_selector_ui();
45641
45487
  init_outputs();
45642
45488
  filterStatements2 = (statements, currentSchema, prevSchema) => {
@@ -45680,7 +45526,7 @@ var init_singlestorePushUtils = __esm({
45680
45526
  return true;
45681
45527
  });
45682
45528
  };
45683
- logSuggestionsAndReturn3 = async (db, statements, json22, json1) => {
45529
+ logSuggestionsAndReturn3 = async (db, statements, json22) => {
45684
45530
  let shouldAskForApprove = false;
45685
45531
  const statementsToExecute = [];
45686
45532
  const infoToPrint = [];
@@ -45861,71 +45707,6 @@ var init_singlestorePushUtils = __esm({
45861
45707
  shouldAskForApprove = true;
45862
45708
  }
45863
45709
  }
45864
- } else if (statement.type === "singlestore_recreate_table") {
45865
- const tableName = statement.tableName;
45866
- const prevColumns = json1.tables[tableName].columns;
45867
- const currentColumns = json22.tables[tableName].columns;
45868
- const { removedColumns, addedColumns } = findAddedAndRemoved(
45869
- Object.keys(prevColumns),
45870
- Object.keys(currentColumns)
45871
- );
45872
- if (removedColumns.length) {
45873
- for (const removedColumn of removedColumns) {
45874
- const res = await db.query(
45875
- `select count(\`${tableName}\`.\`${removedColumn}\`) as count from \`${tableName}\``
45876
- );
45877
- const count2 = Number(res[0].count);
45878
- if (count2 > 0) {
45879
- infoToPrint.push(
45880
- `\xB7 You're about to delete ${source_default.underline(
45881
- removedColumn
45882
- )} column in ${tableName} table with ${count2} items`
45883
- );
45884
- columnsToRemove.push(removedColumn);
45885
- shouldAskForApprove = true;
45886
- }
45887
- }
45888
- }
45889
- if (addedColumns.length) {
45890
- for (const addedColumn of addedColumns) {
45891
- const [res] = await db.query(
45892
- `select count(*) as count from \`${tableName}\``
45893
- );
45894
- const columnConf = json22.tables[tableName].columns[addedColumn];
45895
- const count2 = Number(res.count);
45896
- if (count2 > 0 && columnConf.notNull && !columnConf.default) {
45897
- infoToPrint.push(
45898
- `\xB7 You're about to add not-null ${source_default.underline(
45899
- addedColumn
45900
- )} column without default value to table, which contains ${count2} items`
45901
- );
45902
- shouldAskForApprove = true;
45903
- tablesToTruncate.push(tableName);
45904
- statementsToExecute.push(`TRUNCATE TABLE \`${tableName}\`;`);
45905
- }
45906
- }
45907
- }
45908
- const columnWithChangedType = findColumnTypeAlternations(prevColumns, currentColumns);
45909
- for (const column5 of columnWithChangedType) {
45910
- const [res] = await db.query(
45911
- `select count(*) as count from \`${tableName}\` WHERE \`${tableName}\`.\`${column5}\` IS NOT NULL;`
45912
- );
45913
- const count2 = Number(res.count);
45914
- if (count2 > 0) {
45915
- infoToPrint.push(
45916
- `\xB7 You're about recreate ${source_default.underline(tableName)} table with data type changing for ${source_default.underline(
45917
- column5
45918
- )} column, which contains ${count2} items`
45919
- );
45920
- shouldAskForApprove = true;
45921
- tablesToTruncate.push(tableName);
45922
- statementsToExecute.push(`TRUNCATE TABLE \`${tableName}\`;`);
45923
- }
45924
- }
45925
- }
45926
- const stmnt = fromJson([statement], "singlestore", "push");
45927
- if (typeof stmnt !== "undefined") {
45928
- statementsToExecute.push(...stmnt);
45929
45710
  }
45930
45711
  }
45931
45712
  return {
@@ -46754,8 +46535,7 @@ var pushSingleStoreSchema = async (imports, drizzleInstance, databaseName) => {
46754
46535
  const { shouldAskForApprove, statementsToExecute, infoToPrint } = await logSuggestionsAndReturn4(
46755
46536
  db,
46756
46537
  statements,
46757
- squashedCur,
46758
- squashedPrev
46538
+ validatedCur
46759
46539
  );
46760
46540
  return {
46761
46541
  hasDataLoss: shouldAskForApprove,