* Task 38022: Prepare 6.1.0 release notes
- Preparing 6.1.0 release notes.
* Task 38022: Prepare 6.1.0 release notes
- Updated 6.1.0 release notes to summarize all changes since 6.0.2.
- Kept CHANGELOG entry for 6.1.0 as-is since it is a rolling history file, not a summary file.
* Task 38022: Prepare 6.1.0 release notes
- Fixed typo.
* Task 38022: Prepare 6.1.0 release notes
- Added one last PR.
- Changed anticipated release date.
* Aligning CallerMemberName arguments
* Sync TriggerInternalEndAndRetryIfNecessary signatures (as part of syncing method name parameters)
* Sync attribute formatting and some low stakes stylistic/typo stuff
* Move ExecuteReader methods to align with netcore implementation
* Remove SqlCommand from TriggerInternalEndAndRetryIfNecessary functions to align with netfx implementation
* Round one of syncing method signatures
* Align keysToBeSentToEnclave, requiresEnclaveComputations, ShouldCacheEncryptionMetadata
* Align CancelIgnoreFailureCallback and CancelIgnoreFailure
* Remove unsed CompletePendingReadWith* Methods
* Align Write*ExecuteEvent methods
* Align Clone, ICloneable.Clone and NotifyDependency
* Align BeginExecuteReader and ExecuteReader methods as per netcore implementation
* Align InternalExecuteNonQueryWithRetryAsync
* Align ExecuteReaderAsync methods
* Align ExecuteXmlReaderAsync methods
* Sync some more things, like spaces, comments
* sync _prepareHandle
* Rename CachedAsyncState to AsyncState to allow for CachedAsyncState property
Transfer all _cachedAsyncState usages to CachedAsyncState
This could be dangerous since property behavior is slightly different than the direct member variable.
* sync isRetry and isAsync variable names
* Sync { // lines
* Sync event/trace/correlation messages
* Revert "Remove SqlCommand from TriggerInternalEndAndRetryIfNecessary functions to align with netfx implementation"
This reverts commit 6fccc8fba3.
Align netfx implementation with netcore implementation
* Move globalization invariant mode detection to LocalAppContextSwitches
* Move TruncateScaledDecimal switch to LocalAppContextSwitches
* Move UseManagedSNI to LocalAppContextSwitches
* Add ILLink.Substitutions.xml resources to trim unused SNI
* Remove now-unused constants
* Respond to code review on SqlClient
Move string constants and variables together; add a comment to UseManagedNetworking explaining that it can be turned into a constant by ILLink.
* Sync LocalAppContextSwitchesHelper
* Updated TestScaledDecimalParameter tests
These tests no longer directly set the AppContext switches to round or truncate decimals, since these switches are cached when first queried.
* Remove hardcoded reference to TruncateScaledDecimal switch
* Task 37261: [S360] [SM05137] DefaultAzureCredential use in Production
- Suppressed use of DefaultAzureCredential.
* Task 37261: [S360] [SM05137] DefaultAzureCredential use in Production
- Suppressed use of DefaultAzureCredential.
* Revert "AKV Trusted URL cleanup (#3487)"
This reverts commit 4bbf8c6963.
* Revert "Add new trusted AKV URLs for FR and DE (#3482)"
This reverts commit 32abbc7b48.
* Sort modifiers
* Replace all usages of DbConnectionFactory with SqlConnectionFactory let's see how this goes...
* Move member variables and constructor
* Move properties over
* Move pool clearing methods
* Move Create*Connection methods over
* Move CreateConnectionPoolGroupProviderInfo
* Move QueuePool*ForRelease
* Move TryGetConnection
* Move CreateReplaceConnectionContinuation
* Move TryGetConnectionCompletedContinuation
* Move GetConnectionPool
* Move GetConnectionPoolGroup
* Move GetMetaDataFactory and PruneConnectionPoolGroups
# Conflicts:
# src/Microsoft.Data.SqlClient/src/Microsoft/Data/ProviderBase/DbConnectionFactory.cs
* Move CompletedTask and merge FindConnectionOptions
(and cleanup CreateMetaDataFactory)
* Remove DbConnectionFactory
* Make timer period times based on milliseconds instead of seconds
* Fix reflection references to Db/SqlConnectionFactory
* Addressing called out expression bodies
* Address @mdaigle's comments
* Unseal class, temporarily, just for @mdaigle
* Remove _isTopLevelUdt and its usage
This always holds the constant value of true. Code paths which rely on it being false will never be called.
* Remove unused property and fields
IsNullable and _padBuffer were only referenced when _isTopLevelUdt was false.
_nullInstance was only referenced from IsNullable
* Remove _skipNormalize
This was always set to false
* Remove unused parameter from constructor
* Remove needless call to GetFormat
* Remove unused fields
These fields are assigned to, but never used
* Remove unused parameter
SqlConnection.GetBytes output a Format parameter which was never used at its call sites
* Remove incorrect comment
* Reset negotiateAuth if SNI doesn't work
This change also adds some book keeping to ensure we're only using the spn that has previously generated a context once one has been created.
* initialization only after success
* move serverSpn to be local
* Fix AzureSqlKeyCryptographer to be pure sync
* Fix Symmetric key cache design + Key vault cache
* Fix tests
* Add back multi-user cache scenario
* Add cache lock in global CEK cache to prevent concurrency issues.
* Touch-ups
* More changes to streamline getKey calls
* More updates
* - Addressed review comments.
* - Fixing tests that expect certain localized strings that have changed.
---------
Co-authored-by: Paul Medynski <31868385+paulmedynski@users.noreply.github.com>
* add clearing of data sizes when a multi-part result is returned
* remove asserts detecting overwrite of snapshot storage which are now no longer accurate
* remove empty statement block
---------
Co-authored-by: Wraith2 <Wraith2@gmaill.com>
* - Align SqlException Numbers across platforms
- Better capture error scenarios in TCP managed SNI.
- Fix logging bug in SqlClientEventSource.
- Change nativeError from uint to int
* - Removed duplicate SniErrorDetails object and aligned field names.
* - Added localized string for the new connection timed out exception.
* - Fixed tests sensitive to OS newlines.
---------
Co-authored-by: Paul Medynski <31868385+paulmedynski@users.noreply.github.com>
* Merge SqlBinary and SqlMoney helpers into SqlTypeWorkarounds
* Merge SqlGuid conversion
* Merge (/rewrite) SqlDecimal conversion
* Remove netfx file
* Fix bug in decimal conversion
* Rewrite SqlMoney to internal implementation to use member rather than method call
* UNIT TESTS :explosion: 🎉🆒
* Remove member variable access for SqlDecimal
* Add notes for documentation of internal methods
Replace SqlMoneyToLong code to use ToInternalRepresentation
* Converted Threads to long-running Tasks
The key advantage is that exceptions propagate properly.
If a thread throws an exception (as a result of a failed test assertion, or otherwise) then the test host crashes and must be restarted.
* Corrected the instantiation of the cancellation task - missing state parameter.
* Changes to TestSqlCommandCancel, eliminating timing-specific cancellation behaviour testing.
This should also allow the test to run on both netcore and netfx.
* Responding to code review.
* Removed two unnecessary iterations from DatabaseHelper.
* Added explanatory comments to ApiShould.
* Switched to using Task.WaitAll rather than waiting for each Task in sequence.
* Improve cancellation detection
Cancellation can trigger one of several different errors, resulting in a flakier test.
Also ensure that the query always takes more than 150ms, ensuring that a quick query execution doesn't cause the test to fail.
Finally, make sure that we try to read everything from the SqlDataReader.
* Correcting previous merge
* Add Feature Extension for User Agent
* resolve conflicts
* Add summary and review changes
* Add unit tests for WriteUserAgentFeatureRequest
* Update tests to avoid reflection
* Lazily merge the platform specific code into DbConnectionOptions.cs
* Remove SqlConnectionString.DEFAULT class and replace usages with DbConnectionStringDefaults
* Rename DbConnectionStringDefaults to match naming conventions
* Remove SqlConnectionString.KEY and replace with DbConnectionStringKeywords
* Rename DbConnectionStringKeywords to match naming conventions, remove dead OLEDB and ODBC keywords
* Remove SqlConnectionString.SYNONYMS and replace with DbConnectionStringSynonyms
* Rename DbConnectionStringSynonyms to match naming conventions
* Statically build dictionary of keyword mappings. This should be cleaner than the old version.
* Synonym comparison is supposed to be case-insensitive
* Fixing typos as per @paulmedynski's comments
* Account for MAX_DISPATCH_LATENCY in XEvents tests
XEvents are asynchronous, and are written to the target within MAX_DISPATCH_LATENCY seconds. We therefore need to wait that long before querying the target.
* Filter XEvent session by client_connection_id
* User Story 37737: Prepare release notes for v6.1-preview2
- Added release notes for 6.1.0-preview2.
- Tidied up some previous release notes.
* User Story 37737: Prepare release notes for v6.1-preview2
- Updated release notes to call out our major additions with impact.
* User Story 37737: Prepare release notes for v6.1-preview2
- Addressed review feedback.
* Update version number
---------
Co-authored-by: Cheena Malhotra <cmalhotra@microsoft.com>
* - Added netstandard2.0 to the list of expected runtimes when validating an Official MDS package.
- Added comments to Versions.props warning of fragile validation logic.
- Improved comments in the validation pipeline job.
* Addressed Copilot suggestion.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Stage 1: _errors and _warnings are always null, so HasMessages will always be false
* Initial cleanup of ProcessMessages and ProcessMessagesAndThrow
* Stub now-empty methods
* Remove ProcessMessagesAndThrow (and all references.)
* Remove first pass of SmiEventSink_Default parameters
* Complete removal of SmiEventSink_Default from setters
* Remove SmiEventSink_Default from SmiGettersStream, follow through
* Remove circular references from GetValue and GetSqlValue200
* Remove unused SmiEventSink_Default parameters, follow through
* Remove lingering SmiEventSink_Default file
* Clean up _recordBuffer assignment
* Support vector datatype with SqlVector<T>
* Update xml documentation for APIs and address review comments
* Remove ToArray() and change ToString() to internal GetString()
* Delete SqlDataReaderSmi
* Delete SqlInternalConnectionSmi
* Delete eventsink from command class, and code that called it (that was no longer being used)
* Delete netfx specific ValueUtilsSmi
* Remove the rest of the (now) unused classes for SMI
* Make static classes ... static
* Remove dead methods
* Remove dead properties and fields
* Remove SqlSequentialStreamSmi and SqlSequentialTextReaderSmi since they are no longer used
* Remove parent from SmiEventSink_Default - which I think means all the methods throw now ...
* Remove obsolete code from SmiRecordBuffer
* Remove dead code from SmiEventSink for netfx
* Remove ITypedGetters/ITypedSetters
* Remove unused sink parameters
* Remove the now empty netfx SmiEventSink_Default and SmiEventSink
* Remove tests from SqlMetaDataTest that exercised dead code
* use the same style of #if in SmiEventSink
* Merge SqlConnectionFactory.AssemblyLoadContext into netcore SqlConnectionFactory class
Align netcore and netfx versions to make merge really easy
* Create merge file
* Resolving most of the merges, except a few that I need some help on.
* Adding more stubs :)
* Resolve remaining merge conflicts
* Use the common file in both projects
* Applying the change that I said I was going to apply in the last PR
* PR Comments, Round 1