diff --git a/.ci/build-steps.yml b/.ci/build-steps.yml
index b3d6d0895..95e8d67a6 100644
--- a/.ci/build-steps.yml
+++ b/.ci/build-steps.yml
@@ -27,52 +27,52 @@ steps:
displayName: 'Publish MySqlConnector.Tests'
inputs:
command: 'publish'
- arguments: '-c Release -f net9.0 --no-build tests/MySqlConnector.Tests/MySqlConnector.Tests.csproj'
+ arguments: '-c Release -f net10.0 --no-build tests/MySqlConnector.Tests/MySqlConnector.Tests.csproj'
publishWebProjects: false
zipAfterPublish: false
- task: PublishPipelineArtifact@1
inputs:
- artifact: 'MySqlConnector.Tests-9.0-$(Agent.OS)'
- targetPath: 'artifacts/publish/MySqlConnector.Tests/release_net9.0'
+ artifact: 'MySqlConnector.Tests-10.0-$(Agent.OS)'
+ targetPath: 'artifacts/publish/MySqlConnector.Tests/release_net10.0'
publishLocation: 'pipeline'
- task: DotNetCoreCLI@2
displayName: 'Publish Conformance.Tests'
inputs:
command: 'publish'
- arguments: '-c Release -f net9.0 --no-build tests/Conformance.Tests/Conformance.Tests.csproj'
+ arguments: '-c Release -f net10.0 --no-build tests/Conformance.Tests/Conformance.Tests.csproj'
publishWebProjects: false
zipAfterPublish: false
- task: PublishPipelineArtifact@1
inputs:
- artifact: 'Conformance.Tests-9.0-$(Agent.OS)'
- targetPath: 'artifacts/publish/Conformance.Tests/release_net9.0'
+ artifact: 'Conformance.Tests-10.0-$(Agent.OS)'
+ targetPath: 'artifacts/publish/Conformance.Tests/release_net10.0'
publishLocation: 'pipeline'
- task: DotNetCoreCLI@2
displayName: 'Publish MySqlConnector.DependencyInjection.Tests'
inputs:
command: 'publish'
- arguments: '-c Release -f net9.0 --no-build tests/MySqlConnector.DependencyInjection.Tests/MySqlConnector.DependencyInjection.Tests.csproj'
+ arguments: '-c Release -f net10.0 --no-build tests/MySqlConnector.DependencyInjection.Tests/MySqlConnector.DependencyInjection.Tests.csproj'
publishWebProjects: false
zipAfterPublish: false
- task: PublishPipelineArtifact@1
inputs:
- artifact: 'MySqlConnector.DependencyInjection.Tests-9.0-$(Agent.OS)'
- targetPath: 'artifacts/publish/MySqlConnector.DependencyInjection.Tests/release_net9.0'
+ artifact: 'MySqlConnector.DependencyInjection.Tests-10.0-$(Agent.OS)'
+ targetPath: 'artifacts/publish/MySqlConnector.DependencyInjection.Tests/release_net10.0'
publishLocation: 'pipeline'
- task: DotNetCoreCLI@2
- displayName: 'Publish IntegrationTests (9.0)'
+ displayName: 'Publish IntegrationTests (10.0)'
inputs:
command: 'publish'
- arguments: '-c Release -f net9.0 --no-build tests/IntegrationTests/IntegrationTests.csproj'
+ arguments: '-c Release -f net10.0 --no-build tests/IntegrationTests/IntegrationTests.csproj'
publishWebProjects: false
zipAfterPublish: false
- task: PublishPipelineArtifact@1
inputs:
- artifact: 'IntegrationTests-net9.0-$(Agent.OS)'
- targetPath: 'artifacts/publish/IntegrationTests/release_net9.0'
+ artifact: 'IntegrationTests-net10.0-$(Agent.OS)'
+ targetPath: 'artifacts/publish/IntegrationTests/release_net10.0'
publishLocation: 'pipeline'
- task: DotNetCoreCLI@2
diff --git a/.ci/conformance-test-steps.yml b/.ci/conformance-test-steps.yml
index 87cdf035e..fd6d13992 100644
--- a/.ci/conformance-test-steps.yml
+++ b/.ci/conformance-test-steps.yml
@@ -11,7 +11,7 @@ steps:
condition: always()
inputs:
buildType: 'current'
- artifactName: 'Conformance.Tests-9.0-$(Agent.OS)'
+ artifactName: 'Conformance.Tests-10.0-$(Agent.OS)'
targetPath: '$(Build.BinariesDirectory)/9.0'
- task: DotNetCoreCLI@2
displayName: 'Conformance Tests'
diff --git a/.ci/integration-tests-steps.yml b/.ci/integration-tests-steps.yml
index db26b23ed..9b6dd8a0f 100644
--- a/.ci/integration-tests-steps.yml
+++ b/.ci/integration-tests-steps.yml
@@ -45,12 +45,12 @@ steps:
image: ${{ parameters.image }}
unsupportedFeatures: ${{ parameters.unsupportedFeatures }}
connectionString: 'server=localhost;port=3300;user id=mysqltest;password=test;database=mysqltest;ssl mode=none;DefaultCommandTimeout=3600;${{ parameters.connectionStringExtra }}'
- platform: 'net9.0'
+ platform: 'net10.0'
description: 'No SSL'
- template: 'integration-test-steps.yml'
parameters:
image: ${{ parameters.image }}
unsupportedFeatures: ${{ parameters.unsupportedFeatures }}
connectionString: server=localhost;port=3300;user id=mysqltest;password=test;database=mysqltest;ssl mode=required;DefaultCommandTimeout=3600;certificate file=$(Build.Repository.LocalPath)/.ci/server/certs/ssl-client.pfx;${{ parameters.connectionStringExtra }}
- platform: 'net9.0'
+ platform: 'net10.0'
description: 'SSL'
diff --git a/.ci/mysqlconnector-tests-steps.yml b/.ci/mysqlconnector-tests-steps.yml
index 0ddc01fc9..b4d422ccc 100644
--- a/.ci/mysqlconnector-tests-steps.yml
+++ b/.ci/mysqlconnector-tests-steps.yml
@@ -7,7 +7,7 @@ steps:
- task: DownloadPipelineArtifact@2
inputs:
buildType: 'current'
- artifactName: 'MySqlConnector.Tests-9.0-$(Agent.OS)'
+ artifactName: 'MySqlConnector.Tests-10.0-$(Agent.OS)'
targetPath: $(System.DefaultWorkingDirectory)
- task: DotNetCoreCLI@2
displayName: 'Run MySqlConnector.Tests'
@@ -18,7 +18,7 @@ steps:
- task: DownloadPipelineArtifact@2
inputs:
buildType: 'current'
- artifactName: 'MySqlConnector.DependencyInjection.Tests-9.0-$(Agent.OS)'
+ artifactName: 'MySqlConnector.DependencyInjection.Tests-10.0-$(Agent.OS)'
targetPath: $(System.DefaultWorkingDirectory)
- task: DotNetCoreCLI@2
displayName: 'Run MySqlConnector.DependencyInjection.Tests'
@@ -30,4 +30,4 @@ steps:
inputs:
testResultsFormat: VSTest
testResultsFiles: '**/*.trx'
- testRunTitle: 'MySqlConnector.Tests-9.0-$(Agent.OS)'
+ testRunTitle: 'MySqlConnector.Tests-10.0-$(Agent.OS)'
diff --git a/.ci/test.ps1 b/.ci/test.ps1
index 7d595e35e..40c3615f8 100644
--- a/.ci/test.ps1
+++ b/.ci/test.ps1
@@ -38,7 +38,7 @@ dotnet test -c Release -f net462
if ($LASTEXITCODE -ne 0){
exit $LASTEXITCODE;
}
-dotnet test -c Release -f net9.0
+dotnet test -c Release -f net10.0
if ($LASTEXITCODE -ne 0){
exit $LASTEXITCODE;
}
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 68dda7743..cf1b606bb 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -32,7 +32,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
- tfm: [ 'net8.0', 'net9.0' ]
+ tfm: [ 'net8.0', 'net10.0' ]
services:
mysql:
image: mysql:9.3
diff --git a/appveyor.yml b/appveyor.yml
index ef905dcaa..e8dae43f0 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -9,7 +9,7 @@ install:
- ps: Invoke-WebRequest -Uri "https://dot.net/v1/dotnet-install.ps1" -OutFile "install-dotnet.ps1"
- ps: .\install-dotnet.ps1 -Channel 6.0 -InstallDir "dotnetcli"
- ps: .\install-dotnet.ps1 -Channel 8.0 -InstallDir "dotnetcli"
- - ps: .\install-dotnet.ps1 -Channel 9.0 -InstallDir "dotnetcli"
+ - ps: .\install-dotnet.ps1 -Channel 10.0 -InstallDir "dotnetcli"
build_script:
- dotnet --info
before_test:
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index 2d692f5d9..be48d78e4 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -1,5 +1,5 @@
variables:
- DotNetCoreSdkVersion: '9.x'
+ DotNetCoreSdkVersion: '10.x'
NUGET_PACKAGES: '$(Pipeline.Workspace)/.nuget/packages'
jobs:
@@ -107,18 +107,18 @@ jobs:
displayName: 'Remove target frameworks'
inputs:
targetType: 'inline'
- script: '((Get-Content .\tests\IntegrationTests\IntegrationTests.csproj -Raw) -replace(''.*'', ''net481;net9.0'')) | Set-Content .\tests\IntegrationTests\IntegrationTests.csproj'
+ script: '((Get-Content .\tests\IntegrationTests\IntegrationTests.csproj -Raw) -replace(''.*'', ''net481;net10.0'')) | Set-Content .\tests\IntegrationTests\IntegrationTests.csproj'
- task: DotNetCoreCLI@2
displayName: 'Restore packages'
inputs:
command: 'restore'
- task: DotNetCoreCLI@2
- displayName: 'Integration tests (net481/net9.0)'
+ displayName: 'Integration tests (net481/net10.0)'
inputs:
command: 'test'
projects: 'tests/IntegrationTests/IntegrationTests.csproj'
arguments: '-c Release --no-restore -p:TestTfmsInParallel=false'
- testRunTitle: ${{ format('{0}, $(Agent.OS), {1}, {2}', 'mysql:8.0', 'net481/net9.0', 'No SSL') }}
+ testRunTitle: ${{ format('{0}, $(Agent.OS), {1}, {2}', 'mysql:8.0', 'net481/net10.0', 'No SSL') }}
env:
DATA__UNSUPPORTEDFEATURES: 'Ed25519,QueryAttributes,Redirection,StreamingResults,Tls11,TlsFingerprintValidation,UnixDomainSocket'
DATA__CONNECTIONSTRING: 'server=localhost;port=3306;user id=mysqltest;password=test;database=mysqltest;ssl mode=none;DefaultCommandTimeout=3600;AllowPublicKeyRetrieval=True;UseCompression=True'
diff --git a/global.json b/global.json
index a02bac5a2..eb5dc781d 100644
--- a/global.json
+++ b/global.json
@@ -1,6 +1,6 @@
{
"sdk": {
- "version": "9.0.200",
+ "version": "10.0.100-preview.4",
"rollForward": "latestFeature"
}
}
diff --git a/src/MySqlConnector/Logging/Log.cs b/src/MySqlConnector/Logging/Log.cs
index e9b4f88bc..b5cbbed1b 100644
--- a/src/MySqlConnector/Logging/Log.cs
+++ b/src/MySqlConnector/Logging/Log.cs
@@ -166,10 +166,10 @@ internal static partial class Log
#if NETCOREAPP3_0_OR_GREATER
[LoggerMessage(EventIds.ConnectedTlsBasic, LogLevel.Debug, "Session {SessionId} connected TLS using {SslProtocol} and {NegotiatedCipherSuite}")]
public static partial void ConnectedTlsBasic(ILogger logger, string sessionId, SslProtocols sslProtocol, TlsCipherSuite negotiatedCipherSuite);
-#endif
-
+#else
[LoggerMessage(EventIds.ConnectedTlsDetailed, LogLevel.Debug, "Session {SessionId} connected TLS using {SslProtocol}, {CipherAlgorithm}, {HashAlgorithm}, {KeyExchangeAlgorithm}, {KeyExchangeStrength}")]
public static partial void ConnectedTlsDetailed(ILogger logger, string sessionId, SslProtocols sslProtocol, CipherAlgorithmType cipherAlgorithm, HashAlgorithmType hashAlgorithm, ExchangeAlgorithmType keyExchangeAlgorithm, int keyExchangeStrength);
+#endif
[LoggerMessage(EventIds.CouldNotInitializeTlsConnection, LogLevel.Error, "Session {SessionId} couldn't initialize TLS connection")]
public static partial void CouldNotInitializeTlsConnection(ILogger logger, Exception exception, string sessionId);
@@ -204,10 +204,10 @@ internal static partial class Log
#if NETCOREAPP3_0_OR_GREATER
[LoggerMessage(EventIds.ConnectedTlsBasicPreliminary, LogLevel.Debug, "Session {SessionId} provisionally connected TLS with error {SslPolicyErrors} using {SslProtocol} and {NegotiatedCipherSuite}")]
public static partial void ConnectedTlsBasicPreliminary(ILogger logger, string sessionId, SslPolicyErrors sslPolicyErrors, SslProtocols sslProtocol, TlsCipherSuite negotiatedCipherSuite);
-#endif
-
+#else
[LoggerMessage(EventIds.ConnectedTlsDetailedPreliminary, LogLevel.Debug, "Session {SessionId} provisionally connected TLS with error {SslPolicyErrors} using {SslProtocol}, {CipherAlgorithm}, {HashAlgorithm}, {KeyExchangeAlgorithm}, {KeyExchangeStrength}")]
public static partial void ConnectedTlsDetailedPreliminary(ILogger logger, string sessionId, SslPolicyErrors sslPolicyErrors, SslProtocols sslProtocol, CipherAlgorithmType cipherAlgorithm, HashAlgorithmType hashAlgorithm, ExchangeAlgorithmType keyExchangeAlgorithm, int keyExchangeStrength);
+#endif
[LoggerMessage(EventIds.CertificateErrorUnixSocket, LogLevel.Trace, "Session {SessionId} ignoring remote certificate error {SslPolicyErrors} due to Unix socket connection")]
public static partial void CertificateErrorUnixSocket(ILogger logger, string sessionId, SslPolicyErrors sslPolicyErrors);
diff --git a/src/MySqlConnector/MySqlConnector.csproj b/src/MySqlConnector/MySqlConnector.csproj
index 023a6e28e..0baa1a010 100644
--- a/src/MySqlConnector/MySqlConnector.csproj
+++ b/src/MySqlConnector/MySqlConnector.csproj
@@ -1,7 +1,7 @@
- net462;net471;net48;netstandard2.0;netstandard2.1;net6.0;net8.0;net9.0
+ net462;net471;net48;netstandard2.0;netstandard2.1;net6.0;net8.0;net9.0;net10.0
A truly async MySQL ADO.NET provider, supporting MySQL Server, MariaDB, Amazon Aurora, Azure Database for MySQL, Google Cloud SQL, and more.
Copyright 2016–2024 Bradley Grainger
Bradley Grainger
diff --git a/tests/Conformance.Tests/Conformance.Tests.csproj b/tests/Conformance.Tests/Conformance.Tests.csproj
index e2a4ca928..289f2b5f1 100644
--- a/tests/Conformance.Tests/Conformance.Tests.csproj
+++ b/tests/Conformance.Tests/Conformance.Tests.csproj
@@ -1,7 +1,7 @@
- net9.0
+ net10.0
0.1.0
true
true
diff --git a/tests/IntegrationTests/IntegrationTests.csproj b/tests/IntegrationTests/IntegrationTests.csproj
index bb388f662..7127ab248 100644
--- a/tests/IntegrationTests/IntegrationTests.csproj
+++ b/tests/IntegrationTests/IntegrationTests.csproj
@@ -1,12 +1,12 @@
- net462;net481;net6.0;net8.0;net9.0
+ net462;net481;net6.0;net8.0;net10.0
false
- net9.0
+ net10.0
MYSQL_DATA
$(NoWarn);MSB3246
@@ -41,7 +41,6 @@
-
diff --git a/tests/MySqlConnector.DependencyInjection.Tests/MySqlConnector.DependencyInjection.Tests.csproj b/tests/MySqlConnector.DependencyInjection.Tests/MySqlConnector.DependencyInjection.Tests.csproj
index ebeeef845..c14cde477 100644
--- a/tests/MySqlConnector.DependencyInjection.Tests/MySqlConnector.DependencyInjection.Tests.csproj
+++ b/tests/MySqlConnector.DependencyInjection.Tests/MySqlConnector.DependencyInjection.Tests.csproj
@@ -1,7 +1,7 @@
- net9.0
+ net10.0
true
true
..\..\MySqlConnector.snk
diff --git a/tests/MySqlConnector.NativeAot.Tests/MySqlConnector.NativeAot.Tests.csproj b/tests/MySqlConnector.NativeAot.Tests/MySqlConnector.NativeAot.Tests.csproj
index 3797dedb8..f9d651b2b 100644
--- a/tests/MySqlConnector.NativeAot.Tests/MySqlConnector.NativeAot.Tests.csproj
+++ b/tests/MySqlConnector.NativeAot.Tests/MySqlConnector.NativeAot.Tests.csproj
@@ -2,7 +2,7 @@
Exe
- net8.0;net9.0
+ net8.0;net10.0
enable
enable
true
diff --git a/tests/MySqlConnector.Tests/MySqlConnector.Tests.csproj b/tests/MySqlConnector.Tests/MySqlConnector.Tests.csproj
index b375b14ae..770710f29 100644
--- a/tests/MySqlConnector.Tests/MySqlConnector.Tests.csproj
+++ b/tests/MySqlConnector.Tests/MySqlConnector.Tests.csproj
@@ -1,7 +1,7 @@
- net481;net9.0
+ net481;net10.0
diff --git a/tools/SchemaCollectionGenerator/SchemaCollectionGenerator.csproj b/tools/SchemaCollectionGenerator/SchemaCollectionGenerator.csproj
index 85c1ed799..cfbfc836c 100644
--- a/tools/SchemaCollectionGenerator/SchemaCollectionGenerator.csproj
+++ b/tools/SchemaCollectionGenerator/SchemaCollectionGenerator.csproj
@@ -2,7 +2,7 @@
Exe
- net9.0
+ net10.0
enable
enable
true