Merge | Not Supported Binaries / Test Targets#3997
Conversation
There was a problem hiding this comment.
Pull request overview
This PR makes two main changes: (1) adds test targets to build2.proj with detailed parameter documentation for running MDS tests via MSBuild, and (2) creates a new dedicated project (notsupported/) to generate "Not Supported" assemblies from the common MDS ref project using GenAPI, replacing the previous approach that was embedded in the netcore/netfx projects. Additional changes include strong-name signing for ref binaries, updated output paths for ref assemblies, conditional exclusion of net462 from Unix builds, and GenAPI project updates to target a single framework (net9.0).
Changes:
- New
notsupported/Microsoft.Data.SqlClient.csprojproject and updatedNotSupported.targetsfor generating PlatformNotSupportedException assemblies via GenAPI - Expanded
build2.projwith test targets (TestMdsFunctional,TestMdsManual,TestMdsUnit), build targets (BuildMdsRef,BuildMdsNotSupported), and comprehensive parameter documentation - Conditional net462 exclusion on Unix, strong-name signing for ref binaries, and GenAPI project simplification to single net9.0 target
Reviewed changes
Copilot reviewed 8 out of 9 changed files in this pull request and generated 13 comments.
Show a summary per file
| File | Description |
|---|---|
| build2.proj | Major expansion: imports, test/build targets, detailed parameter docs |
| tools/targets/NotSupported.targets | Replaced old GenAPI variable setup with new paths/command, but Exec still uses old vars |
| src/Microsoft.Data.SqlClient/notsupported/Microsoft.Data.SqlClient.csproj | New project to generate Not Supported assemblies via GenAPI |
| src/Microsoft.Data.SqlClient/src/Microsoft.Data.SqlClient.csproj | Reordered TargetOs/TargetFrameworks, added signing, conditional net462 on Windows only |
| src/Microsoft.Data.SqlClient/ref/Microsoft.Data.SqlClient.csproj | Added strong-name signing and custom output path under artifacts/ |
| tools/GenAPI/Microsoft.DotNet.GenAPI/Microsoft.DotNet.GenAPI.csproj | Simplified to single net9.0 target, removed custom OutputPath |
| tools/GenAPI/Microsoft.Cci.Extensions/Microsoft.Cci.Extensions.csproj | Removed custom OutputPath |
| src/Microsoft.Data.SqlClient.sln | Added notsupported, GenAPI, and Cci.Extensions projects (no build) |
| .gitignore | Added pattern to ignore generated notsupported .cs files |
src/Microsoft.Data.SqlClient/notsupported/Microsoft.Data.SqlClient.csproj
Outdated
Show resolved
Hide resolved
src/Microsoft.Data.SqlClient/notsupported/Microsoft.Data.SqlClient.csproj
Outdated
Show resolved
Hide resolved
src/Microsoft.Data.SqlClient/notsupported/Microsoft.Data.SqlClient.csproj
Outdated
Show resolved
Hide resolved
…e projects themselves
Ignore trx test results from git
Adding conditional net462 stuff to stress test Directory.Build.props Adding TestUtilities reference to Azure test
src/Microsoft.Data.SqlClient.Extensions/Azure/test/Azure.Test.csproj
Outdated
Show resolved
Hide resolved
Remove redundant strong naming from common MDS Fix typos as per copilot (why couldn't it find these the first time around??)
…life slightly easier
paulmedynski
left a comment
There was a problem hiding this comment.
Mostly questions that may not result in any changes, but could become comments in the code to help maintainers.
src/Microsoft.Data.SqlClient/notsupported/Microsoft.Data.SqlClient.csproj
Outdated
Show resolved
Hide resolved
tools/GenAPI/Microsoft.DotNet.GenAPI/Microsoft.DotNet.GenAPI.csproj
Outdated
Show resolved
Hide resolved
src/Microsoft.Data.SqlClient.Extensions/Azure/test/Azure.Test.csproj
Outdated
Show resolved
Hide resolved
src/Microsoft.Data.SqlClient.Extensions/Azure/test/Azure.Test.csproj
Outdated
Show resolved
Hide resolved
Codecov Report✅ All modified and coverable lines are covered by tests.
Additional details and impacted files@@ Coverage Diff @@
## main #3997 +/- ##
==========================================
- Coverage 72.36% 64.71% -7.66%
==========================================
Files 287 282 -5
Lines 43149 66073 +22924
==========================================
+ Hits 31223 42756 +11533
- Misses 11926 23317 +11391
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Description
This PR consists of two main changes:
Add test targets to build2.proj
Generate "Not Supported" assemblies from common MDS
Msc Changes
Issues
N/A
Testing
Running targets locally work as expected. Hopefully there are no major issues with the pipelines, since most of the changes don't affect existing pipelines.