Overview of the PackageCompatibility Tool
mainThe PackageCompatibility tool is a minimal console application designed to verify that various SqlClient packages can coexist without transitive dependency conflicts, API surface mismatches, or runtime failures.
Unlike standard unit or functional tests that run against the current source code, this tool allows you to test heterogeneous package versions (e.g., testing a new AKV provider against an older published SqlClient release) and locally-built packages before they are published to NuGet.org.
It works by:
- Forcing the
SqlColumnEncryptionAzureKeyVaultProviderto load, which pulls in the AKV provider and its transitive dependencies. - Opening a
SqlConnectionusing a provided connection string to exercise the full package graph against a real SQL Server instance.
Note: This tool requires a live SQL Server or Azure SQL instance to function.