Release 3.21.6 (2026-07-14)
- Based on upstream Nix 2.34.8.
Parallel evaluation improvements
NIX_COUNT_CALLS is now compatible with parallel evaluation. In addition, we fixed a bug that prevented it from reporting attribute access statistics. PR: DeterminateSystems/nix-src#562
We improved parallel evaluation performance by allocating more blocks per acquisition of the global Boehm GC lock. PR: DeterminateSystems/nix-src#547
Bug fixes
We made several bug fixes to address Sentry crash reports. PRs: DeterminateSystems/nix-src#558, DeterminateSystems/nix-src#560, DeterminateSystems/nix-src#561, DeterminateSystems/nix-src#563
Other bug fixes:
- Fix data race initializing AttrCursor::_value by @edolstra in DeterminateSystems/nix-src#557
- On Linux, don't hang if the sandbox helper dies before opening the pty slave by @edolstra in DeterminateSystems/nix-src#559
Release process improvements
- libutil: Fix GCC build with -Wchanges-meaning by @edolstra in DeterminateSystems/nix-src#549
- fixup: build non-dsp nix on tags as well by @cole-h in DeterminateSystems/nix-src#550
- build.yml: Enable provenance by @edolstra in DeterminateSystems/nix-src#552
- Drop soversion by @edolstra in DeterminateSystems/nix-src#555
- Restore uploading of debug symbols for build_x86_64-linux_no_dsp by @edolstra in DeterminateSystems/nix-src#556
Miscellaneous changes
- Root values cleanup by @edolstra in DeterminateSystems/nix-src#554
- Add initial CLAUDE.md by @edolstra in DeterminateSystems/nix-src#551
Full Changelog: v3.21.5...v3.21.6