Skip to content

Conversation

@paulmedynski
Copy link
Contributor

@paulmedynski paulmedynski commented Dec 12, 2025

Description

  • Removed unused dependencies across all driver and test projects.
  • Updated some dependencies, avoiding transitive vulnerabilities.
  • Updated nuspec files to remove/update dependencies accordingly.

Details

Transitive-only packages with minor or patch version upgrades are not shown.

MDS - .NET Framework 4.6.2

Package Previous Dependency Type Previous Version Current Dependency Type Current Version
Azure.Core Direct 1.47.1 Direct 1.50.0
Azure.Identity Direct 1.14.2 Direct 1.17.0
Microsoft.Identity.Client Transitive 4.73.1 Direct 4.76.0
System.Buffers Direct 4.5.1 Direct 4.6.1
System.Data.Common None Direct 4.3.0
System.Diagnostics.DiagnosticSource Transitive 8.0.1 Direct 8.0.1
System.IdentityModel.Tokens.Jwt Transitive 7.7.1 Direct 7.7.1
System.Memory Transitive 4.5.5 Direct 4.6.3
System.Text.Json Direct 8.0.5 Direct 8.0.6
System.Text.RegularExpressions Direct 4.3.1 None

MDS - .NET Standard 2.0

Package Previous Dependency Type Previous Version Current Dependency Type Current Version
Azure.Core Direct 1.47.1 Direct 1.50.0
Azure.Identity Direct 1.14.2 Direct 1.17.0
Microsoft.Bcl.Cryptography Direct 8.0.0 None
Microsoft.Identity.Client Transitive 4.73.1 Direct 4.76.0
System.IdentityModel.Tokens.Jwt Transitive 7.7.1 Direct 7.7.1
System.Text.Json Direct 8.0.5 Direct 8.0.6

MDS - .NET 8.0

Package Previous Dependency Type Previous Version Current Dependency Type Current Version
Azure.Core Direct 1.47.1 Direct 1.50.0
Azure.Identity Direct 1.14.2 Direct 1.17.0
Microsoft.Bcl.Cryptography Direct 8.0.0 None
Microsoft.Identity.Client Transitive 4.73.1 Direct 4.76.0
System.Diagnostics.DiagnosticSource Transitive 6.0.1 Direct 6.0.1
System.IdentityModel.Tokens.Jwt Transitive 7.7.1 Direct 7.7.1
System.Memory Transitive 4.5.5 None
System.Text.Json Direct 8.0.5 None

MDS - .NET 9.0

Package Previous Dependency Type Previous Version Current Dependency Type Current Version
Azure.Core Direct 1.47.1 Direct 1.50.0
Azure.Identity Direct 1.14.2 Direct 1.17.0
Microsoft.Bcl.Cryptography Direct 8.0.0 None
Microsoft.Extensions.Caching.Memory Direct 9.0.5 Direct 9.0.11
Microsoft.Identity.Client Transitive 4.73.1 Direct 4.76.0
System.Configuration.ConfigurationManager Direct 9.0.5 Direct 9.0.11
System.Diagnostics.DiagnosticSource Transitive 6.0.1 Direct 6.0.1
System.IdentityModel.Tokens.Jwt Transitive 7.7.1 Direct 7.7.1
System.Memory Transitive 4.5.5 None
System.Security.Cryptography.Pkcs Direct 9.0.5 Direct 9.0.11
System.Text.Json Direct 9.0.5 None

AKV - .NET Framework 4.6.2

Package Target Framework Previous Dependency Type Previous Version Current Dependency Type Current Version
Azure.Core Direct 1.47.1 Direct 1.50.0
Azure.Security.KeyVault.Keys Direct 4.7.0 Direct 4.8.0
Microsoft.Bcl.Cryptography Transitive 8.0.0 None
Microsoft.Identity.Client Transitive 4.73.1 Direct 4.76.0
System.Security.Cryptography.Pkcs None Transitive 8.0.1
System.Text.Encodings.Web Direct 8.0.0 Transitive 8.0.0
System.Text.RegularExpressions None Transitive 4.3.1

AKV - .NET 8.0

Package Target Framework Previous Dependency Type Previous Version Current Dependency Type Current Version
Azure.Core Direct 1.47.1 Direct 1.50.0
Azure.Security.KeyVault.Keys Direct 4.7.0 Direct 4.8.0
Microsoft.Bcl.Cryptography Transitive 8.0.0 None
Microsoft.Identity.Client Transitive 4.73.1 Direct 4.76.0
System.Security.Cryptography.Pkcs None Transitive 8.0.1
System.Text.Encodings.Web Direct 8.0.0 None
System.Text.RegularExpressions None Transitive 4.3.1

AKV - .NET 9.0

Package Target Framework Previous Dependency Type Previous Version Current Dependency Type Current Version
Azure.Core Direct 1.47.1 Direct 1.50.0
Azure.Security.KeyVault.Keys Direct 4.7.0 Direct 4.8.0
Microsoft.Bcl.Cryptography Transitive 9.0.5 None
Microsoft.Extensions.Caching.Memory Direct 9.0.5 Direct 9.0.11
Microsoft.Identity.Client Transitive 4.73.1 Direct 4.76.0
System.Security.Cryptography.Pkcs None Transitive 9.0.11
System.Text.Encodings.Web Direct 8.0.0 None
System.Text.RegularExpressions None Transitive 4.3.1

Issues

Resolves #3807.

Testing

  • CI will validate the changes.
  • Manually inspected the full package dependency tree for the driver projects to ensure no major version increments.
  • Manuall inspected CI runs to observe that tests are being executed for the expected target frameworks and architectures.

- Updated some dependencies, avoiding transitive vulnerabilities.
- Updated nuspec files to remove/update dependencies accordingly.
Copilot AI review requested due to automatic review settings December 12, 2025 14:06
Copy link
Contributor

Copilot AI left a comment

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 performs a dependency cleanup across the Microsoft.Data.SqlClient driver and related test projects. The changes update several dependencies to address transitive vulnerabilities, remove unused dependencies (Microsoft.Bcl.Cryptography, System.Memory, System.Text.Encodings.Web), and update nuspec files to reflect the new dependency structure. The code changes suppress warnings for deliberately used obsolete APIs in Azure Active Directory authentication methods.

  • Removed unused dependencies: Microsoft.Bcl.Cryptography, System.Memory, and System.Text.Encodings.Web across driver and test projects
  • Updated Azure and identity-related packages to newer versions (Azure.Core 1.50.0, Azure.Identity 1.17.0, Azure.Security.KeyVault.Keys 4.8.0)
  • Updated System.Buffers from 4.5.1 to 4.6.1 and System.Text.Json from 8.0.5 to 8.0.6 for net462
  • Added pragma warning suppressions for obsolete APIs in authentication code

Reviewed changes

Copilot reviewed 17 out of 17 changed files in this pull request and generated 8 comments.

Show a summary per file
File Description
tools/specs/add-ons/Microsoft.Data.SqlClient.AlwaysEncrypted.AzureKeyVaultProvider.nuspec Updated Azure package dependencies and Microsoft.Extensions.Caching.Memory for net9.0 to 9.0.11
tools/specs/Microsoft.Data.SqlClient.nuspec Updated multiple dependencies across all target frameworks; removed Microsoft.Bcl.Cryptography, System.Text.Encodings.Web, and System.Text.Json from various targets
src/Microsoft.Data.SqlClient/tests/tools/Microsoft.Data.SqlClient.TestUtilities/Microsoft.Data.SqlClient.TestUtilities.csproj Removed unused Microsoft.Bcl.Cryptography dependency
src/Microsoft.Data.SqlClient/tests/tools/Microsoft.Data.SqlClient.ExtUtilities/Microsoft.Data.SqlClient.ExtUtilities.csproj Changed approach from pinning System.Formats.Asn1 to referencing MDS 5.1.8 to avoid transitive vulnerability
src/Microsoft.Data.SqlClient/tests/ManualTests/SQL/ConnectivityTests/AADConnectionTest.cs Added pragma warning suppressions for obsolete AcquireTokenByUsernamePassword API
src/Microsoft.Data.SqlClient/tests/ManualTests/Microsoft.Data.SqlClient.ManualTesting.Tests.csproj Removed unused Microsoft.Bcl.Cryptography dependency
src/Microsoft.Data.SqlClient/tests/ManualTests/DataCommon/DataTestUtility.cs Added pragma warning suppressions for obsolete AcquireTokenByUsernamePassword API
src/Microsoft.Data.SqlClient/tests/FunctionalTests/Microsoft.Data.SqlClient.FunctionalTests.csproj Removed unused Microsoft.Bcl.Cryptography dependency
src/Microsoft.Data.SqlClient/tests/Directory.Packages.props Changed approach to reference MDS 5.1.8 instead of pinning System.Formats.Asn1
src/Microsoft.Data.SqlClient/src/Microsoft/Data/SqlClient/ActiveDirectoryAuthenticationProvider.cs Added pragma warning suppressions for obsolete APIs (AcquireTokenByUsernamePassword and SharedTokenCacheUsername)
src/Microsoft.Data.SqlClient/src/Microsoft.Data.SqlClient.csproj Removed unused Microsoft.Bcl.Cryptography and System.Memory dependencies
src/Microsoft.Data.SqlClient/netfx/src/Microsoft.Data.SqlClient.csproj Removed unused Microsoft.Bcl.Cryptography and System.Text.Encodings.Web dependencies
src/Microsoft.Data.SqlClient/netfx/ref/Microsoft.Data.SqlClient.csproj Removed unused Microsoft.Bcl.Cryptography and System.Text.Encodings.Web dependencies
src/Microsoft.Data.SqlClient/netcore/src/Microsoft.Data.SqlClient.csproj Removed unused Microsoft.Bcl.Cryptography dependency and System.Text.Json reference (provided by framework)
src/Microsoft.Data.SqlClient/netcore/ref/Microsoft.Data.SqlClient.csproj Removed unused Microsoft.Bcl.Cryptography dependency and System.Text.Json reference (provided by framework)
src/Microsoft.Data.SqlClient/add-ons/AzureKeyVaultProvider/Microsoft.Data.SqlClient.AlwaysEncrypted.AzureKeyVaultProvider.csproj Removed unused System.Text.Encodings.Web dependency
src/Directory.Packages.props Updated package versions and reorganized framework-specific dependencies; removed System.Memory and some test dependencies; updated Microsoft.NET.Test.Sdk, xunit, and other test packages

Copy link
Contributor Author

@paulmedynski paulmedynski left a comment

Choose a reason for hiding this comment

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

Commentary for reviewers.

<dependency id="Azure.Identity" version="1.17.0" />
<dependency id="Microsoft.Data.SqlClient.SNI.runtime" version="6.0.2" exclude="Compile" />
<dependency id="Microsoft.Extensions.Caching.Memory" version="9.0.4" exclude="Compile" />
<dependency id="Microsoft.Extensions.Caching.Memory" version="8.0.1" exclude="Compile" />
Copy link
Contributor Author

Choose a reason for hiding this comment

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

These 9.0.4 versions were incorrect. The .NET Standard 2.0 target shares the .NET 8.0 package versions.

…to avoid strong-name errors.

- Added System.Text.Json back for .NET Standard 2.0.
<PackageReference Include="Microsoft.IdentityModel.Protocols.OpenIdConnect" />
<PackageReference Include="Microsoft.SqlServer.Server" />
<PackageReference Include="System.Buffers" />
<PackageReference Include="System.Data.Common" />
Copy link
Contributor Author

Choose a reason for hiding this comment

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

Not used directly, likely an old transient vulnerability fix.

Copy link
Member

@cheenamalhotra cheenamalhotra Dec 16, 2025

Choose a reason for hiding this comment

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

It was added with PR: https://github.com/dotnet/SqlClient/pull/2967/files#diff-d6cdac7c9f92790e995dce24e966c09119385fdc076757b8f70b08bd14dde23fR47 since in .NET Framework v4.6.2 the type referenced by us from this namespace (IDbColumnSchemaGenerator) is not available directly in BCL and downloading this package with NuGet is required for applications to work. I would not recommend removing this dependency due to that reason.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Is this a case where testing using .NET Framework Runtime 4.6.2 would have produced an error? But testing with .NET Framework Runtime 4.8.1 (which is what we do) doesn't?

…T Framework project.

- Inhibiting dependency on Microsoft.SqlServer.Server in UDT test projects for .NET Framework.
- Fixed duplicate MDS package version in test utilities.
Copilot AI review requested due to automatic review settings December 12, 2025 16:46
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 22 out of 22 changed files in this pull request and generated 1 comment.

@codecov
Copy link

codecov bot commented Dec 12, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 64.64%. Comparing base (8291391) to head (1f7a52f).
⚠️ Report is 1 commits behind head on release/6.1.

Additional details and impacted files
@@               Coverage Diff               @@
##           release/6.1    #3843      +/-   ##
===============================================
- Coverage        66.21%   64.64%   -1.57%     
===============================================
  Files              279      279              
  Lines            53293    53302       +9     
===============================================
- Hits             35286    34458     -828     
- Misses           18007    18844     +837     
Flag Coverage Δ
addons 90.82% <ø> (ø)
netcore 67.63% <100.00%> (-5.12%) ⬇️
netfx 69.08% <100.00%> (+3.21%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@paulmedynski paulmedynski marked this pull request as ready for review December 12, 2025 19:26
@paulmedynski paulmedynski requested a review from a team as a code owner December 12, 2025 19:26
@paulmedynski paulmedynski linked an issue Dec 12, 2025 that may be closed by this pull request
<PackageReference Include="Microsoft.IdentityModel.Protocols.OpenIdConnect" />
<PackageReference Include="System.Buffers" />
<PackageReference Include="System.Data.Common" />
<PackageReference Include="System.Security.Cryptography.Pkcs" />
Copy link
Member

@cheenamalhotra cheenamalhotra Dec 16, 2025

Choose a reason for hiding this comment

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

This package is referenced in


I would recommend we keep this explicit reference included.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

We only use the SignedCms class from this namespace, and Malcolm had pointed out that it is included with all of the .NET Framework runtimes that we target:

https://learn.microsoft.com/en-us/dotnet/api/system.security.cryptography.pkcs.signedcms?view=netframework-4.8.1

I'm not sure why we would need to explicitly depend on it for .NET Framework.

Copy link
Member

@cheenamalhotra cheenamalhotra Dec 17, 2025

Choose a reason for hiding this comment

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

  1. Whether we use only 1 type or more shouldn't discount the importance of package reference IMO.
  2. The documentation for 'SingleCms' says the library and type is 'Package-provided' so isn't it available with the package only for those runtimes?

We need to consider runtimes that our customers would target, and not those that we target to build the driver. Otherwise our DLLs will reference type from runtime (expecting them to be available in client env), whereas in future .NET Framework runtimes if its not available and is package provided, it would throw exception failing to resolve the type.

System.Data.Common, e.g. is a MUST have reference, cannot be skipped.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I've added the System.Security.Cryptography.Pkcs package back for all MDS targets. System.Data.Common has been added for .NET Framework 4.6.2.

Copy link
Contributor

Choose a reason for hiding this comment

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

I don't think I fully understand this argument. Couldn't any type be moved out to a standalone package at any time? Why would we treat this type differently from any other that can be referenced via package?

The SignedCms type is available via runtime or package for .NET Framework. It's only package exclusive for .NET Standard and .NET. Presumably they added package support for .NET Framework to help people who were multitargeting. But in general, doesn't it complicate our dependency graph to include packages we don't need? Especially if we're not pruning any dependencies. I'd have less of an issue if we did enable pruning.

Copy link
Contributor

Choose a reason for hiding this comment

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

After some investigation, I've learned that the .NET Framework DLLs for Pkcs are metadata only and type-forward to the GAC. We take a negligible package size hit to get the metadata. With that in mind, it does feel simpler to unconditionally include the package reference.

For this reason and the reasons you mentioned above, @cheenamalhotra, I think our standard should be to always unconditionally include package references for namespaces that are available via package for .NET Framework.

<PackageReference Include="Microsoft.IdentityModel.Protocols.OpenIdConnect" />
<PackageReference Include="System.Buffers" />
<PackageReference Include="System.Security.Cryptography.Pkcs" />
<PackageReference Include="System.Text.Encodings.Web" />
Copy link
Member

Choose a reason for hiding this comment

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

Removing System.Text.Encodings.Web seems fine, however we should be including "System.IdentityModel.Tokens.Jwt" NuGet package as we have a direct usage of it here:

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I have added System.IdentityModel.Tokens.Jwt for all MDS targets.

…ier.

- Minor tweaks to build tasks to work on Linux with the dotnet CLI.
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 26 out of 26 changed files in this pull request and generated 1 comment.

<dependency id="System.Security.Cryptography.Pkcs" version="9.0.4" />
<dependency id="System.Text.Json" version="9.0.5" />
<dependency id="System.Configuration.ConfigurationManager" version="8.0.1" exclude="Compile" />
<dependency id="System.Diagnostics.DiagnosticSource" version="6.0.1" />
Copy link

Copilot AI Dec 17, 2025

Choose a reason for hiding this comment

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

Inconsistent System.Diagnostics.DiagnosticSource version for netstandard2.0. In src/Directory.Packages.props line 40, this package is specified as version 8.0.1 for netstandard2.0, but here in the nuspec it's specified as 6.0.1. These versions should match to ensure the published package uses the same dependencies as the build.

Suggested change
<dependency id="System.Diagnostics.DiagnosticSource" version="6.0.1" />
<dependency id="System.Diagnostics.DiagnosticSource" version="8.0.1" />

Copilot uses AI. Check for mistakes.
Copy link
Contributor Author

Choose a reason for hiding this comment

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

@paulmedynski - The bot is correct.

inputs:
solution: build.proj
msbuildArguments: ' -t:BuildTestsNetFx -p:ReferenceType=${{parameters.referenceType }} -p:TestMicrosoftDataSqlClientVersion=${{parameters.NugetPackageVersion }} -p:TargetNetFxVersion=${{parameters.TargetNetFxVersion }} -p:Configuration=${{parameters.configuration }} -p:Platform=${{parameters.platform }}'
msbuildArguments: ' -t:BuildTestsNetFx -p:ReferenceType=${{parameters.referenceType }} -p:TestMicrosoftDataSqlClientVersion=${{parameters.NugetPackageVersion }} -p:TF=${{parameters.TargetNetFxVersion }} -p:Configuration=${{parameters.configuration }} -p:Platform=${{parameters.platform }}'
Copy link
Contributor Author

Choose a reason for hiding this comment

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

$(TF) is the correct way to specify the target framework for add-ons and tests when using build.proj.

<Import Project="..\..\Directory.Packages.props" />

<!-- Test Project Dependencies for all targets. -->
<!-- Test Common Dependencies -->
Copy link
Contributor Author

Choose a reason for hiding this comment

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

I moved all of the test-only dependencies here from the main Directory.Packages.props file.


<!-- Test Project Dependencies for NetFx only. -->
<ItemGroup Condition="$(TargetFramework.StartsWith('net4'))">
<!-- Test .NET Framework Dependencies -->
Copy link
Contributor Author

Choose a reason for hiding this comment

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

I opted for clarity rather than efficiency here. The combinations of target framework conditions were too hard to reason over, so I made sections for each target framework. We now have some duplicate entries rather than an N-dimensional matrix of conditions.

<PackageVersion Include="System.Security.Cryptography.Pkcs" Version="8.0.1" />
<PackageVersion Include="System.Text.Json" Version="8.0.5" />
</ItemGroup>
<!-- Driver .NET Framework Dependencies -->
Copy link
Contributor Author

Choose a reason for hiding this comment

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

Same changes here as the test Directory.Packages.props file above. We now have some duplicate entries, but each target framework has a clear section of dependencies that closely matches the .nuspec files and our release notes.

<dependency id="Microsoft.IdentityModel.Protocols.OpenIdConnect" version="7.7.1" />
<dependency id="System.Buffers" version="4.5.1" />
<dependency id="System.Buffers" version="4.6.1" />
<dependency id="System.Data.Common" version="4.3.0" />
Copy link
Contributor Author

Choose a reason for hiding this comment

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

Interestingly, we were advertising dependence on System.Data.Common, but we weren't referencing it in the .NET Framework project. Now that we are referencing it, I had to add an explicit dependency on System.Text.RegularExpressions to avoid a transitive vulnerability (that downstream apps would likely have had to do previously).

<dependency id="System.Security.Cryptography.Pkcs" version="9.0.4" />
<dependency id="System.Text.Json" version="9.0.5" />
<dependency id="System.Configuration.ConfigurationManager" version="8.0.1" exclude="Compile" />
<dependency id="System.Diagnostics.DiagnosticSource" version="6.0.1" />
Copy link
Contributor Author

Choose a reason for hiding this comment

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

@paulmedynski - The bot is correct.

<PackageVersion Include="Microsoft.IdentityModel.Protocols.OpenIdConnect" Version="7.7.1" />
<PackageVersion Include="Microsoft.SqlServer.Server" Version="1.0.0" />
<PackageVersion Include="System.Configuration.ConfigurationManager" Version="8.0.1" />
<PackageVersion Include="System.Diagnostics.DiagnosticSource" Version="6.0.1" />
Copy link
Contributor Author

Choose a reason for hiding this comment

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

We previously weren't explicitly depending on System.Diagnostics.DiagnosticSource even though we use it directly. .NET Framework and .NET Standard 2.0 were pulling in v8.0.1, and .NET 8 and 9 were pulling v6.0.1. Hence the explicit difference here.

However This is now breaking dotnet CLI project-based restores for the add-on and test projects, since they employ a bunch of properties to choose target frameworks:

C:\Users\paulmedynski\dev\SqlClient\dev\paul\release\6.1\dependencies\src\Microsoft.Data.SqlClient\tests\ManualTests\Microsoft.Data.SqlClient.ManualTesting.Tests.csproj : error NU1109:
      Detected package downgrade: System.Diagnostics.DiagnosticSource from 8.0.1 to centrally defined 6.0.1. Update the centrally managed packag
      e version to a higher version.
       ManualTests -> Microsoft.Data.SqlClient -> System.Diagnostics.DiagnosticSource (>= 8.0.1)
       ManualTests -> System.Diagnostics.DiagnosticSource (>= 6.0.1)

The above shows the failure. The restore of the MDS project is incorrectly choosing v8.0.1 when it tries to restore the ManualTests project for .NET 8 or 9. It should be choosing v6.0.1, but the <ProjectReference> gets confused and is assuming a different target framework for MDS.

Builds via build.proj are fine since we always set a bunch of properties that force either .NET Framework or .NET - never both.

I'm not sure what we want to do about this. If I upgrade to v8.0.1 for all targets, the problem goes away. I tried to modify the add-ons and test projects to fix things, but nothing was working for me.

<GenAPIArgs Condition="'$(GeneratePlatformNotSupportedAssembly)' == 'true' OR '$(GeneratePlatformNotSupportedAssemblyMessage)' != ''">$(GenAPIArgs) -t:"$(GeneratePlatformNotSupportedAssemblyMessage)"</GenAPIArgs>
<GenAPIArgs Condition="'$(GeneratePlatformNotSupportedAssemblyWithGlobalPrefix)' == 'true'">$(GenAPIArgs) -global</GenAPIArgs>
<GenAPIPath Condition="'$(MSBuildRuntimeType)' == 'core'"> "$(DotNetCmd) $(ToolsArtifactsDir)$(TargetFramework)\Microsoft.DotNet.GenAPI.dll"</GenAPIPath>
<GenAPIPath Condition="'$(MSBuildRuntimeType)' == 'core'"> $(DotnetPath)dotnet "$(ToolsArtifactsDir)net8.0\Microsoft.DotNet.GenAPI.dll"</GenAPIPath>
Copy link
Contributor Author

Choose a reason for hiding this comment

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

Fixes (here and build.proj) to make dotnet CLI builds work.

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.

[6.1] Remove unused dependencies

4 participants