Drop old runtimes: target only .NET 8 and .NET 9#210
Draft
dkropachev wants to merge 1 commit into
Draft
Conversation
| Assert.AreEqual(".NETStandard,Version=v2.0", framework); | ||
| Assert.IsNotNull(framework); | ||
| Assert.IsTrue( | ||
| framework.StartsWith(".NETCoreApp,Version=v"), |
| private readonly static Logger _logger = new Logger(typeof(SSLOptions)); | ||
| private RemoteCertificateValidationCallback _remoteCertValidationCallback = ValidateServerCertificate; | ||
| private SslProtocols _sslProtocol = SslProtocols.Tls; | ||
| private SslProtocols _sslProtocol = SslProtocols.None; |
dkropachev
force-pushed
the
next-major/drop-old-runtimes
branch
2 times, most recently
from
March 23, 2026 19:55
9f4d70b to
c131f4c
Compare
dkropachev
marked this pull request as draft
March 23, 2026 19:55
dkropachev
force-pushed
the
next-major/drop-old-runtimes
branch
from
March 24, 2026 02:05
df3ae55 to
6f2e91b
Compare
- Remove netstandard2.0, net6.0, net7.0 targets; keep only net8.0/net9.0 - Cache re-bound delegate in TypeConverter.InvokeConverter to avoid per-call Delegate.CreateDelegate overhead on the hot path - Add iteration bound (max 10) to IsByRefLike unwrap loop in CqlExpressionVisitor for defensive safety - Use pattern-match variable in DropNullableConversion for consistency - Remove stale BuildCoreOnly paragraph from CONTRIBUTING.md - Bump AssemblyVersion/FileVersion to 4.0.0.0 - Replace deprecated ClassicAssert with modern NUnit Assert.That API - Update README and docs to reflect net8.0/net9.0 targets
dkropachev
force-pushed
the
next-major/drop-old-runtimes
branch
from
March 24, 2026 18:10
6f2e91b to
9740ed7
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
netstandard2.0,.NET 6, and.NET 7targets — the driver now targets.NET 8.0and.NET 9.0onlyUtils.ReadExactly()withStream.ReadExactly()available in .NET 8+Array.Reverse()ambiguity withMemoryExtensionson .NET 8+DynamicInvokeandReadOnlySpan<T>issues in LINQ expression evaluation on .NET 9PlatformHelpermethods (GetTargetFramework,RuntimeSupportsCloudTlsSettings) that are unnecessary on .NET 8+CloudSupportedAttributenow that cloud TLS is always supportednet8.0/net9.0target framework notationnet8 + LATESTentry to CI matrix.gitignoreandPlatformHelper.csBreaking changes
SslProtocolsdefault: Changed fromSslProtocols.Tls(TLS 1.0) toSslProtocols.None(OS-negotiated, typically TLS 1.2+). Servers that only support TLS 1.0 will need explicit configuration.Test plan
net8.0andnet9.0targetsSslProtocols.Nonedefault