Skip to content

Commit 6d89cfa

Browse files
committed
Merge main
2 parents 277e181 + 66b1fb1 commit 6d89cfa

File tree

358 files changed

+38839
-44095
lines changed

Some content is hidden

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

358 files changed

+38839
-44095
lines changed

.editorconfig

Lines changed: 8 additions & 12 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
@@ -43,6 +46,9 @@ csharp_style_var_for_built_in_types = false:none
4346
csharp_style_var_when_type_is_apparent = false:none
4447
csharp_style_var_elsewhere = false:suggestion
4548

49+
# don't prefer the range operator, netfx doesn't have these types
50+
csharp_style_prefer_range_operator = false
51+
4652
# use language keywords instead of BCL types
4753
dotnet_style_predefined_type_for_locals_parameters_members = true:suggestion
4854
dotnet_style_predefined_type_for_member_access = true:suggestion
@@ -152,23 +158,13 @@ dotnet_code_quality.CA2100.excluded_type_names_with_derived_types = Microsoft.Da
152158
dotnet_diagnostic.xUnit1031.severity=none
153159
dotnet_diagnostic.xUnit1030.severity=none
154160

155-
[*.{csproj,vcxproj,vcxproj.filters,proj,nativeproj,locproj}]
156-
indent_size = 2
157-
158-
# Xml build files
159-
[*.builds]
160-
indent_size = 2
161-
162161
# Xml files
163-
[*.{xml,stylecop,resx,ruleset}]
164-
indent_size = 2
165-
166-
# Xml config files
167-
[*.{props,targets,config,nuspec}]
162+
[*.{xml,csproj,stylecop,resx,ruleset,props,targets,config,nuspec}]
168163
indent_size = 2
169164

170165
# Shell scripts
171166
[*.sh]
172167
end_of_line = lf
168+
173169
[*.{cmd, bat}]
174170
end_of_line = crlf

.github/pull_request_template.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,8 @@ High quality descriptions will lead to a smoother review experience.
1414

1515
## Issues
1616

17-
Link to any relevant issues, bugs, or discussions (e.g., "Closes \#123", "Fixes
18-
issue \#456").
17+
Link to any relevant issues, bugs, or discussions (e.g., `Closes #123`, `Fixes
18+
issue #456`).
1919

2020
## Testing
2121

BUILDGUIDE.md

Lines changed: 16 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,12 @@ Once the environment is setup properly, execute the desired set of commands belo
2222
|`BuildNetCore`|Builds the .NET driver for all target frameworks.|
2323
|`BuildNetCoreAllOS`|Builds the .NET driver for all target frameworks and operating systems.|
2424
|`BuildNetFx`|Builds the .NET Framework driver for all target frameworks.|
25-
|`BuildTests`|Builds tests for the .NET and .NET Framework drivers.|
2625
|`BuildTestsNetCore`|Builds tests for the .NET driver.|
2726
|`BuildTestsNetFx`|Builds tests for the .NET Framework driver.|
2827
|`Clean`|Cleans generated files.|
2928
|`Restore`|Restores Nuget packages.|
30-
|`RunTests`|Runs the functional and manual tests for the .NET Framework and .NET drivers|
29+
|`RunTests`|Runs the unit, functional, and manual tests for the .NET Framework and .NET drivers|
30+
|`RunUnitTests`|Runs just the unit tests for the .NET Framework and .NET drivers|
3131
|`RunFunctionalTests`|Runs just the functional tests for the .NET Framework and .NET drivers|
3232
|`RunManualTests`|Runs just the manual tests for the .NET Framework and .NET drivers|
3333
|`BuildAkv`|Builds the Azure Key Vault Provider package for all supported platforms.|
@@ -51,39 +51,35 @@ Using the default configuration and running all tests:
5151

5252
```bash
5353
msbuild
54-
msbuild -t:BuildTests
54+
msbuild -t:BuildTestsNetFx -p:TF=net462
55+
msbuild -t:BuildTestsNetCore
5556
msbuild -t:RunTests
5657
```
5758

58-
Targeting .NET Framework (or any specific supported version):
59-
60-
```bash
61-
msbuild -p:TF=net462
62-
msbuild -t:BuildTests -p:TF=net462
63-
msbuild -t:RunTests -p:TF=net462
64-
```
65-
6659
Using the Release configuration:
6760

6861
```bash
6962
msbuild -p:configuration=Release
70-
msbuild -t:BuildTests -p:configuration=Release
63+
msbuild -t:BuildTestsNetFx -p:TF=net462 -p:configuration=Release
64+
msbuild -t:BuildTestsNetCore -p:configuration=Release
7165
msbuild -t:RunTests -p:configuration=Release
7266
```
7367

74-
Running only the functional tests:
68+
Running only the unit tests:
7569

7670
```bash
7771
msbuild
78-
msbuild -t:BuildTests
79-
msbuild -t:RunFunctionalTests
72+
msbuild -t:BuildTestsNetFx -p:TF=net462
73+
msbuild -t:BuildTestsNetCore
74+
msbuild -t:RunUnitTests
8075
```
8176

8277
Using a specific dotnet version/architecture:
8378

8479
```bash
8580
msbuild -p:configuration=Release
86-
msbuild -t:BuildTests -p:configuration=Release
81+
msbuild -t:BuildTestsNetFx -p:TF=net462 -p:configuration=Release
82+
msbuild -t:BuildTestsNetCore -p:configuration=Release
8783
msbuild -t:RunTests -p:configuration=Release -p:DotnetPath=C:\net8-win-x86\
8884
```
8985

@@ -224,10 +220,10 @@ msbuild -t:BuildTestsNetCore -p:ReferenceType=Package
224220
For .NET Framework, below reference types are supported:
225221

226222
```bash
227-
msbuild -t:BuildTestsNetFx -p:ReferenceType=Project
223+
msbuild -t:BuildTestsNetFx -p:TF=net462 -p:ReferenceType=Project
228224
# Default setting uses Project Reference.
229225

230-
msbuild -t:BuildTestsNetFx -p:ReferenceType=Package
226+
msbuild -t:BuildTestsNetFx -p:TF=net462 -p:ReferenceType=Package
231227
```
232228

233229
### Running Tests with Reference Type
@@ -245,12 +241,12 @@ Tests can be built and run with custom Target Frameworks. See the below examples
245241
### Building Tests with custom target framework
246242

247243
```bash
248-
msbuild -t:BuildTestsNetFx -p:TargetNetFxVersion=net462
244+
msbuild -t:BuildTestsNetFx -p:TF=net462
249245
# Build the tests for custom .NET Framework target
250246
```
251247

252248
```bash
253-
msbuild -t:BuildTestsNetCore -p:TargetNetCoreVersion=net8.0
249+
msbuild -t:BuildTestsNetCore -p:TF=net8.0
254250
# Build the tests for custom .NET target
255251
```
256252

CHANGELOG.md

Lines changed: 142 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,151 @@ 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+
## [Preview Release 7.0.0-preview1.25257.1] - 2025-09-12
8+
9+
This update brings the following changes since the [6.1.0](release-notes/6.1/6.1.0.md)
10+
release:
11+
12+
### Breaking Changes
13+
14+
- Removed `Constrained Execution Region` error handling blocks and associated
15+
`SqlConnection` cleanup which may affect how potentially-broken connections
16+
are expunged from the pool.
17+
([#3535](https://github.com/dotnet/SqlClient/pull/3535))
18+
19+
### Bug Fixes
20+
21+
- Packet multiplexing disabled by default, and several bug fixes.
22+
([#3534](https://github.com/dotnet/SqlClient/pull/3534),
23+
[#3537](https://github.com/dotnet/SqlClient/pull/3537))
24+
25+
### Added
26+
27+
- `SqlColumnEncryptionCertificateStoreProvider` now works on Windows, Linux,
28+
and macOS.
29+
([#3014](https://github.com/dotnet/SqlClient/pull/3014))
30+
31+
### Changed
32+
33+
- Updated `SqlVector.Null` to return a nullable `SqlVector` instance in the
34+
reference API to match the implementation.
35+
([#3521](https://github.com/dotnet/SqlClient/pull/3521))
36+
37+
- Performance improvements for all built-in
38+
`SqlColumnEncryptionKeyStoreProvider` implementations.
39+
([#3554](https://github.com/dotnet/SqlClient/pull/3554))
40+
41+
- Various test improvements.
42+
([#3456](https://github.com/dotnet/SqlClient/pull/3456),
43+
[#2968](https://github.com/dotnet/SqlClient/pull/2968),
44+
[#3458](https://github.com/dotnet/SqlClient/pull/3458),
45+
[#3494](https://github.com/dotnet/SqlClient/pull/3494),
46+
[#3559](https://github.com/dotnet/SqlClient/pull/3559),
47+
[#3575](https://github.com/dotnet/SqlClient/pull/3575))
48+
49+
- Codebase merge project and related cleanup.
50+
([#3436](https://github.com/dotnet/SqlClient/pull/3436),
51+
[#3434](https://github.com/dotnet/SqlClient/pull/3434),
52+
[#3448](https://github.com/dotnet/SqlClient/pull/3448),
53+
[#3454](https://github.com/dotnet/SqlClient/pull/3454),
54+
[#3462](https://github.com/dotnet/SqlClient/pull/3462),
55+
[#3435](https://github.com/dotnet/SqlClient/pull/3435),
56+
[#3492](https://github.com/dotnet/SqlClient/pull/3492),
57+
[#3473](https://github.com/dotnet/SqlClient/pull/3473),
58+
[#3469](https://github.com/dotnet/SqlClient/pull/3469),
59+
[#3394](https://github.com/dotnet/SqlClient/pull/3394),
60+
[#3493](https://github.com/dotnet/SqlClient/pull/3493),
61+
[#3593](https://github.com/dotnet/SqlClient/pull/3593))
62+
63+
- Documentation improvements.
64+
([#3490](https://github.com/dotnet/SqlClient/pull/3490))
65+
66+
- Updated `Azure.Identity` dependency to v1.14.2.
67+
([#3538](https://github.com/dotnet/SqlClient/pull/3538))
68+
69+
## [Stable Release 6.1.1] - 2025-08-14
70+
71+
This update includes the following changes since the [6.1.0](6.1.0.md) release:
72+
73+
### Fixed
74+
75+
- 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))
76+
- Applied reference assembly corrections supporting vector, fixed JSON tests, and ensured related tests are enabled. [#3562](https://github.com/dotnet/SqlClient/pull/3562)
77+
- Fixed `SqlVector<T>.Null` API signature in Reference assembly. [#3521](https://github.com/dotnet/SqlClient/pull/3521)
78+
79+
### Changed
80+
81+
- 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))
82+
83+
## [Stable Release 6.1.0] - 2025-07-25
84+
85+
This update brings the following changes since the
86+
[6.1.0-preview2](release-notes/6.1/6.1.0-preview2.md) release:
87+
88+
### Added
89+
90+
No new features were added.
91+
92+
### Fixed
93+
94+
- Fixed missing socket error codes on non-Windows platforms.
95+
([#3475](https://github.com/dotnet/SqlClient/pull/3475))
96+
- Fixed primary/secondary server SPN handling during SSPI negotiation.
97+
([#3478](https://github.com/dotnet/SqlClient/pull/3478))
98+
- Fixed AzureKeyVaultProvider package key caching to serialize Azure key fetch
99+
operations.
100+
([#3477](https://github.com/dotnet/SqlClient/pull/3477))
101+
- Fixed a rare error related to multi-packet async text reads.
102+
([#3474](https://github.com/dotnet/SqlClient/pull/3474))
103+
- Fixed some spelling errors in the API docs.
104+
([#3500](https://github.com/dotnet/SqlClient/pull/3500))
105+
- Fixed a rare multi-packet string corruption bug.
106+
([#3513](https://github.com/dotnet/SqlClient/pull/3513))
107+
108+
### Changed
109+
110+
#### SqlDecimal type workarounds conversions
111+
112+
*What Changed:*
113+
114+
- Changed how SqlDecimal type workarounds perform conversions to meet
115+
compliance policies.
116+
([#3467](https://github.com/dotnet/SqlClient/pull/3467))
117+
118+
*Who Benefits:*
119+
120+
- Microsoft products must not use undocumented APIs on other Microsoft products.
121+
This change removes calls to undocumented APIs and replaces them with
122+
compliant API use.
123+
124+
*Impact:*
125+
126+
- These changes impose an observed 5% decrease in performance on .NET Framework.
127+
128+
#### SqlVector API improvements
129+
130+
*What Changed:*
131+
132+
- Several changes were made to the SqlVector API published in the
133+
[6.1.0-preview2](release-notes/6.1/6.1.0-preview2.md) release
134+
([#3472](https://github.com/dotnet/SqlClient/pull/3472)):
135+
- The SqlVector class was changed to a readonly struct.
136+
- The null value constructor was changed to a static `CreateNull()` method.
137+
- The `Size` property was removed.
138+
139+
*Who Benefits:*
140+
141+
- SqlVector instances gain the efficiencies of struct handling.
142+
143+
*Impact:*
144+
145+
- Early-adopter applications may require updates if they rely on the old APIs
146+
and any class-specific behaviour.
8147

9148
## [Preview Release 6.1.0-preview2.25178.5] - 2025-06-27
10149

11-
This update brings the following changes since the [6.1.0-preview1](release-notes/6.1/6.1.0-preview1.md) release:
150+
This update brings the following changes since the
151+
[6.1.0-preview1](release-notes/6.1/6.1.0-preview1.md) release:
12152

13153
### Added
14154

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

0 commit comments

Comments
 (0)