Merge pull request #9619 from 9999years/remove-blank-lines-in-errors
Remove some blank lines from stack traces
(cherry picked from commit cea83544362bd6426e9bc0b7dd0d611c19b0e3fd)
Change-Id: Ic1af8b09e9994d3c69fd3b37ae47a4bb786a15a1
This commit is contained in:
parent
7614aa9797
commit
2ddf453e0d
|
@ -172,10 +172,9 @@ static bool printUnknownLocations = getEnv("_NIX_DEVELOPER_SHOW_UNKNOWN_LOCATION
|
|||
static bool printPosMaybe(std::ostream & oss, std::string_view indent, const std::shared_ptr<AbstractPos> & pos) {
|
||||
bool hasPos = pos && *pos;
|
||||
if (hasPos) {
|
||||
oss << "\n" << indent << ANSI_BLUE << "at " ANSI_WARNING << *pos << ANSI_NORMAL << ":";
|
||||
oss << indent << ANSI_BLUE << "at " ANSI_WARNING << *pos << ANSI_NORMAL << ":";
|
||||
|
||||
if (auto loc = pos->getCodeLines()) {
|
||||
oss << "\n";
|
||||
printCodeLines(oss, "", *pos, *loc);
|
||||
oss << "\n";
|
||||
}
|
||||
|
|
|
@ -1,8 +1,6 @@
|
|||
error:
|
||||
… while calling the 'abort' builtin
|
||||
|
||||
at /pwd/lang/eval-fail-abort.nix:1:14:
|
||||
|
||||
1| if true then abort "this should fail" else 1
|
||||
| ^
|
||||
2|
|
||||
|
|
|
@ -1,8 +1,6 @@
|
|||
error:
|
||||
… while calling the 'addDrvOutputDependencies' builtin
|
||||
|
||||
at /pwd/lang/eval-fail-addDrvOutputDependencies-empty-context.nix:1:1:
|
||||
|
||||
1| builtins.addDrvOutputDependencies ""
|
||||
| ^
|
||||
2|
|
||||
|
|
|
@ -1,8 +1,6 @@
|
|||
error:
|
||||
… while calling the 'addDrvOutputDependencies' builtin
|
||||
|
||||
at /pwd/lang/eval-fail-addDrvOutputDependencies-multi-elem-context.nix:18:4:
|
||||
|
||||
17|
|
||||
18| in builtins.addDrvOutputDependencies combo-path
|
||||
| ^
|
||||
|
|
|
@ -1,8 +1,6 @@
|
|||
error:
|
||||
… while calling the 'addDrvOutputDependencies' builtin
|
||||
|
||||
at /pwd/lang/eval-fail-addDrvOutputDependencies-wrong-element-kind.nix:9:4:
|
||||
|
||||
8|
|
||||
9| in builtins.addDrvOutputDependencies drv.outPath
|
||||
| ^
|
||||
|
|
|
@ -1,35 +1,27 @@
|
|||
error:
|
||||
… while evaluating the attribute 'body'
|
||||
|
||||
at /pwd/lang/eval-fail-assert.nix:4:3:
|
||||
|
||||
3|
|
||||
4| body = x "x";
|
||||
| ^
|
||||
5| }
|
||||
|
||||
… from call site
|
||||
|
||||
at /pwd/lang/eval-fail-assert.nix:4:10:
|
||||
|
||||
3|
|
||||
4| body = x "x";
|
||||
| ^
|
||||
5| }
|
||||
|
||||
… while calling 'x'
|
||||
|
||||
at /pwd/lang/eval-fail-assert.nix:2:7:
|
||||
|
||||
1| let {
|
||||
2| x = arg: assert arg == "y"; 123;
|
||||
| ^
|
||||
3|
|
||||
|
||||
error: assertion '(arg == "y")' failed
|
||||
|
||||
at /pwd/lang/eval-fail-assert.nix:2:12:
|
||||
|
||||
1| let {
|
||||
2| x = arg: assert arg == "y"; 123;
|
||||
| ^
|
||||
|
|
|
@ -1,17 +1,13 @@
|
|||
error:
|
||||
… while evaluating the attribute 'puppy."${key}"'
|
||||
|
||||
at /pwd/lang/eval-fail-attr-name-type.nix:3:5:
|
||||
|
||||
2| attrs = {
|
||||
3| puppy.doggy = {};
|
||||
| ^
|
||||
4| };
|
||||
|
||||
… while evaluating an attribute name
|
||||
|
||||
at /pwd/lang/eval-fail-attr-name-type.nix:7:17:
|
||||
|
||||
6| in
|
||||
7| attrs.puppy.${key}
|
||||
| ^
|
||||
|
|
|
@ -1,8 +1,6 @@
|
|||
error:
|
||||
… while evaluating a path segment
|
||||
|
||||
at /pwd/lang/eval-fail-bad-string-interpolation-1.nix:1:2:
|
||||
|
||||
1| "${x: x}"
|
||||
| ^
|
||||
2|
|
||||
|
|
|
@ -1,8 +1,6 @@
|
|||
error:
|
||||
… while evaluating a path segment
|
||||
|
||||
at /pwd/lang/eval-fail-bad-string-interpolation-3.nix:1:3:
|
||||
|
||||
1| ''${x: x}''
|
||||
| ^
|
||||
2|
|
||||
|
|
|
@ -1,17 +1,13 @@
|
|||
error:
|
||||
… while evaluating the attribute 'body'
|
||||
|
||||
at /pwd/lang/eval-fail-blackhole.nix:2:3:
|
||||
|
||||
1| let {
|
||||
2| body = x;
|
||||
| ^
|
||||
3| x = y;
|
||||
|
||||
error: infinite recursion encountered
|
||||
|
||||
at /pwd/lang/eval-fail-blackhole.nix:3:7:
|
||||
|
||||
2| body = x;
|
||||
3| x = y;
|
||||
| ^
|
||||
|
|
|
@ -1,8 +1,6 @@
|
|||
error:
|
||||
… while calling the 'length' builtin
|
||||
|
||||
at /pwd/lang/eval-fail-call-primop.nix:1:1:
|
||||
|
||||
1| builtins.length 1
|
||||
| ^
|
||||
2|
|
||||
|
|
|
@ -1,24 +1,18 @@
|
|||
error:
|
||||
… while calling the 'deepSeq' builtin
|
||||
|
||||
at /pwd/lang/eval-fail-deepseq.nix:1:1:
|
||||
|
||||
1| builtins.deepSeq { x = abort "foo"; } 456
|
||||
| ^
|
||||
2|
|
||||
|
||||
… while evaluating the attribute 'x'
|
||||
|
||||
at /pwd/lang/eval-fail-deepseq.nix:1:20:
|
||||
|
||||
1| builtins.deepSeq { x = abort "foo"; } 456
|
||||
| ^
|
||||
2|
|
||||
|
||||
… while calling the 'abort' builtin
|
||||
|
||||
at /pwd/lang/eval-fail-deepseq.nix:1:24:
|
||||
|
||||
1| builtins.deepSeq { x = abort "foo"; } 456
|
||||
| ^
|
||||
2|
|
||||
|
|
|
@ -1,17 +1,13 @@
|
|||
error:
|
||||
… while evaluating the attribute 'set'
|
||||
|
||||
at /pwd/lang/eval-fail-dup-dynamic-attrs.nix:2:3:
|
||||
|
||||
1| {
|
||||
2| set = { "${"" + "b"}" = 1; };
|
||||
| ^
|
||||
3| set = { "${"b" + ""}" = 2; };
|
||||
|
||||
error: dynamic attribute 'b' already defined at /pwd/lang/eval-fail-dup-dynamic-attrs.nix:2:11
|
||||
|
||||
at /pwd/lang/eval-fail-dup-dynamic-attrs.nix:3:11:
|
||||
|
||||
2| set = { "${"" + "b"}" = 1; };
|
||||
3| set = { "${"b" + ""}" = 2; };
|
||||
| ^
|
||||
|
|
|
@ -1,35 +1,27 @@
|
|||
error:
|
||||
… while calling the 'foldl'' builtin
|
||||
|
||||
at /pwd/lang/eval-fail-foldlStrict-strict-op-application.nix:2:1:
|
||||
|
||||
1| # Tests that the result of applying op is forced even if the value is never used
|
||||
2| builtins.foldl'
|
||||
| ^
|
||||
3| (_: f: f null)
|
||||
|
||||
… while calling anonymous lambda
|
||||
|
||||
at /pwd/lang/eval-fail-foldlStrict-strict-op-application.nix:3:7:
|
||||
|
||||
2| builtins.foldl'
|
||||
3| (_: f: f null)
|
||||
| ^
|
||||
4| null
|
||||
|
||||
… from call site
|
||||
|
||||
at /pwd/lang/eval-fail-foldlStrict-strict-op-application.nix:3:10:
|
||||
|
||||
2| builtins.foldl'
|
||||
3| (_: f: f null)
|
||||
| ^
|
||||
4| null
|
||||
|
||||
… while calling anonymous lambda
|
||||
|
||||
at /pwd/lang/eval-fail-foldlStrict-strict-op-application.nix:5:6:
|
||||
|
||||
4| null
|
||||
5| [ (_: throw "Not the final value, but is still forced!") (_: 23) ]
|
||||
| ^
|
||||
|
|
|
@ -1,8 +1,6 @@
|
|||
error:
|
||||
… while calling the 'fromTOML' builtin
|
||||
|
||||
at /pwd/lang/eval-fail-fromTOML-timestamps.nix:1:1:
|
||||
|
||||
1| builtins.fromTOML ''
|
||||
| ^
|
||||
2| key = "value"
|
||||
|
|
|
@ -1,8 +1,6 @@
|
|||
error:
|
||||
… while calling the 'toString' builtin
|
||||
|
||||
at /pwd/lang/eval-fail-hashfile-missing.nix:4:3:
|
||||
|
||||
3| in
|
||||
4| toString (builtins.concatLists (map (hash: map (builtins.hashFile hash) paths) ["md5" "sha1" "sha256" "sha512"]))
|
||||
| ^
|
||||
|
|
|
@ -1,8 +1,6 @@
|
|||
error:
|
||||
… while evaluating one of the elements to concatenate
|
||||
|
||||
at /pwd/lang/eval-fail-list.nix:1:2:
|
||||
|
||||
1| 8++1
|
||||
| ^
|
||||
2|
|
||||
|
|
|
@ -1,16 +1,12 @@
|
|||
error:
|
||||
… from call site
|
||||
|
||||
at /pwd/lang/eval-fail-missing-arg.nix:1:1:
|
||||
|
||||
1| ({x, y, z}: x + y + z) {x = "foo"; z = "bar";}
|
||||
| ^
|
||||
2|
|
||||
|
||||
error: function 'anonymous lambda' called without required argument 'y'
|
||||
|
||||
at /pwd/lang/eval-fail-missing-arg.nix:1:2:
|
||||
|
||||
1| ({x, y, z}: x + y + z) {x = "foo"; z = "bar";}
|
||||
| ^
|
||||
2|
|
||||
|
|
|
@ -1,16 +1,12 @@
|
|||
error:
|
||||
… in the argument of the not operator
|
||||
|
||||
at /pwd/lang/eval-fail-not-throws.nix:1:4:
|
||||
|
||||
1| ! (throw "uh oh!")
|
||||
| ^
|
||||
2|
|
||||
|
||||
… while calling the 'throw' builtin
|
||||
|
||||
at /pwd/lang/eval-fail-not-throws.nix:1:4:
|
||||
|
||||
1| ! (throw "uh oh!")
|
||||
| ^
|
||||
2|
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
error: path has a trailing slash
|
||||
|
||||
at /pwd/lang/eval-fail-path-slash.nix:6:12:
|
||||
|
||||
5| # and https://nixos.org/nix-dev/2016-June/020829.html
|
||||
6| /nix/store/
|
||||
| ^
|
||||
|
|
|
@ -1,16 +1,12 @@
|
|||
error:
|
||||
… in the right operand of the update (//) operator
|
||||
|
||||
at /pwd/lang/eval-fail-recursion.nix:1:12:
|
||||
|
||||
1| let a = {} // a; in a.foo
|
||||
| ^
|
||||
2|
|
||||
|
||||
error: infinite recursion encountered
|
||||
|
||||
at /pwd/lang/eval-fail-recursion.nix:1:15:
|
||||
|
||||
1| let a = {} // a; in a.foo
|
||||
| ^
|
||||
2|
|
||||
|
|
|
@ -1,17 +1,13 @@
|
|||
error:
|
||||
… while evaluating the attribute 'body'
|
||||
|
||||
at /pwd/lang/eval-fail-remove.nix:4:3:
|
||||
|
||||
3|
|
||||
4| body = (removeAttrs attrs ["x"]).x;
|
||||
| ^
|
||||
5| }
|
||||
|
||||
error: attribute 'x' missing
|
||||
|
||||
at /pwd/lang/eval-fail-remove.nix:4:10:
|
||||
|
||||
3|
|
||||
4| body = (removeAttrs attrs ["x"]).x;
|
||||
| ^
|
||||
|
|
|
@ -1,35 +1,27 @@
|
|||
error:
|
||||
… while evaluating the attribute 'body'
|
||||
|
||||
at /pwd/lang/eval-fail-scope-5.nix:8:3:
|
||||
|
||||
7|
|
||||
8| body = f {};
|
||||
| ^
|
||||
9|
|
||||
|
||||
… from call site
|
||||
|
||||
at /pwd/lang/eval-fail-scope-5.nix:8:10:
|
||||
|
||||
7|
|
||||
8| body = f {};
|
||||
| ^
|
||||
9|
|
||||
|
||||
… while calling 'f'
|
||||
|
||||
at /pwd/lang/eval-fail-scope-5.nix:6:7:
|
||||
|
||||
5|
|
||||
6| f = {x ? y, y ? x}: x + y;
|
||||
| ^
|
||||
7|
|
||||
|
||||
error: infinite recursion encountered
|
||||
|
||||
at /pwd/lang/eval-fail-scope-5.nix:6:12:
|
||||
|
||||
5|
|
||||
6| f = {x ? y, y ? x}: x + y;
|
||||
| ^
|
||||
|
|
|
@ -1,16 +1,12 @@
|
|||
error:
|
||||
… while calling the 'seq' builtin
|
||||
|
||||
at /pwd/lang/eval-fail-seq.nix:1:1:
|
||||
|
||||
1| builtins.seq (abort "foo") 2
|
||||
| ^
|
||||
2|
|
||||
|
||||
… while calling the 'abort' builtin
|
||||
|
||||
at /pwd/lang/eval-fail-seq.nix:1:15:
|
||||
|
||||
1| builtins.seq (abort "foo") 2
|
||||
| ^
|
||||
2|
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
error: undefined variable 'x'
|
||||
|
||||
at /pwd/lang/eval-fail-set.nix:1:3:
|
||||
|
||||
1| 8.x
|
||||
| ^
|
||||
2|
|
||||
|
|
|
@ -1,8 +1,6 @@
|
|||
error:
|
||||
… while calling the 'substring' builtin
|
||||
|
||||
at /pwd/lang/eval-fail-substring.nix:1:1:
|
||||
|
||||
1| builtins.substring (builtins.sub 0 1) 1 "x"
|
||||
| ^
|
||||
2|
|
||||
|
|
|
@ -1,8 +1,6 @@
|
|||
error:
|
||||
… while calling the 'toPath' builtin
|
||||
|
||||
at /pwd/lang/eval-fail-to-path.nix:1:1:
|
||||
|
||||
1| builtins.toPath "foo/bar"
|
||||
| ^
|
||||
2|
|
||||
|
|
|
@ -1,25 +1,19 @@
|
|||
error:
|
||||
… while calling the 'toJSON' builtin
|
||||
|
||||
at /pwd/lang/eval-fail-toJSON.nix:1:1:
|
||||
|
||||
1| builtins.toJSON {
|
||||
| ^
|
||||
2| a.b = [
|
||||
|
||||
… while evaluating attribute 'a'
|
||||
|
||||
at /pwd/lang/eval-fail-toJSON.nix:2:3:
|
||||
|
||||
1| builtins.toJSON {
|
||||
2| a.b = [
|
||||
| ^
|
||||
3| true
|
||||
|
||||
… while evaluating attribute 'b'
|
||||
|
||||
at /pwd/lang/eval-fail-toJSON.nix:2:3:
|
||||
|
||||
1| builtins.toJSON {
|
||||
2| a.b = [
|
||||
| ^
|
||||
|
@ -28,27 +22,21 @@ error:
|
|||
… while evaluating list element at index 3
|
||||
|
||||
… while evaluating attribute 'c'
|
||||
|
||||
at /pwd/lang/eval-fail-toJSON.nix:7:7:
|
||||
|
||||
6| {
|
||||
7| c.d = throw "hah no";
|
||||
| ^
|
||||
8| }
|
||||
|
||||
… while evaluating attribute 'd'
|
||||
|
||||
at /pwd/lang/eval-fail-toJSON.nix:7:7:
|
||||
|
||||
6| {
|
||||
7| c.d = throw "hah no";
|
||||
| ^
|
||||
8| }
|
||||
|
||||
… while calling the 'throw' builtin
|
||||
|
||||
at /pwd/lang/eval-fail-toJSON.nix:7:13:
|
||||
|
||||
6| {
|
||||
7| c.d = throw "hah no";
|
||||
| ^
|
||||
|
|
|
@ -1,16 +1,12 @@
|
|||
error:
|
||||
… from call site
|
||||
|
||||
at /pwd/lang/eval-fail-undeclared-arg.nix:1:1:
|
||||
|
||||
1| ({x, z}: x + z) {x = "foo"; y = "bla"; z = "bar";}
|
||||
| ^
|
||||
2|
|
||||
|
||||
error: function 'anonymous lambda' called with unexpected argument 'y'
|
||||
|
||||
at /pwd/lang/eval-fail-undeclared-arg.nix:1:2:
|
||||
|
||||
1| ({x, z}: x + z) {x = "foo"; y = "bla"; z = "bar";}
|
||||
| ^
|
||||
2|
|
||||
|
|
|
@ -1,8 +1,6 @@
|
|||
error:
|
||||
… while evaluating an attribute name
|
||||
|
||||
at /pwd/lang/eval-fail-using-set-as-attr-name.nix:5:10:
|
||||
|
||||
4| in
|
||||
5| attr.${key}
|
||||
| ^
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
error: attribute 'x' already defined at «stdin»:1:3
|
||||
|
||||
at «stdin»:3:3:
|
||||
|
||||
2| y = 456;
|
||||
3| x = 789;
|
||||
| ^
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
error: attribute 'x' already defined at «stdin»:9:5
|
||||
|
||||
at «stdin»:10:17:
|
||||
|
||||
9| x = 789;
|
||||
10| inherit (as) x;
|
||||
| ^
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
error: attribute 'x' already defined at «stdin»:9:5
|
||||
|
||||
at «stdin»:10:17:
|
||||
|
||||
9| x = 789;
|
||||
10| inherit (as) x;
|
||||
| ^
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
error: attribute 'services.ssh.port' already defined at «stdin»:2:3
|
||||
|
||||
at «stdin»:3:3:
|
||||
|
||||
2| services.ssh.port = 22;
|
||||
3| services.ssh.port = 23;
|
||||
| ^
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
error: attribute 'x' already defined at «stdin»:6:12
|
||||
|
||||
at «stdin»:7:12:
|
||||
|
||||
6| inherit x;
|
||||
7| inherit x;
|
||||
| ^
|
||||
|
|
|
@ -1,6 +1,4 @@
|
|||
error: duplicate formal function argument 'x'
|
||||
|
||||
at «stdin»:1:8:
|
||||
|
||||
1| {x, y, x}: x
|
||||
| ^
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
error: syntax error, unexpected end of file, expecting '"'
|
||||
|
||||
at «stdin»:3:5:
|
||||
|
||||
2| # Note that this file must not end with a newline.
|
||||
3| a 1"$
|
||||
| ^
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
error: attribute 'z' already defined at «stdin»:3:16
|
||||
|
||||
at «stdin»:2:3:
|
||||
|
||||
1| {
|
||||
2| x.z = 3;
|
||||
| ^
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
error: attribute 'y' already defined at «stdin»:3:9
|
||||
|
||||
at «stdin»:2:3:
|
||||
|
||||
1| {
|
||||
2| x.y.y = 3;
|
||||
| ^
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
error: duplicate formal function argument 'args'
|
||||
|
||||
at «stdin»:1:1:
|
||||
|
||||
1| args@{args, x, y, z}: x
|
||||
| ^
|
||||
2|
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
error: undefined variable 'gcc'
|
||||
|
||||
at «stdin»:8:12:
|
||||
|
||||
7|
|
||||
8| body = ({
|
||||
| ^
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
error: syntax error, unexpected ':', expecting '}'
|
||||
|
||||
at «stdin»:3:13:
|
||||
|
||||
2|
|
||||
3| f = {x, y :
|
||||
| ^
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
error: undefined variable 'y'
|
||||
|
||||
at «stdin»:1:4:
|
||||
|
||||
1| x: y
|
||||
| ^
|
||||
2|
|
||||
|
|
|
@ -1,6 +1,4 @@
|
|||
error: syntax error, unexpected invalid token, expecting end of file
|
||||
|
||||
at «stdin»:1:5:
|
||||
|
||||
1| 123 Ã
|
||||
| ^
|
||||
|
|
Loading…
Reference in a new issue