Skip to content

Commit a3dbb35

Browse files
committed
Merge main
2 parents d41b6ed + 318b5e1 commit a3dbb35

File tree

171 files changed

+12816
-3351
lines changed

Some content is hidden

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

171 files changed

+12816
-3351
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: 80 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,89 @@ 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))
20+
21+
## [Stable Release 6.1.0] - 2025-07-25
22+
23+
This update brings the following changes since the
24+
[6.1.0-preview2](release-notes/6.1/6.1.0-preview2.md) release:
25+
26+
### Added
27+
28+
No new features were added.
29+
30+
### Fixed
31+
32+
- Fixed missing socket error codes on non-Windows platforms.
33+
([#3475](https://github.com/dotnet/SqlClient/pull/3475))
34+
- Fixed primary/secondary server SPN handling during SSPI negotiation.
35+
([#3478](https://github.com/dotnet/SqlClient/pull/3478))
36+
- Fixed AzureKeyVaultProvider package key caching to serialize Azure key fetch
37+
operations.
38+
([#3477](https://github.com/dotnet/SqlClient/pull/3477))
39+
- Fixed a rare error related to multi-packet async text reads.
40+
([#3474](https://github.com/dotnet/SqlClient/pull/3474))
41+
- Fixed some spelling errors in the API docs.
42+
([#3500](https://github.com/dotnet/SqlClient/pull/3500))
43+
- Fixed a rare multi-packet string corruption bug.
44+
([#3513](https://github.com/dotnet/SqlClient/pull/3513))
45+
46+
### Changed
47+
48+
#### SqlDecimal type workarounds conversions
49+
50+
*What Changed:*
51+
52+
- Changed how SqlDecimal type workarounds perform conversions to meet
53+
compliance policies.
54+
([#3467](https://github.com/dotnet/SqlClient/pull/3467))
55+
56+
*Who Benefits:*
57+
58+
- Microsoft products must not use undocumented APIs on other Microsoft products.
59+
This change removes calls to undocumented APIs and replaces them with
60+
compliant API use.
61+
62+
*Impact:*
63+
64+
- These changes impose an observed 5% decrease in performance on .NET Framework.
65+
66+
#### SqlVector API improvements
67+
68+
*What Changed:*
69+
70+
- Several changes were made to the SqlVector API published in the
71+
[6.1.0-preview2](release-notes/6.1/6.1.0-preview2.md) release
72+
([#3472](https://github.com/dotnet/SqlClient/pull/3472)):
73+
- The SqlVector class was changed to a readonly struct.
74+
- The null value constructor was changed to a static `CreateNull()` method.
75+
- The `Size` property was removed.
76+
77+
*Who Benefits:*
78+
79+
- SqlVector instances gain the efficiencies of struct handling.
80+
81+
*Impact:*
82+
83+
- Early-adopter applications may require updates if they rely on the old APIs
84+
and any class-specific behaviour.
885

986
## [Preview Release 6.1.0-preview2.25178.5] - 2025-06-27
1087

11-
This update brings the following changes since the [6.1.0-preview1](release-notes/6.1/6.1.0-preview1.md) release:
88+
This update brings the following changes since the
89+
[6.1.0-preview1](release-notes/6.1/6.1.0-preview1.md) release:
1290

1391
### Added
1492

CONTRIBUTING.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
General contribution guidance is included in this document. Additional guidance is defined in the documents linked below.
44

5-
- [Copyright](copyright.md) describes the licensing practices for the project.
5+
- [Copyright](COPYRIGHT.md) describes the licensing practices for the project.
66
- [Contribution Workflow](contributing-workflow.md) describes the workflow that the team uses for considering and accepting changes.
77

88
## Up for Grabs

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: 23 additions & 2 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

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)