.NET 9 预览版6发布

net · 浏览次数 : 46

小编点评

微软发布了.NET 9的第6个预览版,主要更新包括运行时、SDK、.NET MAUI、ASP.NET Core和C#。这个版本并没有包含太多新的主要功能,因为它已接近.NET 9开发的最后阶段,计划在11月全面发布。 值得一提的是,Loongarch的Native-AOT代码合进去了,这意味着龙芯.NET可以直接同步社区代码,从而更方便地制作Loongarch架构的SDK并发布。这将大幅减少代码的本地维护工作,使得龙芯.NET可以基于社区源码进行极少的修改就能发布。 此外,社区支持Loongarch的CI也在逐步发展,原生发布的Loongarch架构OS系统镜像,如Alpine和Debian,都在快速推进。Alpine社区网页Wiki已经明确把支持Loongarch放到今年11月的发布计划中。 在.NET 9预览版6中,有几个重要的更新: 1. 运行时更新:改进了加载和存储数据的指令,增强了执行时间和性能。 2. 代码布局:增强基本块排序,以最大化fallthrough行为和热代码密度,减少分支指令的数量。 3. 循环优化:识别翻转循环计数器变量的时机以提高性能。 4. 减少地址暴露:更好地跟踪局部变量地址以释放更多的优化机会。 5. AVX10v1支持:新的SIMD指令集支持,允许在支持AVX10的硬件上进行矢量化操作。 6. 硬件内部代码生成:改进硬件内部函数中常量的处理,以生成加速代码。 7. 常量折叠:增强浮点和SIMD运算的常量折叠功能。 8. SDK更新:NuGetAudit现在会对传递依赖项中的漏洞发出警告。 9. MSBuild BuildChecks:引入它来在构建期间强制执行规则和不变量。 10. .NET MAUI更新:质量改进,扩大测试覆盖范围、端到端场景测试和大量错误修复。 11. ASP.NET Core更新:静态Web资产指纹识别,改进SignalR的分布式跟踪,增强Microsoft.AspNetCore.OpenAPI的功能。 12. 其他更新:包括跨帧拆分大型HTTP/2头部等。 总体而言,这个预览版主要集中在云原生应用程序和性能优化上。对于开发者来说,这是一个值得关注的版本,特别是那些在使用Loongarch架构和.NET平台的开发者。

正文

微软发布了 .NET 9 的第 6 个预览版,此版本包括对运行时、SDK、.NET MAUI、ASP.NET Core 和 C# 的更新,预览版没有包含太多新的主要功能或特性,因为已接近 .NET 9 开发的最后阶段,该开发计划于 11 月全面发布。

Loongarch的Native-AOT代码合进去了,龙芯.NET 可以直接同步社区代码,这样龙芯.NET 就可以非常方便制作Loongarch架构的SDK来发布。极大减少代码的本地维护,龙芯.NET 现在都是基于社区的源码极少的修改就可以发布。 其次,社区支持Loongarch的CI也在慢慢的发展着,开源社区原生发布Loongarch架构的OS系统镜像,如Alpine和Debian都在快速推进,特别Alpine社区网页wiki已经明确把支持Loongarch放到今年11月的发布计划中,其实Alpine和Debian两个OS发行版社区,对Loongarch的支持已经很全面了,只是需要等社区下个版本发布中,正式发布Loongarch架构的ISO镜像。 到时候就可以先在dotnet的CI中先添加一个Loongarch的测试。为后续做好准备

c1e367ba5f26b8e7bf65e872bef6618

运行时更新

  • ARM64 代码生成:改进了加载和存储数据的指令,增强了执行时间和性能。

  • 代码布局:增强基本块排序,以最大化 fallthrough 行为和热代码密度,减少分支指令的数量。

  • 循环优化:识别翻转循环计数器变量的时机以提高性能。

  • 减少地址暴露:更好地跟踪局部变量地址以释放更多的优化机会。

  • AVX10v1 支持:新的 SIMD 指令集支持,允许在支持 AVX10 的硬件上进行矢量化操作。

  • 硬件内部代码生成:改进硬件内部函数中常量的处理,以生成加速代码。

  • 常量折叠:增强浮点和 SIMD 运算的常量折叠功能。

SDK 更新

  • NuGetAudit:现在会对传递依赖项中的漏洞发出警告,有助于维护项目安全。“NuGetAudit 最初是在 .NET 8 中添加的,如果项目使用的任何包存在已知漏洞,它会在还原期间发出警告,”Microsoft 解释道。“它需要一个提供漏洞数据库的包源,所以在实践中你需要使用 https://api.nuget.org/v3/index.json 作为包源,我们计划在不 nuget.org 作为包源的情况下允许审计。有关 NuGet 审核(包括所有配置选项)的详细信息,请参阅有关 NuGet 审核的文档

  • dotnet nuget why:一个新命令,用于查明你的项目为什么使用传递包。

  • MSBuild BuildChecks:引入它来在构建期间强制执行规则和不变量,类似于 Roslyn Analyzers,并针对共享输出路径和双写检测制定了新规则。

  .NET MAUI 更新

  • 质量改进:扩大测试覆盖范围、端到端场景测试和大量错误修复。

  • 适用于 Android 和 iOS 的 .NET:注重质量的更新,确保两个平台的应用程序开发稳健可靠。

ASP.NET Core 更新

  • 静态 Web 资产的指纹识别:自动生成静态资产的指纹版本,以改善缓存并加快加载时间。

  • 改进了 SignalR 的分布式跟踪:增强了 SignalR 集线器方法调用的跟踪功能。

  • Microsoft.AspNetCore.OpenAPI 的增强:改进了完成提供程序并支持 [Required] 和 [DefaultValue] 属性以及模式转换器。

  • [Authorize] 和 [AllowAnonymous] 分析器:当 [Authorize] 被 [AllowAnonymous] 覆盖时,新的分析器会发出警告。

  • ComponentPlatform 重命名为 RendererInfo:匹配新的命名约定。

  • 跨帧拆分大型 HTTP/2 标头:确保更好地处理大型标头。


.NET 9 预览版6的相关 GitHub 讨论,新讨论包括:

对于那些倾向于深入研究细节的人,可以在不同属性的发行说明中找到更多的指南,包括:

可以在 .NET 9 中的新增功能(上次更新于 6 月 11 日)中跟踪主要开发工作。该公司表示,它特别关注云原生应用程序和性能。

与.NET 9 预览版6发布相似的内容:

.NET 9 预览版6发布

微软发布了 .NET 9 的第 6 个预览版,此版本包括对运行时、SDK、.NET MAUI、ASP.NET Core 和 C# 的更新,预览版没有包含太多新的主要功能或特性,因为已接近 .NET 9 开发的最后阶段,该开发计划于 11 月全面发布。Loongarch的Native-AOT代码合进去

.NET 9 预览版 5 发布

微软在6月发布了.NET 9预览版的第五个版本。这个新版本的框架预计将在今年晚些时候正式发布,它是一个标准支持(STS)版本,将在2024年11月12日至2026年5月12日期间在多个操作系统上获得18个月的支持。这个预览版带来了性能改进和一些新特性,例如增强的AI能力、优先级无界通道、Search

微软在Microsoft Build 2024 上 发布了.NET 9 预览版4

在 Microsoft Build 2024 上,与往年一样,.NET 不是会议主题演讲的主题,但是微软在这个大会上为.NET 推出一组新的功能和工具,旨在使 .NET 开发更快、更轻松,具体内容可以阅读文章:Microsoft Build 2024 的 .NET 公告和更新[1]。最新功能都在.N

.NET周刊【9月第3期 2023-09-17】

国内文章 在.NET 8 RC1 版本中 MAUI、ASP.NET Core 和 EF8 的新特性 https://www.cnblogs.com/shanyou/p/17698428.html 从年初2 月份发布第一个预览版,经历7个预览版后,Microsoft 西雅图时间9月13日发布了 .NE

在.NET 8 RC1 版本中 MAUI、ASP.NET Core 和 EF8 的新特性

从年初2 月份发布第一个预览版,经历7个预览版后,Microsoft 西雅图时间9月13日发布了 .NET 8 RC 1: https://devblogs.microsoft.com/dotnet/announcing-dotnet-8-rc1/[1], 这是该框架在 11 月初正式发布之前的两个

.NET 8 发布的最后一个预览版Preview 7, 下个月发布RC

微软在2023年8月9日 发布了.NET 8 Preview 7[1],这是它在11月14日 RTM 之前进入发布候选阶段之前的最后预览版。 该预览版也于也与 VS 2022 v17.7 版本一起发布。对于预览版7,System.Text.Json 和 codegen 在此版本中具有最大的变化。所有

C# 13(.Net 9) 中的新特性 - 扩展类型

C# 13 即 .Net 9 按照计划会在2024年11月发布,目前一些新特性已经定型,今天让我们来预览一个比较大型比较重要的新特性: 扩展类型 extension types

上周热点回顾(9.25-10.1)

热点随笔: · 在小公司编程是一种什么样的体验? (公众号_陶朱公Boy)· 一个混乱千万级软件项目 (烂人)· 《优化接口设计的思路》系列:第四篇—接口的权限控制 (sum墨)· C#开源且免费的Windows桌面快速预览神器 - QuickLook (追逐时光者)· .NET开发工作效率提升利器

本计划在 .NET 8 中推出的 WASI 推迟到 .NET 9

本计划在 .NET 8 中推出的 WASI 已推迟到 .NET 9,请参阅 Github 上的 WASI 跟踪问题。 在.NET 8 Preview 4 开始支持生成与 WASI 兼容的 .wasm 文件,使用独立的 WebAssembly 运行时 Wasmtime CLI[1] 运行该文件。去年的

.NET周刊【9月第4期 2023-09-24】

国内文章 有趣的“可扩展近似计数”算法 https://zhuanlan.zhihu.com/p/656817283 在编程的世界里看见数学的身影,会让我充满好奇和兴奋。这不,在一年一度介绍.NET新版本的官方开发博客《Performance Improvements in .NET 8》中,我看到