Release 2.3 (2019-09-04)
This is primarily a bug fix release. However, it makes some incompatible changes:
- Nix now uses BSD file locks instead of POSIX file locks. Because of this, you should not use Nix 2.3 and previous releases at the same time on a Nix store.
It also has the following changes:
-
builtins.fetchGit'srefargument now allows specifying an absolute remote ref. Nix will automatically prefixrefwithrefs/headsonly ifrefdoesn't already begin withrefs/. -
The installer now enables sandboxing by default on Linux when the system has the necessary kernel support.
-
The
max-jobssetting now defaults to 1. -
New builtin functions:
builtins.isPath,builtins.hashFile. -
The
nixcommand has a new--print-build-logs(-L) flag to print build log output to stderr, rather than showing the last log line in the progress bar. To distinguish between concurrent builds, log lines are prefixed by the name of the package. -
Builds are now executed in a pseudo-terminal, and the
TERMenvironment variable is set toxterm-256color. This allows many programs (e.g.gcc,clang,cmake) to print colorized log output. -
Add
--no-netconvenience flag. This flag disables substituters; sets thetarball-ttlsetting to infinity (ensuring that any previously downloaded files are considered current); and disables retrying downloads and sets the connection timeout to the minimum. This flag is enabled automatically if there are no configured non-loopback network interfaces. -
Add a
post-build-hooksetting to run a program after a build has succeeded. -
Add a
trace-function-callssetting to log the duration of Nix function calls to stderr.