[250303] Next.js 15.2 发布:更优调试体验、流式元数据和性能提升 | .NET 10 首个预览版发布

Next.js 15.2 发布:更优调试体验、流式元数据和性能提升

Next.js 15.2 版本带来了更优的调试体验,主要改进包括重新设计的错误界面、流式元数据支持、Turbopack 性能提升,以及实验性的 React View Transitions 和 Node.js 中间件支持。

1️⃣ 重新设计的错误界面和改进的堆栈跟踪

新版本彻底革新了 Next.js 中错误消息的 UI 和呈现方式,使其更易于理解。新设计突出了错误的核心细节,例如消息、相关代码框架和调用堆栈,同时减少了库或依赖项中代码的干扰。这意味着你可以更快地找 到问题的根源并开始修复它。

利用 React 中新引入的 owner stacks 功能,Next.js 现在可以更精确地指出错误的来源,跳过未导致错误的中间元素。此外,开发者现在可以更轻松地自定义指示器偏好,无需添加额外的配置。错误覆盖底部新 增的反馈部分,允许用户对错误消息的帮助程度进行评分,这将有助于 Next.js 团队改进错误消息。

2️⃣ 流式元数据

在之前的版本中,generateMetadata 中的异步操作需要在初始 UI 发送之前完成,以便将其包含在文档的 <head> 中。这意味着即使初始 UI 可用,初始绘制仍会被不影响用户视觉体验的数据需求延迟。15.2 版本改进了这一点,允许在 generateMetadata 完成之前将初始 UI 发送到浏览器。

为了保持与搜索引擎爬虫的兼容性,Next.js 仍然会延迟向某些机器人用户代理发送 HTML。你可以通过 next.config.js 中的 htmlLimitedBots 选项自定义正则表达式来控制哪些机器人会受到此处理。

3️⃣ Turbopack 性能提升

Next.js 15 版本标志着 Turbopack 的稳定发布。15.2 版本进一步提升了 Turbopack 的性能,尤其是在没有持久缓存的情况下。早期采用者报告称,与 Next.js 15.1 相比,访问路由时的编译时间最多可缩短 57.6%。对于 vercel.com 应用,本地开发期间的内存使用量减少了 30%

4️⃣ React View Transitions (实验性)

Next.js 15.2 新增了一个功能标志,用于启用 React 中新的实验性 View Transitions API,该 API 允许你在应用程序的不同视图和组件之间进行动画过渡。可以通过在 next.config.js 中添加以下配置来启用此功能:

module.exports = {
  experimental: {
    viewTransition: true,
  },
};

5️⃣ Node.js 中间件 (实验性)

新版本还实验性地支持在中间件中使用 Node.js 运行时。可以通过在 next.config.js 中添加以下配置来启用此功能:

module.exports = {
  experimental: {
    nodeMiddleware: true,
  },
};

6️⃣即将推出

  • “use cache” (beta):Next.js 团队一直在致力于将 "use cache" 作为一项独立功能进行稳定化。
  • Turbopack 持久缓存 (实验性):Vercel 正在内部测试持久缓存,并取得了积极的性能改进。

7️⃣ 其他改进

除了以上主要功能外,Next.js 15.2 还包含其他改进,例如新增 --api 标志以使用 create-next-app 创建纯 API 应用,以及对 next/imageimages.qualities 支持等。

x-cmd 用户安装和升级方式:

# 查询并执行 Next.js 的安装和升级命令
x install nextjs

在这里插入图片描述

Next.js 15.2 版本带来了显著的改进,尤其是在调试体验和性能方面。 赶紧升级体验吧!

来源:

https://nextjs.org/blog/next-15-2

.NET 10 首个预览版发布

.NET 团队激动地宣布 .NET 10 的首个预览版正式发布!此版本包含了运行时、SDK、库、C#、ASP.NET Core、Blazor、.NET MAUI 等方面的重大改进。主要更新如下:

库:

  • 可通过 SHA-1 以外的指纹查找证书
  • 可在 ASCII/UTF-8 中查找 PEM 编码数据
  • DateOnly 类型中 ISOWeek 的新方法重载
  • 字符串规范化 API 支持字符 Span
  • 字符串比较的数字排序
  • 添加了带单个参数的 TimeSpan.FromMilliseconds 重载
  • ZipArchive 性能和内存改进
  • OrderedDictionary<TKey, TValue> 添加了额外的 TryAddTryGetValue 重载
  • 更多左手矩阵变换方法

运行时:

  • 数组接口方法去虚拟化
  • 值类型数组的堆栈分配
  • AVX10.2 支持

SDK:

  • 框架提供的包引用剪枝

C#:

  • 在未绑定泛型中支持 nameof
  • 隐式 span 转换
  • field 支持的属性
  • 简单 Lambda 参数上的修饰符
  • 实验性功能:数据段中的字符串字面量

F#:

此版本更新了 F# 语言、FSharp.Core 标准库和 FSharp.Compiler.Service。

Visual Basic:

  • 支持 unmanaged 约束
  • 遵循重载解析优先级

ASP.NET Core & Blazor:

  • 支持 OpenAPI 3.1
  • 以 YAML 格式生成 OpenAPI 文档
  • ProducesResponseType 上的响应描述
  • 使用 RedirectHttpResult.IsLocalUrl 检测 URL 是否为本地
  • 改进了对顶级语句应用程序的集成测试
  • QuickGrid RowClass 参数
  • Blazor 脚本作为静态 Web 资源
  • Blazor RouteAttribute 的路由语法高亮

.NET MAUI:

此版本专注于质量改进,包括 iOS 和 Mac Catalyst 的 CollectionView 增强功能。.NET for Android 支持 Android 16 (Baklava) Beta 1、JDK-21 构建,并更新了最低支持 Android API 建议。.NET for iOS、Mac Catalyst、macOS 和 tvOS 默认启用修剪器警告,并在库中捆绑原始资源。

Windows Forms:

  • 与剪贴板相关的序列化和反序列化更改
  • 淘汰的剪贴板 API
  • 新的剪贴板相关 API

Windows Presentation Foundation (WPF):

此版本专注于质量改进。

Entity Framework Core:

  • 支持 .NET 10 LeftJoin 运算符
  • ExecuteUpdateAsync 现在接受常规的非表达式 lambda

容器镜像:

  • 10.0-preview 标签使用 Ubuntu 24.04
  • Debian 镜像使用 Debian 13 “Trixie”
  • Ubuntu Chiseled 镜像现在包含 Chisel 清单

来源:

https://devblogs.microsoft.com/dotnet/dotnet-10-preview-1/

更多内容请查阅 : blog-250303

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值