Rspack v1.2.3 版本发布:性能优化与新特性解析
Rspack 是一个基于 Rust 的高性能构建工具,它结合了 Webpack 的生态系统和 Rust 语言的性能优势,旨在为现代前端开发提供更快的构建体验。作为 Webpack 的替代方案,Rspack 在保持兼容性的同时,通过底层优化显著提升了构建速度。
性能优化亮点
本次 v1.2.3 版本在性能方面做了多项重要改进:
-
核心依赖升级:将
swc_core更新至 v13 版本,这是 Rspack 底层使用的 Rust 编译工具链,新版本带来了更高效的代码转换能力。 -
存储优化:在加载完成后释放打包内容的内存占用,这一改动显著降低了长时间构建过程中的内存压力,对于大型项目尤为有利。
-
编译速度提升:通过优化内部编译流程,减少了不必要的计算和内存操作,使得整体编译时间进一步缩短。
这些优化使得 Rspack 在处理复杂项目时能够保持更稳定的性能表现,特别是在增量构建场景下效果更为明显。
值得关注的新特性
1. 增强的模块系统 API
本次版本扩展了模块系统的 JavaScript API,新增了多个实用功能:
- 支持获取模块图中缺失的模块信息
- 提供了更完整的模块元数据访问能力
- 实现了 chunkGroup.childrenIterable 和 dependency.ids 等实用属性
这些 API 的增强使得插件开发者能够更灵活地操作模块依赖关系,为高级定制提供了更多可能性。
2. 分层(layer)功能支持函数配置
现在 layer 选项不仅支持静态配置,还可以通过函数动态生成。这一改进使得开发者可以根据模块的不同特性(如路径、内容等)动态决定其所属层级,为更精细的代码分割策略提供了支持。
3. CSS 层(layer)与媒体查询支持
CSS 处理能力得到增强,现在能够正确处理 CSS 层与媒体查询的组合场景。这意味着开发者可以更自由地使用现代 CSS 特性,而不用担心构建过程中的兼容性问题。
4. 原生插件支持
引入了 Rsdoctor 原生插件,这是一款专为 Rspack 设计的诊断工具,能够提供更深入的构建过程分析和性能诊断能力。同时,还添加了原生真实内容哈希(real content hash)插件支持,优化了长期缓存策略。
重要问题修复
-
AMD 模块处理:修复了 AMD 模块中数组形式的 require 调用问题,以及模块别名在 AMD 环境下的重命名问题。
-
增量构建:解决了增量构建时可能出现的模块重建问题,确保在修改代码后能够正确识别变更范围。
-
资源哈希:优化了资源哈希生成逻辑,避免不必要的重新构建。
-
别名解析顺序:修正了模块别名解析的顺序问题,确保配置的优先级得到正确应用。
开发者体验改进
-
默认项目模板更新:create-rspack 现在默认创建 React 19 项目,帮助开发者快速上手最新技术栈。
-
文档增强:全面改写了插件使用指南和配置文档,增加了大量实用示例,特别是针对模块解析器和生成器的配置说明。
-
错误处理改进:构建统计信息(toJson)现在会正确抛出异常,而不是静默失败,便于开发者及时发现和解决问题。
总结
Rspack v1.2.3 版本在保持稳定性的同时,通过多项性能优化和新特性增强了构建能力。特别是对模块系统的扩展和原生插件支持,为复杂项目的构建提供了更多可能性。对于正在使用或考虑迁移到 Rspack 的团队,这个版本值得关注和升级。
随着 Rust 在前端工具链中的普及,Rspack 正在成为一个兼具性能和生态优势的构建工具选择。其持续的迭代更新也展示了团队对开发者体验的重视,未来值得期待更多创新功能的加入。
Kimi-K2.5Kimi K2.5 是一款开源的原生多模态智能体模型,它在 Kimi-K2-Base 的基础上,通过对约 15 万亿混合视觉和文本 tokens 进行持续预训练构建而成。该模型将视觉与语言理解、高级智能体能力、即时模式与思考模式,以及对话式与智能体范式无缝融合。Python00
GLM-4.7-FlashGLM-4.7-Flash 是一款 30B-A3B MoE 模型。作为 30B 级别中的佼佼者,GLM-4.7-Flash 为追求性能与效率平衡的轻量化部署提供了全新选择。Jinja00
new-apiAI模型聚合管理中转分发系统,一个应用管理您的所有AI模型,支持将多种大模型转为统一格式调用,支持OpenAI、Claude、Gemini等格式,可供个人或者企业内部管理与分发渠道使用。🍥 A Unified AI Model Management & Distribution System. Aggregate all your LLMs into one app and access them via an OpenAI-compatible API, with native support for Claude (Messages) and Gemini formats.JavaScript01
idea-claude-code-gui一个功能强大的 IntelliJ IDEA 插件,为开发者提供 Claude Code 和 OpenAI Codex 双 AI 工具的可视化操作界面,让 AI 辅助编程变得更加高效和直观。Java00
KuiklyUI基于KMP技术的高性能、全平台开发框架,具备统一代码库、极致易用性和动态灵活性。 Provide a high-performance, full-platform development framework with unified codebase, ultimate ease of use, and dynamic flexibility.Kotlin06
ebook-to-mindmapepub、pdf 拆书 AI 总结TSX00