Eelco Dolstra
018db1c420
Merge pull request #6404 from edolstra/unify-flake-attr-eval
...
Make InstallableFlake::toValue() and toDerivation() behave consistently
2022-04-19 11:53:27 +02:00
Ben Burdette
93b8d31508
Merge branch 'master' into debug-exploratory-PR
2022-04-15 14:49:08 -06:00
Eelco Dolstra
b135de2b5f
Merge pull request #6323 from erikarvstedt/eval-read-only
...
`nix eval`: Add option `--read-only`
2022-04-15 10:31:05 +02:00
Eelco Dolstra
d89840b103
Make InstallableFlake::toValue() and toDerivation() behave consistently
...
In particular, this means that 'nix eval` (which uses toValue()) no
longer auto-calls functions or functors (because
AttrCursor::findAlongAttrPath() doesn't).
Fixes #6152 .
Also use ref<> in a few places, and don't return attrpaths from
getCursor() because cursors already have a getAttrPath() method.
2022-04-14 14:07:04 +02:00
Ben Burdette
f5757a0804
revise command help
2022-04-08 16:34:20 -06:00
Ben Burdette
3aaf02839f
trace stack, not call stack
2022-04-08 16:22:27 -06:00
Ben Burdette
31bcd55626
clean up makefiles
2022-04-08 15:53:24 -06:00
Ben Burdette
27d45f9eb3
minor cleanup
2022-04-08 15:46:12 -06:00
Ben Burdette
a86c2a8481
remove 'debugError', dead code
2022-04-08 13:30:18 -06:00
Ben Burdette
b8b8ec7101
move throw to preverve Error type; turn off debugger for tryEval
2022-04-08 12:34:27 -06:00
Ben Burdette
1a93ac8133
Merge remote-tracking branch 'upstream/master' into upstream-merge
2022-04-07 13:42:01 -06:00
Ben Burdette
d2ec9b4e15
in debugger mode, print the current error when another repl returns.
2022-04-07 12:09:47 -06:00
Ben Burdette
d29af88d58
newline before env
2022-04-07 11:17:57 -06:00
Ben Burdette
f37562187f
free valmap on exit
2022-04-07 11:17:31 -06:00
Ben Burdette
5cfd038bd8
show expr pos if DebugTrace one is noPos
2022-04-06 19:08:29 -06:00
John Ericson
6951b26ed0
Require (new) computed-derivations experimental feature for ! installable
2022-04-01 03:57:51 +00:00
John Ericson
9c6be01d5f
Merge remote-tracking branch 'upstream/master' into indexed-store-path-outputs
2022-04-01 03:48:22 +00:00
Ben Burdette
1096d17b65
show 'with' bindings as well as static
2022-03-31 09:37:36 -06:00
Ben Burdette
5ab7bdf0b1
load debug trace staticenv on 'show'
2022-03-28 15:28:59 -06:00
Ben Burdette
14f515544b
debugTraceIndex
2022-03-28 12:09:21 -06:00
Eelco Dolstra
057f9ee190
nix profile install: Don't use queryDerivationOutputMap()
...
Instead get the outputs from Installable::build(). This will also
allow 'nix profile install' to support impure derivations.
Fixes #6286 .
2022-03-28 14:23:39 +02:00
Erik Arvstedt
16860a0328
nix eval: Add option read-only
2022-03-26 11:32:38 +01:00
Erik Arvstedt
679b3b32c9
Minor comment fix
2022-03-26 11:32:37 +01:00
Ben Burdette
1bec3fb337
add DebugTrace for error
2022-03-25 18:15:31 -06:00
John Ericson
0966532dc1
Merge remote-tracking branch 'upstream' into indexed-store-path-outputs
...
Co-Authored-By: Tom Bereknyei <tomberek@gmail.com>
2022-03-25 16:48:50 +00:00
Hideaki Kawai
3b776cb0a7
nix edit: support kakoune
2022-03-22 23:18:02 +09:00
Guillaume Maudoux
ca5c3e86ab
Merge remote-tracking branch 'origin/master' into coerce-string
2022-03-18 01:25:55 +01:00
Guillaume Maudoux
1942fed6d9
Revert extra colon at end os strings
2022-03-18 01:10:04 +01:00
Artturin
a5c969db49
nix: allow using --file - to read from stdin
2022-03-16 21:01:51 +02:00
Ben Burdette
88a54108eb
formatting
2022-03-16 12:09:47 -06:00
Ben Burdette
3dfab6e534
have only one debuggerHook declaration
2022-03-14 11:58:11 -06:00
John Ericson
e5c42bba9b
Merge remote-tracking branch 'upstream/master' into indexed-store-path-outputs
2022-03-10 17:10:15 +00:00
Eelco Dolstra
761242afa0
BuildResult: Use DerivedPath
2022-03-09 12:25:35 +01:00
Eelco Dolstra
a4604f1928
Add Store::buildPathsWithResults()
...
This function is like buildPaths(), except that it returns a vector of
BuildResults containing the exact statuses and output paths of each
derivation / substitution. This is convenient for functions like
Installable::build(), because they then don't need to do another
series of calls to get the outputs of CA derivations. It's also a
precondition to impure derivations, where we *can't* query the output
of those derivations since they're not stored in the Nix database.
Note that PathSubstitutionGoal can now also return a BuildStatus.
2022-03-08 19:56:34 +01:00
Naïm Favier
da7d8daa77
Add shell completion for --override-flake
...
Requires moving the MixEvalArgs class from libexpr to libcmd because
that's where completeFlakeRef is.
2022-03-07 12:01:54 +01:00
Naïm Favier
55c6906701
Perform tilde expansion when completing flake fragments
...
Allows completing `nix build ~/flake#<Tab>`.
We can implement expansion for `~user` later if needed.
Not using wordexp(3) since that expands way too much.
2022-03-07 12:01:54 +01:00
Naïm Favier
5f06a91bf7
Fix completion of nested attributes in completeInstallable
...
Without this, completing `nix eval -f file.nix foo.<Tab>` suggests `bar`
instead of `foo.bar`, which messes up the command
2022-03-07 12:01:54 +01:00
Naïm Favier
7ddcb39206
Add shell completion for --override-input
2022-03-07 12:01:54 +01:00
Naïm Favier
7f5cf87d56
Accept and discard fragments in getFlakeRefForCompletion
...
Otherwise trying to complete `nix build foo#bar --update-input <Tab>`
fails with "unexpected fragment"
2022-03-07 12:01:54 +01:00
Guillaume Maudoux
13c4dc6532
more fixes
2022-03-07 11:33:03 +01:00
regnat
98e361ad4c
Also display suggestions for the commands using the eval cache
...
Make `nix build .#nix-armv8l-linux` work for example
2022-03-07 10:09:10 +01:00
regnat
c0792b1546
Implement a suggestions mechanism
...
Each `Error` class now includes a set of suggestions, and these are printed by
the top-level handler.
2022-03-07 10:09:09 +01:00
Guillaume Maudoux
be1f069746
Add error context for most basic coercions
2022-03-04 05:04:47 +01:00
Eelco Dolstra
b55d79728c
Add EvalState::coerceToStorePath() helper
...
This is useful whenever we want to evaluate something to a store path
(e.g. in get-drvs.cc).
Extracted from the lazy-trees branch (where we can require that a
store path must come from a store source tree accessor).
2022-03-02 23:58:58 +01:00
Eelco Dolstra
161f798aa1
nix profile: Support CA derivations
2022-03-02 20:38:51 +01:00
Eelco Dolstra
54888b92de
Move installables-related operations
2022-03-02 19:19:51 +01:00
Eelco Dolstra
162fbe31ff
Replace defaultBla.$system with bla.$system.default
...
This also simplifies some InstallableFlake logic and fixes 'nix
bundle' parsing its installable twice.
Fixes #5532 .
2022-02-22 11:47:41 +01:00
Ben Burdette
c9bc3735f6
quit repl from step mode
2022-02-15 09:49:25 -07:00
Ben Burdette
e761bf0601
make an 'info' level error on break
2022-02-14 14:04:34 -07:00
Eelco Dolstra
023e459777
InstallableFlake: Default attr paths cleanup
...
This removes some duplicated logic, and fixes "nix bundle" parsing its
installable twice.
2022-02-14 21:06:11 +01:00