Skip to content

Remove unsafe code from number parsing and formatting - #131913

Draft
tannergooding wants to merge 3 commits into
dotnet:mainfrom
tannergooding:tannergooding-remove-unsafe-number-parsing
Draft

Remove unsafe code from number parsing and formatting#131913
tannergooding wants to merge 3 commits into
dotnet:mainfrom
tannergooding:tannergooding-remove-unsafe-number-parsing

Keep DateTime formatting copy path safe

45b23d0
Select commit
Loading
Failed to load commit list.
Build Analysis / Build Analysis failed Aug 6, 2026 in 0s

.NET Result Analysis

Details

Tip

To unconditionally bypass the build analysis check (turn it green), you can use the escape mechanism feature. The completion time may vary, potentially taking several minutes, depending on the build analysis workload at the moment.

Known test errors

Test Failures (2 tests failed)

🔹 [All failing tests from runtime]

    System.Net.Http.Functional.Tests.HttpClientHandlerTest_Http3.SendAsync_RequestRejected_ClientRetries [Console] [Details] [Artifacts] [0.18% failure rate]
    [ 🚧 Create issue against infrastructure team] [ 📄 Create issue in this repo]

    Failing Configuration

    Exception Message
    System.Net.Http.HttpRequestException : The request was aborted.\n---- System.Net.Http.HttpProtocolException : The HTTP/3 server reset the stream. HTTP/3 error code 'H3_REQUEST_REJECTED' (0x10b). (HttpProtocolError)\n-------- System.Net.Quic.QuicException : Stream aborted by peer (267).
    CallStack
    at System.Net.Http.Http3RequestStream.SendAsync(CancellationToken cancellationToken) in /_/src/libraries/System.Net.Http/src/System/Net/Http/SocketsHttpHandler/Http3RequestStream.cs:line 305
       at System.Net.Http.Http3RequestStream.SendAsync(CancellationToken cancellationToken) in /_/src/libraries/System.Net.Http/src/System/Net/Http/SocketsHttpHandler/Http3RequestStream.cs:line 398
       at System.Net.Http.Http3Connection.SendAsync(HttpRequestMessage request, WaitForHttp3ConnectionActivity waitForConnectionActivity, Boolean streamAvailable, CancellationToken cancellationToken) in /_/src/libraries/System.Net.Http/src/System/Net/Http/SocketsHttpHandler/Http3Connection.cs:line 343
       at System.Net.Http.Http3Connection.SendAsync(HttpRequestMessage request, WaitForHttp3ConnectionActivity waitForConnectionActivity, Boolean streamAvailable, CancellationToken cancellationToken) in /_/src/libraries/System.Net.Http/src/System/Net/Http/SocketsHttpHandler/Http3Connection.cs:line 357
       at System.Net.Http.HttpConnectionPool.TrySendUsingHttp3Async(HttpRequestMessage request, CancellationToken cancellationToken) in /_/src/libraries/System.Net.Http/src/System/Net/Http/SocketsHttpHandler/ConnectionPool/HttpConnectionPool.Http3.cs:line 107
       at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken) in /_/src/libraries/System.Net.Http/src/System/Net/Http/SocketsHttpHandler/ConnectionPool/HttpConnectionPool.cs:line 437
       at System.Runtime.CompilerServices.RuntimeAsyncTaskContinuation.GetResult[T](Task task, Byte& result) in /_/src/coreclr/System.Private.CoreLib/src/System/Runtime/CompilerServices/RuntimeAsyncTaskContinuation.cs:line 139
       at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken) in /_/src/libraries/System.Net.Http/src/System/Net/Http/SocketsHttpHandler/RedirectHandler.cs:line 29
       at System.Net.Http.HttpMessageHandlerStage.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) in /_/src/libraries/System.Net.Http/src/System/Net/Http/SocketsHttpHandler/HttpMessageHandlerStage.cs:line 21
       at System.Net.Http.SocketsHttpHandler.<SendAsync>g__CreateHandlerAndSendAsync|119_0(HttpRequestMessage request, CancellationToken cancellationToken) in /_/src/libraries/System.Net.Http/src/System/Net/Http/SocketsHttpHandler/SocketsHttpHandler.cs:line 668
       at System.Runtime.CompilerServices.RuntimeAsyncTaskContinuation.GetResult[T](Task task, Byte& result) in /_/src/coreclr/System.Private.CoreLib/src/System/Runtime/CompilerServices/RuntimeAsyncTaskContinuation.cs:line 139
       at System.Net.Http.HttpClient.<SendAsync>g__Core|83_0(HttpRequestMessage request, HttpCompletionOption completionOption, CancellationTokenSource cts, Boolean disposeCts, CancellationTokenSource pendingRequestsCts, CancellationToken originalCancellationToken) in /_/src/libraries/System.Net.Http/src/System/Net/Http/HttpClient.cs:line 544
       at System.Runtime.CompilerServices.RuntimeAsyncTaskContinuation.GetResult[T](Task task, Byte& result) in /_/src/coreclr/System.Private.CoreLib/src/System/Runtime/CompilerServices/RuntimeAsyncTaskContinuation.cs:line 139
       at System.Net.Http.HttpClient.SendAsync(HttpRequestMessage request, HttpCompletionOption completionOption) in /_/src/libraries/System.Net.Http/src/System/Net/Http/HttpClient.cs:line 524
       at System.Net.Http.Functional.Tests.HttpClientHandlerTest_Http3.<>c__DisplayClass11_0.<SendAsync_RequestRejected_ClientRetries>b__1() in /_/src/libraries/System.Net.Http/tests/FunctionalTests/HttpClientHandlerTest.Http3.cs:line 420
       at System.Threading.Tasks.TaskTimeoutExtensions.GetRealException(Task task) in /_/src/libraries/Common/tests/System/Threading/Tasks/TaskTimeoutExtensions.cs:line 119
    --- End of stack trace from previous location ---
       at System.Threading.Tasks.TaskTimeoutExtensions.WhenAllOrAnyFailed(Task[] tasks) in /_/src/libraries/Common/tests/System/Threading/Tasks/TaskTimeoutExtensions.cs:line 89
       at System.Threading.Tasks.TaskTimeoutExtensions.WhenAllOrAnyFailed(Task[] tasks, Int32 millisecondsTimeout) in /_/src/libraries/Common/tests/System/Threading/Tasks/TaskTimeoutExtensions.cs:line 54
       at System.Net.Http.Functional.Tests.HttpClientHandlerTest_Http3.SendAsync_RequestRejected_ClientRetries() in /_/src/libraries/System.Net.Http/tests/FunctionalTests/HttpClientHandlerTest.Http3.cs:line 423
    --- End of stack trace from previous location ---
    ----- Inner Stack Trace -----
    

    ----- Inner Stack Trace -----
    at System.Net.Quic.ResettableValueTaskSource.TryComplete(Exception exception, Boolean final) in /_/src/libraries/System.Net.Quic/src/System/Net/Quic/Internal/ResettableValueTaskSource.cs:line 178
    at System.Net.Quic.ResettableValueTaskSource.TrySetException(Exception exception) in /_/src/libraries/System.Net.Quic/src/System/Net/Quic/Internal/ResettableValueTaskSource.cs:line 237
    at System.Net.Quic.QuicStream.HandleEventPeerSendAborted(_PEER_SEND_ABORTED_e__Struct& data) in /_/src/libraries/System.Net.Quic/src/System/Net/Quic/QuicStream.cs:line 644
    at System.Net.Quic.QuicStream.HandleStreamEvent(QUIC_STREAM_EVENT& streamEvent) in /_/src/libraries/System.Net.Quic/src/System/Net/Quic/QuicStream.cs:line 702
    at System.Net.Quic.QuicStream.NativeCallback(QUIC_HANDLE* stream, Void* context, QUIC_STREAM_EVENT* streamEvent) in /_/src/libraries/System.Net.Quic/src/System/Net/Quic/QuicStream.cs:line 734
    --- End of stack trace from previous location ---
    at System.Net.Quic.ResettableValueTaskSource.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token) in /_/src/libraries/System.Net.Quic/src/System/Net/Quic/Internal/ResettableValueTaskSource.cs:line 251
    at System.Net.Quic.QuicStream.ReadAsync(Memory`1 buffer, CancellationToken cancellationToken) in /_/src/libraries/System.Net.Quic/src/System/Net/Quic/QuicStream.cs:line 353
    at System.Net.Http.Http3RequestStream.ReadFrameEnvelopeAsync(CancellationToken cancellationToken) in /_/src/libraries/System.Net.Http/src/System/Net/Http/SocketsHttpHandler/Http3RequestStream.cs:line 908
    at System.Net.Http.Http3RequestStream.ReadResponseAsync(CancellationToken cancellationToken) in /_/src/libraries/System.Net.Http/src/System/Net/Http/SocketsHttpHandler/Http3RequestStream.cs:line 415
    at System.Net.Http.Http3RequestStream.SendAsync(CancellationToken cancellationToken) in /_/src/libraries/System.Net.Http/src/System/Net/Http/SocketsHttpHandler/Http3RequestStream.cs:line 236

    System.Net.Security.Tests.SslStreamTlsResumeTests.ClientChangeCert_NoResume [Console] [Details] [Artifacts] [0.05% failure rate]
    [ 🚧 Create issue against infrastructure team] [ 📄 Create issue in this repo]

    Failing Configuration

    Data Driven SubResults
      System.Net.Security.Tests.SslStreamTlsResumeTests.ClientChangeCert_NoResume(sslProtocol: Tls12)
      Exception Message
      Assert.Equal() Failure: Values differ\r\nExpected: False\r\nActual:   True
      Stack Trace
      at System.Net.Security.Tests.SslStreamTlsResumeTests.RunConnectionAsync(SslServerAuthenticationOptions serverOptions, SslClientAuthenticationOptions clientOptions, Nullable`1 expectResume) in /_/src/libraries/System.Net.Security/tests/FunctionalTests/SslStreamAllowTlsResumeTests.cs:line 256
         at System.Net.Security.Tests.SslStreamTlsResumeTests.TestNoResumeAfterChange(SslServerAuthenticationOptions serverOptions, SslClientAuthenticationOptions clientOptions, Action`2[] updateOptions) in /_/src/libraries/System.Net.Security/tests/FunctionalTests/SslStreamAllowTlsResumeTests.cs:line 408
      --- End of stack trace from previous location ---

Was this helpful? Yes No