Conversation
Signed-off-by: Eric Sibly [chullybun] <eric.sibly@avanade.com>
Contributor
There was a problem hiding this comment.
Pull request overview
This PR delivers the v3.0.0 breaking-release updates for DbEx: removes internal CoreEx dependencies, adds net10.0 support (dropping net6.0/netstandard), introduces multi-database script suffix conventions, and adds initial OnRamp-based code-generation (EF models/model-builder + Outbox artefacts).
Changes:
- Migrated DbEx core + provider projects to net8.0/net9.0/net10.0 and replaced CoreEx.Database usage with DbEx-owned database abstractions.
- Added convention-based code-generation (templates + generators) and tooling to emit the
dbex.jsonJSON schema. - Updated tests and embedded scripts to use new script suffixes and CreatedOn/UpdatedOn + DateTimeOffset auditing conventions.
Reviewed changes
Copilot reviewed 159 out of 201 changed files in this pull request and generated 9 comments.
Show a summary per file
| File | Description |
|---|---|
| tools/DbEx.Tooling.Console/Program.cs | Adds small console entrypoint to generate schema/docs. |
| tools/DbEx.Tooling.Console/generate.ps1 | Convenience script to run schema generation. |
| tools/DbEx.Tooling.Console/DbEx.Tooling.Console.csproj | New net10 tooling project referencing DbEx. |
| tests/DbEx.Test/PostgresMigrationTest.cs | Updates Postgres tests for new exception/session-context behaviors. |
| tests/DbEx.Test/DbEx.Test.csproj | Multitargets tests and updates package/project references. |
| tests/DbEx.Test/DatabaseSchemaTest.cs | Adjusts schema assertions for new type mappings (DateOnly). |
| tests/DbEx.Test/ContextOutLogger.cs | Refactors logger to primary ctor + updated ProviderAlias usage. |
| tests/DbEx.Test/appsettings.json | Updates test connection strings (WSL defaults). |
| tests/DbEx.Test.PostgresConsole/Schema/spGetContact.pgsql | Renames schema script to .pgsql suffix. |
| tests/DbEx.Test.PostgresConsole/Migrations/005-create-test-multipk-table.pgsql | Renames migration script to .pgsql suffix. |
| tests/DbEx.Test.PostgresConsole/Migrations/004-create-test-contact-table.pgsql | Renames audit columns to created_on/updated_on. |
| tests/DbEx.Test.PostgresConsole/Migrations/003-create-test-gender-table.pgsql | Renames audit columns to created_on/updated_on. |
| tests/DbEx.Test.PostgresConsole/Migrations/002-create-test-contact-type-table.pgsql | Renames migration script to .pgsql suffix. |
| tests/DbEx.Test.PostgresConsole/DbEx.Test.PostgresConsole.csproj | Multitargets and embeds .pgsql resources. |
| tests/DbEx.Test.OutboxConsole/DbEx.Test.OutboxConsole.csproj | Multitargets Outbox console test project. |
| tests/DbEx.Test.MySqlConsole/Schema/spGetContact.mysql | Renames schema script to .mysql suffix. |
| tests/DbEx.Test.MySqlConsole/Migrations/005-create-test-multipk-table.mysql | Renames migration script to .mysql suffix. |
| tests/DbEx.Test.MySqlConsole/Migrations/004-create-test-contact-table.mysql | Renames audit columns to created_on/updated_on. |
| tests/DbEx.Test.MySqlConsole/Migrations/003-create-test-gender-table.mysql | Renames audit columns + increases DATETIME precision. |
| tests/DbEx.Test.MySqlConsole/Migrations/002-create-test-contact-type-table.mysql | Renames migration script to .mysql suffix. |
| tests/DbEx.Test.MySqlConsole/DbEx.Test.MySqlConsole.csproj | Multitargets and embeds .mysql resources. |
| tests/DbEx.Test.Error/DbEx.Test.Error.csproj | Multitargets error test project. |
| tests/DbEx.Test.Empty/Repositories/TestDbContext.g.cs | Adds generated EF DbContext model builder output. |
| tests/DbEx.Test.Empty/Persistence/Person.g.cs | Adds generated EF persistence model. |
| tests/DbEx.Test.Empty/Persistence/JsonConverter.cs | Adds EF value converter for JSON column mapping. |
| tests/DbEx.Test.Empty/Persistence/Contact.g.cs | Adds generated EF persistence model. |
| tests/DbEx.Test.Empty/Persistence/Contact.cs | Adds partial type for extending generated model. |
| tests/DbEx.Test.Empty/Persistence/Address.cs | Adds POCO used by JSON conversion sample. |
| tests/DbEx.Test.Empty/GlobalUsing.cs | Adds global usings for EF test project. |
| tests/DbEx.Test.Empty/DbEx.Test.Empty.csproj | Multitargets + conditional EF SqlServer package versions. |
| tests/DbEx.Test.Console/Schema/Stored Procedures/spOutboxLeaseRelease.g.sql | Adds generated Outbox stored procedure sample. |
| tests/DbEx.Test.Console/Schema/Stored Procedures/spOutboxLeaseAcquire.g.sql | Adds generated Outbox stored procedure sample. |
| tests/DbEx.Test.Console/Schema/Stored Procedures/spOutboxEnqueue.g.sql | Adds generated Outbox stored procedure sample. |
| tests/DbEx.Test.Console/Schema/Stored Procedures/spOutboxBatchComplete.g.sql | Adds generated Outbox stored procedure sample. |
| tests/DbEx.Test.Console/Schema/Stored Procedures/spOutboxBatchClaim.g.sql | Adds generated Outbox stored procedure sample. |
| tests/DbEx.Test.Console/Schema/Stored Procedures/spOutboxBatchCancel.g.sql | Adds generated Outbox stored procedure sample. |
| tests/DbEx.Test.Console/Resources/Table_sql.hb | Updates auditing columns to CreatedOn/UpdatedOn + DTO. |
| tests/DbEx.Test.Console/Program.cs | Updates test console connection string + disables Outbox assembly add. |
| tests/DbEx.Test.Console/Migrations/008-create-test-outbox-tables.sql | Adds Outbox test schema migration. |
| tests/DbEx.Test.Console/Migrations/007-create-test-status-table.sql | Updates audit column types/names. |
| tests/DbEx.Test.Console/Migrations/006-create-test-person-table.sql | Updates audit column types/names. |
| tests/DbEx.Test.Console/Migrations/003-create-test-gender-table.sql | Updates audit column types/names. |
| tests/DbEx.Test.Console/dbex.yaml | Adds codegen configuration for EF models/outbox. |
| tests/DbEx.Test.Console/DbEx.Test.Console.csproj | Multitargets and drops OutboxConsole reference. |
| tests/DbEx.Test.Console/Data/Other.sql | Adjusts DateOnly literal format. |
| src/DbEx/Templates/EfModelBuilder_cs.hbs | Adds EF model-builder generation template. |
| src/DbEx/Templates/EfModel_cs.hbs | Adds EF model generation template. |
| src/DbEx/Migration/StringLogger.cs | Refactors internal logger implementation. |
| src/DbEx/Migration/MigrationAssemblyArgs.cs | Removes CoreEx dependency and refactors structure. |
| src/DbEx/Migration/MigrationArgs.cs | Refactors args class shape post-CoreEx removal. |
| src/DbEx/Migration/IDatabaseJournal.cs | Refactors journal interface post-CoreEx removal. |
| src/DbEx/Migration/IDatabase.cs | Introduces DbEx-owned IDatabase abstraction. |
| src/DbEx/Migration/DatabaseRecord.cs | Adds reader wrapper for typed access. |
| src/DbEx/Migration/DatabaseJournal.cs | Updates journaling to suffix-aware embedded resources. |
| src/DbEx/Migration/DatabaseCommand.cs | Adds DbEx-owned command abstraction + DTO handling. |
| src/DbEx/Migration/Data/IIdentifierGenerator.cs | Refactors interface post-CoreEx removal. |
| src/DbEx/Migration/Data/GuidIdentifierGenerator.cs | Refactors generator implementation. |
| src/DbEx/Migration/Data/DataValueConverter.cs | Refactors conversion helper. |
| src/DbEx/Migration/Data/DataTableIdentifierType.cs | Refactors enum definition. |
| src/DbEx/Migration/Data/DataParserTableNameMappings.cs | Refactors mappings container. |
| src/DbEx/Migration/Data/DataParserException.cs | Refactors exception type. |
| src/DbEx/Migration/Data/DataParserColumnDefaultCollection.cs | Refactors defaults collection implementation. |
| src/DbEx/Migration/Data/DataParserColumnDefault.cs | Refactors defaults config type. |
| src/DbEx/Migration/Data/DataConfig.cs | Refactors data config model. |
| src/DbEx/Migration/Data/DataColumn.cs | Refactors column model. |
| src/DbEx/GlobalUsing.cs | Adds central global usings + InternalsVisibleTo. |
| src/DbEx/DbEx.csproj | Drops net6/netstandard, adds net10 + package updates. |
| src/DbEx/Console/ParametersValidator.cs | Refactors option validator post-CoreEx removal. |
| src/DbEx/Console/AssemblyValidator.cs | Refactors option validator post-CoreEx removal. |
| src/DbEx/CodeGen/Generators/OutboxGenerator.cs | Adds Outbox generator selector. |
| src/DbEx/CodeGen/Generators/EfModelGenerator.cs | Adds EF model generator selector. |
| src/DbEx/CodeGen/Generators/EfModelBuilderGenerator.cs | Adds EF model-builder generator selector. |
| src/DbEx/CodeGen/DbCodeGenerator.cs | Adds DbEx-specific CodeGenerator wrapper for migration context. |
| src/DbEx/CodeGen/Config/RefDataConfig.cs | Adds ref-data config helpers. |
| src/DbEx/CodeGen/Config/IByConventionColumns.cs | Adds convention column accessor contract. |
| src/DbEx/CodeGen/Config/IByConventionColumnNames.cs | Adds convention column-name contract. |
| src/DbEx/CodeGen/Config/ColumnConfig.cs | Adds column-level codegen configuration model. |
| src/DbEx.SqlServer/Templates/SpOutboxLeaseRelease_sql.hbs | Adds SQL Server outbox template: lease release. |
| src/DbEx.SqlServer/Templates/SpOutboxLeaseAcquire_sql.hbs | Adds SQL Server outbox template: lease acquire. |
| src/DbEx.SqlServer/Templates/SpOutboxEnqueue_sql.hbs | Adds SQL Server outbox template: enqueue. |
| src/DbEx.SqlServer/Templates/SpOutboxBatchComplete_sql.hbs | Adds SQL Server outbox template: batch complete. |
| src/DbEx.SqlServer/Templates/SpOutboxBatchClaim_sql.hbs | Adds SQL Server outbox template: batch claim. |
| src/DbEx.SqlServer/Templates/spOutboxBatchCancel_sql.hbs | Adds SQL Server outbox template: batch cancel. |
| src/DbEx.SqlServer/Scripts/Database.yaml | Adds OnRamp generator bindings for SQL Server. |
| src/DbEx.SqlServer/Resources/ScriptSchema_sql.hbs | Updates SQL Server schema script template. |
| src/DbEx.SqlServer/Resources/ScriptRefData_sql.hbs | Updates SQL Server ref-data template for audit column changes. |
| src/DbEx.SqlServer/Resources/ScriptOutbox_sql.hbs | Adds SQL Server outbox table script template. |
| src/DbEx.SqlServer/Resources/ScriptCreate_sql.hbs | Updates SQL Server create-table template for audit column changes. |
| src/DbEx.SqlServer/Resources/ExtendedSchema/Stored Procedures/spThrowValidationException.sql | Fixes header link text. |
| src/DbEx.SqlServer/Resources/ExtendedSchema/Stored Procedures/spThrowNotFoundException.sql | Fixes header link text. |
| src/DbEx.SqlServer/Resources/ExtendedSchema/Stored Procedures/spThrowDuplicateException.sql | Fixes header link text. |
| src/DbEx.SqlServer/Resources/ExtendedSchema/Stored Procedures/spThrowConflictException.sql | Fixes header link text. |
| src/DbEx.SqlServer/Resources/ExtendedSchema/Stored Procedures/spThrowConcurrencyException.sql | Fixes header link text. |
| src/DbEx.SqlServer/Resources/ExtendedSchema/Stored Procedures/spThrowBusinessException.sql | Fixes header link text. |
| src/DbEx.SqlServer/Resources/ExtendedSchema/Stored Procedures/spSetSessionContext.sql | Updates timestamp type to DATETIMEOFFSET + null casing. |
| src/DbEx.SqlServer/Resources/ExtendedSchema/Functions/fnGetUsername.sql | Fixes header link text + null casing. |
| src/DbEx.SqlServer/Resources/ExtendedSchema/Functions/fnGetUserId.sql | Fixes header link text + null casing. |
| src/DbEx.SqlServer/Resources/ExtendedSchema/Functions/fnGetTimestamp.sql | Updates return/type to DATETIMEOFFSET + SYSDATETIMEOFFSET. |
| src/DbEx.SqlServer/Resources/ExtendedSchema/Functions/fnGetTenantId.sql | Fixes header link text + null casing. |
| src/DbEx.SqlServer/Migration/SqlServerDatabase.cs | Adds SQL Server IDatabase implementation wrapper. |
| src/DbEx.SqlServer/GlobalUsing.cs | Adds SQL Server global usings for new structure. |
| src/DbEx.SqlServer/DbEx.SqlServer.csproj | Drops net6/netstandard, adds net10 + package updates. |
| src/DbEx.SqlServer/Console/SqlServerMigrationConsole.cs | Refactors console wrapper + adds outbox help entry. |
| src/DbEx.SqlServer/Console/MigrationArgsExtensions.cs | Refactors extension methods for extended schema scripts. |
| src/DbEx.Postgres/Templates/FnOutboxLeaseRelease_pgsql.hbs | Adds Postgres outbox template: lease release function. |
| src/DbEx.Postgres/Templates/FnOutboxLeaseAcquire_pgsql.hbs | Adds Postgres outbox template: lease acquire function. |
| src/DbEx.Postgres/Templates/FnOutboxEnqueue_pgsql.hbs | Adds Postgres outbox template: enqueue function. |
| src/DbEx.Postgres/Templates/FnOutboxBatchComplete_pgsql.hbs | Adds Postgres outbox template: batch complete function. |
| src/DbEx.Postgres/Templates/FnOutboxBatchClaim_pgsql.hbs | Adds Postgres outbox template: batch claim function. |
| src/DbEx.Postgres/Templates/FnOutboxBatchCancel_pgsql.hbs | Adds Postgres outbox template: batch cancel function. |
| src/DbEx.Postgres/Scripts/Database.yaml | Adds OnRamp generator bindings for Postgres. |
| src/DbEx.Postgres/Resources/SelectTablePrimaryKey.pgsql | Adds suffix-specific schema discovery query. |
| src/DbEx.Postgres/Resources/SelectTableForeignKeys.pgsql | Adds suffix-specific FK discovery query. |
| src/DbEx.Postgres/Resources/SelectTableAndColumns.pgsql | Adds suffix-specific table/column discovery query. |
| src/DbEx.Postgres/Resources/ScriptSchema_pgsql.hbs | Adds Postgres schema script template. |
| src/DbEx.Postgres/Resources/ScriptRefData_pgsql.hbs | Updates ref-data template for audit column changes. |
| src/DbEx.Postgres/Resources/ScriptOutbox_pgsql.hbs | Adds Postgres outbox table script template. |
| src/DbEx.Postgres/Resources/ScriptDefault_pgsql.hbs | Adds default Postgres migration script template. |
| src/DbEx.Postgres/Resources/ScriptCreate_pgsql.hbs | Updates create-table template for audit column changes. |
| src/DbEx.Postgres/Resources/ScriptAlter_pgsql.hbs | Updates alter-table template casing. |
| src/DbEx.Postgres/Resources/JournalPrevious.pgsql | Adds Postgres journal query. |
| src/DbEx.Postgres/Resources/JournalExists.pgsql | Adds Postgres journal existence query. |
| src/DbEx.Postgres/Resources/JournalCreate.pgsql | Adds Postgres journal create script. |
| src/DbEx.Postgres/Resources/JournalAudit.pgsql | Adds Postgres journal audit script. |
| src/DbEx.Postgres/Resources/ExtendedSchema/Stored Procedures/sp_throw_validation_exception.pgsql | Adds Postgres extended schema proc. |
| src/DbEx.Postgres/Resources/ExtendedSchema/Stored Procedures/sp_throw_not_found_exception.pgsql | Adds Postgres extended schema proc. |
| src/DbEx.Postgres/Resources/ExtendedSchema/Stored Procedures/sp_throw_duplicate_exception.pgsql | Adds Postgres extended schema proc. |
| src/DbEx.Postgres/Resources/ExtendedSchema/Stored Procedures/sp_throw_conflict_exception.pgsql | Adds Postgres extended schema proc. |
| src/DbEx.Postgres/Resources/ExtendedSchema/Stored Procedures/sp_throw_concurrency_exception.pgsql | Adds Postgres extended schema proc. |
| src/DbEx.Postgres/Resources/ExtendedSchema/Stored Procedures/sp_throw_business_exception.pgsql | Adds Postgres extended schema proc. |
| src/DbEx.Postgres/Resources/ExtendedSchema/Stored Procedures/sp_throw_authorization_exception.pgsql | Adds Postgres extended schema proc. |
| src/DbEx.Postgres/Resources/ExtendedSchema/Stored Procedures/sp_set_session_context.pgsql | Adds Postgres session context proc. |
| src/DbEx.Postgres/Resources/ExtendedSchema/Functions/fn_get_username.pgsql | Fixes header link text. |
| src/DbEx.Postgres/Resources/ExtendedSchema/Functions/fn_get_user_id.pgsql | Fixes header link text. |
| src/DbEx.Postgres/Resources/ExtendedSchema/Functions/fn_get_timestamp.pgsql | Fixes header link text. |
| src/DbEx.Postgres/Resources/ExtendedSchema/Functions/fn_get_tenant_id.pgsql | Fixes header link text. |
| src/DbEx.Postgres/Resources/DatabaseReset_pgsql.hbs | Adds Postgres reset template. |
| src/DbEx.Postgres/Resources/DatabaseExists.pgsql | Adds Postgres DB existence query. |
| src/DbEx.Postgres/Resources/DatabaseDrop.pgsql | Adds Postgres DB drop script. |
| src/DbEx.Postgres/Resources/DatabaseData_pgsql.hbs | Adds Postgres data-load template. |
| src/DbEx.Postgres/Resources/DatabaseCreate.pgsql | Adds Postgres DB create script. |
| src/DbEx.Postgres/Migration/PostgresMigration.cs | Refactors Postgres migration orchestration off CoreEx. |
| src/DbEx.Postgres/Migration/PostgresDatabase.cs | Adds Postgres IDatabase implementation wrapper. |
| src/DbEx.Postgres/GlobalUsing.cs | Adds Postgres global usings for new structure. |
| src/DbEx.Postgres/DbEx.Postgres.csproj | Drops net6, adds net10 + package updates. |
| src/DbEx.Postgres/Console/PostgresMigrationConsole.cs | Refactors console wrapper + adds outbox help entry. |
| src/DbEx.Postgres/Console/MigrationArgsExtensions.cs | Refactors extension methods for extended schema scripts. |
| src/DbEx.MySql/Resources/SelectTablePrimaryKey.mysql | Adds suffix-specific schema discovery query. |
| src/DbEx.MySql/Resources/SelectTableForeignKeys.mysql | Adds suffix-specific FK discovery query. |
| src/DbEx.MySql/Resources/SelectTableAndColumns.mysql | Adds suffix-specific table/column discovery query. |
| src/DbEx.MySql/Resources/ScriptRefData_mysql.hbs | Updates ref-data template for audit column changes. |
| src/DbEx.MySql/Resources/ScriptDefault_mysql.hbs | Adds default MySQL migration script template. |
| src/DbEx.MySql/Resources/ScriptCreate_mysql.hbs | Updates create-table template for audit column changes. |
| src/DbEx.MySql/Resources/ScriptAlter_mysql.hbs | Adds MySQL alter-table template. |
| src/DbEx.MySql/Resources/JournalPrevious.mysql | Adds MySQL journal query. |
| src/DbEx.MySql/Resources/JournalExists.mysql | Adds MySQL journal existence query. |
| src/DbEx.MySql/Resources/JournalCreate.mysql | Adds MySQL journal create script. |
| src/DbEx.MySql/Resources/JournalAudit.mysql | Adds MySQL journal audit script. |
| src/DbEx.MySql/Resources/DatabaseReset_mysql.hbs | Adds MySQL reset template. |
| src/DbEx.MySql/Resources/DatabaseExists.mysql | Adds MySQL DB existence query. |
| src/DbEx.MySql/Resources/DatabaseDrop.mysql | Adds MySQL DB drop script. |
| src/DbEx.MySql/Resources/DatabaseData_mysql.hbs | Adds MySQL data-load template. |
| src/DbEx.MySql/Resources/DatabaseCreate.mysql | Adds MySQL DB create script. |
| src/DbEx.MySql/Migration/MySqlSchemaScript.cs | Refactors schema script parsing after CoreEx removal. |
| src/DbEx.MySql/Migration/MySqlDatabase.cs | Adds MySQL IDatabase implementation wrapper. |
| src/DbEx.MySql/GlobalUsing.cs | Adds MySQL global usings for new structure. |
| src/DbEx.MySql/DbEx.MySql.csproj | Drops net6, adds net10 + package updates. |
| src/DbEx.MySql/Console/MySqlMigrationConsole.cs | Refactors console wrapper post-CoreEx removal. |
| docker-compose.yml | Adds local DB containers for SQL Server/MySQL/Postgres. |
| Common.targets | Bumps version to 3.0.0. |
| CHANGELOG.md | Adds v3.0.0 release notes + minor wording fix. |
| .github/workflows/CI.yml | Updates CI to test against .NET 10 SDK. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Comment on lines
+19
to
+23
| * Notes: | ||
| * - The function is resilient to transient errors and will return -1 where release is unsuccessful, including where the lease is already released or where a transient error occurs (e.g. lock timeout). | ||
| */ | ||
|
|
||
| -- Set transaction parameters |
Collaborator
Author
There was a problem hiding this comment.
Manually corrected.
Agent-Logs-Url: https://github.com/Avanade/DbEx/sessions/126ac7fe-c6d7-4e5a-b088-8e42839291aa Co-authored-by: chullybun <12836934+chullybun@users.noreply.github.com>
Comment on lines
24
to
+29
|
|
||
| _databaseName = csb.Database; | ||
| _database = new PostgresDatabase(() => new NpgsqlConnection(Args.ConnectionString)); | ||
| _databaseName = csb.Database; | ||
| _database = new PostgresDatabase(() => NpgsqlDataSource.Create(Args.ConnectionString!).CreateConnection()); | ||
|
|
||
| csb.Database = null; | ||
| _masterDatabase = new PostgresDatabase(() => new NpgsqlConnection(csb.ConnectionString)); | ||
| csb.Database = null; | ||
| _masterDatabase = new PostgresDatabase(() => new NpgsqlConnection(csb.ConnectionString)); |
Comment on lines
+18
to
+22
| public MigrationAssemblyArgs(Assembly assembly, params string[] dataNamespaces) | ||
| { | ||
| Assembly = assembly.ThrowIfNull(nameof(Assembly)); | ||
| DataNamespaces = dataNamespaces is null || dataNamespaces.Length == 0 ? [DefaultDataNamespace] : dataNamespaces; | ||
| } |
Comment on lines
+34
to
+36
| /// <summary> | ||
| /// Adds or overriddes the parameter. | ||
| /// </summary> |
Comment on lines
+18
to
+22
| * Notes: | ||
| * - The procedure will return -1 where lease acquisition is unsuccessful, including where another active lease exists or where a transient error occurs (e.g. lock timeout). | ||
| * - The caller should implement an appropriate retry/backoff strategy where -1 is returned, including randomization to avoid thundering herd issues. | ||
| */ | ||
|
|
Comment on lines
+14
to
+16
| * Notes: | ||
| * - The procedure will return -1 where release is unsuccessful, including where the lease is already released or where a transient error occurs (e.g. lock timeout). | ||
| */ |
Comment on lines
+6
to
+9
| [OutboxId] BIGINT IDENTITY (1, 1) NOT NULL PRIMARY KEY, | ||
| [TenantId] NVARCHAR(255) NOT NULL, -- Optional, null indicates no tenancy. | ||
| [PartitionId] INT NOT NULL, -- Partition number; computed in application from partition-key. | ||
| [Status] TINYINT NOT NULL DEFAULT 0, -- 0=Pending, 1=Processing, 2=Done. |
Comment on lines
+3
to
+9
| // Assumes running in WSL ... | ||
| "NoneDb": "Data Source=127.0.0.1,1433;Initial Catalog=DbEx.None;User id=sa;Password=yourStrong(!)Password;TrustServerCertificate=true", | ||
| "EmptyDb": "Data Source=127.0.0.1,1433;Initial Catalog=DbEx.Empty;User id=sa;Password=yourStrong(!)Password;TrustServerCertificate=true", | ||
| "ErrorDb": "Data Source=127.0.0.1,1433;Initial Catalog=DbEx.Error;User id=sa;Password=yourStrong(!)Password;TrustServerCertificate=true", | ||
| "ConsoleDb": "Data Source=127.0.0.1,1433;Initial Catalog=DbEx.Console;User id=sa;Password=yourStrong(!)Password;TrustServerCertificate=true", | ||
| "MySqlDb": "Server=127.0.0.1; Port=3306; Database=dbex_test; Uid=root; Pwd=yourStrong#!Password;", | ||
| "PostgresDb": "Server=127.0.0.1;Port=5432;Database=dbex_test;Username=postgres;Password=yourStrong#!Password;Pooling=false" |
Comment on lines
8
to
13
| internal static Task<int> Main(string[] args) => SqlServerMigrationConsole | ||
| .Create<Program>("Data Source=.;Initial Catalog=DbEx.Console;Integrated Security=True;TrustServerCertificate=true") | ||
| .Create<Program>("Data Source=127.0.0.1,1433;Initial Catalog=DbEx.Console;User id=sa;Password=yourStrong(!)Password;TrustServerCertificate=true") | ||
| .Configure(c => | ||
| { | ||
| c.Args.AddAssembly<DbEx.Test.OutboxConsole.Program>("Data", "Data2"); | ||
| //c.Args.AddAssembly<DbEx.Test.OutboxConsole.Program>("Data", "Data2"); | ||
| c.Args.AddSchemaOrder("Test", "Outbox"); |
Comment on lines
+7
to
+22
| SA_PASSWORD: "yourStrong(!)Password" | ||
| ACCEPT_EULA: "Y" | ||
| ports: | ||
| - "1433:1433" | ||
|
|
||
| db-mysql: | ||
| image: mysql | ||
| environment: | ||
| MYSQL_ROOT_PASSWORD: "yourStrong#!Password" | ||
| ports: | ||
| - "3306:3306" | ||
|
|
||
| db-postgres: | ||
| image: postgres | ||
| environment: | ||
| POSTGRES_PASSWORD: "yourStrong#!Password" |
Comment on lines
8
to
+10
| <ItemGroup> | ||
| <PackageReference Include="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="8.0.0" /> | ||
| <PackageReference Include="Microsoft.Extensions.Configuration.FileExtensions" Version="8.0.1" /> | ||
| <PackageReference Include="Microsoft.Extensions.Configuration.Json" Version="8.0.1" /> | ||
| <PackageReference Include="Microsoft.Extensions.Logging.Console" Version="8.0.1" /> | ||
| <Compile Remove="SqlServerOutboxTest.cs" /> | ||
| </ItemGroup> |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
All internal dependencies to
CoreExhave been removed. This is intended to further generalize the capabilities ofDbEx; but more importantly, break the pseudo circular dependency reference between the two repositories.net10.0support and updated all related package dependencies to latest; now supports onlynet8.0,net9.0andnet10.0.DatabaseSchemaConfig.CreatedDaterenamed toDatabaseSchemaConfig.CreatedOn.DatabaseSchemaConfig.UpdatedDaterenamed toDatabaseSchemaConfig.UpdatedOn.MigrationArgsBase.CreatedDateColumnNamerenamed toMigrationArgsBase.CreatedOnColumnName.MigrationArgsBase.UpdatedDateColumnNamerenamed toMigrationArgsBase.UpdatedOnColumnName.DateTimeOffsetis the preferred .NET type for date/time auditing/timestamping.*.sql(SQL Server),*.pgsql(PostgreSQL) and*.mysql(MySQL), etc. This is a standard convention-based approach to enable support for multiple databases within the same project/assembly, specifically the likes of intellisense. Breaking change implications:MyScript.sql,MyScript.pgsqlandMyScript.mysql.OnRamp).Outboxand correspondingOutboxLeasecode-generation added (SQL Server and PostgreSQL only).dbex.yamlis required to enable.dbex.yamlsupport for$schemareference; seedbex.json(JSON-schema).The enhancements have been made in a manner to maximize backwards compatibility with previous versions of
DbExwhere possible; however, some breaking changes were unfortunately unavoidable (and made to improve overall).