aboutsummaryrefslogtreecommitdiff
path: root/doc/manual/rl-next/consistent-nix-build.md
diff options
context:
space:
mode:
authorMaximilian Bosch <maximilian@mbosch.me>2024-05-13 20:58:54 +0200
committerMaximilian Bosch <maximilian@mbosch.me>2024-05-15 15:35:18 +0200
commite1463931833670970fbcebd9bece326ac7146205 (patch)
treeca32bd8009d50101d7731866de07a520f5d182e9 /doc/manual/rl-next/consistent-nix-build.md
parentf6dc40cd1c3cdb38d104fb18ca76b9acf374190a (diff)
nix3-build: show all FOD errors with `--keep-going`
Basically I'd expect the same behavior as with `nix-build`, i.e. with `--keep-going` the hash-mismatch error of each failing fixed-output derivation is shown. The approach is derived from `Store::buildPaths` (`entry-point.cc`): instead of throwing the first build-result, check if there are any build errors and if so, display all of them and throw after that. Unfortunately, the BuildResult struct doesn't have an `ErrorInfo` (there's a FIXME for that at least), so I have to construct my own here. This is a rather cheap bugfix and I decided against touching too many parts of libstore for that (also I don't know if that's in line with the ongoing refactoring work). Closes https://git.lix.systems/lix-project/lix/issues/302 Change-Id: I378ab984fa271e6808c6897c45e0f070eb4c6fac
Diffstat (limited to 'doc/manual/rl-next/consistent-nix-build.md')
-rw-r--r--doc/manual/rl-next/consistent-nix-build.md6
1 files changed, 6 insertions, 0 deletions
diff --git a/doc/manual/rl-next/consistent-nix-build.md b/doc/manual/rl-next/consistent-nix-build.md
new file mode 100644
index 000000000..d5929dc8e
--- /dev/null
+++ b/doc/manual/rl-next/consistent-nix-build.md
@@ -0,0 +1,6 @@
+---
+synopsis: Show all FOD errors with `nix build --keep-going`
+---
+
+`nix build --keep-going` now behaves consistently with `nix-build --keep-going`. This means
+that if e.g. multiple FODs fail to build, all hash mismatches are displayed.