Zig 0.17.0 现已发布,包含 5 个月的工作成果,来自 206 位贡献者的 925 次提交。此版本包括重构的构建系统,引入了新的构建服务器协议,以及增强的 ELF 链接器,支持 x86_64-linux 上的增量编译。
语言变化包括添加了 @bitCast 更改、正式指定并模糊测试的语法、C 翻译移至外部包、新的 @backingInt 和 @fromBackingInt、@spirv 类型、删除了数组乘法语法等。标准库更新引入了安全分配器、重构的栈回退分配器以及改进的格式化功能。
构建系统现在将制造者进程与配置者进程分离,并采用了重构的缓存系统和配置缓存中毒机制。包管理增加了覆盖包路径的能力,编译器引入了增量编译、SPIR-V 后端,以及改进的 aarch64、loongarch 和 WebAssembly 后端。
工具链更新包括 LLVM 22、musl 1.2.5、glibc 2.44、Linux 7.2 头文件、macOS 27.0 头文件等。值得注意的修复解决了影响 aarch64-windows 二进制文件的 LLVM 错误,并为 32 位 ARM 的崩溃添加了堆栈跟踪。此版本还为 zig fmt 引入了 --complexity 标志,并将 Windows 资源编译移至外部包。
来源: Hacker News · 由HeadlinesBriefing整理摘要