Skip to main content

Module migrations

Module migrations 

Source
Expand description

Database migration system.

Provides both built-in FORGE schema migrations and support for user migrations.

§Migration Types

  • System migrations: Internal FORGE schema, versioned as __forge_vXXX. Always applied before user migrations. New forge features can be added without conflicting with user migration numbering.

  • User migrations: Application schema, named XXXX_name.sql. Sorted alphabetically and applied after system migrations.

Structs§

AppliedMigration
Information about an applied migration.
DiffEntry
A single diff entry.
Migration
A single migration with up and optional down SQL.
MigrationExecutor
Executes migrations against a database.
MigrationGenerator
Generates SQL migrations from schema changes.
MigrationRunner
Migration runner that handles both built-in and user migrations.
MigrationStatus
Status of migrations.
SchemaDiff
Represents the difference between two schemas.
SystemMigration
A system migration with a version number.

Enums§

DiffAction
Type of schema change.

Constants§

LEGACY_MIGRATION_NAME
Legacy migration name from older forge versions. If found, it will be considered equivalent to v001.
SYSTEM_MIGRATION_PREFIX
System migration prefix. All forge internal migrations use this prefix.

Functions§

extract_version
Extract version number from a system migration name. Returns None if not a valid system migration name.
get_all_system_sql
Get all system migrations SQL concatenated.
get_builtin_migrations
Get system migrations as Migration structs.
get_system_migrations
Get all built-in FORGE system migrations in version order.
is_system_migration
Check if a migration name is a system migration.
load_migrations_from_dir
Load user migrations from a directory.