Rsbuild v1.2.4 版本发布:增强开发体验与功能优化
Rsbuild 是一个基于 Rspack 的现代化前端构建工具,旨在为开发者提供高效、灵活的构建体验。它集成了众多开箱即用的功能,如热模块替换、代码分割、静态资源处理等,同时保持了高度可配置性。最新发布的 v1.2.4 版本带来了一系列改进和优化,进一步提升了开发体验和构建效率。
核心功能增强
代理配置支持异步函数
新版本中,proxy.bypass 配置项现在支持异步函数,这为开发者提供了更大的灵活性。在实际开发中,我们经常需要根据请求的上下文动态决定是否绕过代理。例如,可以根据用户权限、请求头信息或业务逻辑来决定请求是否应该被代理到后端服务。
// 示例:基于用户权限的动态代理配置
proxy: {
bypass: async (req) => {
const user = await getUserFromRequest(req);
return user.isAdmin ? false : '/admin-only';
}
}
WebSocket 直连回退机制
开发服务器现在实现了 WebSocket 直连回退机制。当常规的 WebSocket 连接失败时,系统会自动尝试建立直连,这显著提高了开发环境下的热更新可靠性。特别是在复杂的网络环境或代理配置下,这一改进能够确保开发者始终获得流畅的热模块替换体验。
问题修复与稳定性提升
Sass 源映射配置修复
修复了 Sass 插件中源映射(source map)无法被正确禁用的问题。现在开发者可以自由选择是否为 Sass 文件生成源映射,这在生产环境构建时特别有用,可以避免不必要的源映射文件生成。
CSS 源映射独立配置
新版本允许开发者单独为 CSS 文件配置源映射生成,而不会影响其他资源的源映射行为。这通过更细粒度的控制,帮助开发者在调试和生产环境之间找到最佳平衡点。
// 示例:仅生成CSS源映射
output: {
sourceMap: {
css: true,
js: false
}
}
HMR 连接稳定性改进
针对热模块替换(HMR)进行了多项稳定性修复:
- 修复了当开发服务器关闭时可能导致无限重连的问题
- 避免了重复的 WebSocket 连接建立
- 改进了连接异常处理逻辑
这些改进使得开发过程中的热更新更加可靠,减少了因网络波动或服务器重启导致的开发中断。
文档与开发者体验优化
最新版本对文档进行了全面梳理和更新,特别是针对 Tailwind CSS 的配置指南,现在同时提供了 v3 和 v4 版本的详细说明。此外,文档还增强了以下方面的内容:
- 开发服务器
writeToDisk配置的详细说明 historyApiFallback和htmlFallback的行为解释- 开发服务器生命周期钩子的正确用法
- 法律注释(legal comments)的配置指南
构建工具链更新
项目内部依赖进行了多项更新,包括:
- Rspack-chain 升级至 v1.2.0
- SWC 插件更新至 6.2.0 版本
- Node.js 类型定义更新至 22.13.0
这些更新带来了更好的类型支持和构建性能优化。
总结
Rsbuild v1.2.4 版本通过多项功能增强和问题修复,进一步提升了开发体验和构建稳定性。特别是代理配置的异步支持和 WebSocket 连接的可靠性改进,使得开发者在复杂项目环境下也能获得流畅的体验。同时,完善的文档更新和构建工具链的升级,为项目长期维护奠定了更好基础。
对于现有用户,建议尽快升级以获取这些改进;对于新用户,这个版本提供了更加成熟稳定的构建体验,是开始使用 Rsbuild 的良好时机。
GLM-5智谱 AI 正式发布 GLM-5,旨在应对复杂系统工程和长时域智能体任务。Jinja00
GLM-5-w4a8GLM-5-w4a8基于混合专家架构,专为复杂系统工程与长周期智能体任务设计。支持单/多节点部署,适配Atlas 800T A3,采用w4a8量化技术,结合vLLM推理优化,高效平衡性能与精度,助力智能应用开发Jinja00
jiuwenclawJiuwenClaw 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。Python0193- QQwen3.5-397B-A17BQwen3.5 实现了重大飞跃,整合了多模态学习、架构效率、强化学习规模以及全球可访问性等方面的突破性进展,旨在为开发者和企业赋予前所未有的能力与效率。Jinja00
AtomGit城市坐标计划AtomGit 城市坐标计划开启!让开源有坐标,让城市有星火。致力于与城市合伙人共同构建并长期运营一个健康、活跃的本地开发者生态。01
awesome-zig一个关于 Zig 优秀库及资源的协作列表。Makefile00