Rspack v1.3.12 版本发布:性能优化与新特性解析
Rspack 是一个基于 Rust 的高性能 JavaScript 构建工具,它结合了 Webpack 的生态系统和 Rust 的高效性能,为现代前端开发提供了更快的构建速度和更好的开发体验。本次发布的 v1.3.12 版本带来了一系列性能优化、新功能和错误修复,进一步提升了开发者的使用体验。
性能优化亮点
本次版本在性能方面做了显著改进。开发团队通过延迟加载 watchpack 和一些 Node.js 内置模块,有效减少了初始加载时间。watchpack 是 Webpack 生态中用于文件监视的核心组件,延迟加载策略意味着只有在真正需要时才加载这些模块,从而降低了启动时的内存占用和加载时间。
此外,移除了对 Node 10 的兼容性代码,这有助于减少代码体积并提高运行效率。随着 Node.js 生态的发展,放弃对老旧版本的支持可以让开发者专注于优化现代环境下的性能表现。
新特性解析
NAPI 支持升级
本次更新将 NAPI(Node-API)支持升级到了 beta 版本。NAPI 是 Node.js 提供的用于构建原生插件的稳定 API 层,这次升级意味着 Rspack 在原生模块集成方面更加成熟稳定。新增的支持返回自定义错误代码功能,为开发者提供了更灵活的错误处理机制。
SWC 编译器增强
SWC 编译器 API 增加了 diagnostics 字段到 TransformOutput 中。这个改进使得开发者能够获取更详细的转换诊断信息,有助于调试和优化构建过程。同时修复了在使用 WASM 插件时没有 tokio 运行时的 panic 问题,提高了稳定性。
Rstest 内置插件初始化
新版本中初始化了 Rstest 内置插件。Rstest 是一个 Rust 测试框架,这一集成将为 Rust 开发者提供更便捷的测试体验,进一步巩固了 Rspack 在 Rust 生态中的地位。
重要错误修复
本次版本修复了多个影响开发体验的问题:
- 修复了 ES 模块规范依赖的解构属性混淆问题,确保了代码压缩后的正确性。
- 解决了 CSS 预加载和预取功能的异常问题,优化了资源加载策略。
- 修正了 HMR(热模块替换)更新后获取优先级丢失的问题,提升了开发体验的流畅度。
- 修复了源映射调试 ID 在 eval 模式下的问题,增强了调试能力。
- 解决了当目标为 webworker 时缺少导入脚本运行时的问题,确保了在各种环境下的兼容性。
构建系统改进
在构建系统方面,修复了 HTTP 构建重定向到另一个 URL 的问题,并改进了清理选项的执行逻辑,现在会在读取前检查目录是否存在,避免了潜在的错误。这些改进使得构建过程更加健壮可靠。
开发者体验优化
文档方面也有多项更新,包括改进 devtool 文档、添加 copy 插件的 JSDoc 信息等,帮助开发者更好地理解和使用各种功能。同时加入了更多实际使用 Rspack 的项目案例,展示了其在生产环境中的应用情况。
总结
Rspack v1.3.12 版本通过性能优化、新功能添加和错误修复,进一步提升了构建效率和开发者体验。特别是 NAPI 支持的升级和 SWC 编译器的增强,为高级用户提供了更多可能性。随着 Rust 在前端工具链中的普及,Rspack 正逐步成为一个值得关注的高性能构建工具选择。
对于正在使用或考虑使用 Rspack 的团队,这个版本值得升级,特别是那些关注构建性能和现代 JavaScript 特性的项目。开发团队持续关注开发者反馈并快速迭代的态度,也预示着 Rspack 生态的健康发展前景。
kernelopenEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。C0131
let_datasetLET数据集 基于全尺寸人形机器人 Kuavo 4 Pro 采集,涵盖多场景、多类型操作的真实世界多任务数据。面向机器人操作、移动与交互任务,支持真实环境下的可扩展机器人学习00
mindquantumMindQuantum is a general software library supporting the development of applications for quantum computation.Python059
PaddleOCR-VLPaddleOCR-VL 是一款顶尖且资源高效的文档解析专用模型。其核心组件为 PaddleOCR-VL-0.9B,这是一款精简却功能强大的视觉语言模型(VLM)。该模型融合了 NaViT 风格的动态分辨率视觉编码器与 ERNIE-4.5-0.3B 语言模型,可实现精准的元素识别。Python00
GLM-4.7-FlashGLM-4.7-Flash 是一款 30B-A3B MoE 模型。作为 30B 级别中的佼佼者,GLM-4.7-Flash 为追求性能与效率平衡的轻量化部署提供了全新选择。Jinja00
AgentCPM-ReportAgentCPM-Report是由THUNLP、中国人民大学RUCBM和ModelBest联合开发的开源大语言模型智能体。它基于MiniCPM4.1 80亿参数基座模型构建,接收用户指令作为输入,可自主生成长篇报告。Python00