## ziglang/zig — 0.15.1…0.15.2

_112 commits._

### Features
- **std.c: Add missing SIG constants for serenity** (08b2fd4)
- **bootstrap: Add support for DragonFly** (65af34b)
- **musl: add missing fenv C dummy functions for loongarch64-linux-muslsf** (6b1d94c)
- **Revert "x86_64: improve support for large enums"** (a1c410d)
- **x86_64: improve support for large enums** (8520e4e)
- **x86_64: support more in/out forms** (a430be0)
- **langref: mention union support of `@fieldParentPtr`** (ac56257)
- **std.debug.assertAligned: support const pointers** (f06c3d8)
- **std.c: add correct SOMAXCONN for BSDs** (9dc3fce)
- **add macOS handling for totalSystemMemory (#24903)** (6f07cc9)
- **Add `test-obj` to the help message** (17928ef)
- **zig reduce: adapt to new Writer API** (cf54250)

### Fixes
- **std.crypto.tls.Client: fix infinite loop in std.Io.Writer.writeAll** (ca59ad6)
- **std.fs.File.Reader.seekTo: fix one more logical position bug** (8ccca84)
- **Fix Reader.Limited end of stream conditions** (52730f3)
- **std: std.fs.File fix sendFile with buffered data** (6682ff2)
- **std.Io.Reader: fix delimiter bugs** (f661ab6)
- **std: fix sendFileReading not accounting for buffer** (9ea4d9a)
- **std: fix File.Writer sendfile with buffered contents** (5c0ac90)
- **Reader.peekDelimiterInclusive: Fix handling of `stream` implementations that return 0** (acd6ffd)
- **fix read of undefined in http tests** (57f45cc)
- **x86_64: fix bool vector init register clobber** (2700af2)
- **Lld: fix implib emit path** (e6e93d8)
- **resinator: fix an alignment problem** (78012b4)
- **translate_c: fix ternary operator output in C macros** (ab6dbfe)
- **Fix zig build lazy -> eager dependency promotion** (0795e2b)
- **Fix PowerPC `restore_rt`** (9f2a200)
- **Fix PowerPC syscalls causing invalid code from CBE** (427f002)
- **std.pie: fix register constraint in getDynamicSymbol() for s390x (#25327)** (b8f2fec)
- **Revert "frontend: another packedStructFieldPtrInfo fix"** (9694c83)
- **Revert "x86_64: fix safety crashes in `storeRegs`"** (d07b67a)
- **standalone: fix misaligned stack crash** (ab3e34b)
- **aarch64: fix behavior failures** (80eacd6)
- **x86_64: fix safety crashes in `storeRegs`** (3798561)
- **frontend: fix too strict assertion** (4d10275)
- **frontend: another packedStructFieldPtrInfo fix** (3ab845e)
- **Zcu: fix analysis of type of decl with inferred type** (b439441)
- **std.zon.parse: fix not initializing array sentinel** (582b96c)
- **Fix duplicate LC_RPATH entries on macOS Tahoe** (c15f8b9)
- **std.mem: work around LoongArch inline asm bug in doNotOptimizeAway()** (90c1123)
- **std.sort.pdq: fix out-of-bounds access in partialInsertionSort (#25253)** (91eab35)
- **fix handling of comptime-only union fields in `Type.getUnionLayout` (#25182)** (e145403)
- **llvm: fix tagged union payload size in debug info** (87ca304)
- **frontend: fix reference tracking through coerced function bodies** (4cfb583)
- **Fix `-M` and `--dep` splitting on every = instead of just the first** (76e2764)
- **Fix regression: std.http.Client basic authorization sending user:user instead of user:password when passed in URI** (dcddbca)
- **std.Target: fix alignment for int/long types on m68k** (00fb5e3)
- **LLVM backend:fix align 1 sret parameter load returned** (61f4475)
- **std.os.uefi: fix type error at MemoryType.format()** (cb9821a)
- **x86_64: fix multiplication overflow detection with adx** (49f0122)
- **Fix TLS 1.2 client key exchange to use negotiated named group (#25007)** (9c3e09c)
- **std.Build.WebServer: fix race** (a4cb636)
- **std.Build.Step.Compile: fix race condition in args file creation** (628357e)
- **Update powi.zig to fix docstring formatting** (9ef2208)
- **fix: fix typo in comment by removing repeated 'business' word** (38173d6)
- **std.zig.system: fix check for sparc "v8+" in getExternalExecutor()** (f96321b)
- **Fix #24999: copy left-overs before we XOR into c. (#25001)** (a51e88c)
- **std.fs.Dir: fix updateFile() to flush the file before updating its times** (98585af)
- **std.os.uefi: Fix typo that causes compile time error #22809"** (913db1b)

### Backend
- **Release 0.15.2** (e4cbd75)
- **use older std.mem function names** (f559107)
- **std.Io.Reader: rework peekDelimiterInclusive** (6a25bfc)
- **std.Build: duplicate sub_path for LazyPath's dependency variant** (ff16a7c)
- **libcxxabi: don't build cxa_noexception.cpp if exceptions are enabled** (bc7cdc2)
- **libcxxabi: sort file list according to upstream CMakeLists.txt** (03078bf)
- **libcxxabi: define _LIBCPP_BUILDING_LIBRARY in addition to _LIBCXXABI_BUILDING_LIBRARY** (b2591d5)
- **std.zig.system: handle or1k in getExternalExecutor()** (9377cc6)
- **don't pass zero-length `@memset` to the backend** (cfb5350)
- **InternPool: use sequential string indices instead of byte offsets** (7de67e6)
- **libcxx: respond to some feature macro changes in LLVM 20** (4fd78f9)
- **Compilation: --debug-rt always Debug** (135f191)
- **Update descriptions of -f[no-]error-tracing to match the actual behavior** (c40dbd6)
- **lib/std/c: sync "struct stat" for DragonFly** (8b5e4e0)
- **glibc: guard inet-fortified.h** (1f0cf7c)
- **use copy_file_range syscall on linux** (bc56731)
- **std: always allow spawning processes when an env map is explicitly provided (#25092)** (6069f90)
- **compiler: don't use self-hosted backend on any BSD yet** (e526d65)
- **std.posix: remove bogus assert that SIGRTMAX < NSIG** (0e673fd)
- **x86_64: rewrite vector element pointer access** (e647d1a)
- **aarch64/zonCast: don't return a pointer to a stack element** (798acd9)
- **x86 codegen: handle spilled tuples** (3da6a19)
- **frontend: additionally handle C pointers in ptrOptPayload** (670c4fa)
- **Reader.defaultReadVec: Workaround bad `r.end += r.vtable.stream()` behavior** (8d5b651)
- **zig fmt help: mention that the argument can be a directory** (7d8a954)
- **mem.replace: Document that input/output cannot overlap** (72017d4)
- **Merge pull request #25201 from jacobly0/x86_64-addsat** (35de869)
- **Elf: implement `linksection`** (b8bf278)
- **std.math.big.int: normalize zero result for small multiplications** (83a3365)
- **bpf: use bitCast instead of intCast in ld_imm_impl** (05b7ca6)
- **compiler-rt: export __aeabi_read_tp for arm-freebsd** (965b2ab)
- **langref: added missing newlines to destructuring tuples example** (38185ee)
- **webui: fixup build errors in fuzz / time_report** (cbe1b45)
- **langref: update "Choosing an Allocator" section** (52eb9e8)
- **BitcodeReader: parse blockinfo inside block** (30ec163)
- **Populate MSG struct for OpenBSD (#25076)** (b72a02c)
- **std.Thread: make unreachable errors in sleep() clearer** (d8d497f)
- **process.totalSystemMemory: Avoid overflow on Linux when totalram is a 32-bit usize** (cbc3c0d)
- **std.os.linux: powerpc syscalls clobber ctr and xer** (1231c8f)
- **std.Build.Step.TranslateC: forward --cache-dir and --global-cache-dir flags** (e323dbf)
- **os.linux: faccessat wrapper prefer to faccessat syscall when flags is zero.** (caa89c7)
- **zig cc: don't pass -mcmodel for assembly files** (b257832)
- **lib: Reword documentation for realloc to clarify size** (d4e5d1e)
- **Compilation: avoid ZCU strategy for ubsan-rt in Windows DLLs** (48600bc)
- **ubsan-rt: export symbols with hidden visibility** (65af60e)
- **Merge pull request #24926 from mrjbq7/http-fetch** (38ef3f8)
- **std: remove lossy int to float coercion on json parse** (c8ec7c1)
- **Use readStreaming, not readPositional, for streaming file readVec on Windows** (e24d13c)
- **start the 0.15.2 release cycle** (409b194)

### Tests
- **test: remove `pie` test case from test-standalone** (ebaec8e)
- **test: disable test-link on FreeBSD** (d6d1fef)
- **test: disable some stack trace tests on FreeBSD** (a569c7d)

### Chore
- **ci: temporarily disable riscv64-linux** (92b0ec9)

_Recap by [Repo Wrapped](https://repowrapped.com/gh/ziglang/zig?utm_source=github-action)._