lix/tests
John Ericson 80d7994f52 Special-case error message to add extra information
The Derivation parser and old ATerm unfortunately leaves few ways to get
nice errors when an old version of Nix encounters a new version of the
format. The most likely scenario for this to occur is with a new client
making a derivation that the old daemon it is communicating with cannot
understand.

The extensions we just created for dynamic derivation deps will add a
version field, solving the problem going forward, but there is still the
issue of what to do about old versions of Nix up to now.

The solution here is to carefully catch the bad error from the daemon
that is likely to indicate this problem, and add some extra context to
it.

There is another "Ugly backwards compatibility hack" in
`remote-store.cc` that also works by transforming an error.

Co-authored-by: Robert Hensing <roberth@users.noreply.github.com>
2023-09-07 10:39:37 -04:00
..
ca Try to realise CA derivations during queryMissing 2023-08-09 20:57:04 +01:00
common Merge pull request #8661 from hercules-ci/test-reformat-error-message 2023-08-25 10:17:15 -04:00
config
dyn-drv Special-case error message to add extra information 2023-09-07 10:39:37 -04:00
flakes test/flakes/follow-paths.sh: Quote 2023-08-18 14:46:13 +02:00
installer test: Make the installer work on old rhel versions 2023-03-31 15:29:50 +02:00
lang pathExists: isDir when endswith / 2023-08-25 17:18:37 +02:00
nested-sandboxing Test nested sandboxing, and make nicer error 2023-07-14 09:40:24 -04:00
nixos Merge pull request #8506 from corngood/ssh-master 2023-07-18 15:47:57 +02:00
plugins Remove RegisterPrimOp constructor without support for documentation 2023-06-14 22:37:52 +02:00
test-libstoreconsumer Make the Derived Path family of types inductive for dynamic derivations 2023-08-10 00:08:32 -04:00
add.sh
bad.tar.xz
bash-profile.sh
big-derivation-attr.nix
binary-cache-build-remote.sh
binary-cache.sh Harden tests' bash 2023-03-08 10:26:30 -05:00
brotli.sh
build-delete.sh Harden tests' bash 2023-03-08 10:26:30 -05:00
build-dry.sh Harden tests' bash 2023-03-08 10:26:30 -05:00
build-hook-ca-fixed.nix
build-hook-ca-floating.nix Fix nix log with CA derivations 2022-12-08 16:03:20 -05:00
build-hook.nix Fix nix log with CA derivations 2022-12-08 16:03:20 -05:00
build-remote-content-addressed-fixed.sh
build-remote-content-addressed-floating.sh
build-remote-input-addressed.sh
build-remote-trustless-after.sh Experimentally allow forcing nix-daemon trust; use this to test 2023-04-17 13:06:21 -04:00
build-remote-trustless-should-fail-0.sh Revert "Skip build-remote-trustless unless sandbox is supported." 2023-07-13 15:06:50 -04:00
build-remote-trustless-should-pass-0.sh Experimentally allow forcing nix-daemon trust; use this to test 2023-04-17 13:06:21 -04:00
build-remote-trustless-should-pass-1.sh Experimentally allow forcing nix-daemon trust; use this to test 2023-04-17 13:06:21 -04:00
build-remote-trustless-should-pass-2.sh nix-testing -> daemon-trust-override 2023-04-17 09:35:43 -04:00
build-remote-trustless-should-pass-3.sh Experimentally allow forcing nix-daemon trust; use this to test 2023-04-17 13:06:21 -04:00
build-remote-trustless.sh Experimentally allow forcing nix-daemon trust; use this to test 2023-04-17 13:06:21 -04:00
build-remote.sh Add comment regarding the unset of NIX_STORE_DIR 2023-07-13 14:18:12 -05:00
build.sh Make the Derived Path family of types inductive for dynamic derivations 2023-08-10 00:08:32 -04:00
ca-shell.nix
case-hack.sh
case.nar
check-refs.nix add nix-store --query --valid-derivers command 2023-08-24 11:37:24 +02:00
check-refs.sh Stabilize discard-references 2023-08-07 16:53:37 +02:00
check-reqs.nix
check-reqs.sh Harden tests' bash 2023-03-08 10:26:30 -05:00
check.nix tests: don't refer to TMPDIR 2022-12-06 16:36:42 +01:00
check.sh Better document build failure exit codes 2023-06-22 14:29:45 -04:00
common.sh Add some tests for drop-supplementary-groups 2023-05-15 17:41:51 -04:00
completions.sh
compression-levels.sh
compute-levels.sh Harden tests' bash 2023-03-08 10:26:30 -05:00
config.nix.in
config.sh tests/config: test retrieving a single setting's value with nix show-config <setting> 2023-01-13 07:57:55 -08:00
db-migration.sh Cleanup test skipping 2023-03-16 18:43:03 -04:00
dependencies.builder0.sh
dependencies.nix add nix-store --query --valid-derivers command 2023-08-24 11:37:24 +02:00
dependencies.sh add nix-store --query --valid-derivers command 2023-08-24 11:37:24 +02:00
derivation-json.sh Create nix derivation add command 2023-04-07 08:34:58 -04:00
dummy
dump-db.sh
eval-store.sh Harden tests' bash 2023-03-08 10:26:30 -05:00
eval.nix
eval.sh Fix SourcePath::resolveSymlinks() 2023-06-06 11:24:10 +02:00
experimental-features.sh Fix some issues with experimental config settings 2023-04-17 12:41:04 -04:00
export-graph.nix add nix-store --query --valid-derivers command 2023-08-24 11:37:24 +02:00
export-graph.sh Harden tests' bash 2023-03-08 10:26:30 -05:00
export.sh
failing.nix
fetchClosure.sh tests/fetchClosure: Improve coverage of new and some existing flows 2023-06-30 18:23:44 +02:00
fetchGit.sh Add dirtyRev and dirtyShortRev to fetchGit 2023-06-24 14:17:25 +10:00
fetchGitRefs.sh Cleanup test skipping 2023-03-16 18:43:03 -04:00
fetchGitSubmodules.sh Cleanup test skipping 2023-03-16 18:43:03 -04:00
fetchMercurial.sh Cleanup test skipping 2023-03-16 18:43:03 -04:00
fetchPath.sh
fetchTree-file.sh Don't require .tar/.zip extension for tarball flakerefs 2023-08-01 16:07:20 +02:00
fetchurl.sh Harden tests' bash 2023-03-08 10:26:30 -05:00
filter-source.nix
filter-source.sh
fixed.builder1.sh
fixed.builder2.sh
fixed.nix
fixed.sh
fmt.sh Harden tests' bash 2023-03-08 10:26:30 -05:00
fmt.simple.sh
function-trace.sh Harden tests' bash 2023-03-08 10:26:30 -05:00
gc-auto.sh
gc-concurrent.builder.sh
gc-concurrent.nix
gc-concurrent.sh
gc-concurrent2.builder.sh
gc-non-blocking.sh
gc-runtime.nix
gc-runtime.sh Cleanup test skipping 2023-03-16 18:43:03 -04:00
gc.sh Split out nix-collect-garbage -d test to new file 2023-06-14 19:01:07 -04:00
hash-check.nix
hash.sh nix-hash: support base-64 and SRI format 2023-03-16 03:08:42 +08:00
hermetic.nix Add some tests for drop-supplementary-groups 2023-05-15 17:41:51 -04:00
import-derivation.nix
import-derivation.sh
impure-derivations.nix
impure-derivations.sh Gate experimental features in DerivationOutput::fromJSON 2023-04-17 17:36:12 -04:00
init.sh nix-testing -> daemon-trust-override 2023-04-17 09:35:43 -04:00
install-darwin.sh Harden tests' bash 2023-03-08 10:26:30 -05:00
lang-test-infra.sh Expanded test suite 2023-07-11 21:43:09 -04:00
lang.sh Fix race condition in the language tests 2023-07-13 08:09:03 -04:00
legacy-ssh-store.sh Add Store::isTrustedClient() 2023-04-06 19:59:57 -04:00
linux-sandbox-cert-test.nix Check exact error codes in linux-sandbox.sh 2023-05-22 23:39:31 +02:00
linux-sandbox.sh Better document build failure exit codes 2023-06-22 14:29:45 -04:00
local-store.sh Add Store::isTrustedClient() 2023-04-06 19:59:57 -04:00
local.mk Test the parallel copy over ssh-ng 2023-08-08 11:55:09 +02:00
logging.sh
misc.sh Expanded test suite 2023-07-11 21:43:09 -04:00
multiple-outputs.nix Add some tests for illegal output names 2023-01-18 14:21:17 +01:00
multiple-outputs.sh Harden tests' bash 2023-03-08 10:26:30 -05:00
nar-access.nix
nar-access.sh Harden tests' bash 2023-03-08 10:26:30 -05:00
nested-sandboxing.sh Test nested sandboxing, and make nicer error 2023-07-14 09:40:24 -04:00
nix-build-examples.nix
nix-build.sh
nix-channel.sh Test nix-channel --list-generations 2023-06-02 10:21:30 +02:00
nix-collect-garbage-d.sh Split out nix-collect-garbage -d test to new file 2023-06-14 19:01:07 -04:00
nix-copy-ssh-ng.sh Test the parallel copy over ssh-ng 2023-08-08 11:55:09 +02:00
nix-copy-ssh.sh
nix-daemon-untrusting.sh Experimentally allow forcing nix-daemon trust; use this to test 2023-04-17 13:06:21 -04:00
nix-profile.sh Fix test 2023-07-03 12:23:57 +02:00
nix-shell.sh Fix nix print-dev-env & nix develop with drv paths 2023-05-10 11:29:45 -04:00
nix_path.sh Revert "getDefaultNixPath: actually respect {restrict,pure}-eval" 2023-02-27 15:11:36 +01:00
optimise-store.sh
output-normalization.sh Test nix build --json return output paths in floating CA case 2023-02-10 18:04:13 -05:00
parallel.builder.sh
parallel.nix
parallel.sh
pass-as-file.sh
path-from-hash-part.sh
path.nix
placeholders.sh
plugins.sh Cleanup test skipping 2023-03-16 18:43:03 -04:00
post-hook.sh tests/post-hook: remove TODO and --derivation upload 2023-05-08 12:58:59 +02:00
pure-eval.nix
pure-eval.sh Harden tests' bash 2023-03-08 10:26:30 -05:00
push-to-store-old.sh tests/post-hook: test to see if all outputs are passed 2023-05-08 12:43:56 +02:00
push-to-store.sh tests/post-hook: remove TODO and --derivation upload 2023-05-08 12:58:59 +02:00
read-only-store.sh Support opening local store with database on read-only filesystem (#8356) 2023-06-20 11:34:09 +02:00
readfile-context.nix
readfile-context.sh
recursive.nix Move test/recursive.sh nix expr to file 2023-04-19 19:36:05 -04:00
recursive.sh Merge branch 'master' into angerman/mac-fix-recursive-nix 2023-06-09 13:06:47 +02:00
referrers.sh
remote-store.sh add nix-store --query --valid-derivers command 2023-08-24 11:37:24 +02:00
repair.sh
repl.sh Test repl formatting with and without :p 2023-08-17 13:03:43 +02:00
restricted.nix
restricted.sh Expanded test suite 2023-07-11 21:43:09 -04:00
search.nix
search.sh Harden tests' bash 2023-03-08 10:26:30 -05:00
secure-drv-outputs.nix
secure-drv-outputs.sh
selfref-gc.sh
shell-hello.nix
shell.nix
shell.sh Cleanup test skipping 2023-03-16 18:43:03 -04:00
shell.shebang.rb
shell.shebang.sh
signing.sh signing.sh: Revert test improvement because it fails on GHA + macOS 2023-07-07 15:37:09 +02:00
simple-failing.nix
simple.builder.sh
simple.nix
simple.sh
ssh-relay.sh
store-ping.sh tests/store-ping: test nix store ping --json 2023-01-31 15:10:54 +01:00
structured-attrs-shell.nix
structured-attrs.nix
structured-attrs.sh
substitute-with-invalid-ca.sh
suggestions.sh
supplementary-groups.sh move unset NIX_STORE_DIR in supplementary-groups.sh 2023-07-13 14:23:24 -05:00
tarball.sh Tarball trees: Propagate lastModified 2023-08-22 21:51:26 +02:00
test-infra.sh Harden tests' bash 2023-03-08 10:26:30 -05:00
test-libstoreconsumer.sh Fix build hook error for libstore library users 2023-06-15 14:32:00 +02:00
timeout.nix
timeout.sh Harden tests' bash 2023-03-08 10:26:30 -05:00
toString-path.sh Trivial changes from the lazy-trees branch 2022-12-07 14:06:34 +01:00
undefined-variable.nix
user-envs-migration.sh Cleanup test skipping 2023-03-16 18:43:03 -04:00
user-envs.builder.sh
user-envs.nix
user-envs.sh Harden tests' bash 2023-03-08 10:26:30 -05:00
why-depends.sh nix/why-depends: fix output of --precise 2023-08-04 23:11:08 +02:00
zstd.sh