Skip to content

Commit e079e09

Browse files
committed
Merge main
2 parents b475b85 + 30a2351 commit e079e09

File tree

128 files changed

+3637
-3359
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

128 files changed

+3637
-3359
lines changed

.editorconfig

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,9 @@ indent_size = 4
1414
[*.{json,jsonc}]
1515
indent_size = 2
1616

17+
[*.{yml,yaml}]
18+
indent_size = 2
19+
1720
# C# files
1821
[*.cs]
1922
# New line preferences

CHANGELOG.md

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,19 @@ All notable changes to this project will be documented in this file.
44

55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
66

7-
# Release Notes
7+
## [Stable Release 6.1.1] - 2025-08-14
8+
9+
This update includes the following changes since the [6.1.0](6.1.0.md) release:
10+
11+
### Fixed
12+
13+
- Reverted changes related to improving partial packet detection, fixup, and replay functionality. This revert addresses regressions introduced in 6.1.0. ([#3556](https://github.com/dotnet/SqlClient/pull/3556))
14+
- Applied reference assembly corrections supporting vector, fixed JSON tests, and ensured related tests are enabled. [#3562](https://github.com/dotnet/SqlClient/pull/3562)
15+
- Fixed `SqlVector<T>.Null` API signature in Reference assembly. [#3521](https://github.com/dotnet/SqlClient/pull/3521)
16+
17+
### Changed
18+
19+
- Upgraded `Azure.Identity` and other dependencies to newer versions. ([#3538](https://github.com/dotnet/SqlClient/pull/3538)) ([#3552](https://github.com/dotnet/SqlClient/pull/3552))
820

921
## [Stable Release 6.1.0] - 2025-07-25
1022

eng/pipelines/common/templates/steps/configure-sql-server-linux-step.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,11 @@
33
# The .NET Foundation licenses this file to you under the MIT license. #
44
# See the LICENSE file in the project root for more information. #
55
#################################################################################
6+
7+
# This step configures an existing SQL Server running on the local Linux host.
8+
# For example, our 1ES Hosted Pool has images like ADO-UB20-SQL22 that come with
9+
# SQL Server 2022 pre-installed and running.
10+
611
parameters:
712
- name: password
813
type: string

eng/pipelines/common/templates/steps/configure-sql-server-macos-step.yml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,10 @@
33
# The .NET Foundation licenses this file to you under the MIT license. #
44
# See the LICENSE file in the project root for more information. #
55
#################################################################################
6+
7+
# This step installs the latest SQL Server 2022 onto the macOS host and
8+
# configures it for use.
9+
610
parameters:
711
- name: password
812
type: string
@@ -13,7 +17,7 @@ parameters:
1317
default: and(succeeded(), eq(variables['Agent.OS'], 'Darwin'))
1418

1519
steps:
16-
# Linux only steps
20+
# macOS only steps
1721
- bash: |
1822
# The "user" pipeline variable conflicts with homebrew, causing errors during install. Set it back to the pipeline user.
1923
USER=`whoami`

eng/pipelines/common/templates/steps/configure-sql-server-win-step.yml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,11 @@
33
# The .NET Foundation licenses this file to you under the MIT license. #
44
# See the LICENSE file in the project root for more information. #
55
#################################################################################
6+
7+
# This step configures an existing SQL Server running on the local Windows host.
8+
# For example, our 1ES Hosted Pool has images like ADO-MMS22-SQL22 that come
9+
# with SQL Server 2022 pre-installed and running.
10+
611
parameters:
712
# Windows only parameters
813
- name: instanceName
@@ -63,7 +68,7 @@ parameters:
6368
default: and(succeeded(), eq(variables['Agent.OS'], 'Windows_NT'))
6469

6570
steps:
66-
# windows only steps
71+
# Windows only steps
6772
- powershell: |
6873
try
6974
{

eng/pipelines/common/templates/steps/publish-test-results-step.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ steps:
3838
TestResults/*.trx
3939
TestResults/**/*.coverage
4040
testRunTitle: 'Linux Tests'
41+
condition: succeededOrFailed()
4142

4243
- powershell: |
4344
cd TestResults

eng/pipelines/dotnet-sqlclient-ci-core.yml

Lines changed: 81 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -65,10 +65,22 @@ parameters:
6565
- Project
6666
- Package
6767

68+
- name: buildConfiguration
69+
displayName: 'Build Configuration'
70+
default: Release
71+
values:
72+
- Release
73+
- Debug
74+
6875
- name: defaultPoolName
6976
type: string
7077
default: $(ci_var_defaultPoolName)
7178

79+
- name: enableStressTests
80+
displayName: Enable Stress Tests
81+
type: boolean
82+
default: false
83+
7284
variables:
7385
- template: libraries/ci-build-variables.yml@self
7486

@@ -84,6 +96,7 @@ stages:
8496
jobs:
8597
- template: common/templates/jobs/ci-build-nugets-job.yml@self
8698
parameters:
99+
configuration: ${{ parameters.buildConfiguration }}
87100
artifactName: $(artifactName)
88101
${{if ne(parameters.SNIVersion, '')}}:
89102
prebuildSteps:
@@ -92,6 +105,16 @@ stages:
92105
SNIVersion: ${{parameters.SNIVersion}}
93106
SNIValidationFeed: ${{parameters.SNIValidationFeed}}
94107

108+
- ${{ if eq(parameters.enableStressTests, true) }}:
109+
- template: stages/stress-tests-ci-stage.yml@self
110+
parameters:
111+
buildConfiguration: ${{ parameters.buildConfiguration }}
112+
dependsOn: [build_nugets]
113+
pipelineArtifactName: $(artifactName)
114+
mdsPackageVersion: $(NugetPackageVersion)
115+
${{ if eq(parameters.debug, 'true') }}:
116+
verbosity: 'detailed'
117+
95118
- template: common/templates/stages/ci-run-tests-stage.yml@self
96119
parameters:
97120
debug: ${{ parameters.debug }}
@@ -139,7 +162,6 @@ stages:
139162
testConfigurations:
140163
windows_sql_19_x64: # configuration name
141164
pool: ${{parameters.defaultPoolName }} # pool name
142-
hostedPool: false # whether the pool is hosted or not
143165
images: # list of images to run tests on
144166
Win22_Sql19: ADO-MMS22-SQL19 # stage display name: image name from the pool
145167
TargetFrameworks: ${{parameters.targetFrameworks }} #[net462, net8.0] # list of target frameworks to run
@@ -181,7 +203,6 @@ stages:
181203

182204
windows_sql_19_x86: # configuration name
183205
pool: ${{parameters.defaultPoolName }} # pool name
184-
hostedPool: false # whether the pool is hosted or not
185206
images: # list of images to run tests on
186207
Win22_Sql19_x86: ADO-MMS22-SQL19 # stage display name: image name from the pool
187208
TargetFrameworks: [net8.0] #[net462, net8.0] # list of target frameworks to run
@@ -366,37 +387,36 @@ stages:
366387
LocalDbAppName: $(LocalDbAppName)
367388
LocalDbSharedInstanceName: $(LocalDbSharedInstanceName)
368389

369-
# Enclave tests disabled as on 2025-08-05 due to azure capacity issues. Reenable once instances are available again.
370-
# ${{ if eq(variables['system.pullRequest.isFork'], 'False') }}: # only run enclave jobs if the password is available
371-
# windows_enclave_sql:
372-
# pool: ADO-CI-AE-1ES-Pool
373-
# images:
374-
# Win22_Enclave_Sql19: ADO-MMS22-SQL19
375-
# TargetFrameworks: ${{parameters.targetFrameworks }}
376-
# netcoreVersionTestUtils: ${{parameters.netcoreVersionTestUtils }}
377-
# buildPlatforms: ${{parameters.buildPlatforms }}
378-
# testSets: [AE]
379-
# useManagedSNI: ${{parameters.useManagedSNI }}
380-
# codeCovTargetFrameworks: ${{parameters.codeCovTargetFrameworks }}
381-
# configSqlFor: enclave
382-
# operatingSystem: Windows
383-
# configProperties:
384-
# # config.json properties
385-
# TCPConnectionStringHGSVBS: $(SQL_TCP_CONN_STRING_HGSVBS)
386-
# TCPConnectionStringNoneVBS: $(SQL_TCP_CONN_STRING_NoneVBS)
387-
# TCPConnectionStringAASSGX: $(SQL_TCP_CONN_STRING_AASSGX)
388-
# EnclaveEnabled: true
389-
# AADAuthorityURL: $(AADAuthorityURL)
390-
# AADServicePrincipalId: $(AADServicePrincipalId)
391-
# ${{ if eq(variables['system.pullRequest.isFork'], 'False') }}:
392-
# AADServicePrincipalSecret: $(AADServicePrincipalSecret)
393-
# AzureKeyVaultUrl: $(AzureKeyVaultUrl)
394-
# AzureKeyVaultTenantId: $(AzureKeyVaultTenantId)
395-
# SupportsIntegratedSecurity: $(SupportsIntegratedSecurity)
396-
# UserManagedIdentityClientId: $(UserManagedIdentityClientId)
397-
# AliasName: $(SQLAliasName)
398-
# LocalDbAppName: $(LocalDbAppName)
399-
# LocalDbSharedInstanceName: $(LocalDbSharedInstanceName)
390+
${{ if eq(variables['system.pullRequest.isFork'], 'False') }}: # only run enclave jobs if the password is available
391+
windows_enclave_sql:
392+
pool: ADO-CI-AE-1ES-Pool
393+
images:
394+
Win22_Enclave_Sql19: ADO-MMS22-SQL19
395+
TargetFrameworks: ${{parameters.targetFrameworks }}
396+
netcoreVersionTestUtils: ${{parameters.netcoreVersionTestUtils }}
397+
buildPlatforms: ${{parameters.buildPlatforms }}
398+
testSets: [AE]
399+
useManagedSNI: ${{parameters.useManagedSNI }}
400+
codeCovTargetFrameworks: ${{parameters.codeCovTargetFrameworks }}
401+
configSqlFor: enclave
402+
operatingSystem: Windows
403+
configProperties:
404+
# config.json properties
405+
TCPConnectionStringHGSVBS: $(SQL_TCP_CONN_STRING_HGSVBS)
406+
TCPConnectionStringNoneVBS: $(SQL_TCP_CONN_STRING_NoneVBS)
407+
TCPConnectionStringAASSGX: $(SQL_TCP_CONN_STRING_AASSGX)
408+
EnclaveEnabled: true
409+
AADAuthorityURL: $(AADAuthorityURL)
410+
AADServicePrincipalId: $(AADServicePrincipalId)
411+
${{ if eq(variables['system.pullRequest.isFork'], 'False') }}:
412+
AADServicePrincipalSecret: $(AADServicePrincipalSecret)
413+
AzureKeyVaultUrl: $(AzureKeyVaultUrl)
414+
AzureKeyVaultTenantId: $(AzureKeyVaultTenantId)
415+
SupportsIntegratedSecurity: $(SupportsIntegratedSecurity)
416+
UserManagedIdentityClientId: $(UserManagedIdentityClientId)
417+
AliasName: $(SQLAliasName)
418+
LocalDbAppName: $(LocalDbAppName)
419+
LocalDbSharedInstanceName: $(LocalDbSharedInstanceName)
400420

401421
# self hosted SQL Server on Linux
402422
linux_sql_19_22:
@@ -453,35 +473,34 @@ stages:
453473
LocalDbAppName: $(LocalDbAppName)
454474
LocalDbSharedInstanceName: $(LocalDbSharedInstanceName)
455475

456-
# Enclave tests disabled as on 2025-08-05 due to azure capacity issues. Reenable once instances are available again.
457-
# ${{ if eq(variables['system.pullRequest.isFork'], 'False') }}: # only run enclave jobs if the password is available
458-
# linux_enclave_sql:
459-
# pool: ADO-CI-AE-1ES-Pool
460-
# images:
461-
# Ubuntu20_Enclave_Sql19: ADO-UB20-Sql22
462-
# TargetFrameworks: ${{parameters.targetFrameworksLinux }}
463-
# netcoreVersionTestUtils: ${{parameters.netcoreVersionTestUtils }}
464-
# buildPlatforms: [AnyCPU]
465-
# testSets: [AE]
466-
# useManagedSNI: [true]
467-
# codeCovTargetFrameworks: ${{parameters.codeCovTargetFrameworks }}
468-
# configSqlFor: enclave
469-
# operatingSystem: Linux
470-
# configProperties:
471-
# # config.json properties
472-
# TCPConnectionStringHGSVBS: $(SQL_TCP_CONN_STRING_HGSVBS)
473-
# TCPConnectionStringNoneVBS: $(SQL_TCP_CONN_STRING_NoneVBS)
474-
# TCPConnectionStringAASSGX: $(SQL_TCP_CONN_STRING_AASSGX)
475-
# EnclaveEnabled: true
476-
# AADServicePrincipalId: $(AADServicePrincipalId)
477-
# ${{ if eq(variables['system.pullRequest.isFork'], 'False') }}:
478-
# AADServicePrincipalSecret: $(AADServicePrincipalSecret)
479-
# AzureKeyVaultUrl: $(AzureKeyVaultUrl)
480-
# AzureKeyVaultTenantId: $(AzureKeyVaultTenantId)
481-
# SupportsIntegratedSecurity: false
482-
# UserManagedIdentityClientId: $(UserManagedIdentityClientId)
483-
# LocalDbAppName: $(LocalDbAppName)
484-
# LocalDbSharedInstanceName: $(LocalDbSharedInstanceName)
476+
${{ if eq(variables['system.pullRequest.isFork'], 'False') }}: # only run enclave jobs if the password is available
477+
linux_enclave_sql:
478+
pool: ADO-CI-AE-1ES-Pool
479+
images:
480+
Ubuntu20_Enclave_Sql19: ADO-UB20-Sql22
481+
TargetFrameworks: ${{parameters.targetFrameworksLinux }}
482+
netcoreVersionTestUtils: ${{parameters.netcoreVersionTestUtils }}
483+
buildPlatforms: [AnyCPU]
484+
testSets: [AE]
485+
useManagedSNI: [true]
486+
codeCovTargetFrameworks: ${{parameters.codeCovTargetFrameworks }}
487+
configSqlFor: enclave
488+
operatingSystem: Linux
489+
configProperties:
490+
# config.json properties
491+
TCPConnectionStringHGSVBS: $(SQL_TCP_CONN_STRING_HGSVBS)
492+
TCPConnectionStringNoneVBS: $(SQL_TCP_CONN_STRING_NoneVBS)
493+
TCPConnectionStringAASSGX: $(SQL_TCP_CONN_STRING_AASSGX)
494+
EnclaveEnabled: true
495+
AADServicePrincipalId: $(AADServicePrincipalId)
496+
${{ if eq(variables['system.pullRequest.isFork'], 'False') }}:
497+
AADServicePrincipalSecret: $(AADServicePrincipalSecret)
498+
AzureKeyVaultUrl: $(AzureKeyVaultUrl)
499+
AzureKeyVaultTenantId: $(AzureKeyVaultTenantId)
500+
SupportsIntegratedSecurity: false
501+
UserManagedIdentityClientId: $(UserManagedIdentityClientId)
502+
LocalDbAppName: $(LocalDbAppName)
503+
LocalDbSharedInstanceName: $(LocalDbSharedInstanceName)
485504

486505
# Self hosted SQL Server on Mac
487506
mac_sql_22:

eng/pipelines/dotnet-sqlclient-ci-package-reference-pipeline.yml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,18 @@ parameters: # parameters are shown up in ADO UI in a build queue time
8181
- Project
8282
- Package
8383

84+
- name: buildConfiguration
85+
displayName: 'Build Configuration'
86+
default: Release
87+
values:
88+
- Release
89+
- Debug
90+
91+
- name: enableStressTests
92+
displayName: Enable Stress Tests
93+
type: boolean
94+
default: false
95+
8496
extends:
8597
template: dotnet-sqlclient-ci-core.yml@self
8698
parameters:
@@ -92,3 +104,5 @@ extends:
92104
useManagedSNI: ${{ parameters.useManagedSNI }}
93105
codeCovTargetFrameworks: ${{ parameters.codeCovTargetFrameworks }}
94106
buildType: ${{ parameters.buildType }}
107+
buildConfiguration: ${{ parameters.buildConfiguration }}
108+
enableStressTests: ${{ parameters.enableStressTests }}

eng/pipelines/dotnet-sqlclient-ci-project-reference-pipeline.yml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,18 @@ parameters: # parameters are shown up in ADO UI in a build queue time
7373
- Project
7474
- Package
7575

76+
- name: buildConfiguration
77+
displayName: 'Build Configuration'
78+
default: Release
79+
values:
80+
- Release
81+
- Debug
82+
83+
- name: enableStressTests
84+
displayName: Enable Stress Tests
85+
type: boolean
86+
default: false
87+
7688
extends:
7789
template: dotnet-sqlclient-ci-core.yml@self
7890
parameters:
@@ -84,3 +96,5 @@ extends:
8496
useManagedSNI: ${{ parameters.useManagedSNI }}
8597
codeCovTargetFrameworks: ${{ parameters.codeCovTargetFrameworks }}
8698
buildType: ${{ parameters.buildType }}
99+
buildConfiguration: ${{ parameters.buildConfiguration }}
100+
enableStressTests: ${{ parameters.enableStressTests }}

0 commit comments

Comments
 (0)