公司动态

Web前端周刊2026W31 | TypeScript 7.0、MobX 7.0、npm发布即扫毒

📅 2026/8/3 7:13:58
Web前端周刊2026W31 | TypeScript 7.0、MobX 7.0、npm发布即扫毒
React圈TanStack停用RSC、MobX 7.0发布JavaScript圈htmx 4.0、TypeScript 7.0发布Node.js圈npm发布即扫毒、scriptc转原生编译器。⚛️ ReactTanStack 为何在自家网站停用 RSCTanStack.com 曾是被引用最多的 React Server ComponentsRSC成功案例之一——但该团队此后已停用它。这次转变确实带来了实际收益将 Markdown 和语法高亮栈迁移到服务端减少了浏览器端 JavaScript 的传输量加快了网站速度。但成本随时间逐渐显现一条本应简单的内容管道变成了仅限服务端的 JSX 文件、Flight payload 和路由复杂度难以解释和维护。这篇文章剖析了推动这一逆转的原因以及选择更简单管道背后的权衡。在 Next.js 中试验 RSC 以提升性能与用户体验当服务器紧挨着数据库时异步 Server Components 可以在一次往返中完成数据获取和内容渲染——无需下载客户端代码、无需加载动画、也无需第二次请求。然而一旦某个功能需要交互开发者习惯性地把一切都交给客户端让流式渲染和 Suspense 的优势白白闲置。这篇文章基于 Next.js 16.3 Instant Navigations 预览版构建了一个小型社交应用测试 Server Component 和 Server Function 模型能延伸到多远。它揭示了流式 feed 的模式、服务端/客户端组合的决策以及决定边界在哪才值得的性能与用户体验权衡。OverflowGuard能感知内容何时放不下的组件一个 2KB 的组件能检测工具栏或导航内容何时不再适配容器让你无需魔法断点即可折叠为图标或汉堡菜单。Microcharts适合 React 的词级微型图表一个图表现在可以只有 1,375 字节的 SVG还能嵌入句子中。大多数仪表盘强迫读者离开正文去解读一个数字而这款库四个集合中的 106 个词级微型图表足够轻量可以内联渲染在报告、KPI 卡片和发布说明中。这篇文章介绍了目录中的图表类型、传数组的设置方式以及类型化图表围栏如何让编辑和 AI 代理都能在不猜谜的情况下生成正确的图表。MobX 7.0 发布在期待已久的清理性发布中MobX 7 将打包体积削减至 gzip 后 13.96 KiB此前为 17.02 KiB经 tree-shaking 后更是仅 10.32 KiB。在多年背负旧版 React 类组件的弃用兼容路径之后这个状态管理库终于强制使用现代运行时和装饰器模型但它现在要求 React 18将绑定拆分到 mobx-react-lite 和 mobx-react 之间并删除了一批已废弃的 API。发布说明详细列出了哪些内容被移除、谁需要哪个 React 包以及你的应用能瘦身多少。Mantine 9.5 发布Mantine 抛弃了 ESLint 和 Prettier改用基于 Rust 的 oxc 工具链让整个代码库的 lint 和格式化几乎瞬时完成。ESLint 和 Prettier 多年来一直是 JavaScript 的标准但它们的 Node.js 运行时在大型组件库上会变慢每次 lint 运行和格式化都会拖慢反馈循环。本次发布涵盖 oxlint/oxfmt 迁移、可复用的 oxc-config-mantine 包以及 DatePicker 原生月份/年份选择器、双向 Timeline 布局等生活质量改进。React Ace 15.0 发布VisionCamera 5.2 发布VisionCamera 5.2 为 SkiaCameraReact Native 的 GPU 加速渲染管线带来了完整的手动控制——变焦、曝光和 torchMode。此前使用 Skia 渲染的开发者不得不放弃精细的相机控制或者与一个偏向 4K 的分辨率协商器作斗争在不适合的设备上浪费处理能力和电量。本次发布新增了变焦、曝光和手电筒控制、targetResolution 属性、用于 GPU 缩放器的 stretch ScaleMode并修复了 4K 偏差让高性能相机应用既更清晰又更省资源。react-router-hono-server 3.0 发布Virtua 0.50 发布Virtua 提供了一个仅约 3kB 的虚拟列表——比一张典型图片还小——却能零配置地在五个框架React、Vue、Solid、Svelte、Angular中运行。大多数虚拟化库要么被框架锁定要么需要繁琐配置因此 Virtua 将自己定位为对虚拟化本身的重新思考。这篇文章介绍了 VList可作为可滚动 div 的直接替代品、用于复杂布局的 Virtualizer以及如何在几分钟内上手。react-x11 1.2 发布React 现在可以通过 socket 直接渲染到 X11 服务器——底层没有 DOM、没有 HTML、没有浏览器引擎当然也不是伪装成 Electron。Linux 上的桌面 GUI 编程传统上意味着为了原生工具包而放弃 React 的组件模型或者为浏览器付出 Electron 的内存和打包体积代价。这篇文章剖析了 react-x11 如何用纯 JavaScript 把 React 的协调过程变成 X11 协议绘图请求以及为什么重绘一个全屏 4K 窗口不比绘制一个微型窗口更昂贵。 JavaScriptMedium 如何构建其新的“目录”功能一个第三方 Chrome 扩展太受欢迎以至于 Medium 把它当作原生目录功能的设计蓝图。但简单克隆扩展的 DOM 注入技巧并不是一个产品——团队必须设计在编辑器内大规模生成、更新和呈现标题的方式。这篇文章追溯了从逆向工程该扩展到发布该功能的历程涵盖了一路上的工程和设计权衡。Bruno 4.0一款开源的 HTTP API 客户端应用Bruno 4.0 完全拒绝云同步——API 集合以纯文本文件的形式存放在你的文件系统中用 Git 做版本管理而不是放在厂商的服务器上。Postman 及其同类工具把云同步当作默认方式但这种模式迫使团队把集合和工作流交给一个专有平台用隐私换取便利。这篇文章介绍了 Bruno 的离线优先 Bru 格式、基于 Git 的团队协作以及其开源核心加付费层级如何维持项目的可持续性。tslog 5面向 Node、Deno、Bun 和浏览器的零依赖日志库tslog v5 作为一个零依赖日志库发布可在六个运行时上运行——Node、Deno、Bun、浏览器、Workers 和 React Native——不会向你的打包文件里拖入任何其他东西。这次升级是一次有意的破坏性重构仅 ESM、字段优先的 JSON以及取代 overwrite.* 的中间件因此 4.x 用户被告知 4.11.0 是一个安全的版本大部分性能优化已反向移植。这篇文章介绍了 v5 的亮点——可观测性就绪的结构化日志、通过 OTel-GenAI 预设实现代理/LLM 关联、敏感信息脱敏以及可 tree-shake 的子路径。 有趣的是htmx 4.0 竟把自己定位为“the…上周 TC39 会议上Await Dictionary 提案对独立对象属性使用await会让你的异步请求一个接一个地执行——这是瀑布效应不是并行。Promise.all 解决了速度问题但结果按位置而非名称来键控因此重新排序后的数组会静默地把每个响应交给错误的变量而手动变通方案会污染作用域并可能引发未处理的 rejection从而崩溃进程。这个 TC39 提案 Await Dictionary 带来了 Promise.allKeyed 和 Promise.allSettledKeyed可以并发运行请求并按属性名返回键控结果。Ryan Dahl 表示 deno compile 很快将支持…deno compile即将把 V8 换成 QuickJS大幅缩小输出二进制体积——每个可执行文件大约节省 30MB 磁盘空间。批评者立刻质疑较慢的执行速度和缩减的功能完整性是否值得这些节省而另一些人则惊叹于这一变化所暗示的新 JavaScript VM 抽象层。这条讨论剖析了其中的权衡、Deno 的 VM 抽象如何工作以及哪些使用场景真正受益于更精简的二进制文件。Node.js 的新 API 文档网站预览版上线Node.js 从零重建了 API 文档网站但内容仍然是驱动现有页面的同一份 Markdown——这次改造全部围绕导航、布局和可读性。长期以来查找和理解一个 API 一直是痛点随着迁移进入最后阶段Node.js 把默认切换押注在社区反馈上。beta.docs.nodejs.org 上的预览版添加了旧文档从未有过的功能阅读时间、离线和无 JavaScript 渲染以及可复用的 doc-kit 生成器——这篇文章详细介绍了新内容以及如何在正式发布前报告问题。Oxlint 的类型感知 lint 现已稳定Oxlint 的类型感知 lint 现已覆盖 typescript-eslint 61 条类型感知规则中的 59 条。类型感知 lint 历来要求接入每个包脚本或 CI 命令而单独的 type-check 步骤又重复了同样的 TypeScript 分析。tsgolint v7 把两者合并到一个配置中共享同一个 TypeScript program让 lint 和类型检查一起运行大幅减少配置成本。pnpm 迎来密集发布pnpm 现在可以独自为整个 workspace 进行版本管理和发布无需单独的发布工具。多包发布协调长期迫使 monorepo 团队外挂 changesets 或手工处理版本号递增四次快速连发的发布11.11–11.14通过变更意图记录、按包预发布通道和已提交的发布台账减轻了这一负担同时实现了 30% 的峰值内存降低和一个路径遍历漏洞修复。这篇文章介绍了新的 change、version 和 lane 命令、端到端的 doctor、注册表访问与团队管理以及一个 peer 依赖死锁的解决。React 19.2.8 发布Ember 7.1 发布早在 2018 年 RFC #389 中提出的 {{element}} helper 终于在 Ember 7.1 中随核心正式发布——此前八年它一直以第三方 addon 的形式存在。动态标签渲染迫使开发者写冗长的 if/else 链根据每个数据值在 div 和 span 之间选择多年来开发者不得不安装参考实现 addon 来绕开这一缺失。这篇文章详细介绍了九个新的内置 helper{{element}}、{{and}}、{{or}}、比较运算符、GJS 开发体验改进以及减少弃用 npm 警告的推动。Nuxt 4.5.1 和 3.21.10 发布大多数 Nuxt 应用都能避开这个安全补丁最坏的情况——完全的服务端远程代码执行——因为该 RCE 向量需要 vue.runtimeCompiler而它默认是关闭的。但使用 server islands 和动态组件解析的应用可能让 island props 在 Nitro 进程内变成任意代码执行第二个相关漏洞甚至不需要那个标志就能通过实例化任意组件影响更多配置。Nuxt 4.5.1 和 3.21.10 同时修复了这两个漏洞外加一个关键的 nuxt/devtools 3.3.1 问题文章列出了哪些配置受影响并给出了单行升级命令。ESLint 10.8 发布即使是一次常规的 minor 版本发布也会改变 ESLint 规则在边界情况下的行为——v10.8.0 带来了新特性和修复消除边缘场景中不正确或意外的 lint 结果。把 lint 当作 CI 门槛的团队依赖每次更新不会引入误报或静默改变判定然而每条规则的调整都带有这种风险。发布说明介绍了更新的规则、修复的 bug以及让你的 lint 检查保持准确的行为变化。Slick 2.0 发布拥有 28.6k star 的 jQuery 轮播插件 Slick 发布了自 1.x 以来的首个大版本——v2.0.0这是一次破坏性变更。jQuery 4 移除了 Slick 1.x 仍然依赖的已弃用 API此次更新还放弃了对早已过时的 CSS 和字体支持让每个现有集成都面临升级抉择。这次发布介绍了 v1.8.1 到 v2.0.0 之间的变化、为什么 jQuery 4 兼容性迫使主版本升级以及你需要做哪些调整才能跟上时代。isomorphic-git 1.40 发布Git 现在可以完全在浏览器中运行——clone、commit、推送分支甚至 PGP 签名且零服务端配置。传统 git 依赖原生二进制这从根本上把纯浏览器应用、WebWorker 和 ServiceWorker 挡在了版本控制门外。isomorphic-git 1.40 提供了纯 JavaScript 实现与规范 git 保持 100% 的磁盘级互操作并提供了可 tree-shake 的 API让打包器只输出你实际用到的函数。Satori 0.29 发布Open Graph 图片现在可以仅用 JSX 生成——Satori 在运行时把 HTML 和 CSS 渲染成 SVG无需设计工具。复刻浏览器的布局引擎是最难的部分Satori 必须处理字体加载、排版和布局计算同时只接受纯函数式、无状态的组件显式不支持 useState 等 React hooks。这篇指南介绍了基本用法、去除 React 依赖的实验性 JSX 运行时以及如何在 Next.js 中生成 OG 图片和社交卡片。dompdf.js 2.0 发布Dompdf.js 2.0 在浏览器内放入了一个 Rust/WASM 引擎客户端即可生成带可选中文本的矢量 PDF——无需服务器也无需 jsPDF 依赖。Canvas 截图导出在分页繁多的长文档上会卡顿且产生不可选中的文本而这种架构把渲染卸载到 Web Worker让 UI 保持响应。这篇文章涵盖了 Rust/WASM 管线、迁移注意事项以及 Unicode 自定义字体、页眉页脚和 PDF 加密等稳定特性。Verdaccio 6.9 发布js1024 竞赛整个 JavaScript 和 GLSL 程序被压缩到只有 1,024 字节——比一条推文还小。要在这样的字节预算内做出一个真正酷炫的 demo需要极致的压缩和 minification 技巧而获胜取决于能否打动为每个参赛作品打分的同行。这篇文章介绍了 js1024 竞赛规则、时间线以及让 1 KiB 魔法成为可能的压缩器和打包器工具库。对其项目的顶级贡献者排名开源贡献者排名揭示出谁在真正驱动 JavaScript 生态——这是大多数团队从未见过的图景。由于需要追踪数千个项目组织在把工程栈押注在开源项目上之前很难判断哪些贡献者和项目真正可靠。LFX Insights 提供了数据驱动的排名和分析让开发者及其团队能够对依赖的开源项目做出更明智的决策。我是如何不再用完 Token 的即使在他以为实际上没有上限的 Claude Enterprise 计划上一位工程师还是在一个会话中途撞上了组织月度支出上限——而且几位队友几乎在同一时间撞上了同一堵墙。管理员临时增加 token 配额赢得了喘息空间但看着用量计上的消耗速率他明白额外的 token 撑不到月底。这篇文章分享了他使用的用量追踪工具和 token 削减技巧在不牺牲质量、不拖慢工程工作的前提下大幅减少了消耗。LLM 仍在幻觉生成包名 Node.js几分钟内交付 Node 和 Bun 应用npm 将在发布时对每个包进行恶意软件扫描现在每个 npm 包在发布时都会在变为可安装之前接受恶意软件扫描这通常会增加约五分钟的延迟高峰期可能超过十五分钟。供应链攻击让 npm 注册表成为首要目标然而这种保护也带来真实的摩擦假设即时可用的自动化会被打断而且 npm deprecate 和 unpublish 在扫描完成前会被冻结。变更日志详细说明了发布者将面临的情况——正常发布、人工审查或阻止外加申诉——并针对双用途包引入了一项新的元数据要求。GitHub 如何瓦解针对 npm 和 Actions 的供应链攻击在过去一年里供应链攻击利用包注册表和 CI/CD 流水线一次性把恶意软件推送到数百个开源项目——而且往往只需一轮清扫。这些攻击串联起多个弱点来窃取维护者凭据并进一步扩散任何单一的安全能力都无法阻止它们。GitHub 的团队花了数月研究这些攻击模式在 npm 和 GitHub Actions 上推出了针对性的缓解措施。这篇文章介绍了那些斩断最常见攻击手法的已部署变更以及团队如何识别并应对这些攻击。scriptcVercel 的新 TypeScript 转原生编译器Vercel 的 scriptc 把普通 TypeScript 变成一个约 320KB 的原生二进制4ms 即可启动——而 Node 打印同样的 hello world 需要约 120MB 运行时和 35ms。代价是不允许任何标注或重写然而 npm 依赖自带的 JS 和 any 类型代码根本无法静态编译。scriptc 用一个明确的三层模型来回应默认静态编译、为无法静态编译的部分提供约 620KB 的可选内嵌 JS 引擎以及一份列出每个动态位置的覆盖率报告——因此任何代码都不会被静默误编译。快速端点不应被分析工具拖垮npm-check-updates 23.0查找依赖的更新版本一条命令就能找出项目中所有过时的依赖——npm-check-updates 23.0 扫描 package.json并一眼即可分辨 major、minor 和 patch 升级。在日益增长的项目中手动追踪依赖发布很容易出错而盲目的npm install可能静默引入破坏性的 major 版本。本次发布涵盖过滤、通配符和正则匹配、排除规则、交互模式和安全升级工作流。jsdom 30.0面向 Node 的纯 JS Web 标准实现jsdom 用纯 JavaScript 把完整的 WHATWG DOM 带到了 Node.js——一次构造函数调用就能返回一个可用的 window 对象不需要任何浏览器进程。真实世界的 Web 应用都假设自己运行在浏览器环境中因此在 Node 中测试或抓取它们传统上要拖入无头 Chrome 和重量级工具。这篇文章介绍了 JSDOM 构造函数 API、url、referrer 和 storageQuota 等定制选项以及如何模拟足够多的浏览器行为来测试和抓取真实应用。crypto-random-string 6.0生成加密强度可靠的随机字符串生成安全的随机字符串过去意味着接好 crypto.randomBytes 再手工拼 base64——crypto-random-string 6.0 把它打包成一个零依赖函数同时支持 Node.js 和浏览器。真正的痛点在于字符集hex 字符串在 URL 中存活不了数字 PIN 应该避免 1 和 l 这类易混淆字符而密码需要完整的 ASCII 可打印范围。从 URL 安全 token 到专为无差错读打的配对码设计的“distinguishable”字符集v6.0 提供了八种内置类型外加自定义字符支持。不我们无法让 Node.js 抵御原型污染每一份原型污染报告都要求 Node.js 加固某一个 gadget——但每次修复都等于什么都没修因为一个已经能写入 Object.prototype 的攻击者已经赢得了这场游戏。在 execSync、fetch 或任何库中报告的 bug 只是他们本周选的那扇出口核心及依赖树三层深处还有无穷无尽的更多出口。这篇文章解释了为什么加固任何单一位置都是徒劳的以及真正的修复必须从哪里开始。在 Drizzle 中实现全文搜索无需第二个系统你现在可以不用在技术栈中增加第二个数据库就能提供生产级全文搜索。团队通常要外挂一个 Elasticsearch 之类的独立搜索引擎然后与数据同步、重复的基础设施和两套待运维的系统搏斗。ParadeDB 官方的 Drizzle 集成把 BM25 全文搜索、向量检索和聚合直接带入 Postgres示例涵盖分面搜索、自动补全和 RAG。Domenic Denicola 的智能体编码配置Domenic Denicola 已经做到在火车上用手机让前沿模型修复生产 bug。但智能体编码在 Windows 上几乎不可能——智能体基于 Bash 和 Unix 工具训练会在 PowerShell 引号问题和 UTF-8 缺口上栽跟头——而桌面和笔记本之间的无缝交接要求保留智能体会话、工作树状态和 gitignored 文件。他分享了他的配置和技巧其中一些还不广为人知正是这些让这个工作流成为可能。better-sqlite3 13.0流行的 SQLite 库迁移到 N-APIbetter-sqlite3 13.0 成为首个基于 N-API 运行的版本因此一个预构建二进制现在可同时覆盖 Node.js、Electron甚至可能还有 Bun。原生插件历来会在 Node/Electron 版本之间出问题迫使用户重建并依赖已弃用的 prebuild-install 依赖——这是发布 SQLite 绑定长期以来的摩擦所在。本次发布涵盖了 N-API 迁移、随包直接发布预构建二进制以及针对不支持平台的安装时编译兜底方案。Execa 10.0Node 中更优的进程执行无需任何转义或引号处理即可运行任何 Node 进程——Execa 10.0 用模板字符串取代了 shell 引号地狱并彻底消除 shell 注入。与从未为程序化使用而设计的 shell 不同Execa 基于 child_process 构建提供一流的管道、流式、类型化输出和真正的 Windows 支持。这篇文章介绍了基于 promise 的语法、脚本接口以及为什么这是在 Node 中编排子进程最干净的方式。跟随一个 HTTP 请求走过它约 200ms 的一生最好的 Harness 获胜而不是最好的模型。学习 Harness EngineeringFetch 需要错误码每一次 fetch() 网络失败——DNS 解析失败、TLS 握手失败、连接被拒、流重置——都以同一个泛化的 TypeError 拒绝刻意丢弃了所有诊断细节。Fetch 规范把所有失败折叠成单个不透明信号作为针对跨源探测的浏览器安全措施然而 HTTP/2 和 HTTP/3 已经携带了具有真实应用语义的丰富错误码RST_STREAM、RESET_STREAM、STOP_SENDING。一项正在推进的 TC39 提案旨在暴露这些类型化的流重置这篇文章剖析了这个缺口、这项提案以及推进它对 JavaScript 运行时意味着什么。Telegram Serverless在 Telegram 的服务器上运行 Telegram BotTelegram 现在可以在自己的基础设施上托管你 bot 的整个后端——无需 VPS、无需容器、无需管理伸缩。传统上运行一个 bot 意味着为了回答一个 /start 就要配置永远在线、安全且可达的服务器然后永远守着它们。这篇文章介绍了该平台的三部分项目布局以及一个用一条 npx tgcloud push 就能部署的可用 demo bot。LiteParse 2快速轻量的 PDF 文档解析LiteParse 2 完全在本地完成高质量的空间 PDF 解析——没有专有 LLM 功能没有云端依赖。本地解析通常在密集表格、多栏布局或扫描文档上卡壳而把所有内容推给云服务会增加成本和数据暴露风险。这个工具用基于 PDFium 的文本提取、灵活的 OCR 系统内置 Tesseract 或任意 HTTP 服务器以及能在完整解析之前路由或拒绝文档的复杂度检测来回答这个问题输出干净的 Markdown 和 JSON可直接用于 LLM 和 RAG 流水线。Tinbase单个二进制实现的 Supabase 兼容后端官方的 Supabase 本地栈是一个 12 容器的 2.3 GB Docker 安装——tinbase 用单个二进制替代了它约两分钟即可启动甚至能在浏览器标签页里跑。本地 Supabase 开发长期以来意味着重量级的 Docker 编排而 PocketBase 等更轻量的替代品讲的是另一套 API并不是 supabase-js 的即插即用替代品。这篇文章剖析了 tinbase 如何实现 PostgREST 查询语法、GoTrue 认证、Storage 和 Realtime Phoenix 协议让未修改的官方 SDK 无需任何改动即可工作。你的 Next.js 应用已经在做追踪了。现在让它变得有用你的 Next.js 应用已经在为每个请求生成追踪——中间件、fetch() 调用和服务端渲染——但默认情况下它们被静默丢弃。调试一个缓慢的页面意味着从症状反向推导本地复现、撒日志、猜测瓶颈并祈祷生产环境表现得像你的机器一样。用 vercel/otel 配置几行代码就能把这些内置追踪导出到 Sentry 等任意 OpenTelemetry 后端给你一个 span 级瀑布图精确定位每个请求的时间花在了哪里。Node.js 26.5.0Current发布Node.js 26.5.0 没有任何值得注意的代码变更——它唯一的重磅更新是一个全新的发布密钥。随着项目迎来发布者 Stewart X Addison未来的二进制文件将使用他的密钥655F3B5C…签名因此任何通过 release-key 检查来验证 Node.js 下载的人都必须更新信任锚点。这篇发布说明解释了密钥变更并列出了所有平台的完整下载链接。TypeScript 7.0 发布TypeScript 7 的编译速度最高提升 10 倍——不是靠增量优化而是用 Go 对编译器做了一次彻底的原生重写。最初的基于 JavaScript 的编译器长期承诺“JavaScript 可以扩展”但随着项目膨胀类型检查和工具在大规模代码库上痛苦地变慢。这篇文章剖析了原生移植的设计、共享内存多线程、编辑器和 LSP 支持以及那些 8x–12x 更快的完整构建在日常开发中意味着什么。CVE-2026-48931 本不该成为 CVE一个变成 CVE-2026-48931 的 Node.js 安全补丁修复了 HTTP/1.1 响应队列投毒问题——然后破坏了真实用户的部署最终让报告者承认它本不该成为一个 CVE。攻击是真实的池化的 keep-alive 连接不携带响应标识符因此上游发来的未经请求的字节会被当作下一个请求的响应来消费。但 CWE-367 的框架要求存在恶意或被入侵的源站而这样的源站本来就控制着它返回的每一个响应。这篇文章剖析了 freeSocketDataGuard 修复、命名和框架上的三个错误以及安全报告者在提交 CVE 之前应该重新考虑什么。ECMAScript 2026 有哪些新特性ECMAScript 2026 新增了 Array.fromAsync为异步迭代器带来了同步迭代器自 2015 年以来就享有的数组转换辅助函数。多年来要把一个异步生成器转成数组意味着手工编写 for-await 循环并逐个 push 元素——这是规范迭代器工具箱中一个刺眼的缺口。这篇文章介绍了 Ecma International 在 2026 年 6 月批准的新增内容从 Array.fromAsync 开始并配有实用的代码示例。terminal-image 5.0在终端中显示图片terminal-image 5.0 可以在你的终端里直接渲染全分辨率图片——无需单独的查看器。终端从来不是为显示图片而设计的所以真正的挑战在于弥合天差地别的能力iTerm 和 Kitty 等图形终端获得像素级完美输出而其他终端则退回到 ANSI 块字符。这个版本展示了单行 API 如何显示 PNG、JPEG 甚至动画 GIF支持按百分比或行/列数缩放。eslint-node-test面向 Node 内置测试运行器的 ESLint 规则Node 的内置测试运行器终于有了自己的 ESLint 插件带来了成熟测试框架视为理所当然的同类护栏。随着团队迁移到node:test不小心提交的.only()调用和重复的测试标题会静默地用不稳定或误导性的运行结果破坏 CI。这个插件提供了 recommended 和 unopinionated 预设只作用于导入node:test的文件并自动修复最常见的错误——以极简配置换来更干净、更一致的测试套件。webpack-dev-server 6.0官方 webpack 开发服务器往期精选Web前端周刊2026W30 | React 19.2.8发布、Vue 3.6 RC、TypeScript 7 Go重写、ECMAScript 2026获批、Node.js 26.5.0Web前端周刊2026W29 | TypeScript 7.0 RC、Bun Rust重写、Node.js 26.5、ESLint 10.7Web前端周刊2026W28 | TypeScript 7.0 RC、npm v12、Node.js 26.5.0、ECMAScript 2026、React Hook Form 7.81.0Java周刊2026W30 | 值类型JDK28预告、SpringAI2.0发布、Metropolis项目终结Rust周刊2026W30 | Rust 1.97.1、Syn 3.0.0、Freya 0.4、size_of_val_raw 稳定、libs 团队 RFC2026年7月编程语言排行榜Rust 首进前十创历史阅读原文扫码关注「右耳朵猫AI」