Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
b0afd95
Stubbing out additional targets for build2.proj
benrr101 Feb 9, 2026
a7a9bf7
Fix issue with target OS and target frameworks in common MDS build
benrr101 Feb 10, 2026
4065b08
Adding targets to build2.proj for testing MDS, removing AKV provider …
benrr101 Feb 28, 2026
83cc907
Adding build target for MDS ref project
benrr101 Feb 28, 2026
154b150
Get common ref project building to artifacts folder, a la common mds …
benrr101 Feb 26, 2026
04ebcb7
Add stub for notsupported project
benrr101 Feb 28, 2026
86e75e3
Add GenAPI projects to the solution file under notsupported folder
benrr101 Mar 2, 2026
392723b
Move GenAPI output path to bin folder for project - they are not "art…
benrr101 Mar 2, 2026
1b406ce
Not supported assemblies are building via new project
benrr101 Mar 3, 2026
a214c38
Do not build not supported assembly and genapi projects as part of so…
benrr101 Mar 3, 2026
406d810
Ignore the notsupported GenAPI files
benrr101 Mar 3, 2026
82d73ae
Comments from copilot
benrr101 Mar 4, 2026
5c3e3c2
Remove Directory.Build.props and move target frameworks listing to th…
benrr101 Mar 4, 2026
7187e3e
Conditionally enable net462 on Azure test project
benrr101 Mar 4, 2026
a904283
Removing Directory.Build.props from test/tools
benrr101 Mar 4, 2026
3c45064
Add trim docs for intellisense to ref project (just inline it)
benrr101 Mar 5, 2026
f47ae65
Rework the package version arguments in build2.proj - this will make …
benrr101 Mar 5, 2026
1689a0a
Merge branch 'main' into dev/russellben/common/notsupported
benrr101 Mar 5, 2026
a50381e
Fix GenAPI for legacy build
benrr101 Mar 5, 2026
8706133
No clue whatsoever why this fixes functional tests on net462, but hey…
benrr101 Mar 6, 2026
2e332c6
Actionable PR comments
benrr101 Mar 5, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 7 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,9 @@ Generated\ Files/
TestResult.xml
nunit-*.xml

# TRX format test results
**/*.trx

# Build Results of an ATL Project
[Dd]ebugPS/
[Rr]eleasePS/
Expand Down Expand Up @@ -365,4 +368,7 @@ MigrationBackup/
**/config.json

# Generated Milestone PR metadata files
.milestone-prs/
.milestone-prs/

# MDS "Not Supported" GenAPI code
**/notsupported/*.cs
451 changes: 397 additions & 54 deletions build2.proj

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -1,62 +1,71 @@
<Project Sdk="Microsoft.NET.Sdk">

<!-- General Properties ============================================== -->
<PropertyGroup>
<TargetFrameworks>net462;net8.0;net9.0;net10.0</TargetFrameworks>
<AssemblyName>Microsoft.Data.SqlClient.Extensions.Azure.Test</AssemblyName>
<RootNamespace>Microsoft.Data.SqlClient.Extensions.Azure.Test</RootNamespace>

<ImplicitUsings>enable</ImplicitUsings>
<IsTestProject>true</IsTestProject>
<Nullable>enable</Nullable>
<IsPackable>false</IsPackable>
<IsTestProject>true</IsTestProject>
<AssemblyName>Microsoft.Data.SqlClient.Extensions.Azure.Test</AssemblyName>

<!--
Exclude Interactive tests by default since they require user interaction (e.g. browser
sign-in).

To run them explicitly:

dotnet test -filter "Category=Interactive"

Note that the "filter" argument actually requires two dashes, but that character sequence
isn't permitted within an XML comment, so we only show a single dash above.
-->
<!-- @TODO: Integrate this into build.proj so that filters can be composed at command line -->
<VSTestTestCaseFilter>Category!=Interactive</VSTestTestCaseFilter>
</PropertyGroup>

<ItemGroup>
<ProjectReference Include="../src/Azure.csproj" />
</ItemGroup>
<!-- Target Frameworks =============================================== -->
<PropertyGroup>
<TargetFrameworks>net8.0;net9.0;net10.0</TargetFrameworks>

<ItemGroup>
<PackageReference Include="Microsoft.NET.Test.Sdk" />
<PackageReference Include="xunit" />
<PackageReference Include="xunit.runner.visualstudio" />
<PackageReference Include="xunit.runner.console" />
<PackageReference Include="Microsoft.DotNet.XUnitExtensions" />
</ItemGroup>
<!--
MDS is not built for net462 unless it is built for Windows. Thus, we will not be able to
fulfill the MDS for net462 reference unless we are building on Windows.
-->
<TargetFrameworks Condition="'$(OS)' == 'Windows_NT'">$(TargetFrameworks);net462</TargetFrameworks>
</PropertyGroup>

<!-- Global Usings =================================================== -->
<ItemGroup>
<Using Include="Xunit" />
</ItemGroup>

<!-- Copy the xUnit config file to our artifacts. -->
<!-- Embedded resources and content files ============================ -->
<ItemGroup>
<Content Include="$(RepoRoot)/src/Microsoft.Data.SqlClient/tests/tools/Microsoft.Data.SqlClient.TestUtilities/xunit.runner.json">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
<TargetPath>xunit.runner.json</TargetPath>
</Content>
</ItemGroup>

<!--
Depend on the TestUtilities project because it copies the JSON config for
tests into the artifacts. We don't refer to any of its assemblies.
-->
<!-- References ====================================================== -->
<!-- Test target references -->
<ItemGroup>
<ProjectReference Include="$(RepoRoot)/src/Microsoft.Data.SqlClient/tests/tools/Microsoft.Data.SqlClient.TestUtilities/Microsoft.Data.SqlClient.TestUtilities.csproj" />
<ProjectReference Include="$(RepoRoot)/src/Microsoft.Data.SqlClient/src/Microsoft.Data.SqlClient.csproj"
Condition="'$(ReferenceType)' != 'Package'"/>
<PackageReference Include="Microsoft.Data.SqlClient"
Condition="'$(ReferenceType)' == 'Package'"/>

<ProjectReference Include="$(RepoRoot)src/Microsoft.Data.SqlClient.Extensions/Azure/src/Azure.csproj" />
<!-- @TODO: Should we have a package mode reference for azure? -->
</ItemGroup>

<!-- Conditional Project References -->
<ItemGroup Condition="'$(ReferenceType)' == 'Project'">
<ProjectReference Include="$(RepoRoot)/src/Microsoft.Data.SqlClient/src/Microsoft.Data.SqlClient.csproj" />
<!-- References for netfx -->
<ItemGroup Condition="'$(TargetFramework)' == 'net462'">
<PackageReference Include="Microsoft.DotNet.XUnitExtensions" />
<PackageReference Include="Microsoft.NET.Test.Sdk" />
<PackageReference Include="xunit" />
<PackageReference Include="xunit.runner.visualstudio" />
<PackageReference Include="xunit.runner.console" />

<!--
We explicitly depend on SNI for .NET Framework due to bugs in how its DLLs get published
Expand All @@ -65,12 +74,30 @@
This is probably an incompatibility between the build targets that the SNI NuGet package
injects into downstream projects, and how the MDS project configures its output directories.
-->
<PackageReference Condition="'$(TargetFramework)' == 'net462'" Include="Microsoft.Data.SqlClient.SNI" />
</ItemGroup>
<PackageReference Include="Microsoft.Data.SqlClient.SNI" />

<!-- Conditional Package References -->
<ItemGroup Condition="'$(ReferenceType)' == 'Package'">
<PackageReference Include="Microsoft.Data.SqlClient" />
<!--
We take a dependency on the TestUtilities project because it copies the JSON config
for tests into the build output.
-->
<ProjectReference Include="$(RepoRoot)src/Microsoft.Data.SqlClient/tests/tools/Microsoft.Data.SqlClient.TestUtilities/Microsoft.Data.SqlClient.TestUtilities.csproj"/>
</ItemGroup>

<!-- References for netcore -->
<ItemGroup Condition="'$(TargetFramework)' != 'net462'">
<PackageReference Include="Microsoft.DotNet.XUnitExtensions" />
<PackageReference Include="Microsoft.NET.Test.Sdk" />
<PackageReference Include="xunit" />
<PackageReference Include="xunit.runner.visualstudio" />
<PackageReference Include="xunit.runner.console" />

<!-- We explicitly depend on SNI.runtime for netcore for the same reason as in netfx -->
<PackageReference Include="Microsoft.Data.SqlClient.SNI.runtime" />

<!--
We take a dependency on the TestUtilities project because it copies the JSON config
for tests into the build output.
-->
<ProjectReference Include="$(RepoRoot)src/Microsoft.Data.SqlClient/tests/tools/Microsoft.Data.SqlClient.TestUtilities/Microsoft.Data.SqlClient.TestUtilities.csproj"/>
</ItemGroup>
</Project>
30 changes: 30 additions & 0 deletions src/Microsoft.Data.SqlClient.sln
Original file line number Diff line number Diff line change
Expand Up @@ -379,6 +379,14 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.Data.SqlClient",
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.Data.SqlClient", "Microsoft.Data.SqlClient\src\Microsoft.Data.SqlClient.csproj", "{AA77C107-9A78-4A99-98BB-21FF7A1E0B01}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "notsupported", "notsupported", "{351BE847-A0BF-450C-A5BC-8337AFA49EAA}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.Data.SqlClient", "Microsoft.Data.SqlClient\notsupported\Microsoft.Data.SqlClient.csproj", "{1DB299CE-95EA-4566-84DD-171768758291}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.DotNet.GenAPI", "..\tools\GenAPI\Microsoft.DotNet.GenAPI\Microsoft.DotNet.GenAPI.csproj", "{583E2B51-A90B-4F34-AD8B-4061504E855E}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.Cci.Extensions", "..\tools\GenAPI\Microsoft.Cci.Extensions\Microsoft.Cci.Extensions.csproj", "{2F900B8A-EA19-4274-9AE9-3E6A59856FCC}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Expand Down Expand Up @@ -791,6 +799,24 @@ Global
{AA77C107-9A78-4A99-98BB-21FF7A1E0B01}.Release|x64.Build.0 = Release|Any CPU
{AA77C107-9A78-4A99-98BB-21FF7A1E0B01}.Release|x86.ActiveCfg = Release|Any CPU
{AA77C107-9A78-4A99-98BB-21FF7A1E0B01}.Release|x86.Build.0 = Release|Any CPU
{1DB299CE-95EA-4566-84DD-171768758291}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{1DB299CE-95EA-4566-84DD-171768758291}.Debug|x64.ActiveCfg = Debug|Any CPU
{1DB299CE-95EA-4566-84DD-171768758291}.Debug|x86.ActiveCfg = Debug|Any CPU
{1DB299CE-95EA-4566-84DD-171768758291}.Release|Any CPU.ActiveCfg = Release|Any CPU
{1DB299CE-95EA-4566-84DD-171768758291}.Release|x64.ActiveCfg = Release|Any CPU
{1DB299CE-95EA-4566-84DD-171768758291}.Release|x86.ActiveCfg = Release|Any CPU
{583E2B51-A90B-4F34-AD8B-4061504E855E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{583E2B51-A90B-4F34-AD8B-4061504E855E}.Debug|x64.ActiveCfg = Debug|Any CPU
{583E2B51-A90B-4F34-AD8B-4061504E855E}.Debug|x86.ActiveCfg = Debug|Any CPU
{583E2B51-A90B-4F34-AD8B-4061504E855E}.Release|Any CPU.ActiveCfg = Release|Any CPU
{583E2B51-A90B-4F34-AD8B-4061504E855E}.Release|x64.ActiveCfg = Release|Any CPU
{583E2B51-A90B-4F34-AD8B-4061504E855E}.Release|x86.ActiveCfg = Release|Any CPU
{2F900B8A-EA19-4274-9AE9-3E6A59856FCC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{2F900B8A-EA19-4274-9AE9-3E6A59856FCC}.Debug|x64.ActiveCfg = Debug|Any CPU
{2F900B8A-EA19-4274-9AE9-3E6A59856FCC}.Debug|x86.ActiveCfg = Debug|Any CPU
{2F900B8A-EA19-4274-9AE9-3E6A59856FCC}.Release|Any CPU.ActiveCfg = Release|Any CPU
{2F900B8A-EA19-4274-9AE9-3E6A59856FCC}.Release|x64.ActiveCfg = Release|Any CPU
{2F900B8A-EA19-4274-9AE9-3E6A59856FCC}.Release|x86.ActiveCfg = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
Expand Down Expand Up @@ -866,6 +892,10 @@ Global
{020A7E7B-04C9-4326-985F-045B42CC2200} = {7289C27E-D7DF-2C71-84B4-151F3A162493}
{D433ED2D-5E47-4A4B-B94A-EC71482715C7} = {020A7E7B-04C9-4326-985F-045B42CC2200}
{AA77C107-9A78-4A99-98BB-21FF7A1E0B01} = {2B71F605-037E-5629-6E23-0FA3C297446D}
{351BE847-A0BF-450C-A5BC-8337AFA49EAA} = {7289C27E-D7DF-2C71-84B4-151F3A162493}
{1DB299CE-95EA-4566-84DD-171768758291} = {351BE847-A0BF-450C-A5BC-8337AFA49EAA}
{583E2B51-A90B-4F34-AD8B-4061504E855E} = {351BE847-A0BF-450C-A5BC-8337AFA49EAA}
{2F900B8A-EA19-4274-9AE9-3E6A59856FCC} = {351BE847-A0BF-450C-A5BC-8337AFA49EAA}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {01D48116-37A2-4D33-B9EC-94793C702431}
Expand Down
Loading
Loading