0.8.1 Release Notes

Download & Documentation

Zig is a general-purpose programming language and toolchain for maintaining robust, optimal, and reusable software.

Backed by the Zig Software Foundation, the project is financially sustainable and offers billable hours for core team members:

Please consider donating to the ZSF to help us pay even more contributors!

This release contains only bug fixes.

Zero the ziguana fixing bugs

Table of Contents §

Support Table §

Tier System §

A green check mark (✅) indicates the target meets all the requirements for the support tier. The other icons indicate what is preventing the target from reaching the support tier. In other words, the icons are to-do items. If you find any wrong data here please submit a pull request!

Tier 1 Support §

freestanding Linux 3.16+ macOS 10.13+ Windows 8.1+ WASI
x86_64 N/A
x86 #1929 🐛📦 💀 #537 🐛📦 N/A
aarch64 #2443 🐛 🐛📦🧪 N/A
arm #3174 🐛📦 💀 🐛📦🧪 N/A
mips #3345 🐛📦 N/A N/A N/A
riscv64 #4456 🐛📦 N/A N/A N/A
sparcv9 #4931 🐛📦🧪 N/A N/A N/A
wasm32 N/A N/A N/A

Tier 2 Support §

free standing Linux 3.16+ macOS 10.13+ Windows 8.1+ FreeBSD 12.0+ NetBSD 8.0+ DragonFlyBSD 5.8+ UEFI
x86_64 Tier 1 Tier 1 Tier 1 Tier 1
x86 Tier 1 💀 🔍 🔍 N/A
aarch64 Tier 1 Tier 1 🔍 🔍 🔍 N/A 🔍
arm Tier 1 💀 🔍 🔍 🔍 N/A 🔍
mips64 N/A N/A 🔍 🔍 N/A N/A
mips Tier 1 N/A N/A 🔍 🔍 N/A N/A
powerpc64 📖 💀 N/A 🔍 🔍 N/A N/A
powerpc 💀 N/A 🔍 🔍 N/A N/A
riscv64 Tier 1 N/A N/A 🔍 🔍 N/A 🔍
sparcv9 Tier 1 N/A N/A 🔍 🔍 N/A N/A

Tier 3 Support §

freestanding Linux 3.16+ Windows 8.1+ FreeBSD 12.0+ NetBSD 8.0+ UEFI
x86_64 Tier 1 Tier 1 Tier 1 Tier 2 Tier 2 Tier 2
x86 Tier 1 Tier 2 Tier 2 Tier 2
aarch64 Tier 1 Tier 2
arm Tier 1 Tier 2
mips64 Tier 2 Tier 2 N/A N/A
mips Tier 1 Tier 2 N/A N/A
riscv64 Tier 1 Tier 2 N/A
powerpc32 Tier 2 Tier 2 N/A N/A
powerpc64 Tier 2 N/A N/A
bpf N/A N/A
hexagon N/A N/A
amdgcn N/A N/A
sparc N/A N/A
s390x N/A N/A
lanai N/A N/A
csky N/A N/A
freestanding emscripten
wasm32 Tier 1

Tier 4 Support §

Tier 4 targets:

MIPS Support §

0.8.1 upgrades to LLVM 12.0.1, which solved a regression introduced in LLVM 12.0.0. Mips tests are now re-enabled on Zig's CI infrastructure.

Additionally syscall_pipe is fixed. Previously the fd parameter was ignored and so the result would not get populated. Now it passes the fd pointer to the inline assembly so that the results can be observed.

LLVM 12.0.1 §

This release upgrades to LLVM 12.0.1 which solved a handful of issues, including regressions introduced in 12.0.0, notably to MIPS Support (#8155), DragonFlyBSD support (#3563), and WebAssembly support (#5339).

Compiler §

This release will downgrade the expected CPU for x86 targets from x86-64-v2 back down to baseline. We had multiple reports of people wanting to run the compiler binaries on older hardware. This has to do with the release process; not the Zig compiler codebase.

Standard Library §

compiler-rt §

Zig Build System §

zig cc / zig c++ §

Language Reference §

There Are Still Known Bugs Remaining §

Zig has known bugs and even some miscompilations.

Zig is immature. Even with Zig 0.8.1, working on a non-trivial project using Zig will likely require participating in the development process.

Thank You Contributors! §

These release notes have been edited down to avoid excessive detail as to not overwhelm the reader with content. In order to make sure everyone gets credit who contributed, here is a list of everyone who landed commits during this release cycle (produced with git shortlog -sne 0.8.0..0.8.1):

Thank You Sponsors! §

Special thanks to those who sponsor Zig. Because of you, Zig is driven by the open source community, rather than the goal of making profit. In particular, these fine folks sponsor Zig for $50/month or more: