Skip to content

Releases: dotnet/SqlClient

Preview Release v2.0.0-preview2.20084.1

24 Mar 21:39
4dbc1c2
Compare
Choose a tag to compare
Pre-release

Added

  • Added support for capturing EventSource traces in .NET Framework, .NET Core, and .NET Standard applications #399 #461 #479 #483 #484
  • Added support for Cross-platform TCP Keep Alive applicable to .NET Core 3.1+ applications #395
  • Added support for enabling Managed networking implementation on Windows applicable to .NET Core and .NET Standard applications #477
  • Added RowsCopied property in SqlBulkCopy to expose count of copied rows #409
  • Added "NeutralResourcesLanguage" attribute for .NET Framework assembly #433
  • Added caching for invariant culture check result #376
  • Added cached SqlReferenceCollection.FindLiveReaderContext objects #380

Fixed

  • Fixed Access Token behavior in connection pool to perform string comparison #443
  • Fixed concurrent connection speed issues when connecting with Azure Active Directory Authentication modes in .NET Core #466
  • Fixed issues with Password persistence in Connection String #453

Changes

  • Updated all driver assemblies to be CLS Compliant #396
  • Updated Bulk Copy error messages to also include Column, Row and non-encrypted Data information #437
  • Updated error messages for "Always Encrypted - Secure Enclaves" to handle 'Attestation Protocol' and fixed typos #421 #397
  • Removed sync over async in SNINpHandle.EnableSsl #474
  • Changed non-generic ArrayList to List<T> in SqlBulkCopy #457
  • Multiple performance improvements #377 #378 #379

Breaking Changes

  • The driver will now perform Server Certificate validation when TLS encryption is enforced by the target Server, which is the default for Azure connections #391
  • SqlDataReader.GetSchemaTable() now returns an empty DataTable instead of returning null #419

For more details and breaking changes, refer here

[AzureKeyVaultProvider] Stable Release v1.1.1

13 Mar 23:04
Compare
Choose a tag to compare

Changes

  • Correction required due to providing incorrect endpoint address

Hotfix & Stable Release v1.1.1

14 Feb 19:36
19cb8fb
Compare
Choose a tag to compare

Fixed

  • Fixed deadlock issues by reverting async changes in SNIPacket #425

Changed

  • Updated SNI package reference to include version range #425

Preview Release v2.0.0-preview1.20021.1

22 Jan 00:55
b98a08e
Compare
Choose a tag to compare
Pre-release

Added

  • Added support to allow large UDT buffer size (upto Int.MaxValue) as supported by SQL Server starting TDS 7.3 #340

Fixed

  • Fixed issues with SqlCommandSet not working with Byte Array parameters #360
  • Fixed Statement command cancellation in Managed SNI #248 - Ported dotnet/corefx#38271
  • Fixed zero connection timeout issue in Managed SNI #332
  • Fixed "DataType" metadata information for TinyInt datatype to be System.Byte #338
  • Fixed driver behavior to use CancellationTokenResource only for non-infinite timeout and cleanup after usage #339
  • Fixed ConnectionTime and ClientConnectionId reported by SqlStatistics when connection is closed #341
  • Fixed deadlock issues by reverting async changes to SNIPacket #349

Changes

  • Improved performance of Managed SNI by removing double fetch of domain name #366
  • Improved performance of Async Method Allocations in Managed SNI #328
  • Improved performance of Managed SNI by enhancing utilization of resources #173 - Ported dotnet/corefx#35363 and dotnet/corefx#40732
  • Improved performance of Managed SNI RPC Parameter Usage #209 - Ported dotnet/corefx#34049
  • Changed enclave key map to be lazy initialized #372
  • Changed Recieve() and ReceiveAsync() implementation to receive null packets on failure #350
  • Changed EnclaveProviderBase caching implementation to support Async Scenarios (Introduces breaking changes) #346

For more details and breaking changes, refer here.

Stable Release v1.1.0

20 Nov 22:44
d4d621c
Compare
Choose a tag to compare

Added

  • Added support for |DataDirectory| macro in AttachDBFilename for .NET Core client #284

Fixed

  • Fixed connection resiliency check #310
  • Fixed SNIPacket.ReadFromStreamAsync to not consume same ValueTask twice #295
  • Fixed driver behavior to not send Attention signal for successful Bulk Copy operation #308
  • Fixed driver behavior to abort connection when encountering SqlException on SqlTransaction.Commit #299
  • Fixed driver behavior to not throw exception on invalid app.config files #319

Changes

  • Improved async read performance by adding multi-packet target buffer caching #285
  • Improved performance of TdsParserStateObject and SqlDataReader snapshot mechanisms #198
  • Updated SqlDataReader.Close documentation #314

[AzureKeyVaultProvider] Stable Release v1.0.0

19 Nov 22:27
64b7bfc
Compare
Choose a tag to compare

This is the initial public stable release of the new Microsoft.Data.SqlClient.AlwaysEncrypted.AzureKeyVaultProvider namespace.

This library contains the implementation of Microsoft.Data.SqlClient.SqlColumnEncryptionKeyStoreProvider for accessing Azure Key Vault, and the provider class is named SqlColumnEncryptionAzureKeyVaultProvider.

Detailed release notes are available here.

Preview Release v1.1.0-preview2

05 Nov 00:51
a606f11
Compare
Choose a tag to compare
Pre-release

Added

  • Add support for secure enclaves with Always Encrypted #293

Fixed

  • Setting the value DbParameter.DbType to DbType.Time property fails after setting the Value property #5
  • SQLDataAdapter.FillSchema doesn't mark computed columns as readonly #275
  • SqlDependency.Start throws FileNotFoundException #260
  • Misleading ADP_OpenReaderExists exception message on MARS-disabled Sql Connection when incorrectly doing parallel requests #82
  • SqlClient ManualTest MARSSyncTimeoutTest fails in managed mode #108
  • System.Data.SqlClient.SqlInternalConnectionTds constructor purges original call stack when re-throwing an exception #100
  • InvalidOperationException(SqlException) on SqlBulkCopy #221
  • Exception message grammar: "An SqlParameter [...] is not contained by this SqlParameterCollection" #159
  • Fixing incorrect event id and opcode for the SqlEventSource #241

Changes

  • Update dependency to Microsoft.Data.SqlClient.SNI v1.1.0 #276
  • Correct timeout remarks for async command methods #264
  • Improve SqlBulkCopy truncation error message #256
  • Intellisense tooltip for SqlCommand's CommandTimeout doesn't describe units #33
  • Enable SQL Command text for non-stored procs in EventSource events for .NET Framework #242

[AzureKeyVaultProvider] Preview Release v1.0.0-preview1.19295.2

22 Oct 23:59
Compare
Choose a tag to compare

This update to v1.0.0-preview1.19292.1 fixes a missing NuGet package dependency on Microsoft.Data.SqlClient and updates the maximum version attribute for other dependencies.

Detailed release notes available here.

[AzureKeyVaultProvider] Preview Release v1.0.0-preview1.19295.1

19 Oct 01:33
4a5e510
Compare
Choose a tag to compare

This is the initial public preview release of the new Microsoft.Data.SqlClient.AlwaysEncrypted.AzureKeyVaultProvider namespace.

This library contains the implementation of Microsoft.Data.SqlClient.SqlColumnEncryptionKeyStoreProvider for accessing Azure Key Vault, and the provider class is named as SqlColumnEncryptionAzureKeyVaultProvider.

Detailed release notes available here.

Preview Release v1.1.0-preview1

02 Oct 19:58
0ae4f71
Compare
Choose a tag to compare
Pre-release

Added

  • Added SqlFileStream support for .NET Framework with Microsoft.Data.SqlTypes.SqlFileStream class introduced. #210
  • Added support for Visual Studio Intellisense with XML Documentation. #210

Changes

  • Synchronized ref definitions with driver classes. #180
  • Updated SNINativeMethodWrapper to provide the underlying error in the inner exception when we fail to load SNI.dll. #225
  • Added .editorconfig file and set formatting rules. #193
  • Changes done to handle statistics well and to cleanup AutoResetEvent on disconnect. #232