Zig: Package Management Moved from Compiler to Build System
6 hours ago
- #performance
- #build-system
- #compiler
- Package management functionality moved from compiler to build system for flexibility and safety improvements.
- SPIR-V backend progress includes new builtins, execution modes, multi-threaded codegen, and object file linking.
- Redefined @bitCast semantics to use logical bit layout, improving cross-platform consistency.
- ELF linker improvements enable incremental compilation with external libraries, including LLVM and LLD.
- Build system rework separates configurer and maker processes, speeding up builds and enabling cached configurations.
- Package management workflow enhancements include local zig-pkg directory and --fork flag for dependency overrides.
- Windows std.Io bypasses kernel32.dll for direct ntdll calls, improving performance and reliability.
- Zig libc project replaces C source files with Zig wrappers, reducing code and enabling optimizations.
- New std.Io.Evented implementations (io_uring and GCD) enable experimental async I/O with fiber-based coroutines.
- Type resolution redesign improves laziness, dependency loop error messages, and incremental compilation performance.