Skip to content

Bump MySqlConnector from 0.29.0 to 2.6.1 - #880

Closed
dependabot[bot] wants to merge 1 commit into
masterfrom
dependabot/nuget/tests/SqlProvider.Core.Tests/MySql/MySqlConnector-2.6.1
Closed

dependabot[bot] wants to merge 1 commit into
masterfrom
dependabot/nuget/tests/SqlProvider.Core.Tests/MySql/MySqlConnector-2.6.1

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Nov 2, 2026 •

Copy link
Copy Markdown
Contributor

Updated MySqlConnector from 0.29.0 to 2.6.1.

Release notes

Sourced from MySqlConnector's releases.

2.6.1

  • Fix GHSA-473q-m89c-ghf8: MitM password disclosure in zero-configuration TLS mode.
  • Fix MySqlCommand.Prepare with INSERT INTO ... RETURNING: #​1652.
  • Thanks to @​rusher for contributions to this release.

2.6.0

  • Add opt-in stable OpenTelemetry semantic conventions: #​1435.
    • In MySqlConnector 3.0, the experimental conventions will be removed.
    • Applications should set OTEL_SEMCONV_STABILITY_OPT_IN to database or database/dup (or use WithSemanticConventionsKinds) to test the new semantic conventions.
  • Support distributed tracing by sending traceparent to MySQL Server: #​1635.
  • EnableResultSetHeaderEvent is now opt-in: #​1633.
  • Move AddMySqlDataSource and related APIs from MySqlConnector.DependencyInjection to MySqlConnector: #​1649.
  • Improve reliability and correctness of parameter parsing and rewriting:
    • Fix termination of quoted parameters: #​1627.
    • Handle all comment-start characters during SQL parsing: #​1624.
    • Add stricter argument validation and checks: #​1632.
  • Improve XA and transaction handling:
    • Handle more XA error codes: #​1631.
    • Clear transaction when closing a database: #​1623.
    • Handle missing transaction in DoCloseAsync: #​729.
  • Improve data type handling:
    • Reject negative DATETIME ticks: #​1630.
    • Don't detect BINARY columns as Guid: #​1625.
  • Improve exception safety: #​1628.
  • Suppress trimming warnings and update AOT test coverage: #​1607, #​1608.
  • Thanks to @​markus456 and @​sbomer for contributions to this release.

2.5.0

2.5.0

  • Support .NET 10: #​1595.
  • Possibly breaking MySqlConnection.State will be set to ConnectionState.Broken when there is a network error: #​1599.
    • Previously it would have been set to ConnectionState.Closed but the connection wasn't truly closed.
    • Call MySqlConnection.Close() to fully close the connection before calling Open() again.
    • Better yet, call .Dispose() (ideally with a using declaration) and create a new MySqlConnection instance to recover from failure.
  • Possibly breaking MySqlConnection.ResetConnectionAsync will consistently throw a MySqlException: #​1602.
  • Implement MariaDB PARSEC authentication: #​1540, #​1606.
  • Support the VECTOR data type: #​1549.
  • Implement COM_STMT_SEND_LONG_DATA to stream large parameter values: #​943.
  • Add MySqlConnectorTracingOptions and builder APIs to configure tracing output: #​1524.
  • Read Guid values from stored procedure out parameters: #​1528.
  • Mark MySqlDbType with [DbProviderSpecificTypeProperty(true)]: #​1557.
  • Allow loopback connections (e.g., Google Cloud SQL Proxy) to use clear-text password or public key retrieval: #​1534, #​1542.
  • Improve schema metadata with MariaDB by reading stored procedure metadata from mysql.proc: #​1547.
  • Improve XA transaction rollback handling: #​1585, #​1589.
  • Free large cached payload buffers when returning sessions to the pool to reduce memory usage: #​1587.
  • Suppress error-level logging when a command is canceled: #​1544.
  • Fix MySqlBulkCopy auto-detected column mappings: #​1568.
  • Fix Foreign Keys schema SQL syntax: #​1601.
  • Fix extra roundtrip for caching_sha2_password: #​1562.
  • Fix cancellation with AWS RDS Proxy: #​1581.
  • Optimization: Use System.Threading.Lock for .NET 9.0+.
  • Optimization: Use PemEncoding in .NET 5.0+ and UTF-8 methods in .NET 10.0+.
  • Thanks to @​djeman, @​jnoordsij, @​NETSphereSoft, @​PatrickMNL, @​petedishman, and @​rusher for contributions to this release.

2.5.0-beta.1

2.5.0 Beta 1

  • Support .NET 10: #​1595.
  • Possibly breaking MySqlConnection.State will be set to ConnectionState.Broken when there is a network error: #​1599.
    • Previously it would have been set to ConnectionState.Closed but the connection wasn't truly closed.
    • Call MySqlConnection.Close() to fully close the connection before calling Open() again.
    • Better yet, call .Dispose() (ideally with a using declaration) and create a new MySqlConnection instance to recover from failure.
  • Possibly breaking MySqlConnection.ResetConnectionAsync will consistently throw a MySqlException: #​1602.
  • Implement MariaDB PARSEC authentication: #​1540.
  • Support the VECTOR data type: #​1549.
  • Implement COM_STMT_SEND_LONG_DATA to stream large parameter values: #​943.
  • Add MySqlConnectorTracingOptions and builder APIs to configure tracing output: #​1524.
  • Read Guid values from stored procedure out parameters: #​1528.
  • Mark MySqlDbType with [DbProviderSpecificTypeProperty(true)]: #​1557.
  • Allow loopback connections (e.g., Google Cloud SQL Proxy) to use clear-text password or public key retrieval: #​1534, #​1542.
  • Improve schema metadata with MariaDB by reading stored procedure metadata from mysql.proc: #​1547.
  • Improve XA transaction rollback handling: #​1585, #​1589.
  • Free large cached payload buffers when returning sessions to the pool to reduce memory usage: #​1587.
  • Suppress error-level logging when a command is canceled: #​1544.
  • Fix MySqlBulkCopy auto-detected column mappings: #​1568.
  • Fix Foreign Keys schema SQL syntax: #​1601.
  • Fix extra roundtrip for caching_sha2_password: #​1562.
  • Fix cancellation with AWS RDS Proxy: #​1581.
  • Optimization: Use System.Threading.Lock for .NET 9.0+.
  • Optimization: Use PemEncoding in .NET 5.0+ and UTF-8 methods in .NET 10.0+.
  • Thanks to @​djeman, @​jnoordsij, @​NETSphereSoft, @​PatrickMNL, @​petedishman, and @​rusher for contributions to this release.

2.4.0

  • Support .NET 9.0.
  • Possibly breaking Mark MySqlConnectorLogManager.Provider as [Obsolete]: #​1397.
  • Possibly breaking Remove end-of-life .NET 7 target framework.
    • Users who wish to use DbDataSource need to target .NET 8.0 or later.
  • Possibly breaking Update dependencies:
    • Microsoft.Extensions.Logging.Abstractions from 7.0.1 to 8.0.2.
    • System.Diagnostics.DiagnosticSource from 7.0.2 to 8.0.1.
  • Support trimming and native AOT: #​1265.
  • Add MySqlDataSourceBuilder.UseConnectionOpenedCallback: #​1508.
  • Add MySqlDbColumn.TableName: #​1521.
  • Support zero-configuration SSL with MariaDB: #​1500.
  • Support SET data type in functions: #​1491.
  • Remove TABLESPACES schema: #​1477.
  • Rewrite server redirection logic based on latest MariaDB specification: #​1499.
  • Change variable name for better server compatibility: #​1502.
  • Performance: Avoid SET NAMES commands when not necessary: #​1497.
  • Fix "Can't replace active reader": #​1469.
  • Fix potential NullReferenceException in MySqlConnection.Cancel: #​1506.
  • Fix InvalidOperationException in FinishQuerying: #​1341.
  • Provide logger to new MySqlConnection: #​1510.
  • Use correct hostname when cancelling query: #​1514.
  • Thanks to @​AlexKerman and @​rusher for contributions to this release.

2.4.0-beta.2

  • Remove end-of-life .NET 7 target framework.
    • Users who wish to use DbDataSource need to target .NET 8.0 or later.
  • Fix "Can't replace active reader": #​1469.
  • Update dependencies:
    • Microsoft.Extensions.Logging.Abstractions from 7.0.1 to 8.0.2.
    • System.Diagnostics.DiagnosticSource from 7.0.2 to 8.0.1.

2.4.0-beta.1

  • Support .NET 9.0.
  • Support zero-configuration SSL with MariaDB: #​1500.
  • Add MySqlDataSourceBuilder.UseConnectionOpenedCallback: #​1508.
  • Rewrite server redirection logic based on latest MariaDB specification: #​1499.
  • Support SET data type in functions: #​1491.
  • Performance: Avoid SET NAMES commands when not necessary: #​1497.
  • Fix potential NullReferenceException in MySqlConnection.Cancel: #​1506.
  • Provide logger to new MySqlConnection: #​1510.
  • Use correct hostname when cancelling query: #​1514.
  • Remove TABLESPACES schema: #​1477.
  • Change variable name for better server compatibility: #​1502.
  • Thanks to @​rusher for contributions to this release.

2.3.7

  • Fix NullReferenceException in MySqlDataReader.ActivateResultSet and MySqlDataReader.DisposeAsync: #​1459.
    • This bug likely also caused "Packet received out-of-order" errors.
    • This was introduced in 2.3.0.
  • Fix rare NullReferenceException in ServerSession during cancellation: #​1472.
  • Fix Foreign Keys schema not being generated asynchronously.

2.3.6

  • Fix VerifyCA incompatibility with AWS Aurora: #​1462.
  • Verify that the server's root certificate is present (in the list of provided CA certificates) when using the SslCa connection string option and SslMode is VerifyCA or VerifyFull.
  • Optimization: Use pipelining to begin a transaction: #​1286.
    • Use Pipelining = False; in your connection string to disable this optimization if there are compatibility issues.
  • Optimization: cache START TRANSACTION payloads.
  • Add transaction logging: #​1411.
  • Fix incompatibility with MySQL Server 5.1: #​1445.
    • This fixes a regression introduced in 2.3.0.
  • Thanks to @​CRC32EX, @​dlenski, and @​rbanks54 for documentation contributions in this release.

2.3.5

  • DLL files within the NuGet packages are now digitally signed.
  • Thanks to Devolutions for sponsoring this change.

2.3.4

  • Unify Application Name connection string option and MySqlDataSourceBuilder.UseName: #​1434.
  • Remove TLS version fallback code: #​1409.
  • Fix ArgumentOutOfRangeException in TimerQueue.Add: #​1424.
  • Fix InvalidCastException when using stored procedures with MySQL 5.0: #​1431.
  • Fix hang when disposing MySqlDataSource twice on .NET Framework.
  • Thanks to @​SolacomYongYao for contributions to this release.

2.3.3

  • Support COLUMN_NAME restriction for IndexColumns schema; this improves NHibernate compatibility.

2.3.2

  • Add Foreign Keys, Indexes, Index Columns schemas: #​1419.
  • Fix exception when server doesn't send expected metadata: #​1398.
  • Clear activity tags when retrying TLS: #​1405.
  • Use underlying enum type when writing binary parameters: #​1421.
  • Avoid retrying TLS negotiation when a non-recoverable exception occurs.
  • Thanks to @​daebo01, @​eaexo, and @​trejjam for contributions to this release.

2.3.1

MySqlConnector

  • Add db.client.connections.timeouts counter to metrics: #​1392.
  • Allow empty schemaRestrictions array to be passed to GetSchema: #​1394.
  • Use higher-resolution timestamps for duration metrics: #​1395.
  • Possibly Breaking Use seconds as the units for duration metrics; change type to double: #​1396.
  • Thanks to @​Thorium for contributions to this release.

MySqlConnector.DependencyInjection

  • Add AddKeyedMySqlDataSource to support keyed services: #​1391.
  • Update Microsoft.Extensions.DependencyInjection.Abstractions dependency to 8.0.0.

2.3.0

  • Support .NET 8.0.
    • Mark some serialization APIs as [Obsolete].
    • Implement DbBatchCommand.CreateParameter: #​1352.
    • Optimizations: Use IUtf8SpanFormattable, Ascii.FromUtf16, Guid(bigEndian: true) constructor, argument-throwing helpers, etc.
  • Support .NET Framework 4.8 (net48) TFM: #​1355.
    • This allows TlsVersion = TLSv1.3 to be used on .NET Framework 4.8.
  • Drop support for .NET 4.6.1 and .NET Core 3.1: #​636, #​1273.
    • .NET 4.6.1 support ended on 26 April 2022, and .NET Core 3.1 on 13 December 2022.
    • The minimum supported versions are now .NET Framework 4.6.2 and .NET 6.0, although other frameworks should be supported via netstandard2.0.
  • MySqlDataSource is now available for all TFMs, not just .NET 7.0: #​1269.
    • This provides a single place to configure a MySQL connection and makes it easier to register MySqlConnection with dependency injection.
    • Add MySqlDataSourceBuilder class to configure MySqlDataSource instances.
    • Add MySqlDataSource.Name and MySqlDataSourceBuilder.UseName.
  • Microsoft.Extensions.Logging is now used as the core logging abstraction: #​1110.
    • MySqlConnectorLogManager.Provider can still be used to add a logging destination, but it is now deprecated.
    • Use MySqlDataSourceBuilder.UseLoggerFactory to configure logging.
  • Add new MySqlConnector.DependencyInjection package: #​1271.
    • MySqlDataSource and MySqlConnection can be registered with dependency injection by using builder.Services.AddMySqlDataSource(connectionString).
    • This also configures logging automatically.
  • Expose connection pool metrics: #​491.
  • Remove COM_MULTI protocol support: #​946.
  • Support ZEROFILL columns in MySqlDecimal: #​1354.
  • Support higher-precision DateTime values: #​1379.
  • Use ValueTask in MySqlBulkCopy API for all TFMs: #​1364.
    • Breaking This changes the return type of WriteToServerAsync from Task<MySqlBulkCopyResult> to ValueTask<MySqlBulkCopyResult> on .NET Framework
  • Support skipping metadata for prepared statements with MariaDB 10.6 and later: #​1301.
  • Support multiple authentication methods when connecting: #​1303.
  • Support per-query variables for CommandBehavior.SchemaOnly and SingleRow: #​1312.
  • Recycle MySqlDataReader objects: #​1277.
  • Perform XA rollback when preparing a transaction fails: #​1348.
  • Implement faster parsing for result sets with multiple rows: #​1330.
  • Optimize parameter encoding for ASCII strings: #​1296.
  • Use TcpClient.ConnectAsync overload with CancellationToken on .NET 5.0 and later: #​1291.
  • Fix cancellation when using a redirected connection: #​1305.
  • Fix MySqlConnection.CloneWith for connections created from a MySqlDataSource: #​1306.
  • Work around ephemeral PEM bug on Windows: #​1278.
  • Reduce allocations on common code paths.
  • Fix bug when column name begins with @ in MySqlBulkCopy: #​1365.
  • Ignore MySqlDbType when serializing enum values: #​1384.
  • Fix bug that didn't copy MySqlDataSource in MySqlConnection.Clone: #​1267.
  • Fix version parsing for MariaDB 11.0 and later: #​1311.
  • Fix potential error in reallocating an internal buffer when writing ASCII text.
  • Update handling of ActivityStatus to latest conventions: #​1334.
  • Reduce overhead of CommandTimeout: #​1338.
  • Reword end-of-stream message to be more generic: #​1383.
  • Thanks to @​gboucher90, @​JackBOBO, @​Kielek, @​rusher, and @​stilettk for contributions to this release.

2.2.7

  • Respect ConnectTimeout when resetting connection: #​1321.
  • Prevent connection pool falling back to an unsupported TLS version: #​1349.

2.2.6

  • Ignore deadlock exception when rolling back an XA transaction: #​1317.
  • Work around ephemeral PEM bug on Windows: #​1278.
  • Support new MariaDB version numbers: #​1259.
  • Thanks to @​rusher for contributions to this release.

2.2.5

  • Add support for DECIMAL UNSIGNED, fixing error in DeriveParameters: #​1272.
  • Fix parsing nan as float/double value on .NET Framework.

Full Changelog: mysql-net/MySqlConnector@2.2.4...2.2.5

2.2.4

2.2.3

  • Avoid renormalizing parameter names when executing a prepared command: #​1252.
  • Fix "Unknown column SRS_ID" error in GetSchema: #​1258.
  • Use a standardized value for the TableName property of the DataTable returned from GetSchema.
  • Minor performance improvements.
    • Remove FormatInvariant internal helper method: #​1253.
    • Eliminate temporary byte array when getting real server version.
  • Thanks to @​neuecc for contributions to this release.

2.2.2

  • Fix memory leak when initializing a TLS connection: #​1247.
  • Fix failure to dispose objects if an exception is thrown when connecting: #​1248.

Full Changelog: mysql-net/MySqlConnector@2.2.1...2.2.2

2.2.1

  • Fix failure to load client SSL private key files: #​1242.
    • Builds for .NET 6.0 and later were not affected.

2.2.0

  • Support .NET 7.0.
    • Add MySqlDataSource, an implementation of DbDataSource for MySQL: #​1208.
    • Use source-generated regular expressions.
    • Use UTF-8 literals to perform UTF-8 conversion at compile-time instead of runtime.
  • Breaking Drop support for .NET 4.5: #​1209.
  • Add DNS Check Interval connection string option: #​1201.
  • Support restrictions in MySqlConnection.GetSchema.
    • Schema collections are code-generated: #​1190.
  • Use user-provided callbacks when opening new connection to KILL QUERY: #​1179.
  • Set activity tags when opening a connection fails: #​1196.
  • Raise Component.Disposed event from MySqlConnection.DisposeAsync: #​1235.
  • Use ValueTask instead of ValueTask<int>: #​1233.
    • Breaking This changes the return type of MySqlConnection.ResetConnectionAsync for netstandard2.0, net461, net471.
  • Possibly Breaking Normalize the order of keys in the connection string returned by MySqlConnectionStringBuilder.ConnectionString: #​1217.
  • Possibly Breaking Update dependencies.
    • Update System.Diagnostics.DiagnosticSource to 6.0.0.
    • Update System.Memory to 4.5.5.
    • Update System.Threading.Tasks.Extensions to 4.5.4: #​1144.

2.1.13

  • Swallow (but log) exceptions in MySqlDataReader.Dispose(Async): #​1154.
  • Add MySqlDataReader.GetBytes(string): #​1197.
  • Eliminate allocation in OnStatementBegin: #​1207.
  • Thanks to @​CorentinPtrl and @​iamcarbon for contributions to this release.

2.1.12

2.1.11

  • Fix NullReferenceException in MySqlConnector.Utilities.TimerQueue.Callback: #​1177.
  • Support floating point infinity: #​1185.
  • Thanks to @​maicodio for contributions to this release.

2.1.10

  • Add MySqlBulkCopy.ConflictOption setting: #​1176.
  • Thanks to @​klym1 for contributions to this release.

2.1.9

  • Set Activity status to ERROR if an exception occurs during ExecuteReader: #​1171.
  • SSL Mode = Disabled is supported as a synonym for SSL Mode = None: #​1168.
    • Added MySqlSslMode.Disabled enum value.
  • MySqlAttribute implements ICloneable: #​1169.
  • (Internal) Unix domain socket connection uses UnixDomainSocketEndPoint class: #​1160.
  • Thanks to @​qq362220083 for contributions to this release.

2.1.8

  • Fix bug that reset MySqlCommand.LastInsertedId to -1 between commands: #​1147.
  • Fix bug using MySqlBulkCopy with DateOnly and TimeOnly: #​1146.

Full Changelog: mysql-net/MySqlConnector@2.1.7...2.1.8

2.1.7

  • MySqlCommand no longer automatically appends a semicolon to the user-provided CommandText: #​1133.
    • This improves compatibility with Sphinx Search (SphinxQL).
  • MySqlBulkCopy supports MySqlDecimal, BigInteger, DateOnly, TimeOnly: #​1143.
  • Fix InvalidOperationException when the TLS Version connection string option contains multiple values: #​1138.

2.1.6

  • Fix unintentional TLS downgrade: #​1132.
    • To ensure the desired TLS version is used, set TlsVersion in your connection string.
  • Fix deadlock when cancelling a command: #​1131.
  • Fix ArgumentException when calling GetSchema("Parameters") against MySQL 8.0: #​1128.
  • Set MySqlParameter.Size in DeriveParameters: #​1125.
  • Thanks to @​ahydrax and @​lostatredrock for contributions to this release.

2.1.5

  • Speed up MySqlDataAdapter.Update when UpdateBatchSize is large: #​1124.
  • Remove DO SLEEP(0) use after cancelling a query: #​1115.
    • This improves compatibility with MariaDB Xpand.
  • Encode NUL bytes as \0 on the wire: #​1121.
    • This improves compatibility with SingleStore.

2.1.4

  • Fix InvalidOperationException if MySqlDataReader.RecordsAffected was read after calling Close() or Dispose(): #​1122.
    • This was a regression introduced by #​1096 in 2.1.3.

2.1.3

  • Fix Use Compression = True when running under .NET 6.0: #​1120.
  • Fix calculation of affected rows (the return value of ExecuteNonQuery) for compound statements: #​1096.
  • Use a better FormatException message when a GUID can't be read: #​1114.
  • Use cryptographic one-shot operations on .NET 5.0 and later.
  • Performance: Use SkipLocalsInit where possible.

2.1.2

  • Fix incorrect results when using prepared commands with MySQL Server 8.0.23–8.0.25: #​1106.
    • Those server versions advertise support for query attributes, but do not fully support them for prepared statements.
    • The server-side bug is triggered by the client-side support for query attributes added in MySqlConnector 2.1.0.

2.1.1

  • Fix InvalidOperationException when OpenAsync is called again after being canceled: #​1097.
  • Allow OpenAsync to be canceled earlier.

2.1.0

  • Opening a connection from the pool is now twice as fast: #​1089.
    • This may fail with Amazon Aurora RDS; to explicitly disable this, set Pipelining = False; in the connection string.
  • Add support for query attributes: #​930.
    • This requires MySQL Server 8.0.23 (or later) for regular commands, and MySQL Server 8.0.26 (or later) for prepared commands.
    • Add attributes to the MySqlCommand.Attributes collection to send them to the server when the command is executed.
  • Add MySqlDecimal support: #​1070.
  • Improve MySqlDataReader.GetX exceptions for NULL values: #​1092.
  • Improve detection of Azure Database for MySQL proxies: #​1093.
  • Update Microsoft.SourceLink.GitHub.
  • Thanks to @​ejball and @​sumitdvlp for contributions to this release.

MySqlConnector.Logging.Microsoft.Extensions.Logging

  • Logger names are now prefixed with MySqlConnector. by default: #​1080.
    • To return to the previous behavior, use MicrosoftExtensionsLoggingLoggerProvider(loggingFactory, omitMySqlConnectorPrefix: true).
  • Added .UseMySqlConnectorLogging() extension method to add logging easily.

2.0.0

  • Target .NET 6.0.
    • Breaking Update the MySqlBatch (experimental API) to match .NET 6.0 API changes.
    • Support DateOnly and TimeOnly structs: #​963.
    • Use ZLibStream for compression: #​957.
    • Use X_OR_GREATER preprocessor definitions: #​958.
  • Breaking Improve MySqlBulkCopy API: #​1012.
  • Breaking Remove ConnectionIdlePingTime: #​1042.
    • The Connection Idle Ping Time connection string option is still accepted, but has no effect.
    • If Connection Reset = False, MySqlConnection.Open will return a pooled connection (if one is available) without testing it for liveness (by pinging the server). If the server has closed the pooled connection, MySqlConnection.Open will succeed, but the first operation on that connection will fail. Command execution should be wrapped in a try/catch/retry loop to handle this scenario.
    • Connection Reset = False improves performance but may degrade reliability; Connection Reset = True, which is the default, is still recommended for greatest reliability.
  • Breaking Change how option keys are serialized when retrieving the MySqlConnectionStringBuilder.ConnectionString property:
    • For example, User Id is now User ID, DefaultCommandTimeout is now Default Command Timeout, etc.
    • All existing connection strings are still valid, and all the previous aliases for connection string options are still accepted.
    • The primary connection string option key is listed first in the documentation at https://mysqlconnector.net/connection-options/.
  • Breaking Seal MySqlCommandBuilder and MySqlConversionException.
  • Remove netstandard1.3 and netcoreapp2.1 target frameworks: #​1031, #​1067.
  • Add ActivitySource for tracing: #​1036.
  • Reduce default log message severity: #​981.
  • Add MySqlConnection.ProvideClientCertificatesCallback, MySqlConnection.ProvidePasswordCallback, MySqlConnection.RemoteCertificateValidationCallback: #​800, #​976.
  • Support BigInteger as parameter value: #​1069.
  • Add more values to MySqlErrorCode: #​1048.
  • Make MySqlError.Code obsolete: #​1011.
    • Use ErrorCode property instead.
  • Remove BackgroundConnectionResetHelper: #​1013.
    • MySqlConnectionStringBuilder.DeferConnectionReset is obsolete and will always be treated as if it's true.
  • Add NuGet package READMEs: #​1053.
  • Add [Category], [DefaultValue], and [Description] attributes to all MySqlConnectionStringBuilder properties.
  • Improve performance of Regex usage internally.
  • Throw an informative exception if DELIMITER is used in a SQL statement: #​1010.
  • Fix MySqlConnectionStringBuilder.TryGetValue: #​1030.
  • Fix incorrect value for MySqlCommand.LastInsertedId when executing multiple commands: #​1026.
  • Fix bug executing stored procedures with backticks in their names: #​1029.
  • Fix rare ObjectDisposedException that could be thrown when a connection timeout occurred.

2.0.0-rc.1

  • Breaking Improve MySqlBulkCopy API: #​1012.
  • Remove netcoreapp2.1 target framework: #​1067.
  • Support BigInteger as parameter value: #​1069.
  • Add MySqlConnection.PasswordProviderCallback: #​800.
  • Add MySqlConnection.ProvideClientCertificatesCallback: #​976.
  • Add MySqlConnection.RemoteCertificateValidationCallback: #​976.
  • Add NuGet package READMEs: #​1053.
  • Improve performance of Regex usage internally.

2.0.0-beta.5

  • Update version to 2.0 due to scope of changes in the 1.4.0 beta releases.
  • Add ActivitySource for tracing: #​1036.
  • Build with .NET 6.0 RC 2.

1.4.0-beta.4

  • Breaking Remove ConnectionIdlePingTime: #​1042.
    • The Connection Idle Ping Time connection string option is still accepted, but has no effect.
    • If Connection Reset = False, MySqlConnection.Open will return a pooled connection (if one is available) without testing it for liveness (by pinging the server). This improves performance but may degrade reliability. (Connection Reset = True, which is the default, is still recommended for greatest reliability.)
    • If the server has closed the pooled connection, MySqlConnection.Open will succeed, but the first operation on that connection will fail. Command execution should be wrapped in a try/catch/retry loop to handle this scenario.
  • Add more values to MySqlErrorCode: #​1048.
  • Fix bug executing stored procedures with backticks in their names: #​1029.
  • Remove inner exception for UnableToConnectToHost exception: #​1035.
  • Fix rare ObjectDisposedException that could be thrown when a connection timeout occurred.
  • Reword "recovering leaked sessions" log message.

1.4.0-beta.3

  • Breaking Remove netstandard1.3 target framework: #​1031.
  • Breaking Seal MySqlCommandBuilder and MySqlConversionException.
  • Fix incorrect value for MySqlCommand.LastInsertedId when executing multiple commands: #​1026.
  • Add [Category], [DefaultValue], and [Description] attributes to all MySqlConnectionStringBuilder properties.
  • Fix MySqlConnectionStringBuilder.TryGetValue: #​1030.
  • Breaking Change how option keys are serialized when retrieving the MySqlConnectionStringBuilder.ConnectionString property:
    • For example, User Id is now User ID, DefaultCommandTimeout is now Default Command Timeout, etc.
    • All existing connection strings are still valid, and all the previous aliases for connection string options are still accepted.
    • The primary connection string option key is listed first in the documentation at https://mysqlconnector.net/connection-options/.

1.4.0-beta.2

  • Support .NET 6.0 Preview 7
    • Breaking Update the MySqlBatch (experimental API) to match the latest .NET 6.0 API changes.
  • Throw an informative exception if DELIMITER is used in a SQL statement: #​1010.
  • Fix bug that failed to deserialize a binary row (from a prepared statement) correctly: #​1018.

1.4.0-beta.1

  • Reduce default log message severity: #​981.
  • Make MySqlError.Code obsolete: #​1011.
    • Use ErrorCode property instead.
  • Remove BackgroundConnectionResetHelper: #​1013.
    • MySqlConnectionStringBuilder.DeferConnectionReset is obsolete and will always be treated as if it's true.
  • Support .NET 6.0 Preview:
    • Support DateOnly and TimeOnly structs: #​963.
    • Use ZLibStream for compression: #​957.
    • Use X_OR_GREATER preprocessor definitions: #​958.

1.3.14

  • Fix bug that failed to deserialize a binary row (from a prepared statement) correctly: #​1018.

1.3.13

  • Remove inner exception for UnableToConnectToHost exception: #​1035.
  • Reword "recovering leaked sessions" log message.

1.3.12

  • Fix bug executing stored procedures with backticks in their names: #​1029.

1.3.11

  • Add MySqlError.ErrorCode: #​1011.
  • Allow MySqlDataReader.GetDateTime to read a VARCHAR column as a DateTime: #​980.
  • Support the NEWDATE column type: #​1007.

1.3.10

  • Handle NoBackslashEscapes for binary parameter values: #​999.
  • Fix NotSupportedException when cancelling a MySqlCommand in a TransactionScope: #​1001.
  • Ignore InvalidOperationException thrown from MySqlConnection.Cancel: #​1002.
  • Set the default value of DeferConnectionReset to true; this disables background connection reset and restores the pre-1.3 behavior.
  • Thanks to @​kpreisser for contributions to this release.

1.3.9

  • Use StringBuilder.GetChunks (in .NET 5.0) for MySqlParameter: #​977.
  • Fix error encoding multibyte characters in MySqlBulkCopy: #​974.
  • Fix error encoding multibyte characters for StringBuilder MySqlParameter values in .NET 5.0.

1.3.8

  • Reduce latency of resetting connections: #​982.

1.3.7

  • Add support for SingleStore: #​968.
  • Thanks to @​carlsverre and @​tavanesov-ua for contributions to this release.

1.3.6

  • Add NuGet Package ReadMe: #​978.

1.3.5

  • Support StringBuilder, Memory<char>, and ReadOnlyMemory<char> as MySqlParameter.Value values: #​975.
  • Fix ArgumentException in MySqlBulkCopy: #​974.

1.3.4

  • Improve compatibility with MySQL Server 8.0.24:
    • Ignore new ER_CLIENT_INTERACTION_TIMEOUT error packet sent to timed-out connections: #​970.
    • Known Issue: Connections with UseCompression=true may throw a MySqlProtocolException when timed out.

1.3.3

  • Support Enum parameters in prepared commands: #​965.
  • Fix OverflowException reading OkPayload: #​966.
  • Fix internal SQL parsing error with C-style comments.

1.3.2

  • Fix a bug that could cause a timed-out query to still throw a QueryInterrupted MySqlException instead of CommandTimeoutExpired.

1.3.1

  • Remove two new Info log messages added in 1.3.0: #​956.
    • The equivalent messages in 1.2.1 were at Debug level.
  • Make Adler32 class internal.
    • This was not intended to be added to the public API in 1.3.0.

1.3.0

  • Connections are now reset asynchronously in the background: #​178.
    • This speeds up MySqlConnection.Open(Async) but still cleans up connections between uses.
    • Use DeferConnectionReset=true in the connection string to revert to the old behaviour.
    • Experimental Use ConnectionIdlePingTime=300 in the connection string to avoid any network I/O when retrieving a connection from the pool; this is fastest but may return invalid connections from Open. This setting is experimental and may change in the future.
  • Change default value of IgnorePrepare to false: #​929.
    • Calling MySqlCommand.Prepare(Async) will have an effect by default.
  • Implement Azure Server Redirection: #​789.
    • Support community protocol for server redirection: #​945.
  • Support MemoryStream as a value for MySqlParameter.Value: #​943.
  • Implement MySqlException.IsTransient: #​849.
  • Implement IComparable<MySqlDateTime> and IEquatable<MySqlDateTime> on MySqlDateTime.
  • Breaking Remove public constructor for MySqlConversionException.
    • This constructor was never intended to be public.
  • Implement serialization for exceptions.
  • Report CommandTimeoutExpired consistently: #​939.
    • This changes the MySqlException.ErrorCode from QueryInterrupted to CommandTimeoutExpired.
  • Nagle's Algorithm is disabled on TCP sockets: #​921.
  • Adler32 checksum (for compressed packets) uses hardware acceleration: #​865.
  • Set timeouts for cancellation operations from CancellationTimeout connection string option: #​951.
  • Throw OperationCanceledException from OpenAsync when the CancellationToken is cancelled: #​931.
  • Use transaction for 'SHOW WARNINGS': #​918.
  • Improve exception message for unsupported parameter types: #​925.
  • Fix exception in server version parsing: #​934.
  • Fix silent failure to use TLS 1.3 (when explicitly requested) on older frameworks.
  • Fix error deserialising MySqlException.ErrorCode property.
  • Prevent exceptions being thrown from MySqlTransaction.Dispose: #​923.
  • Fix nested MySqlException (thrown in some scenarios from ExecuteReader).
  • Use .NET 5.0 methods to load PEM certificates.
  • Thanks to @​novak-as for contributions to this release.

1.3.0-beta.4

  • Adler32 checksum (for compressed packets) uses hardware acceleration: #​865.
  • Report CommandTimeoutExpired consistently: #​939.
  • MySqlException.IsTransient is now false for CommandTimeoutExpired: #​940.
  • Support MemoryStream as a value for MySqlParameter.Value: #​943.
  • Throw OperationCanceledException from OpenAsync when the CancellationToken is cancelled: #​931.
  • Support community protocol for server redirection: #​945.
  • Fix nested MySqlException (thrown in some scenarios from ExecuteReader).
  • Remove public constructor for MySqlConversionException.
  • Implement serialization for exceptions.
  • Use .NET 5.0 methods to load PEM certificates.
  • Thanks to @​novak-as for contributions to this release.

1.3.0-beta.3

  • Implement Azure Server Redirection: #​789.
  • Change default value of IgnorePrepare to false: #​929.
    • Calling MySqlCommand.Prepare(Async) will have an effect by default.
  • Implement IComparable<MySqlDateTime> and IEquatable<MySqlDateTime> on MySqlDateTime.
  • Improve exception message for unsupported parameter types: #​925.
  • Fix exception in server version parsing: #​934.
  • Fix silent failure to use TLS 1.3 (when explicitly requested) on older frameworks.

1.3.0-beta.2

  • Implement MySqlException.IsTransient: #​849.
  • Nagle's Algorithm is disabled on TCP sockets: #​921.
  • Prevent exceptions being thrown from MySqlTransaction.Dispose: #​923.
  • Fix error deserialising MySqlException.ErrorCode property.

1.3.0-beta.1

  • Connections are now reset asynchronously in the background: #​178.
    • This speeds up MySqlConnection.Open(Async) but still cleans up connections between uses.
    • Use DeferConnectionReset=true in the connection string to revert to the old behaviour.
    • Experimental Use ConnectionIdlePingTime=300 in the connection string to avoid any network I/O when retrieving a connection from the pool; this is fastest but may return invalid connections from Open. This setting is experimental and may change in the future.
  • Use transaction for SHOW WARNINGS: #​918.

1.2.1

  • Fix bug in extracting PEM data when there's extra data in the certificate file: #​912.
  • Thanks to @​lauxjpn for contributions to this release.

1.2.0

  • Add TlsCipherSuites connection string option for fine-grained control of TLS cipher suites: #​904.
    • This option is only supported on Linux when using .NET Core 3.1 or .NET 5.0 or later.
  • Fix bug loading GUIDs with MySqlBulkCopy.

1.1.0

  • Support .NET 5.0.
  • Cancel query (server-side) when CommandTimeout expires: #​455.
    • Add CancellationTimeout connection string option.
    • Implementation details discussed in this comment.
  • Return null from MySqlDataReader.GetSchemaTable when there is no result set: #​877.
  • Make DisposeAsync fully async: #​876.
  • Ignore ObjectDisposedException thrown in TryResetConnectionAsync: #​897.
  • Ignore closed/disposed connections/commands in MySqlCommand.Cancel: #​820.
  • Fix bug where sessions could time out if they were opened but no queries were ever executed.
  • Thanks to @​dlemstra and @​laurent-jeancler-realist for contributions to this release.

1.1.0-beta.1

  • Support .NET 5 RC 2
  • Cancel query (server-side) when CommandTimeout expires: #​455.
  • Return null from MySqlDataReader.GetSchemaTable when there is no result set: #​877.
  • Make DisposeAsync fully async: #​876.
  • Ignore ObjectDisposedException thrown in TryResetConnectionAsync: #​897.
  • Fix bug where sessions could time out if they were opened but no queries were ever executed.
  • Thanks to @​dlemstra for contributions to this release.

1.0.1

  • Support ENUM columns that use the MYSQL_TYPE_ENUM type in their column metadata: #​850.
  • Allow MySqlCommand.CommandText and .Connection to be changed while another command is executing: #​867.
  • Make schema collection names (for MySqlConnection.GetSchema(collectionName)) case-insensitive: #​852.
  • Fix MySqlBulkLoader with Azure Database for MySQL/MariaDB: #​853.
  • Fix bug preventing the retrieval of more than 2³¹-1 rows in a single query: #​863.
  • Fix MySqlParameterCollection.Insert implementation: #​869.
  • Fix integer overflow in sequence number for compressed packets.
  • Fix ZLIB header flags verification for compressed packets.
  • Thanks to @​akamor for contributions to this release.

1.0.0

  • Breaking Change namespace to MySqlConnector: #​824.
  • Breaking Rename MySqlClientFactory to MySqlConnectorFactory: #​839.
  • Breaking All MySqlConnectionStringBuilder string properties return "" (not null) when unset: #​837.
  • Breaking Remove MySqlInfoMessageEventArgs.errors property; use .Errors instead.
  • Implement async schema APIs: #​835.
  • Implement MySqlConnectorFactory.CanCreateXyz methods: #​838.
  • Add net5.0 target framework.
  • Add MySqlException.ErrorCode: #​830.
  • Add MySqlConnection.ResetConnectionAsync: #​831.
  • Add documentation at https://mysqlconnector.net/api/ built from XML doc comments: #​827.
  • Allow rows larger than 1 MiB in MySqlBulkCopy: #​834.
  • Reduce memory allocations when hashing passwords (during login).

1.0.0-beta.6

  • Potentially Breaking Introduce MySqlConnection.GetSchemaAsync overloads to match latest .NET 5 API proposal: #​835.
  • Support GEOMCOLLECTION data type alias in MySQL Server 8.0: #​845.

1.0.0-beta.4

  • Breaking Rename MySqlClientFactory to MySqlConnectorFactory: #​839.
  • Breaking All MySqlConnectionStringBuilder string properties return "" (not null) when unset: #​837.
  • Implement MySqlConnectorFactory.CanCreateXyz methods: #​838.

1.0.0-beta.3

Fix connection pool leak when a failure (e.g., timeout) occurs on a connection: #​836.

1.0.0-beta.2

  • Breaking Remove MySqlInfoMessageEventArgs.errors property; use .Errors instead.
  • Implement async schema APIs: #​835.
  • Allow rows larger than 1 MiB in MySqlBulkCopy: #​834.
  • Fix Failed to read the result set. error when using MySqlBulkCopy: #​780.

1.0.0-beta.1

  • Breaking Change namespace to MySqlConnector: #​827.
  • Add MySqlConnection.ResetConnectionAsync: #​831.
  • Add MySqlException.ErrorCode: #​830.
  • Add documentation at https://mysqlconnector.net/api/ built from XML doc comments: #​827.
  • Add net5.0 target framework.
  • Reduce memory allocations when hashing passwords (during login).

0.69.10

  • Ignore ObjectDisposedException thrown in TryResetConnectionAsync: #​897.
  • Thanks to @​laurent-jeancler-realist for contributions to this release.

0.69.9

  • Return null from MySqlDataReader.GetSchemaTable when there is no result set: #​877.

0.69.8

  • Fix MySqlBulkLoader with Azure Database for MySQL/MariaDB: #​853.
  • Make schema collection names (for MySqlConnection.GetSchema(collectionName)) case-insensitive: #​852.

0.69.7

  • Support ENUM columns that use the MYSQL_TYPE_ENUM type in their column metadata: #​850.

0.69.6

  • Support GEOMCOLLECTION data type alias in MySQL Server 8.0: #​845.

0.69.5

  • Improve robustness of OK packet parsing: #​842.

0.69.4

  • Fix connection pool leak when a failure (e.g., timeout) occurs on a connection: #​836.

0.69.3

  • Fix Failed to read the result set. error when using MySqlBulkCopy: #​780.
    • The maximum row size supported by MySqlBulkCopyis 1 MiB.

0.69.2

  • Remove Console.WriteLine debugging code that was inadvertently added in 0.69.1.

0.69.1

  • Fix OverflowException when calling MySqlDataReader.GetInt32 on a DECIMAL column: #​832.

0.69.0

  • Breaking Change MySqlGeometry.Value from returning ReadOnlySpan<byte> to byte[]: #​829.
  • Thanks to @​lauxjpn for contributions to this release.

0.68.1

  • Fix SQL syntax error when calling BeginTransaction(IsolationLevel.Snapshot, isReadOnly: true);: #​817.

0.68.0

  • Add MySqlConnection.BeginTransaction overload with isReadOnly parameter: #​817.
  • Support MySqlCommand.Prepare for CommandType.StoredProcedure: #​742.

0.67.0

  • Breaking Add new implementations of MySqlCommand.ExecuteReaderAsync that return Task<MySqlDataReader>: #​822.
  • Breaking MySqlBulkCopy.DestinationTableName must be quoted if it contains reserved keywords or characters: #​818.
  • Automatically create expressions for BIT and binary columns in MySqlBulkCopy: #​816.
  • Throw an exception from MySqlBulkCopy if not all rows were inserted: #​814.
  • Add logging to MySqlBulkCopy.
  • Detect simple column mapping errors in MySqlBulkCopy.

0.66.0

  • Breaking Add MySqlBulkCopy.RowsCopied property: #​809.
    • The RowsCopied event is renamed to MySqlRowsCopied.
    • The MySqlRowsCopied event is no longer guaranteed to be raised at the end of copying.
  • Fix NullReferenceException when calling a stored procedure with an ENUM parameter: #​812.
  • Track MySqlParameter name changes (when added to a MySqlParameterCollection): #​811.

0.65.0

  • Add ColumnMappings to MySqlBulkCopy: #​773.

0.64.2

  • Restore COLUMN_TYPE column to GetSchema("COLUMNS"): #​807.
    • This was a regression in 0.64.1
  • Fix ignored CancellationToken in MySqlBulkCopy.WriteToServerAsync(DataTable).
  • Thanks to @​mitchydeath for contributions to this release.

0.64.1

  • Fix timeout for named pipe connections: #​804.
  • Fix ArgumentException calling MySqlConnection.GetSchema("COLUMNS"): #​802.
  • Fix Unknown column 'SRS_ID' exception calling MySqlConnection.GetSchema("COLUMNS"): #​805.

0.64.0

  • Support TlsVersion connection string option: #​760.
  • Implement IConvertible on MySqlDateTime: #​798.
  • Always use SESSION transaction isolation level: #​801.
  • Avoid composite commands when starting a transaction: #​774.

0.63.2

  • Support IsolationLevel.Snapshot in BeginTransaction: #​791.
  • Support DataSourceInformation in GetSchema: #​795.
  • Thanks to @​battyejp and @​vdaron for contributions to this release.

0.63.1

  • Fix missing quoting of table name in MySqlBulkCopy: #​792.
  • Fix bug in ChangeDatabase that rolled back an active transaction: #​794.

0.63.0

  • Experimental Add new transaction savepoint API (from .NET 5): #​775.
  • Allow TINYINT(1) (BOOL) columns to be read using MySqlDataReader.GetInt32, GetInt16, GetByte, etc. when TreatTinyAsBoolean=true: #​782.
    • These methods will always return 1 for any non-zero value in the underlying column.
  • Allow FLOAT and DOUBLE columns to be read using MySqlDataReader.GetDecimal: #​785.
  • Fix connection timeout when server doesn't respond: #​739.
  • Thanks to @​danielgindi for contributions to this release.

0.62.0

  • Experimental Add new MySqlBulkCopy class for efficiently loading a table from a DataTable or IDataReader: #​737.
    • Known issue: individual data values larger than 16MiB cannot be sent.
  • Improve nullability annotations.
    • MySqlCommand.CommandText defaults to the empty string: #​743.
    • Breaking Return empty schema when there is no result set: #​744.
  • Optimize MySqlDataReader.GetInt32: #​725.
  • Set TCP Keepalive for all operating systems: #​746.
  • Remove properties from MySqlConnectionStringBuilder when they're set to null: #​749.
  • Send shorter connector version to server: #​765.
  • Throw better exception for invalid connection string values: #​763.
  • Fix KeyNotFoundException in GetAndRemoveStream: #​757.
  • Reduce ObjectDisposedExceptions thrown from MySqlCommand.

0.61.0

  • Add MySqlConnection.CloneWith: #​736.

Commits viewable in compare view.

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    You can disable automated security fix PRs for this repo from the Security Alerts page.

---
updated-dependencies:
- dependency-name: MySqlConnector
  dependency-version: 2.6.1
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file .NET Pull requests that update .NET code labels Nov 2, 2026
@dependabot @github

dependabot Bot commented on behalf of github Nov 3, 2026

Copy link
Copy Markdown
Contributor Author

Looks like MySqlConnector is no longer updatable, so this is no longer needed.

@dependabot dependabot Bot closed this Nov 3, 2026
@dependabot
dependabot Bot deleted the dependabot/nuget/tests/SqlProvider.Core.Tests/MySql/MySqlConnector-2.6.1 branch November 3, 2026 08:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file .NET Pull requests that update .NET code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants