Skip to content

Commit d13d4d6

Browse files
committed
Merge main
2 parents de4bc32 + 257e326 commit d13d4d6

File tree

120 files changed

+5323
-7815
lines changed

Some content is hidden

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

120 files changed

+5323
-7815
lines changed
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
# This file configures the Approver Count Policy Validator status check. Some
2+
# settings here are similar to branch policies specified via the Azure DevOps UI
3+
# that govern how PRs are approved in general. The settings here dictate how
4+
# the validator behaves, and it can also prevent PRs from completing.
5+
#
6+
# Suggested by Merlinbot (https://sqlclientdrivers.visualstudio.com/ADO.Net/_git/dotnet-sqlclient/pullrequest/4982)
7+
8+
name: approver_count
9+
description: Approver count policy for dotnet-sqlclient
10+
resource: repository
11+
where:
12+
configuration:
13+
approverCountPolicySettings:
14+
isBlocking: true
15+
requireMinimumApproverCount: 2
16+
creatorVoteCounts: false
17+
allowDownvotes: false
18+
sourcePushOptions:
19+
resetOnSourcePush: false
20+
requireVoteOnLastIteration: true
21+
requireVoteOnEachIteration: false
22+
resetRejectionsOnSourcePush: false
23+
blockLastPusherVote: true
24+
branchNames:
25+
- refs/heads/internal/main
26+
- refs/heads/internal/release/6.0
27+
- refs/heads/internal/release/5.2
28+
- refs/heads/internal/release/5.1
29+
displayName: dotnet-sqlclient Approver Count Policy

.editorconfig

Lines changed: 10 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,12 @@ csharp_space_between_method_declaration_parameter_list_parentheses = false
132132
csharp_space_between_parentheses = false
133133
csharp_space_between_square_brackets = false
134134

135-
# Xml project files
135+
# Analyzers
136+
137+
dotnet_code_quality.ca1802.api_surface = private, internal
138+
139+
# CA2000: Dispose objects before losing scope
140+
dotnet_diagnostic.CA2000.severity = suggestion
136141

137142
# CA1063: Implement IDisposable Correctly
138143
dotnet_diagnostic.CA1063.severity = silent
@@ -143,6 +148,10 @@ dotnet_diagnostic.CA2100.severity = silent
143148
# CA1416: Validate platform compatibility
144149
dotnet_diagnostic.CA1416.severity = silent
145150

151+
dotnet_code_quality.CA2100.excluded_type_names_with_derived_types = Microsoft.Data.SqlClient.ManualTesting.Tests.*
152+
dotnet_diagnostic.xUnit1031.severity=none
153+
dotnet_diagnostic.xUnit1030.severity=none
154+
146155
[*.{csproj,vcxproj,vcxproj.filters,proj,nativeproj,locproj}]
147156
indent_size = 2
148157

@@ -163,13 +172,3 @@ indent_size = 2
163172
end_of_line = lf
164173
[*.{cmd, bat}]
165174
end_of_line = crlf
166-
167-
# Analyzers
168-
dotnet_code_quality.ca1802.api_surface = private, internal
169-
170-
[*.cs]
171-
dotnet_code_quality.CA2100.excluded_type_names_with_derived_types = Microsoft.Data.SqlClient.ManualTesting.Tests.*
172-
dotnet_diagnostic.xUnit1031.severity=none
173-
dotnet_diagnostic.xUnit1030.severity=none
174-
175-

CHANGELOG.md

Lines changed: 190 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,191 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
66

77
# Release Notes
88

9+
## [Preview Release 6.1.0-preview2.25178.5] - 2025-06-27
10+
11+
This update brings the following changes since the [6.1.0-preview1](release-notes/6.1/6.1.0-preview1.md) release:
12+
13+
### Added
14+
15+
#### Added dedicated SQL Server vector datatype support
16+
17+
*What Changed:*
18+
19+
- Optimized vector communications between MDS and SQL Server 2025, employing a
20+
custom binary format over the TDS protocol.
21+
([#3433](https://github.com/dotnet/SqlClient/pull/3433),
22+
[#3443](https://github.com/dotnet/SqlClient/pull/3443))
23+
- Reduced processing load compared to existing JSON-based vector support.
24+
- Initial support for 32-bit single-precision floating point vectors.
25+
26+
*Who Benefits:*
27+
28+
- Applications moving large vector data sets will see beneficial improvements
29+
to processing times and memory requirements.
30+
- Vector-specific APIs are ready to support future numeric representations with
31+
a consistent look-and-feel.
32+
33+
*Impact:*
34+
35+
- Reduced transmission and processing times for vector operations versus JSON
36+
using SQL Server 2025 preview:
37+
- Reads: 50x improvement
38+
- Writes: 3.3x improvement
39+
- Bulk Copy: 19x improvement
40+
- (Observed with vector column of max 1998 size, and 10,000 records for each
41+
operation.)
42+
- Improved memory footprint due to the elimination of JSON
43+
serialization/deserialization and string representation bloat.
44+
- For backwards compatibility with earlier SQL Server Vector implementations,
45+
applications may continue to use JSON strings to send/receive vector data,
46+
although they will not see any of the performance improvements noted above.
47+
48+
#### Revived .NET Standard 2.0 target support
49+
50+
*What Changed:*
51+
52+
- Support for targeting .NET Standard 2.0 has returned.
53+
([#3381](https://github.com/dotnet/SqlClient/pull/3381))
54+
- Support had previously been removed in the 6.0 release, with the
55+
[community voicing concerns](https://github.com/dotnet/SqlClient/discussions/3115).
56+
57+
*Who Benefits:*
58+
59+
- Libraries that depend on MDS may seamlessly target any of the following
60+
frameworks:
61+
- .NET Standard 2.0
62+
- .NET Framework 4.6.2 and above
63+
- .NET 8.0
64+
- .NET 9.0
65+
- Applications should continue to target runtimes.
66+
- The MDS .NET Standard 2.0 target framework support does not include an
67+
actual implementation, and cannot be used with a runtime.
68+
- An application's build/publish process should always pick the appropriate
69+
MDS .NET/.NET Framework runtime implementation.
70+
- Custom build/publish actions that incorrectly try to deploy the MDS .NET
71+
Standard 2.0 reference DLL at runtime are not supported.
72+
73+
*Impact:*
74+
75+
- Libraries targeting .NET Standard 2.0 will no longer receive warnings like
76+
this:
77+
- `warning NU1701: Package 'Microsoft.Data.SqlClient 6.0.2' was restored using '.NETFramework,Version=v4.6.1, .NETFramework,Version=v4.6.2, .NETFramework,Version=v4.7, .NETFramework,Version=v4.7.1, .NETFramework,Version=v4.7.2, .NETFramework,Version=v4.8, .NETFramework,Version=v4.8.1' instead of the project target framework '.NETStandard,Version=v2.0'. This package may not be fully compatible with your project.`
78+
79+
### Fixed
80+
81+
- Fixed missing <NeutralLanguage> property.
82+
([#3325](https://github.com/dotnet/SqlClient/pull/3325))
83+
- Fixed injection of UTF-8 BOM during bulk copy.
84+
([#3399](https://github.com/dotnet/SqlClient/pull/3399))
85+
- Fixed `SqlCachedBuffer` async read edge case.
86+
([#3329](https://github.com/dotnet/SqlClient/pull/3329))
87+
- Fixed `SqlSequentialTextReader` edge case with single-byte reads.
88+
([#3383](https://github.com/dotnet/SqlClient/pull/3383))
89+
- Fixed an incorrect error message when parsing connection string `PoolBlockingPeriod`.
90+
([#3411](https://github.com/dotnet/SqlClient/pull/3411))
91+
- Added missing `ToString()` override to `SqlJson`.
92+
([#3427](https://github.com/dotnet/SqlClient/pull/3427))
93+
94+
### Changed
95+
96+
- Reduced allocations when opening a connection.
97+
([#3364](https://github.com/dotnet/SqlClient/pull/3364))
98+
- Various performance improvements related to TDS parsing.
99+
([#3337](https://github.com/dotnet/SqlClient/pull/3337),
100+
[#3377](https://github.com/dotnet/SqlClient/pull/3377),
101+
[#3422](https://github.com/dotnet/SqlClient/pull/3422))
102+
- Improved native AOT support.
103+
([#3364](https://github.com/dotnet/SqlClient/pull/3364),
104+
[#3369](https://github.com/dotnet/SqlClient/pull/3369),
105+
[#3401](https://github.com/dotnet/SqlClient/pull/3401))
106+
- Progress towards [SSPI extensibility](https://github.com/dotnet/SqlClient/issues/2253).
107+
([#2454](https://github.com/dotnet/SqlClient/pull/2454))
108+
- Progress towards [connection pooling improvements](https://github.com/dotnet/SqlClient/issues/3356).
109+
([#3352](https://github.com/dotnet/SqlClient/pull/3352),
110+
[#3396](https://github.com/dotnet/SqlClient/pull/3396))
111+
- Expanded/clarified SqlConnection's
112+
[AccessToken](https://learn.microsoft.com/en-us/dotnet/api/microsoft.data.sqlclient.sqlconnection.accesstoken) and
113+
[AccessTokenCallback](https://learn.microsoft.com/en-us/dotnet/api/microsoft.data.sqlclient.sqlconnection.accesstokencallback)
114+
documentation.
115+
([#3339](https://github.com/dotnet/SqlClient/pull/3339))
116+
- Fixed some poorly formatted tables in the API docs.
117+
([#3391](https://github.com/dotnet/SqlClient/pull/3391))
118+
- Code merge towards a unified SqlClient project, aligning .NET Framework and
119+
.NET Core implementations.
120+
([#3262](https://github.com/dotnet/SqlClient/pull/3262),
121+
[#3291](https://github.com/dotnet/SqlClient/pull/3291),
122+
[#3305](https://github.com/dotnet/SqlClient/pull/3305),
123+
[#3306](https://github.com/dotnet/SqlClient/pull/3306),
124+
[#3310](https://github.com/dotnet/SqlClient/pull/3310),
125+
[#3323](https://github.com/dotnet/SqlClient/pull/3323),
126+
[#3326](https://github.com/dotnet/SqlClient/pull/3326),
127+
[#3335](https://github.com/dotnet/SqlClient/pull/3335),
128+
[#3338](https://github.com/dotnet/SqlClient/pull/3338),
129+
[#3340](https://github.com/dotnet/SqlClient/pull/3340),
130+
[#3341](https://github.com/dotnet/SqlClient/pull/3341),
131+
[#3343](https://github.com/dotnet/SqlClient/pull/3343),
132+
[#3345](https://github.com/dotnet/SqlClient/pull/3345),
133+
[#3353](https://github.com/dotnet/SqlClient/pull/3353),
134+
[#3355](https://github.com/dotnet/SqlClient/pull/3355),
135+
[#3368](https://github.com/dotnet/SqlClient/pull/3368),
136+
[#3373](https://github.com/dotnet/SqlClient/pull/3373),
137+
[#3376](https://github.com/dotnet/SqlClient/pull/3376),
138+
[#3388](https://github.com/dotnet/SqlClient/pull/3388),
139+
[#3389](https://github.com/dotnet/SqlClient/pull/3389),
140+
[#3393](https://github.com/dotnet/SqlClient/pull/3393),
141+
[#3405](https://github.com/dotnet/SqlClient/pull/3405),
142+
[#3414](https://github.com/dotnet/SqlClient/pull/3414),
143+
[#3416](https://github.com/dotnet/SqlClient/pull/3416),
144+
[#3417](https://github.com/dotnet/SqlClient/pull/3417),
145+
[#3420](https://github.com/dotnet/SqlClient/pull/3420),
146+
[#3431](https://github.com/dotnet/SqlClient/pull/3431),
147+
[#3438](https://github.com/dotnet/SqlClient/pull/3438))
148+
- Test improvements include a new unit test project, updates to test
149+
dependencies, removal of hardcoded credentials, and improved robustness.
150+
([#3204](https://github.com/dotnet/SqlClient/pull/3204),
151+
[#3379](https://github.com/dotnet/SqlClient/pull/3379),
152+
[#3380](https://github.com/dotnet/SqlClient/pull/3380),)
153+
[#3402](https://github.com/dotnet/SqlClient/pull/3402)
154+
- Added dependency on `System.Text.Json`
155+
[8.0.5](https://www.nuget.org/packages/System.Text.Json/8.0.5) (.NET 8.0) and
156+
[9.0.5](https://www.nuget.org/packages/System.Text.Json/9.0.5) (.NET Standard 2.0, .NET 9.0)
157+
to avoid transitive vulnerabilities ([CVE-2024-43485](https://github.com/advisories/GHSA-8g4q-xg66-9fp4)).
158+
([#3403](https://github.com/dotnet/SqlClient/pull/3403))
159+
160+
## [Preview Release 6.1.0-preview1.25120.4] - 2025-04-30
161+
162+
This update brings the following changes over the previous release:
163+
164+
### Added
165+
166+
- Added packet multiplexing support to improve large data read performance. [#2714](https://github.com/dotnet/SqlClient/pull/2714) [#3161](https://github.com/dotnet/SqlClient/pull/3161) [#3202](https://github.com/dotnet/SqlClient/pull/3202)
167+
- Added support for special casing with Fabric endpoints. [#3084](https://github.com/dotnet/SqlClient/pull/3084)
168+
169+
### Fixed
170+
171+
- Fixed distributed transactions to be preserved during pooled connection resets. [#3019](https://github.com/dotnet/SqlClient/pull/3019).
172+
- Fixed application crash when the `Data Source` parameter begins with a comma. [#3250](https://github.com/dotnet/SqlClient/pull/3250).
173+
- Resolved synonym count discrepancies in debug mode. [#3098](https://github.com/dotnet/SqlClient/pull/3098).
174+
- Addressed warnings for down-level SSL/TLS versions. [#3126](https://github.com/dotnet/SqlClient/pull/3126).
175+
176+
### Changed
177+
178+
- Optimized binary size for AOT. [#3091](https://github.com/dotnet/SqlClient/pull/3091)
179+
- Refined bulk copy operations to handle unmatched column names more effectively. [#3205](https://github.com/dotnet/SqlClient/pull/3205).
180+
- Enhanced `SqlBulkCopy` to explicitly identify mismatched column names. [#3183](https://github.com/dotnet/SqlClient/pull/3183).
181+
- Optimized outgoing SSPI blob handling using `IBufferWriter<byte>`. [#2452](https://github.com/dotnet/SqlClient/pull/2452).
182+
- Replaced `byte[]` with `string` for SNI to improve efficiency. [#2790](https://github.com/dotnet/SqlClient/pull/2790).
183+
- Code cleanup to remove SQL 2000 support. [#2839](https://github.com/dotnet/SqlClient/pull/2839), [#3206](https://github.com/dotnet/SqlClient/pull/3206), [#3217](https://github.com/dotnet/SqlClient/pull/3217)
184+
- Connection pool design refactor for a modular connection pool design. [#3199](https://github.com/dotnet/SqlClient/pull/3199)
185+
- Updated various dependencies [#3229](https://github.com/dotnet/SqlClient/pull/3229), primarily:
186+
- System.Text.Encodings.Web to v8.0.0
187+
- System.Text.Json to v8.0.5
188+
- Azure.Identity to v1.13.2
189+
- Microsoft.Identity.Model.Json.Web.Tokens to v7.7.1
190+
- Microsoft.Identity.Model.Protocols.OpenIdConnect to v7.7.1
191+
- Code merge towards a unified SqlClient project, aligning .NET Framework and .NET Core implementations. ([#2957](https://github.com/dotnet/sqlclient/pull/2957), [#2963](https://github.com/dotnet/sqlclient/pull/2963), [#2984](https://github.com/dotnet/sqlclient/pull/2984), [#2982](https://github.com/dotnet/sqlclient/pull/2982), [#3023](https://github.com/dotnet/sqlclient/pull/3023), [#3015](https://github.com/dotnet/sqlclient/pull/3015), [#2967](https://github.com/dotnet/sqlclient/pull/2967), [#3164](https://github.com/dotnet/sqlclient/pull/3164), [#3163](https://github.com/dotnet/sqlclient/pull/3163), [#3171](https://github.com/dotnet/sqlclient/pull/3171), [#3182](https://github.com/dotnet/sqlclient/pull/3182), [#3179](https://github.com/dotnet/sqlclient/pull/3179), [#3156](https://github.com/dotnet/sqlclient/pull/3156), [#3213](https://github.com/dotnet/sqlclient/pull/3213), [#3232](https://github.com/dotnet/sqlclient/pull/3232), [#3236](https://github.com/dotnet/sqlclient/pull/3236), [#3231](https://github.com/dotnet/sqlclient/pull/3231), [#3241](https://github.com/dotnet/sqlclient/pull/3241), [#3246](https://github.com/dotnet/sqlclient/pull/3246), [#3247](https://github.com/dotnet/sqlclient/pull/3247), [#3222](https://github.com/dotnet/sqlclient/pull/3222), [#3255](https://github.com/dotnet/sqlclient/pull/3255), [#3254](https://github.com/dotnet/sqlclient/pull/3254), [#3259](https://github.com/dotnet/sqlclient/pull/3259), [#3264](https://github.com/dotnet/sqlclient/pull/3264), [#3256](https://github.com/dotnet/sqlclient/pull/3256), [#3251](https://github.com/dotnet/sqlclient/pull/3251), [#3275](https://github.com/dotnet/sqlclient/pull/3275), [#3277](https://github.com/dotnet/sqlclient/pull/3277), [#3263](https://github.com/dotnet/sqlclient/pull/3263), [#3292](https://github.com/dotnet/sqlclient/pull/3292), [#3208](https://github.com/dotnet/sqlclient/pull/3208)).
192+
- Test improvements include updates to test references, removal of hardcoded certificates, improved stability, and better coverage ([#3041](https://github.com/dotnet/sqlclient/pull/3041), [#3034](https://github.com/dotnet/sqlclient/pull/3034), [#3130](https://github.com/dotnet/sqlclient/pull/3130), [#3128](https://github.com/dotnet/sqlclient/pull/3128), [#3181](https://github.com/dotnet/sqlclient/pull/3181), [#3060](https://github.com/dotnet/sqlclient/pull/3060), [#3184](https://github.com/dotnet/sqlclient/pull/3184), [#3033](https://github.com/dotnet/sqlclient/pull/3033), [#3186](https://github.com/dotnet/sqlclient/pull/3186), [#3025](https://github.com/dotnet/sqlclient/pull/3025), [#3230](https://github.com/dotnet/sqlclient/pull/3230), [#3237](https://github.com/dotnet/sqlclient/pull/3237), [#3059](https://github.com/dotnet/sqlclient/pull/3059), [#3061](https://github.com/dotnet/sqlclient/pull/3061)).
193+
9194
## [Stable release 6.0.2] - 2025-04-25
10195

11196
This update brings the below changes over the previous release:
@@ -17,11 +202,12 @@ This update brings the below changes over the previous release:
17202
- Fixed an error reading the output parameter of type JSON while executing stored procedure [#3173](https://github.com/dotnet/SqlClient/pull/3173)
18203

19204
### Changed
205+
20206
- Updated the below dependencies:
21-
- Updated [Microsoft.Bcl.Cryptography](https://www.nuget.org/packages/Microsoft.Bcl.Cryptography/9.0.4) from 9.0.0 to 9.0.4 for .NET 9 targeted dll. [#3281](https://github.com/dotnet/SqlClient/pull/3281)
22-
- Updated [Microsoft.Extensions.Caching.Memory](https://www.nuget.org/packages/Microsoft.Extensions.Caching.Memory/9.0.4) from 9.0.0 to 9.0.4 for .NET 9 targeted dll. [#3281](https://github.com/dotnet/SqlClient/pull/3281)
23-
- Updated [System.Configuration.ConfigurationManager](https://www.nuget.org/packages/System.Configuration.ConfigurationManager/9.0.4) from 9.0.0 to 9.0.4 for .NET 9 targeted dll. [#3281](https://github.com/dotnet/SqlClient/pull/3281)
24-
- Updated [System.Security.Cryptography.Pkcs](https://www.nuget.org/packages/System.Security.Cryptography.Pkcs/9.0.4) from 9.0.0 to 9.0.4 for .NET 9 targeted dll. [#3281](https://github.com/dotnet/SqlClient/pull/3281)
207+
- Updated [Microsoft.Bcl.Cryptography](https://www.nuget.org/packages/Microsoft.Bcl.Cryptography/9.0.4) from 9.0.0 to 9.0.4 for .NET 9 targeted dll. [#3281](https://github.com/dotnet/SqlClient/pull/3281)
208+
- Updated [Microsoft.Extensions.Caching.Memory](https://www.nuget.org/packages/Microsoft.Extensions.Caching.Memory/9.0.4) from 9.0.0 to 9.0.4 for .NET 9 targeted dll. [#3281](https://github.com/dotnet/SqlClient/pull/3281)
209+
- Updated [System.Configuration.ConfigurationManager](https://www.nuget.org/packages/System.Configuration.ConfigurationManager/9.0.4) from 9.0.0 to 9.0.4 for .NET 9 targeted dll. [#3281](https://github.com/dotnet/SqlClient/pull/3281)
210+
- Updated [System.Security.Cryptography.Pkcs](https://www.nuget.org/packages/System.Security.Cryptography.Pkcs/9.0.4) from 9.0.0 to 9.0.4 for .NET 9 targeted dll. [#3281](https://github.com/dotnet/SqlClient/pull/3281)
25211

26212
## [Stable release 6.0.1] - 2025-01-23
27213

0 commit comments

Comments
 (0)