@deterministic-code/migraters 0.0.4 → 0.0.6
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/README.md +12 -14
- package/bundle.yaml +15 -15
- package/csharp/Abstractions/IConnectionResolver.cs +1 -1
- package/csharp/Abstractions/IDatasourceProvider.cs +21 -0
- package/csharp/Abstractions/IProviderFactory.cs +7 -0
- package/csharp/Abstractions/ProviderFactory.cs +50 -0
- package/csharp/Directory.Build.props +7 -0
- package/csharp/Directory.Build.targets +7 -0
- package/csharp/GlobalUsings.cs +0 -1
- package/csharp/Infrastructure/CliSpec.cs +33 -1
- package/csharp/Infrastructure/ConnectionResolver.cs +4 -4
- package/csharp/Infrastructure/CreateDatabase.cs +2 -2
- package/csharp/Infrastructure/MigrateCli.cs +23 -27
- package/csharp/Infrastructure/Migrater.cs +53 -54
- package/csharp/Infrastructure/MigratersConfig.cs +66 -0
- package/csharp/Infrastructure/Migrations.cs +0 -18
- package/csharp/MigrateCreate.cs +4 -4
- package/csharp/MigrateDown.cs +6 -8
- package/csharp/MigrateRunner.Core.csproj +8 -3
- package/csharp/MigrateRunner.csproj +13 -1
- package/csharp/MigrateRunnerServices.cs +3 -45
- package/csharp/MigrateSetup.cs +12 -11
- package/csharp/MigrateUp.cs +5 -7
- package/csharp/{Dialects → Providers}/Mysql/MigrateMysql.csproj +2 -0
- package/csharp/{Dialects → Providers}/Mysql/MysqlCreateDatabase.cs +1 -1
- package/csharp/Providers/Mysql/MysqlProvider.cs +67 -0
- package/csharp/{Dialects → Providers}/Oracle/MigrateOracle.csproj +2 -0
- package/csharp/Providers/Oracle/OracleProvider.cs +43 -0
- package/csharp/{Dialects → Providers}/Postgres/MigratePostgres.csproj +2 -0
- package/csharp/{Dialects → Providers}/Postgres/PostgresCreateDatabase.cs +1 -1
- package/csharp/Providers/Postgres/PostgresProvider.cs +74 -0
- package/csharp/{Dialects/Postgres/obj → Providers/Postgres/obj/MigratePostgres}/Debug/net9.0/MigratePostgres.AssemblyInfo.cs +3 -1
- package/csharp/Providers/Postgres/obj/MigratePostgres/Debug/net9.0/MigratePostgres.AssemblyInfoInputs.cache +1 -0
- package/csharp/{Dialects/Postgres/obj → Providers/Postgres/obj/MigratePostgres}/Debug/net9.0/MigratePostgres.GeneratedMSBuildEditorConfig.editorconfig +1 -1
- package/csharp/Providers/Sql/ConnectionNormalizer.cs +78 -0
- package/csharp/{Infrastructure → Providers/Sql}/DbExecute.cs +2 -2
- package/csharp/Providers/Sql/GlobalUsings.cs +6 -0
- package/csharp/{Infrastructure/MigrateLog.cs → Providers/Sql/SqlCatalog.cs} +20 -5
- package/csharp/{Abstractions/SqlDialect.cs → Providers/Sql/SqlRun.cs} +77 -5
- package/csharp/{Dialects → Providers}/SqlServer/MigrateSqlServer.csproj +2 -0
- package/csharp/Providers/SqlServer/SqlServerProvider.cs +45 -0
- package/csharp/{Dialects → Providers}/Sqlite/MigrateSqlite.csproj +4 -0
- package/csharp/Providers/Sqlite/SqliteProvider.cs +71 -0
- package/orchestrator/dist/config.d.ts +3 -2
- package/orchestrator/dist/config.js +30 -8
- package/orchestrator/dist/manifests.js +6 -6
- package/orchestrator/dist/migrate-create.js +0 -0
- package/orchestrator/dist/migrate-down.js +0 -0
- package/orchestrator/dist/migrate-init.js +0 -0
- package/orchestrator/dist/migrate-setup.js +0 -0
- package/orchestrator/dist/migrate-up.js +0 -0
- package/orchestrator/dist/provider-location.d.ts +7 -0
- package/orchestrator/dist/provider-location.js +23 -0
- package/orchestrator/dist/run-init.js +2 -2
- package/orchestrator/prepare.js +16 -3
- package/package.json +14 -8
- package/rust/Cargo.lock +1 -0
- package/rust/Cargo.toml +3 -0
- package/rust/api/src/lib.rs +99 -151
- package/rust/providers/mysql/Cargo.lock +1430 -0
- package/rust/{dialects → providers}/mysql/Cargo.toml +1 -0
- package/rust/{dialects → providers}/mysql/src/lib.rs +11 -10
- package/rust/providers/oracle/Cargo.lock +486 -0
- package/rust/{dialects → providers}/oracle/Cargo.toml +1 -0
- package/rust/{dialects → providers}/oracle/src/lib.rs +17 -29
- package/rust/providers/postgres/Cargo.lock +1344 -0
- package/rust/{dialects → providers}/postgres/Cargo.toml +1 -0
- package/rust/{dialects → providers}/postgres/src/lib.rs +12 -10
- package/rust/providers/sql/Cargo.toml +8 -0
- package/rust/providers/sql/src/lib.rs +262 -0
- package/rust/providers/sql/src/normalize.rs +63 -0
- package/rust/providers/sqlite/Cargo.lock +1143 -0
- package/rust/{dialects → providers}/sqlite/Cargo.toml +1 -0
- package/rust/{dialects → providers}/sqlite/src/lib.rs +28 -35
- package/rust/providers/sqlserver/Cargo.lock +793 -0
- package/rust/{dialects → providers}/sqlserver/Cargo.toml +1 -0
- package/rust/{dialects → providers}/sqlserver/src/lib.rs +16 -12
- package/rust/src/abstractions/factory.rs +30 -6
- package/rust/src/abstractions/mod.rs +1 -1
- package/rust/src/abstractions/sql_dialect.rs +1 -1
- package/rust/src/attached_dialects.rs +1 -1
- package/rust/src/infrastructure/pool.rs +85 -26
- package/rust/src/lib.rs +212 -16
- package/rust/src/migrater.rs +70 -58
- package/rust/src/migraters_config.rs +90 -0
- package/typescript/bundle.yaml +15 -15
- package/typescript/package.json +6 -4
- package/typescript/providers/mysql/src/index.ts +5 -0
- package/typescript/{dialects/mysql/src/mysql-dialect.test.ts → providers/mysql/src/mysql-provider.test.ts} +13 -3
- package/typescript/{dialects/mysql/src/mysql-dialect.ts → providers/mysql/src/mysql-provider.ts} +49 -2
- package/typescript/providers/oracle/src/index.ts +5 -0
- package/typescript/{dialects/oracle/src/oracle-dialect.test.ts → providers/oracle/src/oracle-provider.test.ts} +14 -3
- package/typescript/{dialects/oracle/src/oracle-dialect.ts → providers/oracle/src/oracle-provider.ts} +46 -19
- package/typescript/providers/postgres/src/index.ts +5 -0
- package/typescript/{dialects/postgres/src/postgres-dialect.test.ts → providers/postgres/src/postgres-provider.test.ts} +13 -3
- package/typescript/{dialects/postgres/src/postgres-dialect.ts → providers/postgres/src/postgres-provider.ts} +38 -2
- package/typescript/providers/sql/connection-normalizer.ts +48 -0
- package/typescript/providers/sql/sql-run.ts +153 -0
- package/typescript/providers/sqlite/src/index.ts +5 -0
- package/typescript/providers/sqlite/src/sqlite-provider.paths.test.ts +28 -0
- package/typescript/{dialects/sqlite/src/sqlite-dialect.rollback.test.ts → providers/sqlite/src/sqlite-provider.rollback.test.ts} +3 -3
- package/typescript/{dialects/sqlite/src/sqlite-dialect.test.ts → providers/sqlite/src/sqlite-provider.test.ts} +11 -23
- package/typescript/{dialects/sqlite/src/sqlite-dialect.ts → providers/sqlite/src/sqlite-provider.ts} +53 -19
- package/typescript/providers/sqlserver/src/index.ts +5 -0
- package/typescript/{dialects/sqlserver/src/sqlserver-dialect.test.ts → providers/sqlserver/src/sqlserver-provider.test.ts} +13 -3
- package/typescript/{dialects/sqlserver/src/sqlserver-dialect.ts → providers/sqlserver/src/sqlserver-provider.ts} +37 -2
- package/typescript/src/abstractions/datasource-provider.ts +26 -0
- package/typescript/src/abstractions/sql-dialect-factory.ts +7 -7
- package/typescript/src/abstractions/sql-dialect.ts +1 -18
- package/typescript/src/cli.ts +7 -5
- package/typescript/src/datasource-migrate.ts +29 -146
- package/typescript/src/index.ts +6 -0
- package/typescript/src/infrastructure/connection-resolver.ts +5 -5
- package/typescript/src/infrastructure/default-factory.test.ts +17 -0
- package/typescript/src/infrastructure/default-factory.ts +30 -27
- package/typescript/src/infrastructure/migraters-config.ts +53 -0
- package/typescript/src/migrater.ts +33 -44
- package/typescript/src/setup-sql.test.ts +6 -4
- package/typescript/tsconfig.build.json +2 -2
- package/csharp/Abstractions/ISqlDialect.cs +0 -23
- package/csharp/Abstractions/ISqlDialectFactory.cs +0 -7
- package/csharp/Abstractions/SqlDialectFactory.cs +0 -24
- package/csharp/Dialects/Mysql/MysqlDialect.cs +0 -44
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/MigrateCore.dll +0 -0
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/MigrateCore.pdb +0 -0
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/MigrateMysql.deps.json +0 -213
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/MigrateMysql.dll +0 -0
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/MigrateMysql.pdb +0 -0
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/cli.yaml +0 -276
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/help/create.txt +0 -16
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/help/down.txt +0 -40
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/help/init.txt +0 -15
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/help/setup.txt +0 -45
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/help/up.txt +0 -43
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/messages/checksum-drift-line.txt +0 -1
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/messages/checksum-drift.txt +0 -11
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/messages/down/confirm-mismatch.txt +0 -1
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/messages/down/confirm-prompt.txt +0 -1
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/messages/down/confirm-stdin-failed.txt +0 -1
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/messages/down/confirm-token-mismatch.txt +0 -1
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/messages/down/confirm-tty-required.txt +0 -1
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/messages/down/destructive-header.txt +0 -2
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/messages/errors/invalid-name.txt +0 -1
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/messages/errors/migrate-path-not-dir.txt +0 -1
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/messages/errors/missing-connection.txt +0 -1
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/messages/errors/missing-name-hint.txt +0 -1
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/messages/errors/missing-name.txt +0 -1
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/messages/errors/missing-provider-hint.txt +0 -1
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/messages/errors/missing-provider.txt +0 -1
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/messages/errors/missing-value-for-flag.txt +0 -1
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/messages/errors/rollback-no-down-sibling.txt +0 -1
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/messages/errors/rollback-no-rollback-sibling.txt +0 -1
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/messages/errors/rollback-not-in-path.txt +0 -1
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/messages/errors/sqlite-prerequisite.txt +0 -1
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/messages/errors/unknown-arg.txt +0 -1
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/messages/errors/unsupported-provider.txt +0 -1
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/messages/setup-complete.txt +0 -9
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/messages/status/applied.txt +0 -1
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/messages/status/created.txt +0 -1
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/messages/status/no-more-pending.txt +0 -1
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/messages/status/no-pending.txt +0 -1
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/messages/status/no-rollback.txt +0 -1
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/messages/status/rolled-back.txt +0 -1
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/scaffold/down.sql +0 -1
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/scaffold/up.sql +0 -1
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/sql/mysql/migrate_logs.sql +0 -11
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/sql/mysql/migrates.sql +0 -7
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/sql/oracle/migrate_logs.sql +0 -14
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/sql/oracle/migrates.sql +0 -10
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/sql/postgres/migrate_logs.sql +0 -11
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/sql/postgres/migrates.sql +0 -7
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/sql/sqlite/migrate_logs.sql +0 -11
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/sql/sqlite/migrates.sql +0 -7
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/sql/sqlserver/migrate_logs.sql +0 -12
- package/csharp/Dialects/Mysql/bin/Debug/net9.0/templates/sql/sqlserver/migrates.sql +0 -8
- package/csharp/Dialects/Mysql/obj/Debug/net9.0/MigrateM.E580FE7A.Up2Date +0 -0
- package/csharp/Dialects/Mysql/obj/Debug/net9.0/MigrateMysql.AssemblyInfo.cs +0 -22
- package/csharp/Dialects/Mysql/obj/Debug/net9.0/MigrateMysql.AssemblyInfoInputs.cache +0 -1
- package/csharp/Dialects/Mysql/obj/Debug/net9.0/MigrateMysql.GeneratedMSBuildEditorConfig.editorconfig +0 -18
- package/csharp/Dialects/Mysql/obj/Debug/net9.0/MigrateMysql.GlobalUsings.g.cs +0 -8
- package/csharp/Dialects/Mysql/obj/Debug/net9.0/MigrateMysql.assets.cache +0 -0
- package/csharp/Dialects/Mysql/obj/Debug/net9.0/MigrateMysql.csproj.AssemblyReference.cache +0 -0
- package/csharp/Dialects/Mysql/obj/Debug/net9.0/MigrateMysql.csproj.CoreCompileInputs.cache +0 -1
- package/csharp/Dialects/Mysql/obj/Debug/net9.0/MigrateMysql.csproj.FileListAbsolute.txt +0 -63
- package/csharp/Dialects/Mysql/obj/Debug/net9.0/MigrateMysql.dll +0 -0
- package/csharp/Dialects/Mysql/obj/Debug/net9.0/MigrateMysql.pdb +0 -0
- package/csharp/Dialects/Mysql/obj/Debug/net9.0/MigrateMysql.sourcelink.json +0 -1
- package/csharp/Dialects/Mysql/obj/Debug/net9.0/ref/MigrateMysql.dll +0 -0
- package/csharp/Dialects/Mysql/obj/Debug/net9.0/refint/MigrateMysql.dll +0 -0
- package/csharp/Dialects/Mysql/obj/MigrateMysql.csproj.nuget.dgspec.json +0 -172
- package/csharp/Dialects/Mysql/obj/MigrateMysql.csproj.nuget.g.props +0 -15
- package/csharp/Dialects/Mysql/obj/MigrateMysql.csproj.nuget.g.targets +0 -6
- package/csharp/Dialects/Mysql/obj/project.assets.json +0 -5081
- package/csharp/Dialects/Mysql/obj/project.nuget.cache +0 -94
- package/csharp/Dialects/Oracle/OracleDialect.cs +0 -30
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/MigrateCore.dll +0 -0
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/MigrateCore.pdb +0 -0
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/MigrateOracle.deps.json +0 -343
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/MigrateOracle.dll +0 -0
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/MigrateOracle.pdb +0 -0
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/cli.yaml +0 -276
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/help/create.txt +0 -16
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/help/down.txt +0 -40
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/help/init.txt +0 -15
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/help/setup.txt +0 -45
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/help/up.txt +0 -43
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/checksum-drift-line.txt +0 -1
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/checksum-drift.txt +0 -11
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/down/confirm-mismatch.txt +0 -1
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/down/confirm-prompt.txt +0 -1
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/down/confirm-stdin-failed.txt +0 -1
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/down/confirm-token-mismatch.txt +0 -1
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/down/confirm-tty-required.txt +0 -1
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/down/destructive-header.txt +0 -2
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/errors/invalid-name.txt +0 -1
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/errors/migrate-path-not-dir.txt +0 -1
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/errors/missing-connection.txt +0 -1
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/errors/missing-name-hint.txt +0 -1
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/errors/missing-name.txt +0 -1
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/errors/missing-provider-hint.txt +0 -1
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/errors/missing-provider.txt +0 -1
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/errors/missing-value-for-flag.txt +0 -1
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/errors/rollback-no-down-sibling.txt +0 -1
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/errors/rollback-no-rollback-sibling.txt +0 -1
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/errors/rollback-not-in-path.txt +0 -1
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/errors/sqlite-prerequisite.txt +0 -1
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/errors/unknown-arg.txt +0 -1
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/errors/unsupported-provider.txt +0 -1
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/setup-complete.txt +0 -9
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/status/applied.txt +0 -1
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/status/created.txt +0 -1
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/status/no-more-pending.txt +0 -1
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/status/no-pending.txt +0 -1
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/status/no-rollback.txt +0 -1
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/messages/status/rolled-back.txt +0 -1
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/scaffold/down.sql +0 -1
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/scaffold/up.sql +0 -1
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/sql/mysql/migrate_logs.sql +0 -11
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/sql/mysql/migrates.sql +0 -7
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/sql/oracle/migrate_logs.sql +0 -14
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/sql/oracle/migrates.sql +0 -10
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/sql/postgres/migrate_logs.sql +0 -11
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/sql/postgres/migrates.sql +0 -7
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/sql/sqlite/migrate_logs.sql +0 -11
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/sql/sqlite/migrates.sql +0 -7
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/sql/sqlserver/migrate_logs.sql +0 -12
- package/csharp/Dialects/Oracle/bin/Debug/net9.0/templates/sql/sqlserver/migrates.sql +0 -8
- package/csharp/Dialects/Oracle/obj/Debug/net9.0/.NETCoreApp,Version=v9.0.AssemblyAttributes.cs +0 -4
- package/csharp/Dialects/Oracle/obj/Debug/net9.0/MigrateO.BD46121C.Up2Date +0 -0
- package/csharp/Dialects/Oracle/obj/Debug/net9.0/MigrateOracle.AssemblyInfo.cs +0 -22
- package/csharp/Dialects/Oracle/obj/Debug/net9.0/MigrateOracle.AssemblyInfoInputs.cache +0 -1
- package/csharp/Dialects/Oracle/obj/Debug/net9.0/MigrateOracle.GeneratedMSBuildEditorConfig.editorconfig +0 -18
- package/csharp/Dialects/Oracle/obj/Debug/net9.0/MigrateOracle.GlobalUsings.g.cs +0 -8
- package/csharp/Dialects/Oracle/obj/Debug/net9.0/MigrateOracle.assets.cache +0 -0
- package/csharp/Dialects/Oracle/obj/Debug/net9.0/MigrateOracle.csproj.AssemblyReference.cache +0 -0
- package/csharp/Dialects/Oracle/obj/Debug/net9.0/MigrateOracle.csproj.CoreCompileInputs.cache +0 -1
- package/csharp/Dialects/Oracle/obj/Debug/net9.0/MigrateOracle.csproj.FileListAbsolute.txt +0 -63
- package/csharp/Dialects/Oracle/obj/Debug/net9.0/MigrateOracle.dll +0 -0
- package/csharp/Dialects/Oracle/obj/Debug/net9.0/MigrateOracle.pdb +0 -0
- package/csharp/Dialects/Oracle/obj/Debug/net9.0/MigrateOracle.sourcelink.json +0 -1
- package/csharp/Dialects/Oracle/obj/Debug/net9.0/ref/MigrateOracle.dll +0 -0
- package/csharp/Dialects/Oracle/obj/Debug/net9.0/refint/MigrateOracle.dll +0 -0
- package/csharp/Dialects/Oracle/obj/MigrateOracle.csproj.nuget.dgspec.json +0 -172
- package/csharp/Dialects/Oracle/obj/MigrateOracle.csproj.nuget.g.props +0 -15
- package/csharp/Dialects/Oracle/obj/MigrateOracle.csproj.nuget.g.targets +0 -2
- package/csharp/Dialects/Oracle/obj/project.assets.json +0 -5414
- package/csharp/Dialects/Oracle/obj/project.nuget.cache +0 -101
- package/csharp/Dialects/Postgres/PostgresDialect.cs +0 -43
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/MigrateCore.dll +0 -0
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/MigrateCore.pdb +0 -0
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/MigratePostgres.deps.json +0 -212
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/MigratePostgres.dll +0 -0
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/MigratePostgres.pdb +0 -0
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/cli.yaml +0 -276
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/help/create.txt +0 -16
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/help/down.txt +0 -40
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/help/init.txt +0 -15
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/help/setup.txt +0 -45
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/help/up.txt +0 -43
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/checksum-drift-line.txt +0 -1
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/checksum-drift.txt +0 -11
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/down/confirm-mismatch.txt +0 -1
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/down/confirm-prompt.txt +0 -1
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/down/confirm-stdin-failed.txt +0 -1
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/down/confirm-token-mismatch.txt +0 -1
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/down/confirm-tty-required.txt +0 -1
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/down/destructive-header.txt +0 -2
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/errors/invalid-name.txt +0 -1
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/errors/migrate-path-not-dir.txt +0 -1
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/errors/missing-connection.txt +0 -1
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/errors/missing-name-hint.txt +0 -1
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/errors/missing-name.txt +0 -1
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/errors/missing-provider-hint.txt +0 -1
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/errors/missing-provider.txt +0 -1
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/errors/missing-value-for-flag.txt +0 -1
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/errors/rollback-no-down-sibling.txt +0 -1
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/errors/rollback-no-rollback-sibling.txt +0 -1
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/errors/rollback-not-in-path.txt +0 -1
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/errors/sqlite-prerequisite.txt +0 -1
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/errors/unknown-arg.txt +0 -1
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/errors/unsupported-provider.txt +0 -1
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/setup-complete.txt +0 -9
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/status/applied.txt +0 -1
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/status/created.txt +0 -1
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/status/no-more-pending.txt +0 -1
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/status/no-pending.txt +0 -1
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/status/no-rollback.txt +0 -1
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/messages/status/rolled-back.txt +0 -1
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/scaffold/down.sql +0 -1
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/scaffold/up.sql +0 -1
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/sql/mysql/migrate_logs.sql +0 -11
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/sql/mysql/migrates.sql +0 -7
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/sql/oracle/migrate_logs.sql +0 -14
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/sql/oracle/migrates.sql +0 -10
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/sql/postgres/migrate_logs.sql +0 -11
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/sql/postgres/migrates.sql +0 -7
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/sql/sqlite/migrate_logs.sql +0 -11
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/sql/sqlite/migrates.sql +0 -7
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/sql/sqlserver/migrate_logs.sql +0 -12
- package/csharp/Dialects/Postgres/bin/Debug/net9.0/templates/sql/sqlserver/migrates.sql +0 -8
- package/csharp/Dialects/Postgres/obj/Debug/net9.0/.NETCoreApp,Version=v9.0.AssemblyAttributes.cs +0 -4
- package/csharp/Dialects/Postgres/obj/Debug/net9.0/MigrateP.DF842641.Up2Date +0 -0
- package/csharp/Dialects/Postgres/obj/Debug/net9.0/MigratePostgres.AssemblyInfoInputs.cache +0 -1
- package/csharp/Dialects/Postgres/obj/Debug/net9.0/MigratePostgres.assets.cache +0 -0
- package/csharp/Dialects/Postgres/obj/Debug/net9.0/MigratePostgres.csproj.AssemblyReference.cache +0 -0
- package/csharp/Dialects/Postgres/obj/Debug/net9.0/MigratePostgres.csproj.CoreCompileInputs.cache +0 -1
- package/csharp/Dialects/Postgres/obj/Debug/net9.0/MigratePostgres.csproj.FileListAbsolute.txt +0 -63
- package/csharp/Dialects/Postgres/obj/Debug/net9.0/MigratePostgres.dll +0 -0
- package/csharp/Dialects/Postgres/obj/Debug/net9.0/MigratePostgres.pdb +0 -0
- package/csharp/Dialects/Postgres/obj/Debug/net9.0/MigratePostgres.sourcelink.json +0 -1
- package/csharp/Dialects/Postgres/obj/Debug/net9.0/ref/MigratePostgres.dll +0 -0
- package/csharp/Dialects/Postgres/obj/Debug/net9.0/refint/MigratePostgres.dll +0 -0
- package/csharp/Dialects/Postgres/obj/MigratePostgres.csproj.nuget.dgspec.json +0 -172
- package/csharp/Dialects/Postgres/obj/MigratePostgres.csproj.nuget.g.props +0 -15
- package/csharp/Dialects/Postgres/obj/MigratePostgres.csproj.nuget.g.targets +0 -6
- package/csharp/Dialects/Postgres/obj/project.assets.json +0 -5068
- package/csharp/Dialects/Postgres/obj/project.nuget.cache +0 -94
- package/csharp/Dialects/SqlServer/SqlServerDialect.cs +0 -21
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/MigrateCore.dll +0 -0
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/MigrateCore.pdb +0 -0
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/MigrateSqlServer.deps.json +0 -727
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/MigrateSqlServer.dll +0 -0
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/MigrateSqlServer.pdb +0 -0
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/cli.yaml +0 -276
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/help/create.txt +0 -16
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/help/down.txt +0 -40
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/help/init.txt +0 -15
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/help/setup.txt +0 -45
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/help/up.txt +0 -43
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/checksum-drift-line.txt +0 -1
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/checksum-drift.txt +0 -11
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/down/confirm-mismatch.txt +0 -1
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/down/confirm-prompt.txt +0 -1
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/down/confirm-stdin-failed.txt +0 -1
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/down/confirm-token-mismatch.txt +0 -1
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/down/confirm-tty-required.txt +0 -1
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/down/destructive-header.txt +0 -2
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/errors/invalid-name.txt +0 -1
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/errors/migrate-path-not-dir.txt +0 -1
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/errors/missing-connection.txt +0 -1
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/errors/missing-name-hint.txt +0 -1
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/errors/missing-name.txt +0 -1
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/errors/missing-provider-hint.txt +0 -1
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/errors/missing-provider.txt +0 -1
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/errors/missing-value-for-flag.txt +0 -1
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/errors/rollback-no-down-sibling.txt +0 -1
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/errors/rollback-no-rollback-sibling.txt +0 -1
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/errors/rollback-not-in-path.txt +0 -1
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/errors/sqlite-prerequisite.txt +0 -1
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/errors/unknown-arg.txt +0 -1
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/errors/unsupported-provider.txt +0 -1
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/setup-complete.txt +0 -9
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/status/applied.txt +0 -1
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/status/created.txt +0 -1
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/status/no-more-pending.txt +0 -1
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/status/no-pending.txt +0 -1
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/status/no-rollback.txt +0 -1
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/messages/status/rolled-back.txt +0 -1
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/scaffold/down.sql +0 -1
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/scaffold/up.sql +0 -1
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/sql/mysql/migrate_logs.sql +0 -11
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/sql/mysql/migrates.sql +0 -7
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/sql/oracle/migrate_logs.sql +0 -14
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/sql/oracle/migrates.sql +0 -10
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/sql/postgres/migrate_logs.sql +0 -11
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/sql/postgres/migrates.sql +0 -7
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/sql/sqlite/migrate_logs.sql +0 -11
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/sql/sqlite/migrates.sql +0 -7
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/sql/sqlserver/migrate_logs.sql +0 -12
- package/csharp/Dialects/SqlServer/bin/Debug/net9.0/templates/sql/sqlserver/migrates.sql +0 -8
- package/csharp/Dialects/SqlServer/obj/Debug/net9.0/.NETCoreApp,Version=v9.0.AssemblyAttributes.cs +0 -4
- package/csharp/Dialects/SqlServer/obj/Debug/net9.0/MigrateS.6604771C.Up2Date +0 -0
- package/csharp/Dialects/SqlServer/obj/Debug/net9.0/MigrateSqlServer.AssemblyInfo.cs +0 -22
- package/csharp/Dialects/SqlServer/obj/Debug/net9.0/MigrateSqlServer.AssemblyInfoInputs.cache +0 -1
- package/csharp/Dialects/SqlServer/obj/Debug/net9.0/MigrateSqlServer.GeneratedMSBuildEditorConfig.editorconfig +0 -18
- package/csharp/Dialects/SqlServer/obj/Debug/net9.0/MigrateSqlServer.GlobalUsings.g.cs +0 -8
- package/csharp/Dialects/SqlServer/obj/Debug/net9.0/MigrateSqlServer.assets.cache +0 -0
- package/csharp/Dialects/SqlServer/obj/Debug/net9.0/MigrateSqlServer.csproj.AssemblyReference.cache +0 -0
- package/csharp/Dialects/SqlServer/obj/Debug/net9.0/MigrateSqlServer.csproj.CoreCompileInputs.cache +0 -1
- package/csharp/Dialects/SqlServer/obj/Debug/net9.0/MigrateSqlServer.csproj.FileListAbsolute.txt +0 -63
- package/csharp/Dialects/SqlServer/obj/Debug/net9.0/MigrateSqlServer.dll +0 -0
- package/csharp/Dialects/SqlServer/obj/Debug/net9.0/MigrateSqlServer.pdb +0 -0
- package/csharp/Dialects/SqlServer/obj/Debug/net9.0/MigrateSqlServer.sourcelink.json +0 -1
- package/csharp/Dialects/SqlServer/obj/Debug/net9.0/ref/MigrateSqlServer.dll +0 -0
- package/csharp/Dialects/SqlServer/obj/Debug/net9.0/refint/MigrateSqlServer.dll +0 -0
- package/csharp/Dialects/SqlServer/obj/MigrateSqlServer.csproj.nuget.dgspec.json +0 -172
- package/csharp/Dialects/SqlServer/obj/MigrateSqlServer.csproj.nuget.g.props +0 -15
- package/csharp/Dialects/SqlServer/obj/MigrateSqlServer.csproj.nuget.g.targets +0 -7
- package/csharp/Dialects/SqlServer/obj/project.assets.json +0 -6391
- package/csharp/Dialects/SqlServer/obj/project.nuget.cache +0 -122
- package/csharp/Dialects/Sqlite/SqliteDialect.cs +0 -77
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/MigrateCore.dll +0 -0
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/MigrateCore.pdb +0 -0
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/MigrateSqlite.deps.json +0 -376
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/MigrateSqlite.dll +0 -0
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/MigrateSqlite.pdb +0 -0
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/cli.yaml +0 -276
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/help/create.txt +0 -16
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/help/down.txt +0 -40
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/help/init.txt +0 -15
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/help/setup.txt +0 -45
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/help/up.txt +0 -43
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/checksum-drift-line.txt +0 -1
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/checksum-drift.txt +0 -11
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/down/confirm-mismatch.txt +0 -1
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/down/confirm-prompt.txt +0 -1
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/down/confirm-stdin-failed.txt +0 -1
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/down/confirm-token-mismatch.txt +0 -1
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/down/confirm-tty-required.txt +0 -1
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/down/destructive-header.txt +0 -2
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/errors/invalid-name.txt +0 -1
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/errors/migrate-path-not-dir.txt +0 -1
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/errors/missing-connection.txt +0 -1
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/errors/missing-name-hint.txt +0 -1
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/errors/missing-name.txt +0 -1
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/errors/missing-provider-hint.txt +0 -1
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/errors/missing-provider.txt +0 -1
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/errors/missing-value-for-flag.txt +0 -1
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/errors/rollback-no-down-sibling.txt +0 -1
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/errors/rollback-no-rollback-sibling.txt +0 -1
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/errors/rollback-not-in-path.txt +0 -1
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/errors/sqlite-prerequisite.txt +0 -1
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/errors/unknown-arg.txt +0 -1
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/errors/unsupported-provider.txt +0 -1
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/setup-complete.txt +0 -9
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/status/applied.txt +0 -1
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/status/created.txt +0 -1
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/status/no-more-pending.txt +0 -1
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/status/no-pending.txt +0 -1
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/status/no-rollback.txt +0 -1
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/messages/status/rolled-back.txt +0 -1
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/scaffold/down.sql +0 -1
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/scaffold/up.sql +0 -1
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/sql/mysql/migrate_logs.sql +0 -11
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/sql/mysql/migrates.sql +0 -7
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/sql/oracle/migrate_logs.sql +0 -14
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/sql/oracle/migrates.sql +0 -10
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/sql/postgres/migrate_logs.sql +0 -11
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/sql/postgres/migrates.sql +0 -7
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/sql/sqlite/migrate_logs.sql +0 -11
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/sql/sqlite/migrates.sql +0 -7
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/sql/sqlserver/migrate_logs.sql +0 -12
- package/csharp/Dialects/Sqlite/bin/Debug/net9.0/templates/sql/sqlserver/migrates.sql +0 -8
- package/csharp/Dialects/Sqlite/obj/Debug/net9.0/.NETCoreApp,Version=v9.0.AssemblyAttributes.cs +0 -4
- package/csharp/Dialects/Sqlite/obj/Debug/net9.0/MigrateS.4867C581.Up2Date +0 -0
- package/csharp/Dialects/Sqlite/obj/Debug/net9.0/MigrateSqlite.AssemblyInfo.cs +0 -22
- package/csharp/Dialects/Sqlite/obj/Debug/net9.0/MigrateSqlite.AssemblyInfoInputs.cache +0 -1
- package/csharp/Dialects/Sqlite/obj/Debug/net9.0/MigrateSqlite.GeneratedMSBuildEditorConfig.editorconfig +0 -18
- package/csharp/Dialects/Sqlite/obj/Debug/net9.0/MigrateSqlite.GlobalUsings.g.cs +0 -8
- package/csharp/Dialects/Sqlite/obj/Debug/net9.0/MigrateSqlite.assets.cache +0 -0
- package/csharp/Dialects/Sqlite/obj/Debug/net9.0/MigrateSqlite.csproj.AssemblyReference.cache +0 -0
- package/csharp/Dialects/Sqlite/obj/Debug/net9.0/MigrateSqlite.csproj.CoreCompileInputs.cache +0 -1
- package/csharp/Dialects/Sqlite/obj/Debug/net9.0/MigrateSqlite.csproj.FileListAbsolute.txt +0 -63
- package/csharp/Dialects/Sqlite/obj/Debug/net9.0/MigrateSqlite.dll +0 -0
- package/csharp/Dialects/Sqlite/obj/Debug/net9.0/MigrateSqlite.pdb +0 -0
- package/csharp/Dialects/Sqlite/obj/Debug/net9.0/MigrateSqlite.sourcelink.json +0 -1
- package/csharp/Dialects/Sqlite/obj/Debug/net9.0/ref/MigrateSqlite.dll +0 -0
- package/csharp/Dialects/Sqlite/obj/Debug/net9.0/refint/MigrateSqlite.dll +0 -0
- package/csharp/Dialects/Sqlite/obj/MigrateSqlite.csproj.nuget.dgspec.json +0 -172
- package/csharp/Dialects/Sqlite/obj/MigrateSqlite.csproj.nuget.g.props +0 -15
- package/csharp/Dialects/Sqlite/obj/MigrateSqlite.csproj.nuget.g.targets +0 -6
- package/csharp/Dialects/Sqlite/obj/project.assets.json +0 -5263
- package/csharp/Dialects/Sqlite/obj/project.nuget.cache +0 -99
- package/rust/src/dialects/mod.rs +0 -4
- package/typescript/dialects/mysql/src/index.ts +0 -4
- package/typescript/dialects/oracle/src/index.ts +0 -4
- package/typescript/dialects/postgres/src/index.ts +0 -4
- package/typescript/dialects/sqlite/src/index.ts +0 -4
- package/typescript/dialects/sqlserver/src/index.ts +0 -4
- package/typescript/src/abstractions/sql-dialect-base.ts +0 -38
- /package/csharp/{Dialects/Mysql/obj → Providers/Postgres/obj/MigratePostgres}/Debug/net9.0/.NETCoreApp,Version=v9.0.AssemblyAttributes.cs +0 -0
- /package/csharp/{Dialects/Postgres/obj → Providers/Postgres/obj/MigratePostgres}/Debug/net9.0/MigratePostgres.GlobalUsings.g.cs +0 -0
- /package/csharp/{Dialects → Providers}/SqlServer/SqlServerCreateDatabase.cs +0 -0
- /package/typescript/{dialects → providers}/mysql/package.json +0 -0
- /package/typescript/{dialects → providers}/oracle/package.json +0 -0
- /package/typescript/{dialects → providers}/postgres/package.json +0 -0
- /package/typescript/{src/infrastructure → providers/sql}/split-on-go.ts +0 -0
- /package/typescript/{dialects → providers}/sqlite/package.json +0 -0
- /package/typescript/{dialects → providers}/sqlserver/package.json +0 -0
package/README.md
CHANGED
|
@@ -1,29 +1,30 @@
|
|
|
1
1
|
# Migraters
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
[](https://github.com/deterministic-code/migraters/actions/workflows/proof.yml)
|
|
4
|
+
|
|
5
|
+
Migraters allows you to save SQL changes during development so they can be applied upstream later. As a codebase grows in complexity and team size, keeping those changes tracked and in sync becomes harder. Migraters is built for that.
|
|
4
6
|
|
|
5
7
|
The typical workflow is:
|
|
6
8
|
|
|
7
9
|
* On development, create one or more migration files, test them, and run migrate up.
|
|
8
10
|
* On deploy, those scripts are copied to production and migrate up is run again, so the upstream database matches development.
|
|
9
11
|
|
|
10
|
-
The
|
|
12
|
+
The migrate commands are available in [many languages](#language-support) and support [many SQL dialects](#providers).
|
|
11
13
|
|
|
12
|
-
## Install
|
|
14
|
+
## Install skill
|
|
13
15
|
|
|
14
|
-
|
|
16
|
+
Agent skill for Claude or Cursor: [skill/SKILL.md](skill/SKILL.md).
|
|
15
17
|
|
|
16
18
|
```shell
|
|
17
|
-
|
|
18
|
-
npx migrate-init --language typescript --dialect sqlite --dialect postgres
|
|
19
|
+
npx skills add https://github.com/deterministic-code/migraters/tree/main/skill -g -a cursor -a claude-code -y --copy
|
|
19
20
|
```
|
|
20
21
|
|
|
21
|
-
|
|
22
|
+
## Install
|
|
22
23
|
|
|
23
|
-
|
|
24
|
+
### Install from npm
|
|
24
25
|
|
|
25
26
|
```shell
|
|
26
|
-
|
|
27
|
+
npm install @deterministic-code/migraters
|
|
27
28
|
```
|
|
28
29
|
|
|
29
30
|
## Skill Prompts
|
|
@@ -38,8 +39,6 @@ Natural-language prompts the [skill](skill/SKILL.md) maps straight to CLI comman
|
|
|
38
39
|
| migrate up | `npx migrate-up` |
|
|
39
40
|
| migrate down | `npx migrate-down` |
|
|
40
41
|
|
|
41
|
-
`npx migrate-init` replaces the language and dialect set, so “add driver” means re-run init with the same `--language`, the previously enabled dialects, and the new one (for example `npx migrate-init --language typescript --dialect sqlite --dialect postgres --dialect oracle` after a sqlite+postgres install). Flag details are under [Commands](#commands).
|
|
42
|
-
|
|
43
42
|
## Quick example
|
|
44
43
|
|
|
45
44
|
`user.sql`:
|
|
@@ -55,6 +54,7 @@ CREATE TABLE users (
|
|
|
55
54
|
npx migrate-init --language typescript --dialect sqlite
|
|
56
55
|
npx migrate-setup --provider sqlite --connection ./app.sqlite
|
|
57
56
|
npx migrate-create --provider sqlite --name add_users
|
|
57
|
+
touch user.sql
|
|
58
58
|
cat user.sql > sql/sqlite/migrations/0001_add_users_up.sql
|
|
59
59
|
npx migrate-up --provider sqlite --connection ./app.sqlite
|
|
60
60
|
```
|
|
@@ -63,7 +63,7 @@ npx migrate-up --provider sqlite --connection ./app.sqlite
|
|
|
63
63
|
|
|
64
64
|
### init
|
|
65
65
|
|
|
66
|
-
|
|
66
|
+
The `migrate-init` command installs language and datasource dependencies and builds the migrate commands.
|
|
67
67
|
|
|
68
68
|
```shell
|
|
69
69
|
npx migrate-init --language typescript --dialect sqlite --dialect postgres
|
|
@@ -71,8 +71,6 @@ npx migrate-init --language csharp --dialect sqlite
|
|
|
71
71
|
npx migrate-init --language rust --dialect sqlite
|
|
72
72
|
```
|
|
73
73
|
|
|
74
|
-
`migrate-init` attaches only the selected dialect packages and builds those binaries. TypeScript installs `@deterministic-code/migraters-<dialect>` (one driver each). C# writes `ProjectReference`s to `Dialects/<Name>/Migrate*.csproj` (each project owns one NuGet driver). Rust still enables Cargo features until its pool is split the same way. A clone does not ship or build the full dialect matrix.
|
|
75
|
-
|
|
76
74
|
### setup
|
|
77
75
|
|
|
78
76
|
Creates the `migrates` and `migrate_logs` tables and the migrations directory. Idempotent.
|
package/bundle.yaml
CHANGED
|
@@ -23,7 +23,7 @@ languages:
|
|
|
23
23
|
dialects:
|
|
24
24
|
sqlite:
|
|
25
25
|
files:
|
|
26
|
-
- typescript/
|
|
26
|
+
- typescript/providers/sqlite/**
|
|
27
27
|
- shared/templates/sql/sqlite/**
|
|
28
28
|
apk: sqlite
|
|
29
29
|
packages:
|
|
@@ -31,27 +31,27 @@ languages:
|
|
|
31
31
|
installScripts: true
|
|
32
32
|
postgres:
|
|
33
33
|
files:
|
|
34
|
-
- typescript/
|
|
34
|
+
- typescript/providers/postgres/**
|
|
35
35
|
- shared/templates/sql/postgres/**
|
|
36
36
|
apk: postgresql-client
|
|
37
37
|
packages:
|
|
38
38
|
- name: pg
|
|
39
39
|
mysql:
|
|
40
40
|
files:
|
|
41
|
-
- typescript/
|
|
41
|
+
- typescript/providers/mysql/**
|
|
42
42
|
- shared/templates/sql/mysql/**
|
|
43
43
|
apk: mysql-client
|
|
44
44
|
packages:
|
|
45
45
|
- name: mysql2
|
|
46
46
|
sqlserver:
|
|
47
47
|
files:
|
|
48
|
-
- typescript/
|
|
48
|
+
- typescript/providers/sqlserver/**
|
|
49
49
|
- shared/templates/sql/sqlserver/**
|
|
50
50
|
packages:
|
|
51
51
|
- name: mssql
|
|
52
52
|
oracle:
|
|
53
53
|
files:
|
|
54
|
-
- typescript/
|
|
54
|
+
- typescript/providers/oracle/**
|
|
55
55
|
- shared/templates/sql/oracle/**
|
|
56
56
|
packages:
|
|
57
57
|
- name: oracledb
|
|
@@ -104,26 +104,26 @@ languages:
|
|
|
104
104
|
dialects:
|
|
105
105
|
sqlite:
|
|
106
106
|
files:
|
|
107
|
-
- rust/
|
|
107
|
+
- rust/providers/sqlite/**
|
|
108
108
|
- shared/templates/sql/sqlite/**
|
|
109
109
|
apk: sqlite
|
|
110
110
|
postgres:
|
|
111
111
|
files:
|
|
112
|
-
- rust/
|
|
112
|
+
- rust/providers/postgres/**
|
|
113
113
|
- shared/templates/sql/postgres/**
|
|
114
114
|
apk: postgresql-client
|
|
115
115
|
mysql:
|
|
116
116
|
files:
|
|
117
|
-
- rust/
|
|
117
|
+
- rust/providers/mysql/**
|
|
118
118
|
- shared/templates/sql/mysql/**
|
|
119
119
|
apk: mysql-client
|
|
120
120
|
sqlserver:
|
|
121
121
|
files:
|
|
122
|
-
- rust/
|
|
122
|
+
- rust/providers/sqlserver/**
|
|
123
123
|
- shared/templates/sql/sqlserver/**
|
|
124
124
|
oracle:
|
|
125
125
|
files:
|
|
126
|
-
- rust/
|
|
126
|
+
- rust/providers/oracle/**
|
|
127
127
|
- shared/templates/sql/oracle/**
|
|
128
128
|
commands:
|
|
129
129
|
setup: migrate-setup --provider {{provider}}
|
|
@@ -183,7 +183,7 @@ languages:
|
|
|
183
183
|
dialects:
|
|
184
184
|
sqlite:
|
|
185
185
|
files:
|
|
186
|
-
- csharp/
|
|
186
|
+
- csharp/Providers/Sqlite/**
|
|
187
187
|
- shared/templates/sql/sqlite/**
|
|
188
188
|
apk: sqlite
|
|
189
189
|
packages:
|
|
@@ -191,7 +191,7 @@ languages:
|
|
|
191
191
|
version: "9.0.0"
|
|
192
192
|
postgres:
|
|
193
193
|
files:
|
|
194
|
-
- csharp/
|
|
194
|
+
- csharp/Providers/Postgres/**
|
|
195
195
|
- shared/templates/sql/postgres/**
|
|
196
196
|
apk: postgresql-client
|
|
197
197
|
packages:
|
|
@@ -199,7 +199,7 @@ languages:
|
|
|
199
199
|
version: "9.0.2"
|
|
200
200
|
mysql:
|
|
201
201
|
files:
|
|
202
|
-
- csharp/
|
|
202
|
+
- csharp/Providers/Mysql/**
|
|
203
203
|
- shared/templates/sql/mysql/**
|
|
204
204
|
apk: mysql-client
|
|
205
205
|
packages:
|
|
@@ -207,14 +207,14 @@ languages:
|
|
|
207
207
|
version: "2.4.0"
|
|
208
208
|
sqlserver:
|
|
209
209
|
files:
|
|
210
|
-
- csharp/
|
|
210
|
+
- csharp/Providers/SqlServer/**
|
|
211
211
|
- shared/templates/sql/sqlserver/**
|
|
212
212
|
packages:
|
|
213
213
|
- name: Microsoft.Data.SqlClient
|
|
214
214
|
version: "6.0.2"
|
|
215
215
|
oracle:
|
|
216
216
|
files:
|
|
217
|
-
- csharp/
|
|
217
|
+
- csharp/Providers/Oracle/**
|
|
218
218
|
- shared/templates/sql/oracle/**
|
|
219
219
|
packages:
|
|
220
220
|
- name: Oracle.ManagedDataAccess.Core
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
namespace Deterministic.MigrateRunner;
|
|
2
|
+
|
|
3
|
+
public interface IDatasourceProvider
|
|
4
|
+
{
|
|
5
|
+
string Name { get; }
|
|
6
|
+
void PrepareSetup(string connection);
|
|
7
|
+
Task CreateDatabaseIfMissingAsync(string connection);
|
|
8
|
+
Task Setup(string connection);
|
|
9
|
+
Task<IReadOnlyDictionary<string, string?>> Applied(string connection);
|
|
10
|
+
Task MigrateUp(string connection, string name, string body, string checksum);
|
|
11
|
+
Task MigrateDown(string connection, string name, string body);
|
|
12
|
+
Task<long> Log(
|
|
13
|
+
string connection,
|
|
14
|
+
long? id,
|
|
15
|
+
string name,
|
|
16
|
+
string direction,
|
|
17
|
+
string? status,
|
|
18
|
+
long durationMs,
|
|
19
|
+
string? error
|
|
20
|
+
);
|
|
21
|
+
}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
using System.Reflection;
|
|
2
|
+
|
|
3
|
+
namespace Deterministic.MigrateRunner;
|
|
4
|
+
|
|
5
|
+
internal sealed class ProviderFactory : IProviderFactory
|
|
6
|
+
{
|
|
7
|
+
private readonly IDatasourceProvider[] _all;
|
|
8
|
+
private readonly IReadOnlyDictionary<string, IDatasourceProvider> _byName;
|
|
9
|
+
|
|
10
|
+
public ProviderFactory()
|
|
11
|
+
{
|
|
12
|
+
var providers = LoadEnabled().ToArray();
|
|
13
|
+
_all =
|
|
14
|
+
[
|
|
15
|
+
.. CliSpec.Providers.Select(name => providers.FirstOrDefault(p => p.Name == name))
|
|
16
|
+
.OfType<IDatasourceProvider>(),
|
|
17
|
+
];
|
|
18
|
+
_byName = providers.ToDictionary(p => p.Name, StringComparer.Ordinal);
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
public IReadOnlyList<IDatasourceProvider> All() => _all;
|
|
22
|
+
|
|
23
|
+
public bool TryGet(string name, out IDatasourceProvider provider)
|
|
24
|
+
{
|
|
25
|
+
var key = MigrateCli.NormalizeProvider(name);
|
|
26
|
+
if (key is not null && _byName.TryGetValue(key, out provider!))
|
|
27
|
+
return true;
|
|
28
|
+
provider = null!;
|
|
29
|
+
return false;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
private static IEnumerable<IDatasourceProvider> LoadEnabled() =>
|
|
33
|
+
MigratersConfig.EnabledProviders().Select(LoadNamed);
|
|
34
|
+
|
|
35
|
+
private static IDatasourceProvider LoadNamed(ProviderEntry entry)
|
|
36
|
+
{
|
|
37
|
+
var bang = entry.Location.IndexOf('!');
|
|
38
|
+
if (bang <= 0)
|
|
39
|
+
throw new InvalidOperationException(entry.Name);
|
|
40
|
+
var dll = entry.Location[..bang];
|
|
41
|
+
var typeName = entry.Location[(bang + 1)..];
|
|
42
|
+
var path = Path.Combine(AppContext.BaseDirectory, dll);
|
|
43
|
+
if (!File.Exists(path))
|
|
44
|
+
throw new InvalidOperationException(entry.Name);
|
|
45
|
+
var type = Assembly.LoadFrom(path).GetType(typeName);
|
|
46
|
+
if (type is null || Activator.CreateInstance(type) is not IDatasourceProvider provider)
|
|
47
|
+
throw new InvalidOperationException(entry.Name);
|
|
48
|
+
return provider;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
<Project>
|
|
2
|
+
<!-- Runner and Core share this directory. A shared obj/project.assets.json
|
|
3
|
+
drops SQLite native runtime targets from MigrateRunner.deps.json. -->
|
|
4
|
+
<PropertyGroup>
|
|
5
|
+
<BaseIntermediateOutputPath>obj/$(MSBuildProjectName)/</BaseIntermediateOutputPath>
|
|
6
|
+
</PropertyGroup>
|
|
7
|
+
</Project>
|
package/csharp/GlobalUsings.cs
CHANGED
|
@@ -11,6 +11,7 @@ internal static class CliSpec
|
|
|
11
11
|
string[] Providers,
|
|
12
12
|
string[] Languages,
|
|
13
13
|
IReadOnlyDictionary<string, string> ProviderAliases,
|
|
14
|
+
IReadOnlyDictionary<string, string[]> ConnectionEnvironment,
|
|
14
15
|
string EnvVarListSeparator,
|
|
15
16
|
Command[] Commands
|
|
16
17
|
);
|
|
@@ -19,6 +20,8 @@ internal static class CliSpec
|
|
|
19
20
|
|
|
20
21
|
internal static IReadOnlyList<string> Providers => Document.Providers;
|
|
21
22
|
internal static IReadOnlyDictionary<string, string> ProviderAliases => Document.ProviderAliases;
|
|
23
|
+
internal static IReadOnlyDictionary<string, string[]> ConnectionEnvironment =>
|
|
24
|
+
Document.ConnectionEnvironment;
|
|
22
25
|
internal static string EnvVarListSeparator => Document.EnvVarListSeparator;
|
|
23
26
|
|
|
24
27
|
internal static string UsageLine(string verb)
|
|
@@ -60,11 +63,13 @@ internal static class CliSpec
|
|
|
60
63
|
var providers = new List<string>();
|
|
61
64
|
var languages = new List<string>();
|
|
62
65
|
var providerAliases = new Dictionary<string, string>(StringComparer.Ordinal);
|
|
66
|
+
var connectionEnvironment = new Dictionary<string, string[]>(StringComparer.Ordinal);
|
|
63
67
|
var envVarListSeparator = " / ";
|
|
64
68
|
var commands = new List<Command>();
|
|
65
69
|
var inProviders = false;
|
|
66
70
|
var inLanguages = false;
|
|
67
71
|
var inAliases = false;
|
|
72
|
+
var inConnectionEnv = false;
|
|
68
73
|
var inCommands = false;
|
|
69
74
|
string? currentVerb = null;
|
|
70
75
|
var currentArgs = new List<Arg>();
|
|
@@ -90,6 +95,7 @@ internal static class CliSpec
|
|
|
90
95
|
inProviders = false;
|
|
91
96
|
inLanguages = false;
|
|
92
97
|
inAliases = false;
|
|
98
|
+
inConnectionEnv = false;
|
|
93
99
|
if (!line.StartsWith("commands:", StringComparison.Ordinal))
|
|
94
100
|
{
|
|
95
101
|
inCommands = false;
|
|
@@ -121,6 +127,11 @@ internal static class CliSpec
|
|
|
121
127
|
inAliases = true;
|
|
122
128
|
continue;
|
|
123
129
|
}
|
|
130
|
+
if (line.StartsWith("connection_environment:", StringComparison.Ordinal))
|
|
131
|
+
{
|
|
132
|
+
inConnectionEnv = true;
|
|
133
|
+
continue;
|
|
134
|
+
}
|
|
124
135
|
if (line.StartsWith("commands:", StringComparison.Ordinal))
|
|
125
136
|
{
|
|
126
137
|
inCommands = true;
|
|
@@ -153,6 +164,19 @@ internal static class CliSpec
|
|
|
153
164
|
}
|
|
154
165
|
continue;
|
|
155
166
|
}
|
|
167
|
+
if (inConnectionEnv)
|
|
168
|
+
{
|
|
169
|
+
var envLine = line.Trim();
|
|
170
|
+
var colon = envLine.IndexOf(':');
|
|
171
|
+
if (colon > 0)
|
|
172
|
+
{
|
|
173
|
+
var name = envLine[..colon].Trim();
|
|
174
|
+
var list = envLine[(colon + 1)..].Trim().Trim('[', ']');
|
|
175
|
+
connectionEnvironment[name] = list
|
|
176
|
+
.Split(',', StringSplitOptions.TrimEntries | StringSplitOptions.RemoveEmptyEntries);
|
|
177
|
+
}
|
|
178
|
+
continue;
|
|
179
|
+
}
|
|
156
180
|
if (!inCommands)
|
|
157
181
|
continue;
|
|
158
182
|
var trimmed = line.Trim();
|
|
@@ -184,7 +208,15 @@ internal static class CliSpec
|
|
|
184
208
|
}
|
|
185
209
|
}
|
|
186
210
|
Flush();
|
|
187
|
-
return new Spec(
|
|
211
|
+
return new Spec(
|
|
212
|
+
command,
|
|
213
|
+
[.. providers],
|
|
214
|
+
[.. languages],
|
|
215
|
+
providerAliases,
|
|
216
|
+
connectionEnvironment,
|
|
217
|
+
envVarListSeparator,
|
|
218
|
+
[.. commands]
|
|
219
|
+
);
|
|
188
220
|
}
|
|
189
221
|
|
|
190
222
|
internal static string StripKey(string raw) =>
|
|
@@ -2,8 +2,8 @@ namespace Deterministic.MigrateRunner;
|
|
|
2
2
|
|
|
3
3
|
internal sealed class ConnectionResolver : IConnectionResolver
|
|
4
4
|
{
|
|
5
|
-
public string? FromEnvironment(
|
|
6
|
-
|
|
7
|
-
.
|
|
8
|
-
|
|
5
|
+
public string? FromEnvironment(string provider) =>
|
|
6
|
+
CliSpec.ConnectionEnvironment.TryGetValue(provider, out var names)
|
|
7
|
+
? names.Select(Environment.GetEnvironmentVariable).FirstOrDefault(v => !string.IsNullOrEmpty(v))
|
|
8
|
+
: null;
|
|
9
9
|
}
|
|
@@ -2,6 +2,6 @@ namespace Deterministic.MigrateRunner;
|
|
|
2
2
|
|
|
3
3
|
internal static class CreateDatabase
|
|
4
4
|
{
|
|
5
|
-
public static Task RunAsync(
|
|
6
|
-
|
|
5
|
+
public static Task RunAsync(IDatasourceProvider provider, string connection) =>
|
|
6
|
+
provider.CreateDatabaseIfMissingAsync(connection);
|
|
7
7
|
}
|
|
@@ -27,43 +27,38 @@ internal static class MigrateCli
|
|
|
27
27
|
sub = sub["migrate-".Length..];
|
|
28
28
|
return sub.ToLowerInvariant();
|
|
29
29
|
}
|
|
30
|
-
internal static
|
|
31
|
-
|
|
30
|
+
internal static ProviderResolution ResolveProvider(
|
|
31
|
+
IProviderFactory providers,
|
|
32
32
|
IConnectionResolver connections,
|
|
33
33
|
string provider,
|
|
34
|
-
string? connection
|
|
35
|
-
out ISqlDialect dialect,
|
|
36
|
-
out string resolvedConnection,
|
|
37
|
-
out string error
|
|
34
|
+
string? connection
|
|
38
35
|
)
|
|
39
36
|
{
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
if (!dialects.TryGet(provider, out dialect))
|
|
44
|
-
return Fail(
|
|
37
|
+
if (!providers.TryGet(provider, out var resolved))
|
|
38
|
+
{
|
|
39
|
+
return new ProviderResolution.Rejected(
|
|
45
40
|
HelpTemplates.Message(
|
|
46
41
|
"errors/unsupported-provider",
|
|
47
42
|
new Dictionary<string, string> { ["provider"] = provider }
|
|
48
|
-
)
|
|
49
|
-
out error
|
|
43
|
+
)
|
|
50
44
|
);
|
|
45
|
+
}
|
|
46
|
+
var resolvedConnection = connection ?? string.Empty;
|
|
51
47
|
if (string.IsNullOrEmpty(resolvedConnection))
|
|
52
|
-
resolvedConnection = connections.FromEnvironment(
|
|
48
|
+
resolvedConnection = connections.FromEnvironment(resolved.Name) ?? string.Empty;
|
|
53
49
|
if (string.IsNullOrEmpty(resolvedConnection))
|
|
54
50
|
{
|
|
55
|
-
|
|
51
|
+
var envVars = CliSpec.ConnectionEnvironment.TryGetValue(resolved.Name, out var names)
|
|
52
|
+
? names
|
|
53
|
+
: [];
|
|
54
|
+
return new ProviderResolution.Rejected(
|
|
56
55
|
HelpTemplates.Message(
|
|
57
56
|
"errors/missing-connection",
|
|
58
|
-
new Dictionary<string, string>
|
|
59
|
-
|
|
60
|
-
["envVars"] = EnvVarsList(dialect.ConnectionEnvironmentVariables),
|
|
61
|
-
}
|
|
62
|
-
),
|
|
63
|
-
out error
|
|
57
|
+
new Dictionary<string, string> { ["envVars"] = EnvVarsList(envVars) }
|
|
58
|
+
)
|
|
64
59
|
);
|
|
65
60
|
}
|
|
66
|
-
return
|
|
61
|
+
return new ProviderResolution.Ready(resolved, resolvedConnection);
|
|
67
62
|
}
|
|
68
63
|
|
|
69
64
|
internal static string MigratePath(string provider, string? migratePath, string? migrateRoot) =>
|
|
@@ -150,10 +145,11 @@ internal static class MigrateCli
|
|
|
150
145
|
new Dictionary<string, string> { ["flag"] = arg }
|
|
151
146
|
)
|
|
152
147
|
: HelpTemplates.Message("errors/unknown-arg", new Dictionary<string, string> { ["arg"] = arg });
|
|
148
|
+
}
|
|
153
149
|
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
150
|
+
internal abstract record ProviderResolution
|
|
151
|
+
{
|
|
152
|
+
internal sealed record Ready(IDatasourceProvider Provider, string Connection) : ProviderResolution;
|
|
153
|
+
|
|
154
|
+
internal sealed record Rejected(string Error) : ProviderResolution;
|
|
159
155
|
}
|
|
@@ -1,26 +1,23 @@
|
|
|
1
1
|
namespace Deterministic.MigrateRunner;
|
|
2
2
|
|
|
3
|
-
internal sealed class Migrater(
|
|
3
|
+
internal sealed class Migrater(IDatasourceProvider provider) : IMigrater
|
|
4
4
|
{
|
|
5
|
-
public string Name =>
|
|
5
|
+
public string Name => provider.Name;
|
|
6
6
|
|
|
7
7
|
public async Task Setup(SetupArg args)
|
|
8
8
|
{
|
|
9
|
-
|
|
10
|
-
await
|
|
11
|
-
await conn.OpenAsync().ConfigureAwait(false);
|
|
12
|
-
await DbExecute.NonQueryAsync(conn, null, dialect.MigratesDdl).ConfigureAwait(false);
|
|
13
|
-
await DbExecute.NonQueryAsync(conn, null, dialect.MigrateLogsDdl).ConfigureAwait(false);
|
|
9
|
+
provider.PrepareSetup(args.Connection);
|
|
10
|
+
await provider.Setup(args.Connection).ConfigureAwait(false);
|
|
14
11
|
Directory.CreateDirectory(args.MigrationsPath);
|
|
15
12
|
}
|
|
16
13
|
|
|
17
14
|
public async Task<IReadOnlyList<string>> Up(UpArg args)
|
|
18
15
|
{
|
|
19
|
-
await using var conn = dialect.CreateConnection(dialect.NormalizeConnectionString(args.Connection));
|
|
20
|
-
await conn.OpenAsync().ConfigureAwait(false);
|
|
21
|
-
|
|
22
16
|
var files = Migrations.OrderedUpFiles(args.MigrationsPath);
|
|
23
|
-
var applied =
|
|
17
|
+
var applied = new Dictionary<string, string?>(
|
|
18
|
+
await provider.Applied(args.Connection).ConfigureAwait(false),
|
|
19
|
+
StringComparer.Ordinal
|
|
20
|
+
);
|
|
24
21
|
Migrations.AssertNoChecksumDrift(files, applied);
|
|
25
22
|
var names = new List<string>();
|
|
26
23
|
while (true)
|
|
@@ -31,34 +28,36 @@ internal sealed class Migrater(ISqlDialect dialect) : IMigrater
|
|
|
31
28
|
|
|
32
29
|
var sql = await File.ReadAllTextAsync(next.UpPath).ConfigureAwait(false);
|
|
33
30
|
var checksum = Checksum.Hex(sql);
|
|
34
|
-
var logId = await
|
|
31
|
+
var logId = await provider.Log(args.Connection, null, next.Name, "up", null, 0, null)
|
|
32
|
+
.ConfigureAwait(false);
|
|
35
33
|
var started = DateTime.UtcNow;
|
|
36
34
|
try
|
|
37
35
|
{
|
|
38
|
-
await
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
dialect.InsertAppliedSql,
|
|
49
|
-
("p1", next.Name),
|
|
50
|
-
("p2", checksum)
|
|
51
|
-
)
|
|
36
|
+
await provider.MigrateUp(args.Connection, next.Name, sql, checksum).ConfigureAwait(false);
|
|
37
|
+
await provider
|
|
38
|
+
.Log(
|
|
39
|
+
args.Connection,
|
|
40
|
+
logId,
|
|
41
|
+
next.Name,
|
|
42
|
+
"up",
|
|
43
|
+
"success",
|
|
44
|
+
(long)(DateTime.UtcNow - started).TotalMilliseconds,
|
|
45
|
+
null
|
|
52
46
|
)
|
|
53
47
|
.ConfigureAwait(false);
|
|
54
|
-
await MigrateLog
|
|
55
|
-
.UpdateAsync(conn, dialect, logId, "success", (long)(DateTime.UtcNow - started).TotalMilliseconds, null)
|
|
56
|
-
.ConfigureAwait(false);
|
|
57
48
|
}
|
|
58
49
|
catch (Exception ex)
|
|
59
50
|
{
|
|
60
|
-
await
|
|
61
|
-
.
|
|
51
|
+
await provider
|
|
52
|
+
.Log(
|
|
53
|
+
args.Connection,
|
|
54
|
+
logId,
|
|
55
|
+
next.Name,
|
|
56
|
+
"up",
|
|
57
|
+
"error",
|
|
58
|
+
(long)(DateTime.UtcNow - started).TotalMilliseconds,
|
|
59
|
+
ex.Message
|
|
60
|
+
)
|
|
62
61
|
.ConfigureAwait(false);
|
|
63
62
|
throw;
|
|
64
63
|
}
|
|
@@ -72,11 +71,8 @@ internal sealed class Migrater(ISqlDialect dialect) : IMigrater
|
|
|
72
71
|
|
|
73
72
|
public async Task<string?> Down(DownArg args)
|
|
74
73
|
{
|
|
75
|
-
await using var conn = dialect.CreateConnection(dialect.NormalizeConnectionString(args.Connection));
|
|
76
|
-
await conn.OpenAsync().ConfigureAwait(false);
|
|
77
|
-
|
|
78
74
|
var files = Migrations.OrderedUpFiles(args.MigrationsPath);
|
|
79
|
-
var applied = await
|
|
75
|
+
var applied = await provider.Applied(args.Connection).ConfigureAwait(false);
|
|
80
76
|
if (applied.Count == 0)
|
|
81
77
|
return null;
|
|
82
78
|
Migrations.AssertNoChecksumDrift(files, applied);
|
|
@@ -93,33 +89,36 @@ internal sealed class Migrater(ISqlDialect dialect) : IMigrater
|
|
|
93
89
|
)
|
|
94
90
|
);
|
|
95
91
|
var sql = await File.ReadAllTextAsync(path).ConfigureAwait(false);
|
|
96
|
-
var logId = await
|
|
92
|
+
var logId = await provider.Log(args.Connection, null, last.Name, "down", null, 0, null)
|
|
93
|
+
.ConfigureAwait(false);
|
|
97
94
|
var started = DateTime.UtcNow;
|
|
98
95
|
try
|
|
99
96
|
{
|
|
100
|
-
await
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
dialect.DeleteAppliedSql,
|
|
111
|
-
("p1", last.Name)
|
|
112
|
-
)
|
|
97
|
+
await provider.MigrateDown(args.Connection, last.Name, sql).ConfigureAwait(false);
|
|
98
|
+
await provider
|
|
99
|
+
.Log(
|
|
100
|
+
args.Connection,
|
|
101
|
+
logId,
|
|
102
|
+
last.Name,
|
|
103
|
+
"down",
|
|
104
|
+
"success",
|
|
105
|
+
(long)(DateTime.UtcNow - started).TotalMilliseconds,
|
|
106
|
+
null
|
|
113
107
|
)
|
|
114
108
|
.ConfigureAwait(false);
|
|
115
|
-
await MigrateLog
|
|
116
|
-
.UpdateAsync(conn, dialect, logId, "success", (long)(DateTime.UtcNow - started).TotalMilliseconds, null)
|
|
117
|
-
.ConfigureAwait(false);
|
|
118
109
|
}
|
|
119
110
|
catch (Exception ex)
|
|
120
111
|
{
|
|
121
|
-
await
|
|
122
|
-
.
|
|
112
|
+
await provider
|
|
113
|
+
.Log(
|
|
114
|
+
args.Connection,
|
|
115
|
+
logId,
|
|
116
|
+
last.Name,
|
|
117
|
+
"down",
|
|
118
|
+
"error",
|
|
119
|
+
(long)(DateTime.UtcNow - started).TotalMilliseconds,
|
|
120
|
+
ex.Message
|
|
121
|
+
)
|
|
123
122
|
.ConfigureAwait(false);
|
|
124
123
|
throw;
|
|
125
124
|
}
|