Node.js周刊2026W36 | NestJS 12发布、Remix 3 RC、pnpm 12 Rust重写、Node.js 26.8.0
2026/9/9 4:22:13 网站建设 项目流程

NestJS 12 转 ESM,Remix 3 RC 脱 React,pnpm 12 Rust 重写落地;Cypress 16 切 HTTP/2,Node.js 26.8.0 新增基准假设检验。

🔥 头条

NestJS 12 发布:ESM 优先的包、Rspack 与 Vitest

这个渐进式框架迎来多年来最大的一次发布:转向 ESM 优先(CJS 仍可作为选项),用 Rspack 取代 webpack,新增 Standard Schema 支持以便与 Zod、Valibot 等库轻松互操作,此外还有结构化日志、焕然一新的官网等等。

Remix 3 RC:无需 React 的全栈框架

Remix 从前世作为 React 框架重写为独立全栈框架的浩大工程已基本完成。这篇文章做了很好的推介,但更棒的是全新的官网,它解释了 Remix 如何以“单一包”提供构建现代 Web 应用所需的一切。

📖 文章

一条慢查询拖垮你的整个连接池

一个沉重的分析查询占着连接不放,其他所有请求只能干等。TimescaleDB 扩展了 Postgres,让这类查询快速返回,从而释放连接池。超表、压缩、连续聚合。一个数据库,而不是两个。现在开始可获得 1000 美元额度。

用 AI 代理将 Node.js 服务重写为 Go

一个非常“2026 年”的故事:一夜之间完成移植,重点在于如何把代理式工程做好。关于先搭好测试脚手架以及上线过程的经验,都很值得借鉴。

你的追踪只显示慢的 span,不显示异常

OTLP 承载的是追踪和日志,而不是错误。Sentry 的 OtlpIntegration 把两者连接到同一个追踪瀑布流中。了解更多关于 Sentry 的 OTLP 支持。

Drydock:发布前对比你的 npm tarball

来自 Preact 核心团队成员的工具,用于对比构建出的 npm tarball 与上一个已发布版本,标记出安装脚本、网络访问和新增的二进制文件。它还可以为你的 Actions 发布任务把关,或监控 npm 新的分阶段发布流程。

pnpm 12:用 Rust 重写,命令与锁文件格式不变

Rust 重写版已经稳定,v11 的几乎所有命令、标志和锁文件格式都沿用了下来,只有少量改动。不过 npm 的 latest 标签仍指向 pnpm 11,所以你需要用 pnpm self-update next-12 来升级。

浏览器全新的邮箱验证 API

介绍一项 WICG 提案,用浏览器和邮件服务商之间的令牌(提交时由服务器验证)来消除“去查收邮件”的麻烦。目前仅在 Chrome 源试用阶段,且只支持 Gmail。

Lovable 从 Next.js 迁移到 TanStack Start

Lovable 如何把一个约 85 万行代码的应用从 Next.js 迁移到 TanStack Start,迁移期间两者在代理后并行运行,并共享一部分代码。

我们在 React、Vue 和 Svelte 中构建数据表格学到的东西

SVAR 为 React、Vue 和 Svelte 提供了同一套数据表格,并表示无论使用哪个框架,最关键、最影响性能的部分都是相同的。

Svelte Bits:面向 Svelte 的动画 UI 组件

React Bits(同一作者)的 Svelte 移植版,那套流行的 React 动画组件套件。

🛠 工具

srvx 1.0:一套 fetch handler 通吃 Node、Deno 和 Bun

你可以导出一个接收 web 标准 Request、返回 Response 的 handler,然后不改一行代码地运行在 Node、Deno 或 Bun 上。附带带监听和静态服务的 CLI,srvx fetch 还能在不启动服务器的情况下调用你的 handler。

NVM for Windows 2.0:Windows 上的 Node 版本管理器

为 Windows 用户打造的现代 Node 工作流,支持版本锁定、原生集成、缺失版本自动安装等等。v2 是一次重写,引入了更轻量的基于 shim 的机制,并且不再需要管理员权限。GitHub 仓库。

Got 16.0:内置 HTTP/2 与 QUERY 方法支持

这个流行的 Node HTTP 客户端现在内置了 HTTP/2 客户端、自带 DNS 缓存,依赖更少,并支持新近标准化的 QUERY HTTP 方法。

SimpleWebAuthn 14.0:支持后量子通行密钥

这个通行密钥库现在可以验证后量子的 ML-DSA 通行密钥,并且在 Node 24.7 及以上版本中,注册时默认优先选择 ML-DSA-44。

htmx 4.0:反 SPA 库两年来的首个大版本

这个仅用属性就把 HTML 片段换入页面的库,从 XMLHttpRequest 转向了 Fetch API。属性继承改为可选开启,事件被标准化并重命名,morphing 替换和 hx-partial 是新特性。另有一份完整的 htmx 4 新特性指南。

Schedule-X 4.7

面向 React、Vue、Angular、Svelte 和 Preact 应用的大型日程式日历控件。

Mantine 9.6

广受欢迎、覆盖面很广的 React 组件套件。新增了媒体“灯箱”组件等等。

Cropper.js 2.2

一个成熟的图片裁剪控件,附带可以上手的演练场。

noble-curves 2.4

经过审计的、极简的椭圆曲线密码学 JavaScript 实现。

📝 简讯

TypeScript 已支持 import 属性感知的环境模块

TypeScript 已支持 import 属性感知的环境模块。像 declare module “*” with { type: “css” } 这样的声明,现在可以匹配带有该属性的 import。

Dani Sandoval 盘点本月 Svelte 生态新动向

Dani Sandoval 盘点了本月 Svelte 世界的新动向,包括 Svelte 5.57 新增的 SvelteMap 方法、SvelteKit 3 进入 RC,以及 sv CLI 的 ai-tools 插件。

Sarah Rainsberger 盘点本月 Astro 生态新动向

Sarah Rainsberger 也盘点了本月 Astro 的新动向,包括 Matthew Phillips 接任“项目主管”,以及全新的 Astro Playground。

📦 版本

Rspack 2.2, Rsbuild 2.2, and Rslint 0.9

更快的构建与 HMR、更短的模块 ID,Rsbuild 中默认开启 Node.js 分块。值得关注的是,Rslint 现已实现来自 @typescript-eslint 的全部规则与预设。

Cypress 16

你的 Cypress 测试一直是通过 HTTP/1.1 跑应用的,而真实用户用的是 HTTP/2——支撑 cy.intercept() 的代理层是在 HTTP/1.1 为标准的年代构建的,导致测试环境比生产环境更慢。缓慢的 E2E 套件很少只有一个原因:排队请求、人为延迟、布局抖动和不稳定的重跑各自都在泄漏时间,而 HTTP/1.1 每域名六个连接的限制,让上传进度条、实时通知这类 SSE 功能彻底无法被测试覆盖。Cypress 16 在 Chromium 上切换到 HTTP/2,测试代码零改动——加载 1000 张图片从 3896ms 降到 1362ms——同时升级到 Node.js 24、Electron 41 和 Chromium 146,并移除 Cypress.env(),以免密钥进入浏览器。

Node.js v26.8.0(Current)

Node.js 26.8.0 为其自带的基准测试运行器加入了统计假设检验——perf_hooks 的直方图现在内置了相关数学能力,compare.js 也新增了 --analyze 模式,让运行时本身就能告诉你那 5% 的提速是真实的,还是仅仅来自多次运行之间的噪声。长期以来,基准回归都是靠在共享 CI 机器上肉眼看数字来判断的,噪声和真实的性能下降看起来毫无区别;此次重写的直方图实现正是要终结这种猜测。该版本还将 TracingChannel 提升为稳定特性,新增抗 nonce 误用的 SIV 与 GCM-SIV 加密模式,落地原生的 ZipEntry/ZipFile/ZipBuffer、sqlite 语句的 dispose 支持、更快的 net.BlockList、不再抛异常的 MIMEType.parse,以及 REPL 语法高亮。


往期精选


阅读原文

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询