Zig: All Package Management Functionality Moved from Compiler to Build System(ziglang.org)
210 points by tosh 18 hours ago | 67 comments
tl;dr: Zig has moved all package management functionality (fetching, HTTP/TLS, git, compression, build.zig.zon parsing) out of the compiler and into the build system's "maker" process, shrinking the compiler binary by 4% and allowing package management logic to be patched without rebuilding the compiler. The new process hierarchy (zig build → maker → configurer) also enables the maker process to persist across configuration reruns, which is important for the upcoming build server protocol needed to unblock ZLS. Package management now benefits from ReleaseSafe checks and host-specific CPU crypto instructions.
HN Discussion:
  • Skeptical of celebrating fixes for problems the language created itself
  • ~Laments UX regression (loss of @cImport) but accepts the architectural necessity
  • Praises the clean separation of concerns and Zig's development approach
  • Excited about future implications like WebAssembly build system
  • Questions the value of language-specific package systems that complicate multi-language projects