Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
a54dc67
- Changes for .net10 support
priyankatiwari08 Oct 13, 2025
f2411bf
Remove includePreviewVersions for .NET 10.x SDK
priyankatiwari08 Nov 28, 2025
0430b05
Remove includePreviewVersions for .NET 10.x SDK
priyankatiwari08 Nov 28, 2025
0e02281
Change .NET 9.x task from sdk to runtime
priyankatiwari08 Dec 1, 2025
46f2712
Update ci-project-build-step.yml
priyankatiwari08 Dec 1, 2025
e0e9539
Update pre-build-step.yml
priyankatiwari08 Dec 1, 2025
2ee557b
Update compound-build-akv-step.yml
priyankatiwari08 Dec 1, 2025
9b8e57d
re-doing some comments related fix.
priyankatiwari08 Dec 1, 2025
4f45b27
Format Directory.Packages.props for readability
priyankatiwari08 Dec 2, 2025
7259730
adding comments for packages which are included in .NET 10 BCL
priyankatiwari08 Dec 2, 2025
3922eed
Merge branch 'dev/prtiwar/net10support' of https://github.com/dotnet/…
priyankatiwari08 Dec 2, 2025
345e6ac
Change default target framework from net10.0 to net9.0
priyankatiwari08 Dec 2, 2025
04281b3
Update target frameworks in CI pipeline
priyankatiwari08 Dec 2, 2025
7a7d947
Remove net10.0 from target frameworks
priyankatiwari08 Dec 2, 2025
3b2cf94
Remove net10.0 from target frameworks
priyankatiwari08 Dec 2, 2025
90cbdc7
changes per PR comment
priyankatiwari08 Dec 2, 2025
bbb7612
Merge branch 'dev/prtiwar/net10support' of https://github.com/dotnet/…
priyankatiwari08 Dec 2, 2025
7bb6e09
Downgrade C# language version from 14 to 13
priyankatiwari08 Dec 2, 2025
148e9f0
- Updated LangVersion to 14 and fixed one place using the new 'field'…
paulmedynski Dec 2, 2025
29049f1
- Added .NET 10 as a target framework/runtime to build and run tests.
paulmedynski Dec 2, 2025
2b6e260
- Fixed target frameworks for Unix parameters.
paulmedynski Dec 2, 2025
38332f3
- Fixed target frameworks for Unix parameters.
paulmedynski Dec 2, 2025
31ba79c
- Removed .NET 10 from PR pipeline test runs; it remains for CI pipel…
paulmedynski Dec 3, 2025
0575bf2
- Removed unnecessary System.Text.Web.Encodings package from AKV.
paulmedynski Dec 3, 2025
dec7e69
- Added back a few packages specifically for .NET Framework and Stand…
paulmedynski Dec 3, 2025
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
22 changes: 9 additions & 13 deletions Directory.Packages.props
Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,11 @@
<PackageVersion Include="Microsoft.Identity.Client" Version="4.78.0" />
</ItemGroup>
<!-- Published - Target Framework Specific Dependencies -->
<ItemGroup Condition="'$(TargetFramework)' == 'net9.0'">
<ItemGroup Condition="$([MSBuild]::IsTargetFrameworkCompatible('$(TargetFramework)', 'net9.0'))">
<!-- MDS and AKV -->
<PackageVersion Include="Microsoft.Extensions.Caching.Memory" Version="9.0.9" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' != 'net9.0'">
<ItemGroup Condition="!$([MSBuild]::IsTargetFrameworkCompatible('$(TargetFramework)', 'net9.0'))">
<!-- MDS and AKV -->
<PackageVersion Include="Microsoft.Extensions.Caching.Memory" Version="8.0.1" />
</ItemGroup>
Expand All @@ -31,7 +31,6 @@
<PackageVersion Include="Microsoft.SqlServer.SqlManagementObjects" Version="172.76.0" />
<PackageVersion Include="Microsoft.SqlServer.Types" Version="160.1000.6" />
<PackageVersion Include="Microsoft.VisualStudio.Azure.Containers.Tools.Targets" Version="1.19.5" />
<PackageVersion Include="Microsoft.Win32.Registry" Version="5.0.0" />
<PackageVersion Include="Newtonsoft.Json" Version="13.0.3" />
<PackageVersion Include="System.Data.Odbc" Version="9.0.9" />
<PackageVersion Include="System.Security.Principal.Windows" Version="5.0.0" />
Expand All @@ -42,11 +41,11 @@
<PackageVersion Include="xunit.runner.console" Version="2.9.3" />
</ItemGroup>
<!-- Internal - Target Framework Specific Dependencies -->
<ItemGroup Condition="'$(TargetFramework)' == 'net9.0'">
<ItemGroup Condition="$([MSBuild]::IsTargetFrameworkCompatible('$(TargetFramework)', 'net9.0'))">
<!-- MDS and AKV Tests -->
<PackageVersion Include="Microsoft.Extensions.Hosting" Version="9.0.9" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' != 'net9.0'">
<ItemGroup Condition="!$([MSBuild]::IsTargetFrameworkCompatible('$(TargetFramework)', 'net9.0'))">
<!-- MDS and AKV Tests -->
<!--
We can't use a newer major version of this package because it pulls in
Expand All @@ -62,20 +61,17 @@
<PackageVersion Include="Azure.Identity" Version="1.16.0" />
<PackageVersion Include="Microsoft.IdentityModel.JsonWebTokens" Version="8.14.0" />
<PackageVersion Include="Microsoft.IdentityModel.Protocols.OpenIdConnect" Version="8.14.0" />
<PackageVersion Include="System.Runtime.InteropServices.RuntimeInformation" Version="4.3.0" />
</ItemGroup>
<!-- Common Target Framework Specific Dependencies -->
<ItemGroup Condition="'$(TargetFramework)' == 'net9.0'">
<ItemGroup Condition="$([MSBuild]::IsTargetFrameworkCompatible('$(TargetFramework)', 'net9.0'))">
<PackageVersion Include="Microsoft.Bcl.Cryptography" Version="9.0.9" />
<PackageVersion Include="System.Configuration.ConfigurationManager" Version="9.0.9" />
<PackageVersion Include="System.Security.Cryptography.Pkcs" Version="9.0.9" />
<PackageVersion Include="System.Text.Json" Version="9.0.9" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' != 'net9.0'">
<ItemGroup Condition="!$([MSBuild]::IsTargetFrameworkCompatible('$(TargetFramework)', 'net9.0'))">
<PackageVersion Include="Microsoft.Bcl.Cryptography" Version="8.0.0" />
<PackageVersion Include="System.Configuration.ConfigurationManager" Version="8.0.1" />
<PackageVersion Include="System.Security.Cryptography.Pkcs" Version="8.0.1" />
<PackageVersion Include="System.Text.Json" Version="8.0.6" />
</ItemGroup>
<!-- .NET Dependencies -->
<ItemGroup>
Expand All @@ -86,10 +82,10 @@
<ItemGroup>
<PackageVersion Include="Microsoft.Data.SqlClient.SNI" Version="6.0.2" />
<PackageVersion Include="System.Buffers" Version="4.6.1" />
<PackageVersion Include="System.Data.Common" Version="4.3.0" />
<PackageVersion Include="System.Diagnostics.DiagnosticSource" Version="8.0.1" />
<PackageVersion Include="System.Memory" Version="4.6.3" />
<PackageVersion Include="System.Text.Encodings.Web" Version="8.0.0" />
<PackageVersion Include="System.Runtime.InteropServices.RuntimeInformation" Version="4.3.0" />
<PackageVersion Include="System.Text.Json" Version="8.0.6" />
<PackageVersion Include="System.ValueTuple" Version="4.6.1" />
<PackageVersion Include="System.Threading.Channels" Version="8.0.0" />
</ItemGroup>
Expand All @@ -101,4 +97,4 @@
<!-- =================================================================== -->
<!-- MSS Dependencies -->
<!-- None -->
</Project>
</Project>
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,11 @@ jobs:
- template: ../steps/ensure-dotnet-version.yml@self
parameters:
packageType: sdk
version: '10.0'

- template: ../steps/ensure-dotnet-version.yml@self
parameters:
packageType: runtime
version: '9.0'

- pwsh: |
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,9 +32,15 @@ steps:
retryCount: 5

- task: UseDotNet@2
displayName: 'Use .NET 9.x sdk'
displayName: 'Use .NET 10.x sdk'
inputs:
packageType: sdk
version: '10.x'

- task: UseDotNet@2
displayName: 'Use .NET 9.x runtime'
inputs:
packageType: runtime
version: '9.x'

- task: UseDotNet@2
Expand Down
6 changes: 6 additions & 0 deletions eng/pipelines/common/templates/steps/ci-prebuild-step.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,12 @@ steps:
parameters:
packageType: sdk
usePreview: false
version: 10.0

- template: ensure-dotnet-version.yml
parameters:
packageType: runtime
usePreview: false
version: 9.0

- template: ensure-dotnet-version.yml
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,11 @@ steps:
- template: ./ensure-dotnet-version.yml@self
parameters:
packageType: 'sdk'
version: '10.0'

- template: ./ensure-dotnet-version.yml@self
parameters:
packageType: 'runtime'
version: '9.0'

- template: ./ensure-dotnet-version.yml@self
Expand Down
6 changes: 6 additions & 0 deletions eng/pipelines/common/templates/steps/pre-build-step.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,12 @@ steps:
- template: ./ensure-dotnet-version.yml@self
parameters:
packageType: 'sdk'
version: '10.0'
usePreview: false

- template: ./ensure-dotnet-version.yml@self
parameters:
packageType: 'runtime'
version: '9.0'

- template: ./ensure-dotnet-version.yml@self
Expand Down
38 changes: 24 additions & 14 deletions eng/pipelines/dotnet-sqlclient-ci-core.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,20 +9,28 @@ parameters:
type: boolean
default: false

# The target frameworks to build and run tests for on Windows.
#
# These are _not_ the target frameworks to build the driver packages for.
#
- name: targetFrameworks
displayName: 'Target Frameworks on Windows'
type: object
default: [net462, net8.0, net9.0]

- name: targetFrameworksLinux
displayName: 'Target Frameworks on Non-Windows'
default: [net462, net8.0, net9.0, net10.0]

# The target frameworks to build and run tests for on Unix.
#
# These are _not_ the target frameworks to build the driver packages for.
#
- name: targetFrameworksUnix
displayName: 'Target Frameworks on Unix'
type: object
default: [net8.0, net9.0]
default: [net8.0, net9.0, net10.0]

- name: netcoreVersionTestUtils
displayName: 'Netcore Version for Test Utilities'
type: object
default: net9.0
default: net10.0

- name: buildPlatforms
displayName: 'Build Platforms on Windows'
Expand Down Expand Up @@ -53,10 +61,12 @@ parameters:
type: string
default: https://sqlclientdrivers.pkgs.visualstudio.com/ADO.Net/_packaging/SNIValidation/nuget/v3/index.json

# Frameworks to expect code coverage information for, and to compile into
# reports.
- name: codeCovTargetFrameworks
displayName: 'Code Coverage Target Frameworks'
type: object
default: [net462, net8.0, net9.0]
default: [net462, net8.0, net9.0, net10.0]

- name: buildType
displayName: 'Build Type'
Expand Down Expand Up @@ -310,7 +320,7 @@ stages:
windows_sql_22_named_instance:
pool: ${{parameters.defaultPoolName }}
images:
Win22_Sql22_named_instance: ADO-MMS22-SQL22-WITH-NAMED-INSTANCE
Win22_Sql22_Named_Instance: ADO-MMS22-SQL22-WITH-NAMED-INSTANCE
TargetFrameworks: ${{parameters.targetFrameworks }}
netcoreVersionTestUtils: ${{parameters.netcoreVersionTestUtils }}
buildPlatforms: ${{parameters.buildPlatforms }}
Expand All @@ -334,7 +344,7 @@ stages:
pool: ${{parameters.defaultPoolName }}
images:
Win22_Azure_Sql: ADO-MMS22-SQL19
win11_Azure_Sql: ADO-CI-Win11
Win11_Azure_Sql: ADO-CI-Win11
TargetFrameworks: ${{parameters.targetFrameworks }}
netcoreVersionTestUtils: ${{parameters.netcoreVersionTestUtils }}
buildPlatforms: ${{parameters.buildPlatforms }}
Expand Down Expand Up @@ -366,7 +376,7 @@ stages:
windows_azure_arm64_sql:
pool: ADO-CI-PUBLIC-ARM64-1ES-EUS-POOL
images:
Win22_Azure_ARM64_Sql: ADO-WIN11-ARM64
Win11_ARM64_Azure_Sql: ADO-WIN11-ARM64
TargetFrameworks: ${{parameters.targetFrameworks }}
netcoreVersionTestUtils: ${{parameters.netcoreVersionTestUtils }}
buildPlatforms: ${{parameters.buildPlatforms }}
Expand Down Expand Up @@ -431,7 +441,7 @@ stages:
images:
Ubuntu20_Sql22: ADO-UB20-SQL22 # drop testing against UB20 image post April 2025
Ubuntu22_Sql22: ADO-UB22-SQL22
TargetFrameworks: ${{parameters.targetFrameworksLinux }}
TargetFrameworks: ${{parameters.targetFrameworksUnix }}
netcoreVersionTestUtils: ${{parameters.netcoreVersionTestUtils }}
buildPlatforms: [AnyCPU]
testSets: ${{parameters.testSets }}
Expand All @@ -456,7 +466,7 @@ stages:
pool: ${{parameters.defaultPoolName }}
images:
Ubuntu22_Azure_Sql: ADO-UB22-SQL22
TargetFrameworks: ${{parameters.targetFrameworksLinux }}
TargetFrameworks: ${{parameters.targetFrameworksUnix }}
netcoreVersionTestUtils: ${{parameters.netcoreVersionTestUtils }}
buildPlatforms: [AnyCPU]
testSets: ${{parameters.testSets }}
Expand Down Expand Up @@ -488,7 +498,7 @@ stages:
pool: ADO-CI-AE-1ES-Pool
images:
Ubuntu20_Enclave_Sql19: ADO-UB22-Sql22
TargetFrameworks: ${{parameters.targetFrameworksLinux }}
TargetFrameworks: ${{parameters.targetFrameworksUnix }}
netcoreVersionTestUtils: ${{parameters.netcoreVersionTestUtils }}
buildPlatforms: [AnyCPU]
testSets: [AE]
Expand Down Expand Up @@ -518,7 +528,7 @@ stages:
hostedPool: true
images:
MacOSLatest_Sql22: macos-latest
TargetFrameworks: ${{parameters.targetFrameworksLinux }}
TargetFrameworks: ${{parameters.targetFrameworksUnix }}
netcoreVersionTestUtils: ${{parameters.netcoreVersionTestUtils }}
buildPlatforms: [AnyCPU]
testSets: ${{parameters.testSets }}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -124,13 +124,29 @@ parameters:
type: boolean
default: false

# The target frameworks to build and run tests for on Windows.
#
# These are _not_ the target frameworks to build the driver packages for.
#
# Note: We are excluding .NET 10.0 here to avoid consuming too many resources
# during PR pipeline runs, and until we update our 1ES images to include
# Visual Studio 2026 (18.0) whose MSBuild SDK supports .NET 10.
#
- name: targetFrameworks
displayName: Target Frameworks on Windows
type: object
default: [net462, net8.0, net9.0]

- name: targetFrameworksLinux
displayName: Target Frameworks on Non-Windows
# The target frameworks to build and run tests for on Unix.
#
# These are _not_ the target frameworks to build the driver packages for.
#
# Note: We are excluding .NET 10.0 here to avoid consuming too many resources
# during PR pipeline runs, and until we update our 1ES images to include
# Visual Studio 2026 (18.0) whose MSBuild SDK supports .NET 10.
#
- name: targetFrameworksUnix
displayName: Target Frameworks on Unix
type: object
default: [net8.0, net9.0]

Expand Down Expand Up @@ -162,7 +178,7 @@ extends:
debug: ${{ parameters.debug }}
enableStressTests: ${{ parameters.enableStressTests }}
targetFrameworks: ${{ parameters.targetFrameworks }}
targetFrameworksLinux: ${{ parameters.targetFrameworksLinux }}
targetFrameworksUnix: ${{ parameters.targetFrameworksUnix }}
testSets: ${{ parameters.testSets }}
# Populate the actual test job timeout numeric values if Default was
# specified. We choose different values depending on the build
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -124,13 +124,29 @@ parameters:
type: boolean
default: false

# The target frameworks to build and run tests for on Windows.
#
# These are _not_ the target frameworks to build the driver packages for.
#
# Note: We are excluding .NET 10.0 here to avoid consuming too many resources
# during PR pipeline runs, and until we update our 1ES images to include
# Visual Studio 2026 (18.0) whose MSBuild SDK supports .NET 10.
#
- name: targetFrameworks
displayName: Target Frameworks on Windows
type: object
default: [net462, net8.0, net9.0]

- name: targetFrameworksLinux
displayName: Target Frameworks on Non-Windows
# The target frameworks to build and run tests for on Unix.
#
# These are _not_ the target frameworks to build the driver packages for.
#
# Note: We are excluding .NET 10.0 here to avoid consuming too many resources
# during PR pipeline runs, and until we update our 1ES images to include
# Visual Studio 2026 (18.0) whose MSBuild SDK supports .NET 10.
#
- name: targetFrameworksUnix
displayName: Target Frameworks on Unix
type: object
default: [net8.0, net9.0]

Expand Down Expand Up @@ -162,7 +178,7 @@ extends:
debug: ${{ parameters.debug }}
enableStressTests: ${{ parameters.enableStressTests }}
targetFrameworks: ${{ parameters.targetFrameworks }}
targetFrameworksLinux: ${{ parameters.targetFrameworksLinux }}
targetFrameworksUnix: ${{ parameters.targetFrameworksUnix }}
testSets: ${{ parameters.testSets }}
# Populate the actual test job timeout numeric values if Default was
# specified. We choose different values depending on the build
Expand Down
2 changes: 0 additions & 2 deletions eng/pipelines/libraries/ci-build-variables.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,6 @@ variables:

- name: buildNumber
value: '$(Build.BuildNumber)'
- name: TFNetCore
value: 'net8.0'
- name: SQLTarget
value: 'localhost'
- name: NugetPackageVersion
Expand Down
20 changes: 17 additions & 3 deletions eng/pipelines/sqlclient-pr-package-ref-pipeline.yml
Original file line number Diff line number Diff line change
Expand Up @@ -81,13 +81,27 @@ parameters:
type: boolean
default: false

# The target frameworks to build and run tests for on Windows.
#
# These are _not_ the target frameworks to build the driver packages for.
#
# Note: We are excluding .NET 10.0 here to avoid consuming too many resources
# during PR pipeline runs. The periodic CI pipeline runs include .NET 10.0.
#
- name: targetFrameworks
displayName: Target Frameworks on Windows
type: object
default: [net462, net8.0, net9.0]

- name: targetFrameworksLinux
displayName: Target Frameworks on Non-Windows
# The target frameworks to build and run tests for on Unix.
#
# These are _not_ the target frameworks to build the driver packages for.
#
# Note: We are excluding .NET 10.0 here to avoid consuming too many resources
# during PR pipeline runs. The periodic CI pipeline runs include .NET 10.0.
#
- name: targetFrameworksUnix
displayName: Target Frameworks on Unix
type: object
default: [net8.0, net9.0]

Expand Down Expand Up @@ -119,7 +133,7 @@ extends:
debug: ${{ parameters.debug }}
enableStressTests: ${{ parameters.enableStressTests }}
targetFrameworks: ${{ parameters.targetFrameworks }}
targetFrameworksLinux: ${{ parameters.targetFrameworksLinux }}
targetFrameworksUnix: ${{ parameters.targetFrameworksUnix }}
testSets: ${{ parameters.testSets }}
# Populate the actual test job timeout numeric values if Default was
# specified. We choose different values depending on the build
Expand Down
Loading
Loading