Skip to content

Support SAP HANA via Sap.Data.Hana.Net.v8.0 and Sap.Data.Hana.Net.v10.0 NuGet packages#2277

Merged
jzabroski merged 9 commits into
mainfrom
copilot/remove-hana-support-and-update
Jul 23, 2026
Merged

Support SAP HANA via Sap.Data.Hana.Net.v8.0 and Sap.Data.Hana.Net.v10.0 NuGet packages#2277
jzabroski merged 9 commits into
mainfrom
copilot/remove-hana-support-and-update

Conversation

Copilot AI commented May 2, 2026

Copy link
Copy Markdown
Contributor

Replaces the bundled lib/Hana DLL approach with modern NuGet package support. Removes the "Hana support will go away" deprecation notices now that the community has provided a viable path forward.

Changes

  • Removed lib/Hana/ — all locally bundled SAP HANA DLLs and native libraries deleted from the repo
  • New extension methodsAddHana8() (for Sap.Data.Hana.Net.v8.0) and AddHana10() (for Sap.Data.Hana.Net.v10.0); old AddHana() marked [Obsolete]
  • HanaDbFactory — added reflection lookup entries for Sap.Data.Hana.v8.0 and Sap.Data.Hana.v10.0 assemblies alongside the existing legacy entries for backward compatibility
  • Removed [Obsolete] from all Hana typesHanaProcessor, HanaGenerator, HanaQuoter, HanaTypeMap, HanaDescriptionGenerator, IHanaTypeMap, ProcessorIdConstants.Hana, GeneratorIdConstants.Hana
  • Removed Hana from AddAllDatabases() — platform-specific driver cannot be bundled in the catch-all method
  • Removed Hana DLL references from FluentMigrator.Console.csproj and FluentMigrator.Tests.csproj
  • Test helpers (HanaTestTable, HanaTestSequence) updated to use IDbConnection/IDbTransaction/IDbCommand interfaces instead of concrete Sap.Data.Hana types
  • Docs updated with new installation and configuration instructions

Usage

// .NET 8 — install Sap.Data.Hana.Net.v8.0
services.AddFluentMigratorCore()
    .ConfigureRunner(rb => rb
        .AddHana8()
        .WithGlobalConnectionString(connectionString)
        .ScanIn(Assembly.GetExecutingAssembly()).For.Migrations());

// .NET 10 — install Sap.Data.Hana.Net.v10.0
services.AddFluentMigratorCore()
    .ConfigureRunner(rb => rb
        .AddHana10()
        .WithGlobalConnectionString(connectionString)
        .ScanIn(Assembly.GetExecutingAssembly()).For.Migrations());

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • l78vsblobprodsu6weus64.blob.core.windows.net
    • Triggering command: /usr/bin/dotnet dotnet build FluentMigrator.sln --no-incremental (dns block)
    • Triggering command: /usr/bin/dotnet dotnet restore --no-dependencies /home/REDACTED/work/fluentmigrator/fluentmigrator/FluentMigrator.sln --packages /tmp/codeql-scratch-ebbaa93091d3517f/dbs/csharp/working/packages /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal /p:TargetFrameworkRootPath=/tmp/codeql-scratch-ebbaa93091d3517f/dbs/csharp/working/emptyFakeDotnetRoot /p:NetCoreTargetingPackRoot=/tmp/codeql-scratch-ebbaa93091d3517f/dbs/csharp/working/emptyFakeDotnetRoot /p:AllowMissingPrunePackageData=true (dns block)
    • Triggering command: /usr/bin/dotnet dotnet restore --no-dependencies /home/REDACTED/work/fluentmigrator/fluentmigrator/src/FluentMigrator.MSBuild/FluentMigrator.MSBuild.csproj --packages /tmp/codeql-scratch-ebbaa93091d3517f/dbs/csharp/working/packages /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal /p:TargetFrameworkRootPath=/tmp/codeql-scratch-ebbaa93091d3517f/dbs/csharp/working/emptyFakeDotnetRoot /p:NetCoreTargetingPackRoot=/tmp/codeql-scratch-ebbaa93091d3517f/dbs/csharp/working/emptyFakeDotnetRoot /p:AllowMissingPrunePackageData=true (dns block)
  • pyvvsblobprodsu6weus63.blob.core.windows.net
    • Triggering command: /usr/bin/dotnet dotnet restore --no-dependencies /home/REDACTED/work/fluentmigrator/fluentmigrator/FluentMigrator.sln --packages /tmp/codeql-scratch-ebbaa93091d3517f/dbs/csharp/working/packages /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal /p:TargetFrameworkRootPath=/tmp/codeql-scratch-ebbaa93091d3517f/dbs/csharp/working/emptyFakeDotnetRoot /p:NetCoreTargetingPackRoot=/tmp/codeql-scratch-ebbaa93091d3517f/dbs/csharp/working/emptyFakeDotnetRoot /p:AllowMissingPrunePackageData=true (dns block)
    • Triggering command: /usr/bin/dotnet dotnet restore --no-dependencies /home/REDACTED/work/fluentmigrator/fluentmigrator/samples/FluentMigrator.Example.MSBuild/FluentMigrator.Example.MSBuild.csproj --packages /tmp/codeql-scratch-ebbaa93091d3517f/dbs/csharp/working/packages /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal /p:TargetFrameworkRootPath=/tmp/codeql-scratch-ebbaa93091d3517f/dbs/csharp/working/emptyFakeDotnetRoot /p:NetCoreTargetingPackRoot=/tmp/codeql-scratch-ebbaa93091d3517f/dbs/csharp/working/emptyFakeDotnetRoot /p:AllowMissingPrunePackageData=true (dns block)
  • www.nuget.org
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node /home/REDACTED/work/_temp/ghcca-node/node/bin/node --enable-source-maps /home/REDACTED/work/_temp/copilot-developer-action-main/dist/index.js (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

Copilot AI changed the title [WIP] Remove Hana support and update processor for nuget packages Support SAP HANA via Sap.Data.Hana.Net.v8.0 and Sap.Data.Hana.Net.v10.0 NuGet packages May 2, 2026
Copilot AI requested a review from jzabroski May 2, 2026 15:55
@jzabroski jzabroski added this to the 8.1.0 milestone Jul 7, 2026
@jzabroski
jzabroski marked this pull request as ready for review July 7, 2026 04:23
Copilot AI review requested due to automatic review settings July 7, 2026 04:23

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR modernizes FluentMigrator’s SAP HANA support by removing the previously bundled lib/Hana driver binaries and shifting to a NuGet-driven model, introducing version-specific registration helpers (AddHana8() / AddHana10()) while keeping AddHana() for backwards compatibility (now obsolete).

Changes:

  • Introduces AddHana8() and AddHana10() runner registration helpers and updates HANA factory probing to include Sap.Data.Hana.v8.0 / Sap.Data.Hana.v10.0.
  • Removes HANA “support will go away” obsoletions across IDs and HANA runner types; marks the legacy AddHana() API as [Obsolete].
  • Removes repo-bundled HANA DLL/content references and updates tests/docs to use the new registration approach.

Reviewed changes

Copilot reviewed 28 out of 46 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
test/FluentMigrator.Tests/Unit/Runners/DatabaseIdentifierTests.cs Updates unit runner setup to register HANA via AddHana8().
test/FluentMigrator.Tests/Integration/Processors/Hana/HanaTableTests.cs Uses AddHana8() in HANA integration test setup.
test/FluentMigrator.Tests/Integration/Processors/Hana/HanaSequenceTests.cs Uses AddHana8() in HANA integration test setup.
test/FluentMigrator.Tests/Integration/Processors/Hana/HanaSchemaTests.cs Uses AddHana8() in HANA integration test setup.
test/FluentMigrator.Tests/Integration/Processors/Hana/HanaSchemaExtensionsTests.cs Uses AddHana8() in HANA integration test setup.
test/FluentMigrator.Tests/Integration/Processors/Hana/HanaProcessorTests.cs Uses AddHana8() in HANA integration test setup (preview mode too).
test/FluentMigrator.Tests/Integration/Processors/Hana/HanaIndexTests.cs Uses AddHana8() in HANA integration test setup.
test/FluentMigrator.Tests/Integration/Processors/Hana/HanaConstraintTests.cs Uses AddHana8() in HANA integration test setup.
test/FluentMigrator.Tests/Integration/Processors/Hana/HanaColumnTests.cs Uses AddHana8() in HANA integration test setup.
test/FluentMigrator.Tests/Integration/Processors/Hana/EndToEnd/HanaTestEndToEnd.cs Uses AddHana8() in end-to-end HANA test wiring.
test/FluentMigrator.Tests/Helpers/HanaTestTable.cs Switches test helper to ADO.NET interfaces; updates command creation pattern.
test/FluentMigrator.Tests/Helpers/HanaTestSequence.cs Switches test helper to ADO.NET interfaces; updates command creation pattern.
test/FluentMigrator.Tests/FluentMigrator.Tests.csproj Removes references/content-copy of bundled HANA driver binaries.
src/FluentMigrator/ProcessorId.cs Removes HANA deprecation [Obsolete] attributes on processor IDs.
src/FluentMigrator/GeneratorIdConstants.cs Removes HANA deprecation [Obsolete] attribute on generator IDs.
src/FluentMigrator.Runner/FluentMigrationRunnerBuilderExtensions.cs Removes HANA from AddAllDatabases() registration list.
src/FluentMigrator.Runner.Hana/Processors/Hana/HanaProcessor.cs Removes HANA deprecation [Obsolete] attribute on processor type.
src/FluentMigrator.Runner.Hana/Processors/Hana/HanaDbFactory.cs Adds reflection test entries for Sap.Data.Hana.v8.0 / Sap.Data.Hana.v10.0.
src/FluentMigrator.Runner.Hana/HanaRunnerBuilderExtensions.cs Adds AddHana8()/AddHana10(); marks legacy AddHana() obsolete; refactors shared registration.
src/FluentMigrator.Runner.Hana/Generators/Hana/IHanaTypeMap.cs Removes HANA deprecation [Obsolete] attribute on interface.
src/FluentMigrator.Runner.Hana/Generators/Hana/HanaTypeMap.cs Removes HANA deprecation [Obsolete] attribute on type map.
src/FluentMigrator.Runner.Hana/Generators/Hana/HanaQuoter.cs Removes HANA deprecation [Obsolete] attribute on quoter.
src/FluentMigrator.Runner.Hana/Generators/Hana/HanaGenerator.cs Removes HANA deprecation [Obsolete] attribute on generator.
src/FluentMigrator.Runner.Hana/Generators/Hana/HanaDescriptionGenerator.cs Removes HANA deprecation [Obsolete] attribute and unused System using.
src/FluentMigrator.Console/FluentMigrator.Console.csproj Removes bundled HANA DLL/content references from console project.
lib/Hana/ado.net/v4.5/SSDLToHana.tt Removes bundled HANA-related template from repo.
lib/Hana/ado.net/v3.5/Sap.Data.Hana.v3.5.xml Removes bundled HANA XML docs from repo.
lib/Hana/ado.net/v3.5/Sap.Data.Hana.v3.5.dll.config Removes bundled HANA config from repo.
docs-website/providers/others.md Updates HANA docs to install the correct driver NuGet and use AddHana8()/AddHana10().

Comment on lines +63 to +67
[Obsolete("Use AddHana8() for .NET 8 with the Sap.Data.Hana.Net.v8.0 NuGet package, or AddHana10() for .NET 10 with the Sap.Data.Hana.Net.v10.0 NuGet package.")]
public static IMigrationRunnerBuilder AddHana(this IMigrationRunnerBuilder builder)
{
return builder.RegisterHanaServices();
}

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remove AddHana from src/FluentMigrator.Console/MigratorConsole.cs:477 and src/FluentMigrator.MSBuild/Migrate.cs:265 - .NET Framework support for Hana is dropped. Update CHANGELOG.md to reflect this. src/FluentMigrator.DotNet.Cli/Setup.cs:82 should use well-known MSBuild pre-processor symbols:

#if NET8_0
  .AddHana8()
#elif NET9_0
  .AddHana8()
#elif NET10_0_OR_GREATER
  .AddHana10()
#endif

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in 3188f77: removed HANA registration from MigratorConsole and Migrate, updated Setup to use the requested NET8_0/NET9_0/NET10_0_OR_GREATER symbols, and added the changelog entry.

Comment on lines 115 to +123
var indexName = string.Format("idx_{0}", column);

var quotedObjectName = _quoter.QuoteTableName(Name);

var quotedIndexName = _quoter.QuoteIndexName(indexName);

using (var command = new HanaCommand(string.Format("CREATE INDEX {0} ON {1} ({2})", quotedIndexName, quotedObjectName, _quoter.QuoteColumnName(column)), Connection, Transaction))
using (var command = Connection.CreateCommand())
{
command.CommandText = string.Format("CREATE INDEX {0} ON {1} ({2})", quotedIndexName, quotedObjectName, _quoter.QuoteColumnName(column));

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@copilot Fix it.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in 3188f77: HanaTestTable.WithIndexOn() now schema-qualifies the target table so schema-based index existence tests use the correct object.

Comment thread test/FluentMigrator.Tests/Helpers/HanaTestTable.cs Outdated
Comment on lines +80 to +89
For .NET 8, use `AddHana8()`:

```csharp
services.AddFluentMigratorCore()
.ConfigureRunner(rb => rb
.AddHana8()
.WithGlobalConnectionString(connectionString)
.ScanIn(Assembly.GetExecutingAssembly()).For.Migrations())
.AddLogging(lb => lb.AddFluentMigratorConsole());
```

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@copilot Update docs-website/intro/configuration.md (line 55) to use AddHana8, AddHana10

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in 3188f77: docs-website/intro/configuration.md now lists AddHana8() and AddHana10() with their corresponding SAP HANA driver packages.

Comment thread docs-website/providers/others.md
Co-authored-by: Copilot Autofix powered by AI <[email protected]>

@jzabroski jzabroski left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please address feedback.

Comment on lines +80 to +89
For .NET 8, use `AddHana8()`:

```csharp
services.AddFluentMigratorCore()
.ConfigureRunner(rb => rb
.AddHana8()
.WithGlobalConnectionString(connectionString)
.ScanIn(Assembly.GetExecutingAssembly()).For.Migrations())
.AddLogging(lb => lb.AddFluentMigratorConsole());
```

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@copilot Update docs-website/intro/configuration.md (line 55) to use AddHana8, AddHana10

Comment on lines +63 to +67
[Obsolete("Use AddHana8() for .NET 8 with the Sap.Data.Hana.Net.v8.0 NuGet package, or AddHana10() for .NET 10 with the Sap.Data.Hana.Net.v10.0 NuGet package.")]
public static IMigrationRunnerBuilder AddHana(this IMigrationRunnerBuilder builder)
{
return builder.RegisterHanaServices();
}

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remove AddHana from src/FluentMigrator.Console/MigratorConsole.cs:477 and src/FluentMigrator.MSBuild/Migrate.cs:265 - .NET Framework support for Hana is dropped. Update CHANGELOG.md to reflect this. src/FluentMigrator.DotNet.Cli/Setup.cs:82 should use well-known MSBuild pre-processor symbols:

#if NET8_0
  .AddHana8()
#elif NET9_0
  .AddHana8()
#elif NET10_0_OR_GREATER
  .AddHana10()
#endif

Comment on lines 115 to +123
var indexName = string.Format("idx_{0}", column);

var quotedObjectName = _quoter.QuoteTableName(Name);

var quotedIndexName = _quoter.QuoteIndexName(indexName);

using (var command = new HanaCommand(string.Format("CREATE INDEX {0} ON {1} ({2})", quotedIndexName, quotedObjectName, _quoter.QuoteColumnName(column)), Connection, Transaction))
using (var command = Connection.CreateCommand())
{
command.CommandText = string.Format("CREATE INDEX {0} ON {1} ({2})", quotedIndexName, quotedObjectName, _quoter.QuoteColumnName(column));

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@copilot Fix it.

@github-actions

github-actions Bot commented Jul 7, 2026

Copy link
Copy Markdown

Test Results

    2 files  ±0      2 suites  ±0   43s ⏱️ -5s
5 542 tests ±0  5 210 ✅ ±0  332 💤 ±0  0 ❌ ±0 
6 060 runs  ±0  5 464 ✅ ±0  596 💤 ±0  0 ❌ ±0 

Results for commit ee72e92. ± Comparison against base commit ee785ac.

♻️ This comment has been updated with latest results.

Copilot AI requested a review from jzabroski July 7, 2026 14:43
OracleManagedProcessor requires IOracleGenerator in its constructor, but
RegisterOracleManagedGenerator only registered IOracleManagedGenerator.
Add a TryAddScoped mapping from IOracleGenerator to IOracleManagedGenerator
so DI can resolve it. This fixes 38 failing integration tests on Linux CI
where the Oracle container is enabled.
@jzabroski

Copy link
Copy Markdown
Collaborator

@copilot Rebase this to main branch - we fixed the build errors that were blocking this PR from being accepted. We've since enabled Package Validation, so there might be errors relating to that step you may want to verify before pushing your final changes.

Copilot AI commented Jul 22, 2026

Copy link
Copy Markdown
Contributor Author

@copilot Rebase this to main branch - we fixed the build errors that were blocking this PR from being accepted. We've since enabled Package Validation, so there might be errors relating to that step y...

Rebased in 838b061 (merged latest main, including the API compat/build fixes). Ran dotnet pack with EnablePackageValidation for FluentMigrator, FluentMigrator.Runner.Core, and FluentMigrator.Runner.Hana — no real API-compat breaks were found (only a CP0003 assembly-version diagnostic caused by this sandbox not running GitVersion, which also reproduces on unrelated packages like FluentMigrator.Runner.Postgres). All Hana-related tests and the tests added on main pass after the merge.

@jzabroski

Copy link
Copy Markdown
Collaborator

@copilot resolve the merge conflicts in this pull request

…upport-and-update

# Conflicts:
#	src/FluentMigrator.Runner/FluentMigrationRunnerBuilderExtensions.cs
#	test/FluentMigrator.Tests/FluentMigrator.Tests.csproj
#	test/FluentMigrator.Tests/Unit/Runners/DatabaseIdentifierTests.cs

Copilot AI commented Jul 23, 2026

Copy link
Copy Markdown
Contributor Author

@copilot resolve the merge conflicts in this pull request

Resolved in ee72e92. Conflicts were between this PR's Hana changes and upstream's Jet provider removal — AddAllDatabases(), FluentMigrator.Tests.csproj, and DatabaseIdentifierTests.cs now correctly drop both .AddJet() and the legacy .AddHana()/bundled DLL references. Full unit test suite (5011 tests) and package validation both pass after the merge.

@github-actions

Copy link
Copy Markdown

Summary - Code Coverage

Summary
Generated on: 07/23/2026 - 01:06:21
Coverage date: 07/23/2026 - 01:06:06
Parser: MultiReport (2x Cobertura)
Assemblies: 20
Classes: 446
Files: 462
Line coverage: 73.3% (9652 of 13153)
Covered lines: 9652
Uncovered lines: 3501
Coverable lines: 13153
Total lines: 54037
Branch coverage: 66.5% (2712 of 4077)
Covered branches: 2712
Total branches: 4077
Method coverage: Feature is only available for sponsors
Tag: 580_29968200276

Coverage

FluentMigrator - 82.5%
Name Line Branch
FluentMigrator 82.5% 40.2%
FluentMigrator.AutoReversingMigration 75%
FluentMigrator.AutoScriptMigration 62% 40%
FluentMigrator.Builders.Alter.AlterExpressionRoot 90%
FluentMigrator.Builders.Alter.Column.AlterColumnExpressionBuilder 73.9% 0%
FluentMigrator.Builders.Alter.Table.AlterTableExpressionBuilder 81.1% 9%
FluentMigrator.Builders.ColumnExpressionBuilderHelper 100% 100%
FluentMigrator.Builders.Create.Column.CreateColumnExpressionBuilder 72.8% 0%
FluentMigrator.Builders.Create.Constraint.CreateConstraintExpressionBuilder 100% 100%
FluentMigrator.Builders.Create.CreateExpressionRoot 92.8%
FluentMigrator.Builders.Create.ForeignKey.CreateForeignKeyExpressionBuilder 100% 100%
FluentMigrator.Builders.Create.Index.CreateIndexExpressionBuilder 100%
FluentMigrator.Builders.Create.Schema.CreateSchemaExpressionBuilder 100%
FluentMigrator.Builders.Create.Sequence.CreateSequenceExpressionBuilder 100%
FluentMigrator.Builders.Create.Table.CreateTableExpressionBuilder 72.5% 0%
FluentMigrator.Builders.Delete.Column.DeleteColumnExpressionBuilder 100%
FluentMigrator.Builders.Delete.Constraint.DeleteConstraintExpressionBuilder 75% 0%
FluentMigrator.Builders.Delete.DefaultConstraint.DeleteDefaultConstraintExp
ressionBuilder
100%
FluentMigrator.Builders.Delete.DeleteDataExpressionBuilder 100%
FluentMigrator.Builders.Delete.DeleteExpressionRoot 93.4%
FluentMigrator.Builders.Delete.ForeignKey.DeleteForeignKeyExpressionBuilder 100% 100%
FluentMigrator.Builders.Delete.Index.DeleteIndexExpressionBuilder 83.3% 100%
FluentMigrator.Builders.Delete.Sequence.DeleteSequenceExpressionBuilder 100%
FluentMigrator.Builders.Delete.Table.DeleteTableExpressionBuilder 71.4%
FluentMigrator.Builders.Execute.ExecuteExpressionRoot 44.7% 0%
FluentMigrator.Builders.ExpressionBuilderBase`1 100% 100%
FluentMigrator.Builders.ExpressionBuilderWithColumnTypesBase`2 92.3% 100%
FluentMigrator.Builders.IfDatabase.IfDatabaseExpressionRoot 94.8% 75%
FluentMigrator.Builders.IfDatabase.NullIfDatabaseProcessor 11.1%
FluentMigrator.Builders.Insert.InsertDataExpressionBuilder 100% 100%
FluentMigrator.Builders.Insert.InsertExpressionRoot 85.7%
FluentMigrator.Builders.Rename.Column.RenameColumnExpressionBuilder 100%
FluentMigrator.Builders.Rename.RenameExpressionRoot 90%
FluentMigrator.Builders.Rename.Table.RenameTableExpressionBuilder 75%
FluentMigrator.Builders.Schema.Column.SchemaColumnQuery 100%
FluentMigrator.Builders.Schema.Constraint.SchemaConstraintQuery 100%
FluentMigrator.Builders.Schema.Index.SchemaIndexQuery 100%
FluentMigrator.Builders.Schema.Schema.SchemaSchemaQuery 85.7%
FluentMigrator.Builders.Schema.SchemaExpressionRoot 85.7%
FluentMigrator.Builders.Schema.Sequence.SchemaSequenceQuery 100%
FluentMigrator.Builders.Schema.Table.SchemaTableQuery 100%
FluentMigrator.Builders.Update.UpdateDataExpressionBuilder 100%
FluentMigrator.Builders.Update.UpdateExpressionRoot 85.7%
FluentMigrator.ForwardOnlyMigration 0%
FluentMigrator.Infrastructure.Extensions.ExtensionsForICustomAttributeProvi
der
33.3%
FluentMigrator.Infrastructure.Extensions.ExtensionsForIMigrationInfo 100%
FluentMigrator.Infrastructure.MigrationContext 100%
FluentMigrator.Infrastructure.NonAttributedMigrationToMigrationInfoAdapter 71.4% 50%
FluentMigrator.Migration 100%
FluentMigrator.MigrationBase 100% 50%
FluentMigrator.Abstractions - 87.3%
Name Line Branch
FluentMigrator.Abstractions 87.3% 83.3%
FluentMigrator.AotSupport 100%
FluentMigrator.Exceptions.DatabaseOperationNotSupportedException 25%
FluentMigrator.Exceptions.DuplicateMigrationException 25%
FluentMigrator.Exceptions.FluentMigratorException 75%
FluentMigrator.Exceptions.ProcessorFactoryNotFoundException 25%
FluentMigrator.Exceptions.UndeterminableConnectionException 25%
FluentMigrator.Expressions.AlterColumnExpression 100% 50%
FluentMigrator.Expressions.AlterDefaultConstraintExpression 33.3%
FluentMigrator.Expressions.AlterSchemaExpression 100%
FluentMigrator.Expressions.AlterTableExpression 100%
FluentMigrator.Expressions.CreateColumnExpression 100% 50%
FluentMigrator.Expressions.CreateConstraintExpression 100% 50%
FluentMigrator.Expressions.CreateForeignKeyExpression 100%
FluentMigrator.Expressions.CreateIndexExpression 100%
FluentMigrator.Expressions.CreateSchemaExpression 83.3%
FluentMigrator.Expressions.CreateSequenceExpression 100%
FluentMigrator.Expressions.CreateTableExpression 100%
FluentMigrator.Expressions.DeleteColumnExpression 100% 100%
FluentMigrator.Expressions.DeleteConstraintExpression 100% 100%
FluentMigrator.Expressions.DeleteDataExpression 37.5% 0%
FluentMigrator.Expressions.DeleteDefaultConstraintExpression 100%
FluentMigrator.Expressions.DeleteForeignKeyExpression 96.7% 90%
FluentMigrator.Expressions.DeleteIndexExpression 100% 100%
FluentMigrator.Expressions.DeleteSchemaExpression 100%
FluentMigrator.Expressions.DeleteSequenceExpression 100%
FluentMigrator.Expressions.DeleteTableExpression 100%
FluentMigrator.Expressions.ExecuteEmbeddedSqlScriptExpression 82.6% 50%
FluentMigrator.Expressions.ExecuteEmbeddedSqlScriptExpressionBase 85.7% 66.6%
FluentMigrator.Expressions.ExecuteSqlScriptExpression 72.2% 50%
FluentMigrator.Expressions.ExecuteSqlScriptExpressionBase 100%
FluentMigrator.Expressions.ExecuteSqlStatementExpression 100% 100%
FluentMigrator.Expressions.InsertDataExpression 100% 100%
FluentMigrator.Expressions.MigrationExpressionBase 100%
FluentMigrator.Expressions.PerformDBOperationExpression 50%
FluentMigrator.Expressions.RenameColumnExpression 100%
FluentMigrator.Expressions.RenameTableExpression 100%
FluentMigrator.Expressions.UpdateDataExpression 100% 100%
FluentMigrator.Infrastructure.DefaultEmbeddedResourceProvider 91.6% 83.3%
FluentMigrator.Infrastructure.ErrorMessages 79% 100%
FluentMigrator.Infrastructure.Extensions.AdditionalFeaturesExtensions 100% 100%
FluentMigrator.Infrastructure.Extensions.CloneExtensions 63.6% 25%
FluentMigrator.Infrastructure.MigrationInfo 93.3% 75%
FluentMigrator.MaintenanceAttribute 100%
FluentMigrator.MigrationAttribute 100%
FluentMigrator.MigrationTraitAttribute 75%
FluentMigrator.Model.ColumnDataType 100%
FluentMigrator.Model.ColumnDefinition 100% 100%
FluentMigrator.Model.ConstraintDefinition 61.9% 100%
FluentMigrator.Model.ForeignKeyDefinition 97.4% 87.5%
FluentMigrator.Model.IndexColumnDefinition 100%
FluentMigrator.Model.IndexDefinition 100% 100%
FluentMigrator.Model.SequenceDefinition 45.4% 50%
FluentMigrator.NonUnicodeString 100%
FluentMigrator.ProfileAttribute 75%
FluentMigrator.RawSql 100% 50%
FluentMigrator.SqlScriptTokenReplacer 100% 100%
FluentMigrator.TagsAttribute 87.5%
FluentMigrator.TimestampedMigrationAttribute 100%
FluentMigrator.Validation.DefaultMigrationExpressionValidator 100% 100%
FluentMigrator.ValidationUtilities 100% 96.8%
FluentMigrator.Extensions.MySql - 55.5%
Name Line Branch
FluentMigrator.Extensions.MySql 55.5% 28.5%
FluentMigrator.Builder.Create.Index.AbstractCreateIndexMethodOptionsSyntax 42.8% 50%
FluentMigrator.Builder.Create.Index.CreateBTreeIndexOptionsSyntax 100%
FluentMigrator.Builder.Create.Index.CreateHashIndexOptionSyntax 100%
FluentMigrator.Model.MySqlIndexTypeDefinition 50%
FluentMigrator.MySql.MySqlExtensions 52.1% 25%
FluentMigrator.Extensions.Oracle - 79.1%
Name Line Branch
FluentMigrator.Extensions.Oracle 79.1% 50%
FluentMigrator.Oracle.OracleExtensions 79.1% 50%
FluentMigrator.Extensions.Postgres - 72.3%
Name Line Branch
FluentMigrator.Extensions.Postgres 72.3% 73.7%
FluentMigrator.Builder.Create.Index.AbstractCreateIndexMethodOptionsSyntax 70% 50%
FluentMigrator.Builder.Create.Index.CreateBrinIndexOptionsSyntax 66.6%
FluentMigrator.Builder.Create.Index.CreateBTreeIndexOptionsSyntax 100%
FluentMigrator.Builder.Create.Index.CreateGinIndexOptionsSyntax 66.6%
FluentMigrator.Builder.Create.Index.CreateGistIndexOptionsSyntax 71.4%
FluentMigrator.Builder.Create.Index.CreateHashIndexOptionSyntax 50%
FluentMigrator.Builder.Create.Index.CreateIndexExpressionNonKeyBuilder 50%
FluentMigrator.Builder.Create.Index.CreateSpgistIndexOptionsSyntax 50%
FluentMigrator.Builder.SecurityLabel.CreateSecurityLabelExpressionBuilder`1 84% 50%
FluentMigrator.Builder.SecurityLabel.DeleteSecurityLabelExpressionBuilder 82.2% 100%
FluentMigrator.Builder.SecurityLabel.PostgresSecurityLabelSqlGenerator 93.5% 83.3%
FluentMigrator.Builder.SecurityLabel.Provider.AnonSecurityLabelBuilder 66% 82.6%
FluentMigrator.Builder.SecurityLabel.RawSecurityLabelBuilder 0%
FluentMigrator.Builder.SecurityLabel.SecurityLabelSyntaxBuilderBase 100% 100%
FluentMigrator.Model.PostgresIndexAlgorithmDefinition 50%
FluentMigrator.Model.PostgresIndexConcurrentlyDefinition 50%
FluentMigrator.Model.PostgresIndexIncludeDefinition 20% 0%
FluentMigrator.Model.PostgresIndexNullsSort 50%
FluentMigrator.Model.PostgresIndexOnlyDefinition 50%
FluentMigrator.Model.PostgresSecurityLabelDefinition 100%
FluentMigrator.Postgres.PostgresExtensions 71.3% 35.8%
FluentMigrator.Extensions.Snowflake - 14.2%
Name Line Branch
FluentMigrator.Extensions.Snowflake 14.2% 0%
FluentMigrator.Snowflake.SnowflakeExtensions 14.2% 0%
FluentMigrator.Extensions.SqlServer - 84.8%
Name Line Branch
FluentMigrator.Extensions.SqlServer 84.8% 46.4%
FluentMigrator.Builders.Create.Index.CreateIndexExpressionNonKeyBuilder 87.5%
FluentMigrator.Model.IndexIncludeDefinition 60% 50%
FluentMigrator.SqlServer.DataCompressionType 100%
FluentMigrator.SqlServer.SqlServerExtensions 84.7% 46.1%
FluentMigrator.Runner - 0%
Name Line Branch
FluentMigrator.Runner 0% ****
FluentMigrator.Runner.FluentMigrationRunnerBuilderExtensions 0%
FluentMigrator.Runner.Core - 76.8%
Name Line Branch
FluentMigrator.Runner.Core 76.8% 78.4%
FluentMigrator.Runner.AnnouncerExtensions 100%
FluentMigrator.Runner.Announcers.Announcer 64.2% 75%
FluentMigrator.Runner.Announcers.AnnouncerOptions 28.5%
FluentMigrator.Runner.Announcers.CompositeAnnouncer 0% 0%
FluentMigrator.Runner.Announcers.ConsoleAnnouncer 0%
FluentMigrator.Runner.Announcers.LoggerAnnouncer 13.7% 0%
FluentMigrator.Runner.Announcers.NullAnnouncer 0%
FluentMigrator.Runner.Announcers.TextWriterAnnouncer 82.3% 100%
FluentMigrator.Runner.Announcers.TextWriterAnnouncerOptions 0%
FluentMigrator.Runner.Announcers.TextWriterWithGoAnnouncer 63.6% 100%
FluentMigrator.Runner.BatchParser.EndCodeSearchResult 92.8% 50%
FluentMigrator.Runner.BatchParser.RangeSearchers.AnsiSqlIdentifier 100%
FluentMigrator.Runner.BatchParser.RangeSearchers.CharWithEscapeByDuplicatio
n
100% 100%
FluentMigrator.Runner.BatchParser.RangeSearchers.DoubleDashSingleLineCommen
t
100%
FluentMigrator.Runner.BatchParser.RangeSearchers.DoubleSlashSingleLineComme
nt
0%
FluentMigrator.Runner.BatchParser.RangeSearchers.MultiLineComment 100%
FluentMigrator.Runner.BatchParser.RangeSearchers.MySqlIdentifier 100%
FluentMigrator.Runner.BatchParser.RangeSearchers.NestingMultiLineComment 82.1% 58.3%
FluentMigrator.Runner.BatchParser.RangeSearchers.PoundSignSingleLineComment 100%
FluentMigrator.Runner.BatchParser.RangeSearchers.SingleLineComment 100% 100%
FluentMigrator.Runner.BatchParser.RangeSearchers.SqlServerIdentifier 100%
FluentMigrator.Runner.BatchParser.RangeSearchers.SqlString 100%
FluentMigrator.Runner.BatchParser.RangeSearchers.StringWithNoEscape 100% 100%
FluentMigrator.Runner.BatchParser.SearchContext 100% 50%
FluentMigrator.Runner.BatchParser.SearchStatus 94.5% 86.6%
FluentMigrator.Runner.BatchParser.Sources.LinesSource 100% 85.7%
FluentMigrator.Runner.BatchParser.Sources.TextReaderSource 100% 100%
FluentMigrator.Runner.BatchParser.SpecialTokenEventArgs 100%
FluentMigrator.Runner.BatchParser.SpecialTokenInfo 100%
FluentMigrator.Runner.BatchParser.SpecialTokenSearchers.GoSearcher 86.3% 90%
FluentMigrator.Runner.BatchParser.SpecialTokenSearchers.SemicolonSearcher 100% 100%
FluentMigrator.Runner.BatchParser.SqlBatchCollectorEventArgs 100%
FluentMigrator.Runner.BatchParser.SqlBatchParser 100% 92.8%
FluentMigrator.Runner.BatchParser.SqlTextEventArgs 100%
FluentMigrator.Runner.ConnectionlessVersionLoader 0% 0%
FluentMigrator.Runner.ConsoleUtilities 50%
FluentMigrator.Runner.Constraints.CurrentVersionMigrationConstraintAttribut
e
100%
FluentMigrator.Runner.Constraints.MigrationConstraintAttribute 100% 50%
FluentMigrator.Runner.Constraints.MigrationConstraintContext 100%
FluentMigrator.Runner.Conventions.ConventionSet 100%
FluentMigrator.Runner.Conventions.DefaultAutoNameConvention 96.7% 91.6%
FluentMigrator.Runner.Conventions.DefaultConstraintNameConvention 100% 100%
FluentMigrator.Runner.Conventions.DefaultForeignKeyNameConvention 100% 100%
FluentMigrator.Runner.Conventions.DefaultIndexNameConvention 100% 100%
FluentMigrator.Runner.Conventions.DefaultPrimaryKeyNameConvention 100% 87.5%
FluentMigrator.Runner.Conventions.DefaultRootPathConvention 50% 50%
FluentMigrator.Runner.Conventions.DefaultSchemaConvention 100%
FluentMigrator.Runner.Conventions.DefaultSchemaNameConvention 100% 100%
FluentMigrator.Runner.ConventionSetExtensions 96.9% 97%
FluentMigrator.Runner.DefaultConventionSet 97.6%
FluentMigrator.Runner.DefaultMigrationInformationLoader 95.8% 88.8%
FluentMigrator.Runner.Exceptions.InvalidMigrationException 80%
FluentMigrator.Runner.Exceptions.MissingMigrationsException 25%
FluentMigrator.Runner.Exceptions.RunnerException 50%
FluentMigrator.Runner.Exceptions.VersionOrderInvalidException 80% 100%
FluentMigrator.Runner.Extensions.TagsExtensions 100% 100%
FluentMigrator.Runner.Extensions.TypeExtensions 0% 0%
FluentMigrator.Runner.FluentMigratorLoggerOptions 100%
FluentMigrator.Runner.FluentMigratorLoggingExtensions 0%
FluentMigrator.Runner.Generators.Base.ColumnBase`1 97.8% 93.6%
FluentMigrator.Runner.Generators.Base.GeneratorBase 100%
FluentMigrator.Runner.Generators.Base.TypeMapBase 96.2% 92.8%
FluentMigrator.Runner.Generators.CompatibilityModeExtension 100% 100%
FluentMigrator.Runner.Generators.EmptyDescriptionGenerator 0%
FluentMigrator.Runner.Generators.GeneratorOptions 100%
FluentMigrator.Runner.Generators.Generic.GenericDescriptionGenerator 100% 100%
FluentMigrator.Runner.Generators.Generic.GenericGenerator 92.6% 88.1%
FluentMigrator.Runner.Generators.Generic.GenericQuoter 96.2% 89.2%
FluentMigrator.Runner.Generators.SelectingGeneratorAccessor 82.1% 77.7%
FluentMigrator.Runner.Generators.SelectingGeneratorAccessorOptions 100%
FluentMigrator.Runner.Helpers.FormatHelper 100%
FluentMigrator.Runner.Infrastructure.DefaultMigrationRunnerConventions 97.9% 92.1%
FluentMigrator.Runner.Infrastructure.Hosts.NetCoreHost 45.4% 25%
FluentMigrator.Runner.Infrastructure.RuntimeHost 20.3% 14.7%
FluentMigrator.Runner.Initialization.ArrayTypeSource 80%
FluentMigrator.Runner.Initialization.AssemblyFileLoadEngine 50% 66.6%
FluentMigrator.Runner.Initialization.AssemblyLoader.AssemblyLoaderFactory 100% 100%
FluentMigrator.Runner.Initialization.AssemblyLoader.AssemblyLoaderFromFile 58.3% 50%
FluentMigrator.Runner.Initialization.AssemblyLoader.AssemblyLoaderFromName 100%
FluentMigrator.Runner.Initialization.AssemblyMigrationSourceItem 100% 100%
FluentMigrator.Runner.Initialization.AssemblyNameLoadEngine 85.7%
FluentMigrator.Runner.Initialization.AssemblySource 83.3% 71.4%
FluentMigrator.Runner.Initialization.AssemblySourceConventionSetAccessor 0% 0%
FluentMigrator.Runner.Initialization.AssemblySourceItem 100%
FluentMigrator.Runner.Initialization.AssemblySourceItem`1 100% 100%
FluentMigrator.Runner.Initialization.AssemblySourceMigrationRunnerConventio
nsAccessor
91.3% 66.6%
FluentMigrator.Runner.Initialization.AssemblySourceOptions 100%
FluentMigrator.Runner.Initialization.AssemblySourceVersionTableMetaDataAcce
ssor
92.3% 75%
FluentMigrator.Runner.Initialization.AssemblyTypeSource 100%
FluentMigrator.Runner.Initialization.AssemblyVersionTableMetaDataSourceItem 100% 100%
FluentMigrator.Runner.Initialization.ConfigurationConnectionStringReader 88.8% 75%
FluentMigrator.Runner.Initialization.ConnectionStringAccessor 100% 100%
FluentMigrator.Runner.Initialization.EmptyAssemblySource 0%
FluentMigrator.Runner.Initialization.MigrationSource 65.2% 92.8%
FluentMigrator.Runner.Initialization.PassThroughConnectionStringReader 100%
FluentMigrator.Runner.Initialization.PassThroughMigrationRunnerConventionsA
ccessor
100% 50%
FluentMigrator.Runner.Initialization.PassThroughVersionTableMetaDataAccesso
r
100%
FluentMigrator.Runner.Initialization.ProfileSource 100% 75%
FluentMigrator.Runner.Initialization.RunnerContext 0%
FluentMigrator.Runner.Initialization.RunnerOptions 56.5% 0%
FluentMigrator.Runner.Initialization.TaskExecutor 88.8% 78.5%
FluentMigrator.Runner.Initialization.TypeFilterOptions 100%
FluentMigrator.Runner.Initialization.TypeSourceConventionSetAccessor 94.5% 80%
FluentMigrator.Runner.Logging.AnnouncerFluentMigratorLogger 0%
FluentMigrator.Runner.Logging.FluentMigratorConsoleLogger 72% 50%
FluentMigrator.Runner.Logging.FluentMigratorConsoleLoggerProvider 100%
FluentMigrator.Runner.Logging.FluentMigratorLogger 81.2% 88.8%
FluentMigrator.Runner.Logging.FluentMigratorRunnerLogger 95.8% 50%
FluentMigrator.Runner.Logging.LegacyFluentMigratorLoggerProvider 0%
FluentMigrator.Runner.Logging.LogFileFluentMigratorLoggerOptions 100%
FluentMigrator.Runner.Logging.LogFileFluentMigratorLoggerProvider 87.5% 75%
FluentMigrator.Runner.Logging.PasswordMaskUtility 100%
FluentMigrator.Runner.Logging.SqlScriptFluentMigratorLogger 75% 83.3%
FluentMigrator.Runner.Logging.SqlScriptFluentMigratorLoggerOptions 100%
FluentMigrator.Runner.Logging.SqlScriptFluentMigratorLoggerProvider 100% 75%
FluentMigrator.Runner.Logging.SqlTextWriter 83.3% 50%
FluentMigrator.Runner.LoggingUtilities 97.2% 90%
FluentMigrator.Runner.MaintenanceLoader 65.8% 100%
FluentMigrator.Runner.MigrationConventionsExtensions 85.7% 85.7%
FluentMigrator.Runner.MigrationRunner 85.3% 87.1%
FluentMigrator.Runner.MigrationRunnerBuilderExtensions 76.8% 50%
FluentMigrator.Runner.MigrationRunnerConventions 100%
FluentMigrator.Runner.MigrationScopeHandler 100% 90%
FluentMigrator.Runner.MigrationValidator 73.3% 78.5%
FluentMigrator.Runner.NoOpMigrationScope 75%
FluentMigrator.Runner.Processors.ConnectionlessProcessor 0% 0%
FluentMigrator.Runner.Processors.DataReaderExtensions 100% 100%
FluentMigrator.Runner.Processors.DbFactoryBase 75% 100%
FluentMigrator.Runner.Processors.GenericProcessorBase 92.1% 85%
FluentMigrator.Runner.Processors.ProcessorBase 66.6% 0%
FluentMigrator.Runner.Processors.ProcessorOptions 35% 0%
FluentMigrator.Runner.Processors.ReflectionBasedDbFactory 59.5% 60%
FluentMigrator.Runner.Processors.SelectingProcessorAccessor 66.6% 81.8%
FluentMigrator.Runner.Processors.SelectingProcessorAccessorOptions 100%
FluentMigrator.Runner.ProfileLoader 60% 50%
FluentMigrator.Runner.RunnerEventIds 100%
FluentMigrator.Runner.StopWatch 100%
FluentMigrator.Runner.TrackingMigrationScope 88.8% 66.6%
FluentMigrator.Runner.TransactionalMigrationScope 100% 50%
FluentMigrator.Runner.TypeFinder 52.9% 43.7%
FluentMigrator.Runner.Versioning.VersionDescriptionMigration 66.6%
FluentMigrator.Runner.Versioning.VersionInfo 100%
FluentMigrator.Runner.Versioning.VersionMigration 90.9% 50%
FluentMigrator.Runner.Versioning.VersionSchemaMigration 100% 100%
FluentMigrator.Runner.Versioning.VersionUniqueMigration 100% 100%
FluentMigrator.Runner.VersionLoader 97.8% 90.6%
FluentMigrator.Runner.VersionTableInfo.DefaultVersionTableMetaData 100% 50%
Microsoft.Extensions.DependencyInjection.FluentMigratorServiceCollectionExt
ensions
94.3% 61.1%
FluentMigrator.Runner.Db2 - 62.8%
Name Line Branch
FluentMigrator.Runner.Db2 62.8% 45.7%
FluentMigrator.Runner.Db2RunnerBuilderExtensions 88.8%
FluentMigrator.Runner.Generators.DB2.Db2Column 97.7% 96.1%
FluentMigrator.Runner.Generators.DB2.Db2Generator 96.9% 81.8%
FluentMigrator.Runner.Generators.DB2.Db2Quoter 46.1% 36.3%
FluentMigrator.Runner.Generators.DB2.Db2TypeMap 100%
FluentMigrator.Runner.Generators.DB2.iSeries.Db2ISeriesGenerator 50%
FluentMigrator.Runner.Generators.DB2.iSeries.Db2ISeriesQuoter 100% 50%
FluentMigrator.Runner.Processors.DB2.Db2DbFactory 84.6%
FluentMigrator.Runner.Processors.DB2.Db2Processor 6.3% 0%
FluentMigrator.Runner.Processors.DB2.iSeries.Db2ISeriesDbFactory 83.3%
FluentMigrator.Runner.Processors.DB2.iSeries.Db2ISeriesProcessor 10.5% 0%
FluentMigrator.Runner.Firebird - 28.6%
Name Line Branch
FluentMigrator.Runner.Firebird 28.6% 19.1%
FluentMigrator.Runner.FirebirdRunnerBuilderExtensions 93.7%
FluentMigrator.Runner.Generators.Firebird.FirebirdColumn 70% 70%
FluentMigrator.Runner.Generators.Firebird.FirebirdGenerator 59.8% 41.1%
FluentMigrator.Runner.Generators.Firebird.FirebirdQuoter 77.4% 42.8%
FluentMigrator.Runner.Generators.Firebird.FirebirdTruncator 80% 53.7%
FluentMigrator.Runner.Generators.Firebird.FirebirdTypeMap 100%
FluentMigrator.Runner.Models.FirebirdTableDefinition 0%
FluentMigrator.Runner.Processors.Firebird.AdoHelper 0% 0%
FluentMigrator.Runner.Processors.Firebird.ColumnInfo 0% 0%
FluentMigrator.Runner.Processors.Firebird.ConstraintInfo 0% 0%
FluentMigrator.Runner.Processors.Firebird.FirebirdDbFactory 62.5%
FluentMigrator.Runner.Processors.Firebird.FirebirdDDLLockTracker 0% 0%
FluentMigrator.Runner.Processors.Firebird.FirebirdIdentifierComparer 0% 0%
FluentMigrator.Runner.Processors.Firebird.FirebirdOptions 82.6% 83.3%
FluentMigrator.Runner.Processors.Firebird.FirebirdProcessor 4.8% 0.8%
FluentMigrator.Runner.Processors.Firebird.FirebirdSchemaProvider 0% 0%
FluentMigrator.Runner.Processors.Firebird.FirebirdTableSchema 0% 0%
FluentMigrator.Runner.Processors.Firebird.IndexInfo 0% 0%
FluentMigrator.Runner.Processors.Firebird.SequenceInfo 0%
FluentMigrator.Runner.Processors.Firebird.TableInfo 0% 0%
FluentMigrator.Runner.Processors.Firebird.TriggerInfo 0% 0%
FluentMigrator.Runner.Hana - 49.2%
Name Line Branch
FluentMigrator.Runner.Hana 49.2% 36.1%
FluentMigrator.Runner.Generators.Hana.HanaColumn 51.7% 50%
FluentMigrator.Runner.Generators.Hana.HanaDescriptionGenerator 0% 0%
FluentMigrator.Runner.Generators.Hana.HanaGenerator 70.8% 69.4%
FluentMigrator.Runner.Generators.Hana.HanaQuoter 87.5% 83.3%
FluentMigrator.Runner.Generators.Hana.HanaTypeMap 100%
FluentMigrator.Runner.HanaRunnerBuilderExtensions 83.3%
FluentMigrator.Runner.Processors.Hana.HanaDbFactory 100%
FluentMigrator.Runner.Processors.Hana.HanaProcessor 4.7% 0%
FluentMigrator.Runner.MySql - 93.5%
Name Line Branch
FluentMigrator.Runner.MySql 93.5% 78.6%
FluentMigrator.Runner.Generators.MySql.MySql4Generator 96% 85.7%
FluentMigrator.Runner.Generators.MySql.MySql4TypeMap 100%
FluentMigrator.Runner.Generators.MySql.MySql5Generator 87.5%
FluentMigrator.Runner.Generators.MySql.MySql5TypeMap 100%
FluentMigrator.Runner.Generators.MySql.MySql8Generator 95.6% 100%
FluentMigrator.Runner.Generators.MySql.MySqlColumn 100% 100%
FluentMigrator.Runner.Generators.MySql.MySqlQuoter 78.5% 28.5%
FluentMigrator.Runner.MySqlRunnerBuilderExtensions 100%
FluentMigrator.Runner.Processors.MySql.MySql4Processor 100%
FluentMigrator.Runner.Processors.MySql.MySql5Processor 100%
FluentMigrator.Runner.Processors.MySql.MySql8Processor 100%
FluentMigrator.Runner.Processors.MySql.MySqlDbFactory 60%
FluentMigrator.Runner.Processors.MySql.MySqlProcessor 86.4% 62.5%
FluentMigrator.Runner.Oracle - 81.1%
Name Line Branch
FluentMigrator.Runner.Oracle 81.1% 74.3%
FluentMigrator.Runner.Generators.Oracle.Oracle12CColumn 97.2% 92.8%
FluentMigrator.Runner.Generators.Oracle.Oracle12CGenerator 100%
FluentMigrator.Runner.Generators.Oracle.OracleColumn 81.8% 87.5%
FluentMigrator.Runner.Generators.Oracle.OracleDescriptionGenerator 87.5% 50%
FluentMigrator.Runner.Generators.Oracle.OracleGenerator 96.9% 94.8%
FluentMigrator.Runner.Generators.Oracle.OracleManagedGenerator 100%
FluentMigrator.Runner.Generators.Oracle.OracleQuoter 97.1% 96.4%
FluentMigrator.Runner.Generators.Oracle.OracleQuoterBase 86.3% 72%
FluentMigrator.Runner.Generators.Oracle.OracleTypeMap 100%
FluentMigrator.Runner.OracleRunnerBuilderExtensions 96.8% 100%
FluentMigrator.Runner.ProcessorOptionsExtensions 100% 100%
FluentMigrator.Runner.Processors.DotConnectOracle.DotConnectOracle12CProces
sor
100%
FluentMigrator.Runner.Processors.DotConnectOracle.DotConnectOracleDbFactory 83.3%
FluentMigrator.Runner.Processors.DotConnectOracle.DotConnectOracleProcessor 4.6% 0%
FluentMigrator.Runner.Processors.Oracle.Oracle12CManagedProcessor 100%
FluentMigrator.Runner.Processors.Oracle.Oracle12CProcessor 100%
FluentMigrator.Runner.Processors.Oracle.OracleBaseDbFactory 100%
FluentMigrator.Runner.Processors.Oracle.OracleDbFactory 75%
FluentMigrator.Runner.Processors.Oracle.OracleManagedDbFactory 75%
FluentMigrator.Runner.Processors.Oracle.OracleManagedProcessor 100%
FluentMigrator.Runner.Processors.Oracle.OracleProcessor 100%
FluentMigrator.Runner.Processors.Oracle.OracleProcessorBase 68.9% 57.5%
FluentMigrator.Runner.Processors.Oracle.OracleSqlParser 96.8% 95.4%
FluentMigrator.Runner.Postgres - 91.9%
Name Line Branch
FluentMigrator.Runner.Postgres 91.9% 82.2%
FluentMigrator.Runner.Generators.Postgres.Postgres10_0Column 70.8% 53.3%
FluentMigrator.Runner.Generators.Postgres.Postgres10_0Generator 100% 100%
FluentMigrator.Runner.Generators.Postgres.Postgres11_0Generator 68.9% 60%
FluentMigrator.Runner.Generators.Postgres.Postgres15_0Generator 78.9% 87.5%
FluentMigrator.Runner.Generators.Postgres.PostgresColumn 100% 100%
FluentMigrator.Runner.Generators.Postgres.PostgresDescriptionGenerator 86.6% 50%
FluentMigrator.Runner.Generators.Postgres.PostgresGenerator 93.4% 90.9%
FluentMigrator.Runner.Generators.Postgres.PostgresQuoter 94.8% 76.1%
FluentMigrator.Runner.Generators.Postgres.PostgresTypeMap 100%
FluentMigrator.Runner.Generators.Postgres92.Postgres92Generator 100%
FluentMigrator.Runner.Generators.Postgres92.Postgres92TypeMap 100%
FluentMigrator.Runner.PostgresRunnerBuilderExtensions 100%
FluentMigrator.Runner.Processors.Postgres.Postgres10_0Processor 100%
FluentMigrator.Runner.Processors.Postgres.Postgres11_0Processor 100%
FluentMigrator.Runner.Processors.Postgres.Postgres15_0Processor 100%
FluentMigrator.Runner.Processors.Postgres.PostgresDbFactory 100%
FluentMigrator.Runner.Processors.Postgres.PostgresOptions 81.8% 80%
FluentMigrator.Runner.Processors.Postgres.PostgresProcessor 83.9% 45%
FluentMigrator.Runner.Processors.Postgres92.Postgres92Processor 100%
FluentMigrator.Runner.Redshift - 73.6%
Name Line Branch
FluentMigrator.Runner.Redshift 73.6% 67.9%
FluentMigrator.Runner.Generators.Redshift.RedshiftColumn 100% 100%
FluentMigrator.Runner.Generators.Redshift.RedshiftDescriptionGenerator 88.2% 50%
FluentMigrator.Runner.Generators.Redshift.RedshiftGenerator 87.9% 79.5%
FluentMigrator.Runner.Generators.Redshift.RedshiftQuoter 53.8% 63.6%
FluentMigrator.Runner.Generators.Redshift.RedshiftTypeMap 100%
FluentMigrator.Runner.Processors.Redshift.RedshiftDbFactory 62.5%
FluentMigrator.Runner.Processors.Redshift.RedshiftProcessor 10% 0%
FluentMigrator.Runner.RedshiftRunnerBuilderExtensions 88.8%
FluentMigrator.Runner.Snowflake - 67.2%
Name Line Branch
FluentMigrator.Runner.Snowflake 67.2% 51.8%
FluentMigrator.Runner.BatchParser.SnowflakeBatchParser 100%
FluentMigrator.Runner.Generators.Snowflake.SnowflakeColumn 100% 87.5%
FluentMigrator.Runner.Generators.Snowflake.SnowflakeDescriptionGenerator 85.7% 50%
FluentMigrator.Runner.Generators.Snowflake.SnowflakeGenerator 72.5% 61.1%
FluentMigrator.Runner.Generators.Snowflake.SnowflakeQuoter 66.6% 63.1%
FluentMigrator.Runner.Generators.Snowflake.SnowflakeTypeMap 100%
FluentMigrator.Runner.Processors.Snowflake.SnowflakeDbFactory 83.3%
FluentMigrator.Runner.Processors.Snowflake.SnowflakeOptions 90%
FluentMigrator.Runner.Processors.Snowflake.SnowflakeProcessor 41.8% 31.2%
FluentMigrator.Runner.SnowflakeException 0%
FluentMigrator.Runner.SnowflakeRunnerBuilderExtensions 91.6%
FluentMigrator.Runner.SQLite - 89.7%
Name Line Branch
FluentMigrator.Runner.SQLite 89.7% 80%
FluentMigrator.Runner.BatchParser.SQLiteBatchParser 86.6%
FluentMigrator.Runner.Generators.SQLite.SQLiteColumn 86.2% 91.6%
FluentMigrator.Runner.Generators.SQLite.SQLiteGenerator 90.7% 93.7%
FluentMigrator.Runner.Generators.SQLite.SQLiteQuoter 66.6% 60%
FluentMigrator.Runner.Generators.SQLite.SQLiteTypeMap 100% 100%
FluentMigrator.Runner.Processors.SQLite.SQLiteDbFactory 75%
FluentMigrator.Runner.Processors.SQLite.SQLiteProcessor 89.6% 71%
FluentMigrator.Runner.SQLiteRunnerBuilderExtensions 100%
FluentMigrator.Runner.SqlServer - 88.1%
Name Line Branch
FluentMigrator.Runner.SqlServer 88.1% 83.7%
FluentMigrator.Runner.BatchParser.SqlServerBatchParser 86.6%
FluentMigrator.Runner.Generators.SqlServer.SqlServer2000Column 100% 95%
FluentMigrator.Runner.Generators.SqlServer.SqlServer2000Generator 98.1% 100%
FluentMigrator.Runner.Generators.SqlServer.SqlServer2000Quoter 91.6% 85.7%
FluentMigrator.Runner.Generators.SqlServer.SqlServer2000TypeMap 100%
FluentMigrator.Runner.Generators.SqlServer.SqlServer2005Column 100% 100%
FluentMigrator.Runner.Generators.SqlServer.SqlServer2005DescriptionGenerato
r
95.2% 81.2%
FluentMigrator.Runner.Generators.SqlServer.SqlServer2005Generator 98% 90.2%
FluentMigrator.Runner.Generators.SqlServer.SqlServer2005Quoter 100% 100%
FluentMigrator.Runner.Generators.SqlServer.SqlServer2005TypeMap 100%
FluentMigrator.Runner.Generators.SqlServer.SqlServer2008Column 100% 100%
FluentMigrator.Runner.Generators.SqlServer.SqlServer2008Generator 82.3% 79.1%
FluentMigrator.Runner.Generators.SqlServer.SqlServer2008Quoter 100% 100%
FluentMigrator.Runner.Generators.SqlServer.SqlServer2008TypeMap 100%
FluentMigrator.Runner.Generators.SqlServer.SqlServer2012Generator 93.5% 100%
FluentMigrator.Runner.Generators.SqlServer.SqlServer2014Generator 30%
FluentMigrator.Runner.Generators.SqlServer.SqlServer2016Generator 80%
FluentMigrator.Runner.Processors.SqlServer.SqlServer2000Processor 51.3% 50%
FluentMigrator.Runner.Processors.SqlServer.SqlServer2005Processor 100%
FluentMigrator.Runner.Processors.SqlServer.SqlServer2008Processor 100%
FluentMigrator.Runner.Processors.SqlServer.SqlServer2012Processor 100%
FluentMigrator.Runner.Processors.SqlServer.SqlServer2014Processor 100%
FluentMigrator.Runner.Processors.SqlServer.SqlServer2016Processor 100%
FluentMigrator.Runner.Processors.SqlServer.SqlServerDbFactory 0%
FluentMigrator.Runner.Processors.SqlServer.SqlServerProcessor 89.6% 75%
FluentMigrator.Runner.SqlServerRunnerBuilderExtensions 92%
Migrate - 61.9%
Name Line Branch
Migrate 61.9% 51.3%
FluentMigrator.Console.MigratorConsole 83.9% 61.1%
FluentMigrator.Console.Program 0%
FluentMigrator.Console.StopOnErrorLoggerProvider 0%
Mono.Options.Option 40% 38.1%
Mono.Options.OptionContext 83.3%
Mono.Options.OptionException 0%
Mono.Options.OptionSet 53.8% 55%
Mono.Options.OptionValueCollection 31.8% 60%

@jzabroski
jzabroski merged commit c143fac into main Jul 23, 2026
4 checks passed
@jzabroski
jzabroski deleted the copilot/remove-hana-support-and-update branch July 23, 2026 22:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Support Hana via nuget packages Sap.Data.Hana.Net.v8.0 and Sap.Data.Hana.Net.v10.0

3 participants