Home / File/ migrate.ts — drizzle-orm Source File

migrate.ts — drizzle-orm Source File

Architecture documentation for migrate.ts, a typescript file in the drizzle-orm codebase. 73 imports, 7 dependents.

File typescript DrizzleKit CLIWorkflow 73 imports 7 dependents 37 functions

Entity Profile

Dependency Diagram

graph LR
  b14d3855_8cce_38c9_8952_a9d014c2fb1b["migrate.ts"]
  4078709f_3fc0_5514_7728_8f28a7b0e807["migrationPreparator.ts"]
  b14d3855_8cce_38c9_8952_a9d014c2fb1b --> 4078709f_3fc0_5514_7728_8f28a7b0e807
  205531e5_bccd_7be7_bb95_69ddeac3a4a2["prepareMySqlDbPushSnapshot"]
  b14d3855_8cce_38c9_8952_a9d014c2fb1b --> 205531e5_bccd_7be7_bb95_69ddeac3a4a2
  3c058e8d_cc3e_dc1b_7c24_3f79a601ef9d["prepareMySqlMigrationSnapshot"]
  b14d3855_8cce_38c9_8952_a9d014c2fb1b --> 3c058e8d_cc3e_dc1b_7c24_3f79a601ef9d
  cb1339e8_8bfe_65f3_12db_e281fe574c88["preparePgDbPushSnapshot"]
  b14d3855_8cce_38c9_8952_a9d014c2fb1b --> cb1339e8_8bfe_65f3_12db_e281fe574c88
  3311f44b_d157_63e7_4694_edf07b92c90e["preparePgMigrationSnapshot"]
  b14d3855_8cce_38c9_8952_a9d014c2fb1b --> 3311f44b_d157_63e7_4694_edf07b92c90e
  5b294717_9aa4_14a5_dd68_0e739883eebf["prepareSingleStoreDbPushSnapshot"]
  b14d3855_8cce_38c9_8952_a9d014c2fb1b --> 5b294717_9aa4_14a5_dd68_0e739883eebf
  1a78b4a5_969b_ab9d_737e_0b0d02a81073["prepareSingleStoreMigrationSnapshot"]
  b14d3855_8cce_38c9_8952_a9d014c2fb1b --> 1a78b4a5_969b_ab9d_737e_0b0d02a81073
  f28864cc_bfe5_d841_4b4d_7469a00327d0["prepareSQLiteDbPushSnapshot"]
  b14d3855_8cce_38c9_8952_a9d014c2fb1b --> f28864cc_bfe5_d841_4b4d_7469a00327d0
  9e7489ff_1b4d_bb21_dfdd_c572d42b308e["prepareSqliteMigrationSnapshot"]
  b14d3855_8cce_38c9_8952_a9d014c2fb1b --> 9e7489ff_1b4d_bb21_dfdd_c572d42b308e
  5e835bc2_6860_21e3_492c_babcc3e93529["schemaValidator.ts"]
  b14d3855_8cce_38c9_8952_a9d014c2fb1b --> 5e835bc2_6860_21e3_492c_babcc3e93529
  f2ee16c1_40e6_43f3_15b2_c391a3ac170b["mysqlSchema.ts"]
  b14d3855_8cce_38c9_8952_a9d014c2fb1b --> f2ee16c1_40e6_43f3_15b2_c391a3ac170b
  b8ffbc78_4812_3db2_2657_70d0793f7d8e["MySqlSchema"]
  b14d3855_8cce_38c9_8952_a9d014c2fb1b --> b8ffbc78_4812_3db2_2657_70d0793f7d8e
  f3976464_9993_b7cc_1cb7_d8087b203650["squashMysqlScheme"]
  b14d3855_8cce_38c9_8952_a9d014c2fb1b --> f3976464_9993_b7cc_1cb7_d8087b203650
  fdc95240_5177_1b81_d508_1107f5fd08cd["ViewSquashed"]
  b14d3855_8cce_38c9_8952_a9d014c2fb1b --> fdc95240_5177_1b81_d508_1107f5fd08cd
  style b14d3855_8cce_38c9_8952_a9d014c2fb1b fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

import fs from 'fs';
import {
	prepareMySqlDbPushSnapshot,
	prepareMySqlMigrationSnapshot,
	preparePgDbPushSnapshot,
	preparePgMigrationSnapshot,
	prepareSingleStoreDbPushSnapshot,
	prepareSingleStoreMigrationSnapshot,
	prepareSQLiteDbPushSnapshot,
	prepareSqliteMigrationSnapshot,
} from '../../migrationPreparator';

import chalk from 'chalk';
import { render } from 'hanji';
import path, { join } from 'path';
import { SingleStoreSchema, singlestoreSchema, squashSingleStoreScheme } from 'src/serializer/singlestoreSchema';
import { TypeOf } from 'zod';
import type { CommonSchema } from '../../schemaValidator';
import { MySqlSchema, mysqlSchema, squashMysqlScheme, ViewSquashed } from '../../serializer/mysqlSchema';
import { PgSchema, pgSchema, Policy, Role, squashPgScheme, View } from '../../serializer/pgSchema';
import { SQLiteSchema, sqliteSchema, squashSqliteScheme, View as SQLiteView } from '../../serializer/sqliteSchema';
import {
	applyLibSQLSnapshotsDiff,
	applyMysqlSnapshotsDiff,
	applyPgSnapshotsDiff,
	applySingleStoreSnapshotsDiff,
	applySqliteSnapshotsDiff,
	Column,
	ColumnsResolverInput,
	ColumnsResolverOutput,
	Enum,
	PolicyResolverInput,
	PolicyResolverOutput,
	ResolverInput,
	ResolverOutput,
	ResolverOutputWithMoved,
	RolesResolverInput,
	RolesResolverOutput,
	Sequence,
	Table,
	TablePolicyResolverInput,
	TablePolicyResolverOutput,
} from '../../snapshotsDiffer';
import { assertV1OutFolder, Journal, prepareMigrationFolder } from '../../utils';
import { prepareMigrationMetadata } from '../../utils/words';
import { CasingType, Driver, Prefix } from '../validations/common';
import { withStyle } from '../validations/outputs';
import {
	isRenamePromptItem,
	RenamePropmtItem,
	ResolveColumnSelect,
	ResolveSchemasSelect,
	ResolveSelect,
	ResolveSelectNamed,
	schema,
} from '../views';
import { ExportConfig, GenerateConfig } from './utils';

export type Named = {
	name: string;
// ... (1441 more lines)

Domain

Subdomains

Frequently Asked Questions

What does migrate.ts do?
migrate.ts is a source file in the drizzle-orm codebase, written in typescript. It belongs to the DrizzleKit domain, CLIWorkflow subdomain.
What functions are defined in migrate.ts?
migrate.ts defines 37 function(s): columnsResolver, embeddedMigrations, enumsResolver, freeeeeeze, indPolicyResolver, mySqlViewsResolver, mysqlSchemaSuggestions, policyResolver, prepareAndExportLibSQL, prepareAndExportMysql, and 27 more.
What does migrate.ts depend on?
migrate.ts imports 73 module(s): CasingType, Column, ColumnsResolverInput, ColumnsResolverOutput, Driver, Enum, ExportConfig, GenerateConfig, and 65 more.
What files import migrate.ts?
migrate.ts is imported by 7 file(s): api.ts, drop.ts, introspect.ts, snapshotsDiffer.ts, sqlgenerator.ts, utils.ts, views.ts.
Where is migrate.ts in the architecture?
migrate.ts is located at drizzle-kit/src/cli/commands/migrate.ts (domain: DrizzleKit, subdomain: CLIWorkflow, directory: drizzle-kit/src/cli/commands).

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free