Release 3.23.3 (2026-10-16)
- Based on upstream Nix 2.35.3.
Garbage collector race fixes
The garbage collector could in rare cases delete a store path while another process was still creating it, leaving a path that is registered as valid but missing on disk (and errors like cannot delete path ... because it is in use by ...). This was caused by several races in the handling of temporary GC roots, notably when multiple threads in the same process (such as evaluator threads) register temporary roots at the same time, or when multiple processes share a PID (e.g. in PID namespaces). These races have been fixed.
PR: DeterminateSystems/nix-src#696
Bug fixes
- Fix crashes on exit (in particular in
nix-daemonworkers) caused by destructor ordering issues by @edolstra in DeterminateSystems/nix-src#690 - Ignore empty or relative
$HOME,$XDG_*_HOMEand$NIX_*_HOMEenvironment variables, which caused Nix to create stray.cache/nixdirectories in the current directory by @edolstra in DeterminateSystems/nix-src#695 - Show a
waiting for lock on ...status when Nix is blocked because another process is substituting or adding the same store path, rather than a seemingly stalled download by @edolstra in DeterminateSystems/nix-src#692 - Include the names and metadata of activities performed by the Nix daemon in JSON logs (
--log-format internal-jsonandjson-log-path) by @edolstra in DeterminateSystems/nix-src#693 - On macOS, don’t report quitting Nix with Ctrl-\ (
SIGQUIT) as a crash by @edolstra in DeterminateSystems/nix-src#694
Performance improvements
- SSH stores only create a temporary directory when they need one by @edolstra in DeterminateSystems/nix-src#691
Miscellaneous changes
- Record the stack size hard limit in Sentry crash reports by @edolstra in DeterminateSystems/nix-src#689
- Add scripts for long-term monitoring of evaluation performance by @edolstra in DeterminateSystems/nix-src#671
- Add Claude Code skills for upstreaming and downstreaming commits and PRs by @edolstra in DeterminateSystems/nix-src#648
Full Changelog: v3.23.2…v3.23.3