Releases: dotnet/runtime
v10.0.0-preview.5.25277.114
What's Changed
- Add NIST ACVP 3rd Party Notice by @bartonjs in #114931
- Bump main to .NET 10 Preview 5 by @carlossanlop in #114938
- JIT: Do not report duplicate EH clauses to VM by @filipnavara in #114895
- [browser] Use OverrideHtmlAssetPlaceholders=true in browser template by @maraf in #113654
- Delete dead code in the interpreter by @MichalStrehovsky in #114890
- JIT: Avoid overriding argument register with 'jmp' epilog by @jakobbotsch in #114899
- [browser] Use regex to match boot config placeholder by @maraf in #114897
- [main] Update dependencies from dotnet/hotreload-utils, dotnet/icu, dotnet/runtime-assets, dotnet/sdk by @dotnet-maestro in #114852
- Remove
WasmFingerprintDotnetJs
tests and addOverrideHtmlAssetPlaceholders
tests by @ilonatommy in #112859 - [cDAC] Handle non-mapped images correctly by @max-charlamb in #114688
- [browser] Ensure compression targets run after preloading by @maraf in #114953
- Fix non-portable CI builds. by @tmds in #114949
- Fix SPMI realworld collection output file naming by @BruceForstall in #114937
- Fix side effect handling for certain TernaryLogic cases by @BruceForstall in #114848
- JIT: Optimize bit-wise and operation and compare with same constant value by @varelen in #111933
- WebSocket: observe exceptions in WaitForServerToCloseConnectionAsync by @antonfirsov in #114689
- [main] Update dependencies from dotnet/command-line-api by @dotnet-maestro in #114947
- [main] Update dependencies from dotnet/roslyn by @dotnet-maestro in #114857
- Enlarge stack overflow handling stack by @janvorli in #114956
- [main] Update dependencies from dotnet/arcade by @dotnet-maestro in #114853
- Document NDK upgrade process by @jkurdek in #112885
- Remove unreliable check in Rate Limiting test by @tarekgh in #114963
- Report error if dotnet-pgo trace contains multiple processes by @MichalStrehovsky in #114962
- Delete emit breaks from R2R helper node by @am11 in #114920
- Rewrite of System.Numerics.Tensors to allow for more code sharing, various correctness fixes, and stability improvements by @tannergooding in #114927
- Fix the amd64 cross-DAC stack unwinding by @mikem8361 in #114836
- Added missing clearing of pooled arrays by @hendriklhf in #114545
- Make specifying just
DllImportSearchPath.AssemblyDirectory
only search in assembly directory by @elinor-fung in #114756 - Fix several messages mistreated as format strings by @jakobbotsch in #114970
- Don't expose TrustedCertificatesDirectory() and StartNewTlsSessionContext() to NetFx by @steveharter in #113963
- Tar: Adjust the way we write GNU longlink and longpath metadata by @carlossanlop in #114940
- [main] Source code updates from dotnet/dotnet by @dotnet-maestro in #114990
- Run outerloop pipeline only for release branches, not staging/preview by @akoeplinger in #114971
- [wasm] Try out a PackedSimd WideningLoader by @lewing in #114811
- Add support of System.Uri to UrlAttribute by @Maximys in #114992
- Fix some static analysis errors by @ericstj in #114997
- JIT: revised fix for fp division issue in profile synthesis by @AndyAyersMS in #115005
- JIT: boost inlining for methods that may return small arrays by @AndyAyersMS in #114806
- Refactor SLH-DSA tests by @PranavSenthilnathan in #114981
- Add language slug by @gewarren in #114984
- ML-KEM: Change parameter from ReadOnlySpan to array by @vcsjones in #115016
- Prepend SysRoot to lib search path on freebsd by @am11 in #115035
- [wasm][coreclr] Make libs subset build by @radekdoulik in #114548
- Fix minidump generation - missing IP for exception stack frames by @mikem8361 in #115025
- [browser] disable Wasm.Browser.EventPipe.Sample by @pavelsavara in #115000
- HTTP/3: Eliminate near-zero "wait for connection" telemetry signals by @antonfirsov in #114083
- [cdac] Create transport package and rename the cdac reader by @steveisok in #114812
- [main] Source code updates from dotnet/dotnet by @dotnet-maestro in #115034
- Do not rethrow from SocketsTestServerAPM.OnAccept by @rzikm in #114964
- JIT: fix issues in field-wise escape analysis by @AndyAyersMS in #114974
- [main] Update dependencies from dotnet/xharness by @dotnet-maestro in #115044
- [wasm] Fix MT build by @radekdoulik in #115050
- Cleanup Microsoft.DotNet.VersionTools.Tasks, it got removed from arcade by @akoeplinger in #115046
- Fix Idn failing tests by @tarekgh in #115018
- Fix AnyKey query when there are duplicates and multiple service types by @steveharter in #114972
- [cdac] Nits follow up from transport package PR by @steveisok in #115047
- [wasm coreclr] Keep primary flavor mono for browser builds by @radekdoulik in #115059
- Sve: Fix Gather/Scatter tests by @kunalspathak in #115036
- JIT: fix ACD EH region removal updates for filters by @AndyAyersMS in #115054
- Add link to Android doc by @richlander in #114977
- spmi collect/jitrollingbuild: Replace DefaultAzureCredential => AzureCliCredential by @kunalspathak in #115067
- Interpreter GC info stage 2: Generate empty GC info and add baseline implementation of EnumGcRefs by @kg in #113948
- [X86/Funclets] Fix uninitalized values in SoftwareExceptionFrame::UpdateContextFromTransitionBlock by @filipnavara in #115065
- Fix typing of BlendVariableMask condition when optimizing TernaryLogic by @BruceForstall in #114837
- Delete redundant gcc-toolchain flag by @am11 in #115073
- Fix last issue with GC bridge comparison and enable all tests by @filipnavara in #115049
- Disable ctor calls on classes marked with
ComImport
when COM interop feature isn't enabled. by @AaronRobinsonMSFT in #115009 - [STJ] Account for F# CompilationMappingAttribute now supporting multiple declarations. by @eiriktsarpalis in #114961
- [main] Source code updates from dotnet/dotnet by @dotnet-maestro in #115072
- Cleanup some unused code and signature by @huoyaoyuan in #112905
- JIT: revise may/must point to stack analysis by @AndyAyersMS in #115080
- [RISC-V] Extend register for slti by @tomeksowi in #114900
- [wasm] Bump chrome for testing - linux: 135.0.7049.114, windows: 136.0.7103.48 by @github-actions in #115084
- Test /etc/os-release existence before grepping by @am11 in #115086
- [NativeAOT] Add linux-arm64 pri1 runtime tests to outerloop run by @jkotas in #114948
- [main] Update dependencies from dotnet/hotreload-utils by @dotnet-maestro in #115105
- [RuntimeAsync] Merge from labs, all except JIT by @VSadov in #114675
- Add null check for EnumerationOptions by @huoyaoyuan in #114672
- [browser] Consider WasmSDK projects RID agnostic by @maraf in #114429
- Simplify conditional operator by @xtqqczze in #112074
- Remove redundant 'freeList' field from HashLookup class by @rameel in #114914
- Add single-file host tests for native library load by @elinor-fung in #115061
- [cDAC] Fix method table slot lookup by @max-charlamb in https://gi...
v9.0.6
Bug Fixes
-
Read messages from binlog if process output is missing build finished message (#114676)
Improves reliability of the WebAssembly build process by reading messages from the binlog when the process output does not contain the expected build finished message, preventing build failures in certain scenarios. -
Fix debugger app hangs related to thread exit (#114917)
Resolves an issue where applications could hang during debugging when threads exit, ensuring smoother debugging experiences and preventing deadlocks. -
[Mono] Workaround MSVC miscompiling sgen_clz (#114903)
Addresses a compiler miscompilation issue in MSVC affecting the Mono garbage collector, improving runtime stability and correctness on affected platforms. -
Do not set the salt or info if they are NULL for OpenSSL HKDF (#114877)
Fixes a cryptographic issue by ensuring that the salt or info parameters are not set when they are NULL in OpenSSL HKDF, preventing potential errors or unexpected behavior in key derivation. -
[Test Only] Fix Idn tests (#115032)
Corrects issues in Internationalized Domain Name (Idn) tests, ensuring accurate and reliable test results for domain name handling. -
JIT: revised fix for fp division issue in profile synthesis (#115026)
Provides a more robust fix for floating-point division issues in JIT profile synthesis, improving numerical accuracy and preventing incorrect calculations. -
Handle OSSL 3.4 change to SAN:othername formatting (#115361)
Updates certificate handling to accommodate changes in Subject Alternative Name (SAN) formatting introduced in OpenSSL 3.4, ensuring compatibility and correct parsing of certificates. -
[Mono] Fix c11 ARM64 atomics to issue full memory barrier (#115635)
Fixes atomic operations on ARM64 in Mono to issue a full memory barrier, ensuring correct synchronization and preventing subtle concurrency bugs.
Performance Improvements
-
[WinHTTP] Certificate caching on WinHttpHandler to eliminate extra call to Custom Certificate Validation (#114678)
Improves HTTP performance by caching certificates in WinHttpHandler, reducing redundant calls to custom certificate validation and speeding up secure connections. -
Improve distribute_free_regions (#115167)
Optimizes memory management by enhancing the algorithm for distributing free memory regions, leading to better memory utilization and potentially improved application performance.
Technical Improvements
-
Strip trailing slash from source dir for cmake4 (#114905)
Refines build scripts by removing trailing slashes from source directories when using CMake 4, preventing potential build path issues and improving build reliability. -
Don't expose TrustedCertificatesDirectory() and StartNewTlsSessionContext() to NetFx (#114995)
Restricts certain internal APIs from being exposed to .NET Framework, reducing surface area and preventing unintended usage. -
Add support for more libicu versions (#115376)
Expands compatibility by supporting additional versions of the International Components for Unicode (ICU) library, enhancing globalization features across more environments.
Infrastructure
-
Run outerloop pipeline only for release branches, not staging/preview (#115011)
Optimizes CI/CD resources by limiting the outerloop pipeline to run only on release branches, reducing unnecessary test runs and speeding up development workflows. -
Update CentOS Stream, Debian, OpenSUSE (#115027)
Updates build and test infrastructure to use newer versions of CentOS Stream, Debian, and OpenSUSE, ensuring ongoing compatibility and security with supported Linux distributions. -
Update MacOS signing to use PME (#115634)
Switches MacOS code signing to use PME, improving the security and reliability of the signing process for MacOS releases.
Dependency Updates
-
Update dependencies from dotnet/roslyn (#115353)
Integrates the latest updates from the Roslyn compiler, bringing in bug fixes, performance improvements, and new language features. -
Update dependencies from dotnet/arcade (#115085)
Updates the Arcade build infrastructure dependency, ensuring the latest build tools and scripts are used. -
Update dependencies from dotnet/sdk (#114856, #115466)
Brings in the latest changes from the .NET SDK, improving build reliability and incorporating upstream fixes. -
Update dependencies from dotnet/icu (#114762, #115440)
Updates the ICU library dependency, enhancing globalization support and fixing related issues. -
Update dependencies from dotnet/cecil (#114670)
Incorporates the latest Mono.Cecil updates, improving assembly manipulation and metadata handling. -
Update dependencies from dotnet/emsdk (#114702)
Updates the Emscripten SDK dependency, ensuring up-to-date WebAssembly toolchain support. -
Update dependencies from dotnet/xharness (#114855)
Brings in the latest XHarness test runner updates, improving test automation and reliability.
Miscellaneous
-
Update branding to 9.0.6 (#115385)
Updates version branding throughout the repository to reflect the 9.0.6 release. -
Fix line endings (#115413)
Standardizes line endings across the codebase, improving cross-platform consistency and reducing merge conflicts. -
[automated] Merge branch 'release/9.0' => 'release/9.0-staging' (#114700)
Automated merge to synchronize changes between release branches, ensuring consistency across development streams. -
Merging internal commits for release/9.0 (#115535)
Integrates internal commits into the release/9.0 branch, consolidating changes for the release. -
[manual] Merge release/9.0-staging into release/9.0 (#115497)
Manually merges staging changes into the main release branch, preparing for the official release.
This summary is generated and may contain inaccuracies. For complete details, please review the linked pull requests.
Full Changelog: v9.0.5...v9.0.6
v8.0.17
Bug Fixes
-
Work around MSVC miscompiling sgen_clz (#114904)
Addresses an issue where the Microsoft Visual C++ (MSVC) compiler was miscompiling thesgen_clz
function in Mono. This workaround ensures correct behavior and stability for affected builds. -
Fix Idn tests (#115030)
Resolves issues in the Internationalized Domain Name (Idn) tests, improving test reliability and ensuring accurate validation of related functionality. -
Handle OSSL 3.4 change to SAN:othername formatting (#115367)
Updates the handling of Subject Alternative Name (SAN) formatting to accommodate changes introduced in OpenSSL 3.4. This ensures compatibility and correct certificate processing. -
Don't expose TrustedCertificatesDirectory() and StartNewTlsSessionContext() to NetFx (#115008)
Prevents certain internal APIs from being exposed to .NET Framework (NetFx), reducing the risk of unintended usage and improving API surface consistency. -
Fix line endings (#115414)
Corrects line ending inconsistencies in the codebase, which helps prevent cross-platform issues and improves code readability.
Performance Improvements
- Improve distribute_free_regions (#115023)
Optimizes the algorithm for distributing free memory regions, leading to better memory management and potentially improved application performance.
Technical Improvements
-
Strip trailing slash from source dir for cmake4 (#114906)
Refines the build process by removing unnecessary trailing slashes from source directory paths when using CMake 4, reducing potential build errors and improving consistency. -
Add support for more libicu versions (#115378)
Expands compatibility by supporting additional versions of the International Components for Unicode (ICU) library, enhancing globalization features across more environments.
Infrastructure
-
Update dependencies from dotnet/arcade (#114441)
Refreshes build and engineering dependencies from the Arcade repository, ensuring the latest tooling and infrastructure improvements are incorporated. -
Migrate MacCatalyst and iOS/tvOS simulator jobs to new queues (#114633)
Moves MacCatalyst and iOS/tvOS simulator jobs to updated build queues (osx.14.arm64.open
andosx.15.amd64.open
), improving build reliability and aligning with current infrastructure standards. -
Run outerloop pipeline only for release branches (#115012)
Adjusts CI pipeline triggers so that the outerloop pipeline runs only for release branches, reducing unnecessary builds and streamlining the development workflow. -
Update OpenSUSE (#115028)
Updates support for the OpenSUSE Linux distribution, ensuring compatibility and up-to-date platform support. -
Update dependencies from dotnet/emsdk (#114830)
Updates the Emscripten SDK dependencies, improving WebAssembly build support and incorporating the latest fixes and features. -
Update MacOS signing to use PME (#115633)
Switches MacOS code signing to use PME (Public Managed Environment), enhancing security and compliance for MacOS builds.
Miscellaneous
-
Automated merge: 'release/8.0' into 'release/8.0-staging' (#114668, #115410)
Merges changes from the main release branch into the staging branch, ensuring all updates are synchronized for the next release cycle. -
Update branding to 8.0.17 (#115384)
Updates version branding throughout the repository to reflect the new 8.0.17 release. -
Merging internal commits for release/8.0 (#115534)
Integrates various internal commits into the release branch, consolidating recent changes and improvements. -
Manual merge: release/8.0-staging into release/8.0 (#115498)
Manually merges the staging branch back into the main release branch, finalizing the release preparation process.
This summary is generated and may contain inaccuracies. For complete details, please review the linked pull requests.
Full Changelog: v8.0.16...v8.0.17
.NET 10.0 Preview 3
What's Changed
- Implement ExportPkcs12 by @vcsjones in #112569
- Bump main to preview3 by @carlossanlop in #112718
- JIT: Replace
fgMoveHotJumps
with 3-opt utility by @amanasifkhalid in #112016 - JIT: Clean up and optimize
StackLevelSetter
by @jakobbotsch in #112561 - Don't emit unchecked write barrier for stack-allocated arrays by @EgorBo in #112711
- JIT: Delete old
GenTreeCall
ABI information by @jakobbotsch in #112665 - [browser] single threaded diagnostic server by @pavelsavara in #111910
- [browser] remove EXPORT_EXCEPTION_HANDLING_HELPERS by @pavelsavara in #111033
- Fix flags in EarlyProp after nullcheck is removed by @EgorBo in #112717
- Reapply "[browser][MT] move wasm MT CI legs to extra-platforms (#112712)" by @akoeplinger in #112716
- Handle overlapped groups of bounds checks by @EgorBo in #112660
- Specialize Contains for Iterators in LINQ by @stephentoub in #112684
- [WinHTTP] Remove unnecessary recursion by @ManickaP in #112698
- M.E.C.M. Add TryGetValue(ReadOnlySpan) API by @mgravell in #112695
- Flow DotNetBuildTests by @ViktorHofer in #112732
- Host: log exception if a service factory fails by @mus65 in #112534
- Update HelloAndroid App output path and PerfBDN dotnet-install.sh url. by @LoopedBard3 in #112720
- Fix winarm64 crossdac build by @steveisok in #112594
- Clean up our runtime-deps packages and enable ARM64 Debs by @jkoritzinsky in #112671
- Bump the minimum ICU version to 60 by @jkoritzinsky in #112713
- Relax encrypted cert requirement for Windows with Pkcs12Export tests by @vcsjones in #112741
- Fix exception handling in the prestub worker - take 2 by @janvorli in #112666
- Change the Unix cert store to store certificates with AES256+SHA256 PBES2 by @vcsjones in #112749
- [android][coreclr] Make coreclr build specify
HOST_ANDROID
and include Android logging APIs by @elinor-fung in #112677 - Clarify comments for
ClrRestoreNonvolatileContextWorker
. by @anthonycanino in #112758 - Implement 'ConditionalWeakTable<TKey,TValue>.Remove' API by @Sergio0694 in #112263
- Add Random.Get{Hex}String by @stephentoub in #112162
- Fix stack overflow condition when appending modifiers to resolver chains. by @eiriktsarpalis in #112737
- Coretestlib: Add information of parent process id during test failure for Windows by @kunalspathak in #112724
- JIT: Keep small-typedness information for return temps introduced by GDV by @jakobbotsch in #112733
- Use pooled Utf8JsonWriter when doing sync streaming serialization. by @eiriktsarpalis in #112745
- [main] Update dependencies from dotnet/cecil, dotnet/hotreload-utils, dotnet/icu, dotnet/runtime-assets by @dotnet-maestro in #112624
- [main] Update dependencies from dotnet/emsdk by @dotnet-maestro in #112682
- Support generic type parameter when created with TypeBuilder by @steveharter in #112372
- fixed the clang-20 issue for ppc64le by @ashutoshjadhav9 in #112777
- JIT: Run profile repair after frontend phases by @amanasifkhalid in #111915
- JIT: Read back parameter register replacements eagerly by @jakobbotsch in #112501
- CoreCLR interpreter basic compilation and execution by @BrzVlad in #112369
- Fix JsonNode.DeepEquals by @eiriktsarpalis in #112800
- MemoryCache: use net9.cs file rather than #if for TFM limits by @mgravell in #112786
- Ensure 3DES Exports are actually 3DES on all versions of Windows by @vcsjones in #112806
- Fix the unwind opcode for new APX registers by @kunalspathak in #112799
- SPMI: Record and replay
notifyInstructionSetUsage
properly by @jakobbotsch in #112764 - Use rangecheck in assertprop by @EgorBo in #112766
- Fix remarks formatting by @gewarren in #112808
- SPMI: Include JIT-EE GUID changes in JIT baseline detection by @jakobbotsch in #112820
- JIT: Don't show code bytes for loongarch64 disasm unless it was told to do so by @hez2010 in #112486
- Fixed typos in Native AOT optimizing document by @HotCakeX in #112812
- Use a unified cache for SSL_CTX objects by @rzikm in #112567
- JIT: Check ISA directly when printing
JitDisasm
by @jakobbotsch in #112828 - [main] Update dependencies from dotnet/roslyn by @dotnet-maestro in #112513
- JIT: Remove uses of old ABI information by @jakobbotsch in #112818
- [main] Update dependencies from dotnet/source-build-reference-packages by @dotnet-maestro in #112834
- Remove thread pointer from AwareLock by @eduardo-vp in #112715
- Reformat
ZLibNative
comments by @edwardneal in #112585 - Fix HttpHandlerDiagnosticListenerTests.TestW3CHeadersTraceStateAndCorrelationContext by @antonfirsov in #112753
- Narrow AddressFamily passed to getaddrinfo when IPv6 is unsupported by @antonfirsov in #112642
- Disable interpreter test on native AOT by @MichalStrehovsky in #112857
- Fix getting resource when
ResourceResolve
returns assembly with resource that is an assembly ref by @elinor-fung in #112810 - Revert "Use rangecheck in assertprop (#112766)" by @AndyAyersMS in #112872
- Use certificate thumbprints from entire chain in SSL_CTX cache by @rzikm in #112858
- [Android] Add callback to host-runtime contract for getting assembly data by @grendello in #112705
- JIT: Use precise multireg arg check for old promotion by @jakobbotsch in #112883
- JIT: Introduce O1K_VN by @EgorBo in #112889
- [browser] samplepoint instrumentation into Mono profiler by @pavelsavara in #112352
- Fix doc typo by @steveharter in #112875
- JIT: fix missing morphed flag by @AndyAyersMS in #112888
- Remove useless complementary assertions by @EgorBo in #110171
- Make CPU utilization checks in the thread pool configurable by @kouvel in #112789
- [main] Update dependencies from dotnet/emsdk by @dotnet-maestro in #112895
- [PERF] Disable PerfBDN tests. by @LoopedBard3 in #112886
- JIT: Fix small->uint->float casts with AVX-512 by @saucecontrol in #112892
- JIT: Handle
FIELD_LIST
as a user of calls in lowering by @jakobbotsch in #112904 - Instructions for adding a native external library dependency by @carlossanlop in #105045
- Revert "version needed to extract" fix by @carlossanlop in #112922
- Revert gen-buildsys.sh cmake command echo by @steveisok in #112929
- Use FLS detach callback as a thread termination notification. Another try. by @VSadov in #112809
- Consolidate guid definitions by @am11 in #112826
- SPMI: Add fallback for
notifyInstructionSetUsage
by @jakobbotsch in #112925 - Temporary hotfix for interpreter crash by @janvorli in #112920
- Pass SourceBuiltPdbArtifactsDir parameteres to runtime build by @mmitche in #112788
- Disable GC stress tests for the interpreter test by @janvorli in #112906
- JIT: Delete old parameter ABI classification by @jakobbotsch in #112884
- Only count DwarfDump errors produced by managed code by @filipnavara in h...
.NET 9.0.5
What's Changed
- [release/9.0-staging] [HttpStress] [SslStress] Run stress tests nightly against staging branches by @github-actions in #113476
- [release/9.0] [browser][http] mute JS exceptions about network errors + HEAD verb by @github-actions in #113261
- [release/9.0-staging] Fix double dispose of GCHandle in BrowserWebSocket by @github-actions in #113541
- [release/9.0-staging] [HttpStress] Fix Linux HttpStress build by @antonfirsov in #113617
- [release/9.0-staging] Use minipal_getcpufeatures to detect for AVX (#113032) by @cshung in #113489
- [release/9.0-staging] Backport "Use FLS detach callback as a thread termination notification. Another try." by @VSadov in #113055
- [release/9.0-staging] [Json] Avoid writing to PipeWriter if IAsyncEnumerable throws before first item by @github-actions in #113699
- [browser] Remove experimental args from NodeJS WBT runner (part2) by @maraf in #113753
- [9.0] Update openssl dependency for openSUSE by @NikolaMilosavljevic in #113548
- [release/9.0-staging] JIT: avoid fp divide by zero in profile synthesis by @github-actions in #113418
- [release/9.0-staging] Do not substitute return values of constrained calls by @github-actions in #113462
- [release/9.0] Test failure - SendAsync_RequestVersion20_ResponseVersion20 by @github-actions in #113649
- [release/9.0-staging] [mono] Missing memory barrier leads to crash in multi-threaded scenarios by @github-actions in #113740
- [release/9.0] Move DAC signing identity to PME by @hoyosjs in #114031
- [release/9.0-staging] Update dependencies from dotnet/icu by @dotnet-maestro in #113460
- [release/9.0] Update dependencies from dotnet/emsdk by @dotnet-maestro in #113483
- [release/9.0-staging] Update dependencies from dotnet/runtime-assets by @dotnet-maestro in #113516
- [release/9.0-staging] Update dependencies from dotnet/cecil by @dotnet-maestro in #113461
- [release/9.0-staging] Update dependencies from dotnet/arcade by @dotnet-maestro in #113561
- [release/9.0-staging] Update dependencies from dotnet/xharness by @dotnet-maestro in #113595
- [release/9.0-staging] Update dependencies from dotnet/roslyn by @dotnet-maestro in #113821
- [9.0] libnethost no LTCG by @jkoritzinsky in #113893
- [9.0] Bring back yml necessary change types in label checkers by @carlossanlop in #114166
- [release/9.0-staging] [Apple mobile] Enable trimming on build machines to match ILLink features by @kotlarmilos in #113466
- [release/9.0-staging] Fix VS div-by-0 in DacEnumerableHashTable code by @github-actions in #113892
- [release/9.0-staging] Update dependencies from dotnet/hotreload-utils by @dotnet-maestro in #113517
- [release/9.0-staging] Update dependencies from dotnet/roslyn-analyzers by @dotnet-maestro in #113822
- [release/9.0-staging] Update dependencies from dotnet/sdk by @dotnet-maestro in #113596
- Update branding to 9.0.5 by @vseanreesermsft in #114162
- [automated] Merge branch 'release/9.0' => 'release/9.0-staging' by @github-actions in #113449
- [release/9.0] Update dependencies from dotnet/emsdk by @dotnet-maestro in #114185
- [release/9.0-staging] Revert disabling of tests for HTTP servers by @github-actions in #114207
- [release/9.0-staging] Fix build break with cmake 4.0 by @github-actions in #114278
- [automated] Merge branch 'release/9.0' => 'release/9.0-staging' by @github-actions in #114224
- [release/9.0-staging] Fix inadvertently upgrading compiler warnings to errors by @akoeplinger in #114331
- Merging internal commits for release/9.0 by @vseanreesermsft in #114396
- [automated] Merge branch 'release/9.0' => 'release/9.0-staging' by @github-actions in #114415
- [release/9.0] Update dependencies from dotnet/emsdk by @dotnet-maestro in #114299
- [release/9.0-staging] Update dependencies from dotnet/runtime-assets by @dotnet-maestro in #114473
- [release/9.0-staging][mono][hotreload]Adjust row_size and size_bitfield from the baseline based on the delta sizes by @thaystg in #114119
- [release/9.0-staging] Update dependencies from dotnet/arcade by @dotnet-maestro in #114296
- [release/9.0-staging] Update dependencies from dotnet/xharness by @dotnet-maestro in #114318
- [release/9.0-staging] Update dependencies from dotnet/cecil by @dotnet-maestro in #114364
- [release/9.0-staging] Update dependencies from dotnet/hotreload-utils by @dotnet-maestro in #114474
- [release/9.0] Fix edge cases in Tarjan GC bridge (Android) by @filipnavara in #114391
- [release/9.0-staging] [debugger] Fix debugging a x86 app in mixed mode by @github-actions in #114077
- [release/9.0-staging] [infra][apple-mobile] Migrate MacCatalyst and iOS/tvOS simulator jobs to
osx.14.arm64.open
andosx.15.amd64.open
queues by @github-actions in #114617 - [release/9.0-staging] Update dependencies from dotnet/cecil by @dotnet-maestro in #114615
- [release/9.0-staging] Update dependencies from dotnet/sdk by @dotnet-maestro in #114613
- [release/9.0-staging] Update dependencies from dotnet/runtime-assets by @dotnet-maestro in #114589
- [release/9.0-staging] Update dependencies from dotnet/icu by @dotnet-maestro in #114254
- [release/9.0] Update dependencies from dotnet/emsdk by @dotnet-maestro in #114576
- [release/9.0-staging] Update dependencies from dotnet/xharness by @dotnet-maestro in #114612
- [release/9.0-staging] Moved a static field initialization from Thread to ProcessorIdCache by @github-actions in #114273
- Revert "[release/9.0] Fix edge cases in Tarjan GC bridge (Android)" by @steveisok in #114641
- [manual] Merge release/9.0-staging to release/9.0 by @jozkee in #114662
Full Changelog: v9.0.4...v9.0.5
.NET 8.0.16
What's Changed
- [release/8.0-staging] [HttpStress] [SslStress] Run stress tests nightly against staging branches by @antonfirsov in #113479
- [release/8.0][browser][http] mute JS exceptions about network errors + HEAD verb by @pavelsavara in #113271
- [8.0] Update Ubuntu pipelines from 18.04 to 22.04 by @carlossanlop in #113441
- [release/8.0-staging] Support setting ACLs on file paths longer than
MAX_PATH
by @github-actions in #113801 - [release/8.0-staging] remove extra assert from WinHttp handler by @github-actions in #112861
- [release/8.0-staging] Send connection WINDOW_UPDATE before RTT PING by @antonfirsov in #113702
- [release/8.0] Test failure - SendAsync_RequestVersion20_ResponseVersion20 by @github-actions in #113648
- [release/8.0] Turn off packages for April by @carlossanlop in #113718
- [automated] Merge branch 'release/8.0' => 'release/8.0-staging' by @github-actions in #113448
- [release/8.0-staging] Update dependencies from dotnet/xharness by @dotnet-maestro in #113445
- [8.0] Bring back yml necessary change types in label checkers by @carlossanlop in #114167
- [release/8.0-staging] Update dependencies from dotnet/hotreload-utils by @dotnet-maestro in #113475
- [release/8.0-staging] Update dependencies from dotnet/runtime-assets by @dotnet-maestro in #113515
- Update branding to 8.0.16 by @vseanreesermsft in #114161
- [release/8.0] Update dependencies from dotnet/emsdk by @dotnet-maestro in #113481
- [release/8.0] Revert disabling of tests for HTTP servers by @rzikm in #114209
- [release/8.0-staging] Fix build break with cmake 4.0 by @akoeplinger in #114279
- [automated] Merge branch 'release/8.0' => 'release/8.0-staging' by @github-actions in #114223
- [release/8.0-staging] Fix inadvertently upgrading compiler warnings to errors by @akoeplinger in #114335
- Merging internal commits for release/8.0 by @vseanreesermsft in #114398
- [automated] Merge branch 'release/8.0' => 'release/8.0-staging' by @github-actions in #114414
- [release/8.0-staging] Remove reference / redistribution of externally provided packages in MSBuild tasks by @ericstj in #113404
- [release/8.0] Move DAC signing identity to PME by @github-actions in #114032
- [release/8.0-staging] Update dependencies from dotnet/xharness by @dotnet-maestro in #114439
- [release/8.0-staging] Update dependencies from dotnet/runtime-assets by @dotnet-maestro in #114472
- [release/8.0] Update dependencies from dotnet/emsdk by @dotnet-maestro in #114330
- [release/8.0-staging] JIT: Fix loop recognition bug in .NET 8 by @AndyAyersMS in #114457
- [release/8.0-staging] Update dependencies from dotnet/runtime-assets by @dotnet-maestro in #114588
- [release/8.0] Update dependencies from dotnet/emsdk by @dotnet-maestro in #114577
- [release/8.0-staging] Update dependencies from dotnet/hotreload-utils by @dotnet-maestro in #114454
- [manual] Merge release/8.0-staging into release/8.0 by @carlossanlop in #114661
- [release/8.0] Update dependencies from dotnet/arcade by @dotnet-maestro in #114667
Full Changelog: v8.0.15...v8.0.16
.NET 8.0.15
What's Changed
- [automated] Merge branch 'release/8.0' => 'release/8.0-staging' by @github-actions in #112437
- [release/8.0] Fix init race in mono_class_try_get_[shortname]_class. by @github-actions in #112297
- [release/8.0] Internal monitor impl not using coop mutex causing deadlocks on Android. by @github-actions in #112374
- [automated] Merge branch 'release/8.0' => 'release/8.0-staging' by @github-actions in #112467
- [release/8.0] Skip NegotiateStream_StreamToStream_Authentication_EmptyCredentials_Fails on WinSrv 2025 by @rzikm in #112472
- [release/8.0-staging] Move generation of SuggestedBindingRedirects.targets to inner build by @ericstj in #112494
- [release/8.0-staging] [mono][interp] Fix execution of delegate invoke wrapper with interpreter by @BrzVlad in #112008
- [release/8.0-staging] Add support for LDAPTLS_CACERTDIR \ TrustedCertificateDirectory by @steveharter in #112530
- [8.0] Make CPU utilization checks in the thread pool configurable by @kouvel in #112790
- [release/8.0-staging] Use invariant culture when formatting transfer capture in regex source generator by @stephentoub in #113151
- [release/8.0-staging] Include PDB for all TfmRuntimeSpecificPackageFile by @github-actions in #112140
- Update branding to 8.0.15 by @vseanreesermsft in #113225
- [8.0] Make counting of IO completion work items more precise on Windows by @kouvel in #112795
- [release/8.0-staging] Remove --no-lock brew flag by @akoeplinger in #113282
- [release/8.0-staging] [QUIC] Update MsQuic library version by @ManickaP in #113206
- [release/8.0-staging] Change assembler to clang in android MonoAOT by @github-actions in #111666
- [release/8.0-staging] [browser] Remove experimental args from NodeJS WBT runner by @github-actions in #113008
- [automated] Merge branch 'release/8.0' => 'release/8.0-staging' by @github-actions in #113263
- [release/8.0-staging] Update dependencies from dotnet/xharness by @dotnet-maestro in #112503
- [release/8.0-staging] Update dependencies from dotnet/runtime-assets by @dotnet-maestro in #112551
- [release/8.0] Update dependencies from dotnet/emsdk by @dotnet-maestro in #112516
- [release/8.0-staging] Update dependencies from dotnet/arcade by @dotnet-maestro in #112504
- [release/8.0-staging] Update dependencies from dotnet/hotreload-utils by @dotnet-maestro in #112520
- [release/8.0-staging] Back port logical equivalent of #102838 by @vcsjones in #113230
- [manual] Merge release/8.0-staging into release/8.0 by @carlossanlop in #113349
- Merging internal commits for release/8.0 by @vseanreesermsft in #113388
- [release/8.0-staging] Fix HttpHandlerDiagnosticListenerTests.TestW3CHeadersTraceStateAndCorrelationContext by @github-actions in #112881
- [automated] Merge branch 'release/8.0' => 'release/8.0-staging' by @github-actions in #113328
- [release/8.0] Update dependencies from dotnet/arcade by @dotnet-maestro in #113446
- [release/8.0] produce SBOM after signing artifacts by @haruna99 in #113504
- [release/8.0] Remove unnecessary parameter for SBOM generation by @hoyosjs in #113544
- [release/8.0] Update dependencies from dotnet/arcade by @dotnet-maestro in #113551
Full Changelog: v8.0.14...v8.0.15
.NET 10.0 Preview 2
What's Changed
- Avoid generic virtual dispatch for frozen collections alternate lookup by @andrewjsaid in #108732
- Bump main to preview2 by @carlossanlop in #111882
- Localized file check-in by OneLocBuild Task: Build definition ID 679: Build ID 2629821 by @dotnet-bot in #111884
- Add debugging checks for stack overflow tests failure by @janvorli in #111867
- [browser] reduce msbuild memory footprint by @pavelsavara in #111751
- new trimmer feature System.TimeZoneInfo.Invariant by @pavelsavara in #111215
- [main] Update dependencies from dotnet/roslyn by @dotnet-maestro in #111691
- Remove
RequiresProcessIsolation
from mcc tests by @MichalStrehovsky in #111887 - Handle unicode in absolute URI path for combine. by @rokonec in #111710
- Cross Product for Vector2 and Vector4 by @AlexRadch in #111265
- Removing Entry2MethodDesc as it is unnecessary by @davidwrighton in #111756
- Sign the DAC and DBI during the build process instead of in separate steps by @jkoritzinsky in #111416
- [SRM] Refactor reading from streams. by @teo-tsirpanis in #111323
- Add FrozenDictionary specialization for integers / enums by @stephentoub in #111886
- Fix linux-x86 build by @filipnavara in #111861
- Fix shimmed implementation of TryGetHashAndReset to handle HMAC. by @vcsjones in #111929
- Remove unsafe
bool
casts by @xtqqczze in #111024 - JIT: Enable inlining for late devirtualization by @hez2010 in #110827
- Make cdac APIs public but experimental by @jkoritzinsky in #111180
- Implement 'ConditionalWeakTable<TKey,TValue>.GetOrAdd' APIs by @Sergio0694 in #111204
- System.Text.Json: Fix polymorphic state bug when using ReferenceHandler.IgnoreCycles by @yesmey in #111808
- arm64: Add tests for add(s), and(s), sub(s), cmp, cmn, eor, neg & orr by @jonathandavies-arm in #111796
- arm64: Add support for bitwise NOT by @jonathandavies-arm in #111904
- JIT: Remove OSR quirk in
fgOptimizeUncondBranchToSimpleCond
by @amanasifkhalid in #111936 - JIT: Skip
fgComputeMissingBlockWeights
when we have profile data by @amanasifkhalid in #111873 - [android] Internal Android sample build improvements and CoreCLR support by @ivanpovazan in #111545
- Add workflow to prevent merging a PR when the
NO-MERGE
label is applied by @carlossanlop in #111940 - Change NativeAOT asset input resolution to explicitly replace only assemblies that come from the non-NativeAOT runtime package by @jkoritzinsky in #111944
- Invoke crossgen exe when building R2RTest by @steveisok in #111881
- Fix mistakes in net9 WorkloadManifest.json by @akoeplinger in #111950
- Cleanup membarrier portability by @jkotas in #111943
- Avoid
Unsafe.As
forMemory<T>
andReadOnlyMemory<T>
conversion by @xtqqczze in #111023 - Remove zlib dependencies from Docker containers by @carlossanlop in #111939
- Use IRootFunctions in Tensor.StdDev by @lilinus in #110641
- JIT: fix try region cloning when try is nested in a handler by @AndyAyersMS in #111975
- Add remark to
ConditionalSelect
by @hamarb123 in #111945 - Fix failed assertion 'FPbased == FPbased2' by @filipnavara in #111787
- Replace OPTIMIZE_FOR_SIZE with feature switch by @MichalStrehovsky in #111743
- Combined dependency update by @MichalStrehovsky in #111852
- Fix ICustomQueryInterface implementation in CrossApartmentQueryInterface_NoDeadlock by @jkoritzinsky in #111978
- [main] Update dependencies from dotnet/arcade by @dotnet-maestro in #111996
- [main] Update dependencies from dotnet/roslyn by @dotnet-maestro in #111946
- [mono][mini] Disable inlining if we encounter class initialization failure by @BrzVlad in #111754
- System.Speech: Use intellisense xml from dotnet-api-docs by @carlossanlop in #111983
- [iOS][globalization] Fix IndexOf on empty strings on iOS to return -1 by @matouskozak in #111898
- [JIT] Add legacy extended EVEX encoding and EVEX.ND/NF feature to x64 emitter backend by @Ruihan-Yin in #108796
- JIT: Check for profile consistency throughout JIT backend by @amanasifkhalid in #111684
- JIT: Run 3-opt once across all regions by @amanasifkhalid in #111989
- Fix BigInteger outerloop test by @Rob-Hague in #111841
- Native AOT Pri-1 test tree bring up (Loader test tree) by @MichalStrehovsky in #111994
- Baseline more pri1 tests with native AOT by @MichalStrehovsky in #111068
- JIT: Fold more nullchecks by @EgorBo in #111985
- Move the diagnostic print for stack overflow test failure by @janvorli in #112001
- Propose new async API by @agocke in #110420
- JIT: fix case where implied subrange assertions can get lost in morph by @AndyAyersMS in #112020
- Fix explicit offset of ByRefLike fields. by @AaronRobinsonMSFT in #111584
- JIT: Try to retain entry weight during profile synthesis by @amanasifkhalid in #111971
- JIT: Simplify x86 special intrinsic imports by @saucecontrol in #111836
- JIT: Improve x86 unsigned to floating cast codegen by @saucecontrol in #111595
- Disable LTCG for brotli and zlibng. by @jkoritzinsky in #111805
- WasmAppBuilder: Remove double computation of a value by @filipnavara in #112047
- Fix case-insensitive JSON deserialization of enum member names by @PranavSenthilnathan in #112028
- Remove unused build controls and simplify DotNetBuild.props by @jkoritzinsky in #111986
- JIT: Update type when return temp is freshly created by @hez2010 in #111948
- Simplify boolean logic in
TimeZoneInfo
by @xtqqczze in #112062 - JIT: Compute
fgCalledCount
after synthesis by @amanasifkhalid in #112041 - Use double.ConvertToIntegerNative where safe to do in System.Random by @tannergooding in #112046
- Ensure that math calls into the CRT are tracked as needing vzeroupper by @tannergooding in #112011
- JIT: Transform single-reg args to FIELD_LIST in physical promotion by @jakobbotsch in #111590
- [main] Update dependencies from dotnet/arcade by @dotnet-maestro in #112013
- Use Contains{Any} in Regex source generator by @MihaZupan in #112065
- Always inline number conversions by @hez2010 in #112061
- Build the RID-specific System.IO.Ports packages in the VMR by @jkoritzinsky in #112054
- Keep test PDB in helix payload for native AOT by @MichalStrehovsky in #111949
- System.Net.Http.WinHttpHandler.StartRequestAsync assertion failed by @pedrobsaila in #109799
- [wasm] Bump chrome for testing - linux: 132.0.6834.159, windows: 133.0.6943.35 by @github-actions in #112066
- Fail tests if LTCG is used by @MichalStrehovsky in #111651
- Fix string trimming in AppleSdk.cs by @akoeplinger in #112090
- [main] Update dependencies from dotnet/roslyn-analyzers by @dotnet-maestro in #111518
- [main] Update dependencies from dotnet/roslyn by @dotnet-maestro in #112030
- [main] Update dependencies from dnceng/internal/dotnet-optimization by @dotnet-maestro in #111848
- [main] Update dependencies from dotnet/arcade by @dotnet-maestro in ht...
.NET 9.0.4
What's Changed
- [automated] Merge branch 'release/9.0' => 'release/9.0-staging' by @github-actions in #112424
- [release/9.0] Fix init race in mono_class_try_get_[shortname]_class. by @github-actions in #112296
- [release/9.0] Internal monitor impl not using coop mutex causing deadlocks on Android. by @github-actions in #112373
- [release/9.0-staging][iOS][globalization] Fix IndexOf on empty strings on iOS to return -1 by @matouskozak in #112012
- [release/9.0] Skip NegotiateStream_StreamToStream_Authentication_EmptyCredentials_Fails on WinSrv 2025 by @rzikm in #112473
- [release/9.0-staging] Fix case-insensitive JSON deserialization of enum member names by @github-actions in #112057
- [release/9.0-staging] Move generation of SuggestedBindingRedirects.targets to inner build by @github-actions in #112487
- [release/9.0-staging] Remove unneeded DiagnosticSource content by @github-actions in #112708
- [release/9.0-staging] Fix LINQ handling of iterator.Take(...).Last(...) by @stephentoub in #112714
- [release/9.0-staging] [mono][mini] Disable inlining if we encounter class initialization failure by @github-actions in #112005
- [release/9.0-staging] [mono][interp] Fix execution of delegate invoke wrapper with interpreter by @github-actions in #111700
- [release/9.0-staging] Include PDB for all TfmRuntimeSpecificPackageFile by @github-actions in #112139
- [release/9.0-staging] Add support for LDAPTLS_CACERTDIR \ TrustedCertificateDirectory by @steveharter in #112531
- [release/9.0-staging] Fix getting resource when ResourceResolve returns assembly with resource that is an assembly ref by @elinor-fung in #112893
- [release/9.0-staging] JIT: fix local assertion prop error for partial local comparisons by @github-actions in #112539
- [9.0] Make CPU utilization checks in the thread pool configurable by @kouvel in #112791
- [release/9.0-staging] Backport "Ship CoreCLR packages in servicing releases" by @amanasifkhalid in #113026
- [release/9.0-staging] Fix TensorPrimitives.MultiplyAddEstimate for integers by @github-actions in #113094
- [release/9.0-staging] Use invariant culture when formatting transfer capture in regex source generator (#113081) by @stephentoub in #113150
- [release/9.0-staging] NativeAOT/Arm64: Do not overwrite gcinfo tracking registers for TLS by @github-actions in #112549
- Update branding to 9.0.4 by @vseanreesermsft in #113226
- [9.0] Make counting of IO completion work items more precise on Windows by @kouvel in #112794
- [release/9.0-staging] Remove --no-lock brew flag by @akoeplinger in #113281
- [release/9.0-staging] [QUIC] Update MsQuic library version by @github-actions in #113205
- [automated] Merge branch 'release/9.0' => 'release/9.0-staging' by @github-actions in #113264
- [release/9.0-staging] Update dependencies from dotnet/roslyn-analyzers by @dotnet-maestro in #112836
- [release/9.0-staging] Update dependencies from dotnet/roslyn by @dotnet-maestro in #112835
- [release/9.0-staging] Update dependencies from dotnet/xharness by @dotnet-maestro in #112627
- [release/9.0-staging] Update dependencies from dotnet/runtime-assets by @dotnet-maestro in #112552
- [release/9.0] Update dependencies from dotnet/emsdk by @dotnet-maestro in #112522
- [release/9.0-staging] Update dependencies from dotnet/cecil by @dotnet-maestro in #112515
- [release/9.0-staging] Update dependencies from dotnet/arcade by @dotnet-maestro in #112468
- [release/9.0-staging] Update dependencies from dotnet/icu by @dotnet-maestro in #112514
- [release/9.0-staging] Update dependencies from dotnet/hotreload-utils by @dotnet-maestro in #112394
- [release/9.0] Fix
BigInteger.Rotate{Left,Right}
for backport by @github-actions in #112991 - [release/9.0-staging] [mono] Switch generic instance cache back to GHashTable; improve ginst hash function by @github-actions in #113316
- [release/9.0-staging] Update dependencies from dotnet/sdk by @dotnet-maestro in #112628
- [manual] Merge release/9.0-staging into release/9.0 by @carlossanlop in #113350
- [release/9.0-staging] Fix HttpHandlerDiagnosticListenerTests.TestW3CHeadersTraceStateAndCorrelationContext by @github-actions in #112882
- Merging internal commits for release/9.0 by @vseanreesermsft in #113389
- [automated] Merge branch 'release/9.0' => 'release/9.0-staging' by @github-actions in #113333
- [release/9.0] Update dependencies from dotnet/arcade by @dotnet-maestro in #113447
- [release/9.0] fix SBOM issues for runtime by @haruna99 in #113463
Full Changelog: v9.0.3...v9.0.4
.NET 8.0.14
What's Changed
- [release/8.0] Disable tests targetting http://corefx-net-http11.azurewebsites.net by @rzikm in #111401
- [release/8.0-staging] Don't make web requests in HttpClient trimming test by @MihaZupan in #111488
- [release/8.0] Update dependencies from dotnet/emsdk by @dotnet-maestro in #111712
- [automated] Merge branch 'release/8.0' => 'release/8.0-staging' by @github-actions in #111421
- [release/8.0-staging] [mono] Run runtime-llvm and runtime-ioslike on Mono LLVM PRs by @matouskozak in #111744
- [release/8.0-staging] Add workflow to prevent merging a PR when the
NO-MERGE
label is applied by @github-actions in #111962 - [release/8.0] Fix compilation of runtime with Xcode 16 by @filipnavara in #112208
- Update branding to 8.0.14 by @vseanreesermsft in #112143
- [release/8.0-staging] Update dependencies from dotnet/source-build-reference-packages by @dotnet-maestro in #111605
- [release/8.0-staging] Update dependencies from dotnet/xharness by @dotnet-maestro in #111411
- [release/8.0-staging] Update dependencies from dotnet/arcade by @dotnet-maestro in #111412
- [release/8.0-staging] Update dependencies from dotnet/runtime-assets by @dotnet-maestro in #111445
- [release/8.0-staging] Update .NET 8 build images to use Azure Linux by @sbomer in #110199
- [release/8.0-staging] Don't call EnsureInstanceActive under StaticBoxInitLock by @EgorBo in #108736
- [8.0] Remove Windows 8.1 from test queues by @akoeplinger in #112276
- [8.0] Update Android and Linux-Bionic images (#102928) by @akoeplinger in #112354
- [release/8.0] Update dependencies from dotnet/emsdk by @dotnet-maestro in #112188
- [release/8.0-staging] Update dependencies from dotnet/source-build-externals by @dotnet-maestro in #112176
- [release/8.0-staging] Update dependencies from dotnet/hotreload-utils by @dotnet-maestro in #111434
- [automated] Merge branch 'release/8.0' => 'release/8.0-staging' by @github-actions in #112221
- Backport XmlSerializer reflection changes to 8.0-staging by @StephenMolloy in #112320
- [manual] Merge release/8.0-staging into release/8.0 by @carlossanlop in #112381
- [8.0] Backport labeling workflow changes by @carlossanlop in #112241
- Merging internal commits for release/8.0 by @vseanreesermsft in #112444
- [8.0] Wrap the OneLocBuild yml section with a SourceBranch check by @carlossanlop in #112458
Full Changelog: v8.0.13...v8.0.14