Ben Burdette
c669108981
merge cleanup
2022-01-03 18:13:16 -07:00
Ben Burdette
a47de1ac37
Merge branch 'master' into debug-exploratory-PR
2022-01-03 16:08:28 -07:00
Eelco Dolstra
96d08fcd66
Merge pull request #5839 from tweag/balsoft/yet-another-follows-bugfix
...
flake.cc: computeLocks: Only verify overrides when they could change
2022-01-03 20:51:58 +01:00
Eelco Dolstra
70dfcbbb37
Merge pull request #5840 from tweag/balsoft/nix-repl-show-trace
...
nix repl: fix --show-trace and add the ability to set trace display
2022-01-03 20:41:59 +01:00
Sebastian Ullrich
d0c8e9254e
Fix IFD with chroot store
2021-12-29 19:00:02 +01:00
Alexander Bantyev
a26351da02
Add ability to toggle show-trace from within the repl
2021-12-29 02:54:36 +03:00
Lily Foster
92c7d33ee3
Sort attrs from tables in fromTOML
...
This was dropped in 10a8b5d
for the migration from cpptoml to toml11 but
seems to be necessary for the attrsets to work correctly.
Fixes #5833
2021-12-28 10:11:00 -05:00
Alexander Bantyev
581f774284
BaseError::calcWhat: take loggerSettings.showTrace into account
...
Text representation for errors should include the trace if
--show-trace is passed.
2021-12-28 15:53:21 +03:00
Alexander Bantyev
2664a216e5
flake.cc: computeLocks: Only verify overrides when they could change
...
When we check for disappeared overrides, we can get "false positives"
for follows and overrides which are defined in the dependencies of the
flake we are locking, since they are not parsed by
parseFlakeInputs. However, at that point we already know that the
overrides couldn't have possible been changed if the input itself
hasn't changed (since we check that oldLock->originalRef == *input.ref
for the input's parent). So, to prevent this, only perform this check
when it was possible that the flake changed (e.g. the flake we're
locking, or a new input, or the input has changed and mustRefetch ==
true).
2021-12-28 15:30:06 +03:00
Ben Burdette
5954cbf3e9
more cleanup
2021-12-27 18:29:55 -07:00
Ben Burdette
4610e02d04
remove debug code
2021-12-27 18:12:46 -07:00
Ben Burdette
9760fa8661
add DebugTrace for the current error
2021-12-27 17:35:27 -07:00
Ben Burdette
6801a423fc
:d env
2021-12-27 16:28:45 -07:00
Ben Burdette
2a66c120e6
by refernce for addVarToScope
2021-12-27 14:48:34 -07:00
Ben Burdette
ff82ba98b4
don't add builtins to extras, initEnv() in regular repl
2021-12-27 14:06:04 -07:00
Ben Burdette
d0d5890445
don't add underscore names to extras
2021-12-27 13:47:35 -07:00
Yorick
a4ab0a74d9
Fix accidental O(n^2 * log n) performance in NixRepl::addAttrsToScope
...
Only sort once, after adding all of the attrs first. This reduces my
`nix repl '<nixpkgs>'` loading time from 1.07s to 103ms.
Fixes #5823
2021-12-27 13:18:55 +01:00
Ben Burdette
e5eebda194
DebugTrace
2021-12-23 13:36:39 -07:00
Ben Burdette
deb1fd66e8
makeDebugTraceStacker
2021-12-23 09:08:41 -07:00
Ben Burdette
1bda6a01e1
indenting
2021-12-23 08:14:17 -07:00
Nicolas Mattia
b16643b6fc
Use int64_t and NixFloat in fromTOML types
...
This makes sure that values parsed from TOML have a proper size. Using
e.g. `double` caused issues on i686 where the size of `double` (32bit)
was too small to accommodate some values.
2021-12-23 14:12:49 +01:00
regnat
dc89dfa7b3
Properly return false on builtins.pathExists /someNonAllowedPath
...
Follow-up from https://github.com/NixOS/nix/pull/5807 to fix https://github.com/NixOS/nix/pull/5807#issuecomment-1000135394
2021-12-23 10:49:33 +01:00
Ben Burdette
bc20e54e00
stack traces basically working
2021-12-22 19:40:08 -07:00
Ben Burdette
b4a59a5eec
DebugStackTracker class in one place
2021-12-22 15:38:49 -07:00
Eelco Dolstra
7feb741e00
Merge pull request #5821 from edolstra/remove-affinity
...
Remove CPU locking
2021-12-22 20:31:19 +01:00
Eelco Dolstra
b666a2ca8c
Merge pull request #5820 from ncfavier/completion-nospace
...
Don't insert spaces when completing attribute paths
2021-12-22 17:55:05 +01:00
Naïm Favier
c4a03bc4ae
Fix attr path completion after a dot
2021-12-22 16:37:58 +01:00
Naïm Favier
1da1b2b345
Don't insert spaces when completing attribute paths
2021-12-22 16:17:01 +01:00
Eelco Dolstra
9747ea84b4
Remove CPU locking
...
This was already accidentally disabled in ba87b08
. It also no longer
appears to be beneficial, and in fact slow things down, e.g. when
evaluating a NixOS system configuration:
elapsed time: median = 3.8170 mean = 3.8202 stddev = 0.0195 min = 3.7894 max = 3.8600 [rejected, p=0.00000, Δ=0.36929±0.02513]
2021-12-22 15:56:25 +01:00
Eelco Dolstra
89faff93e2
Merge pull request #5807 from NixOS/5805-ca-ifd
...
Fix IFD with CA derivations
2021-12-21 18:47:34 +01:00
Eelco Dolstra
25cea2b737
Merge branch 'nm-toml11' of https://github.com/nmattia/nix
2021-12-21 14:18:04 +01:00
Eelco Dolstra
3228a38e1c
Merge branch 'why-depends-completion' of https://github.com/ncfavier/nix
2021-12-21 11:38:07 +01:00
regnat
d90f9d4b99
Fix IFD with CA derivations
...
Rewrite the string taken by the IFD-like primops to contain the actual
output paths of the derivations rather than the placeholders
Fix #5805
2021-12-21 09:36:50 +01:00
regnat
cbbd21ec07
Factor out the path realisation bit of IFD
2021-12-21 09:36:19 +01:00
pennae
09b245690a
bulk-allocate Value instances in the evaluator
...
calling GC_malloc for each value is significantly more expensive than
allocating a bunch of values at once with GC_malloc_many. "a bunch" here
is a GC block size, ie 16KiB or less.
this gives a 1.5% performance boost when evaluating our nixos system.
tested with
nix eval --raw --impure --expr 'with import <nixpkgs/nixos> {}; system'
# on master
Time (mean ± σ): 3.335 s ± 0.007 s [User: 2.774 s, System: 0.293 s]
Range (min … max): 3.315 s … 3.347 s 50 runs
# with this change
Time (mean ± σ): 3.288 s ± 0.006 s [User: 2.728 s, System: 0.292 s]
Range (min … max): 3.274 s … 3.307 s 50 runs
2021-12-20 23:01:28 +01:00
Nicolas Mattia
9dea5768ef
Clean up toml parsing code
2021-12-20 21:39:37 +01:00
Ben Burdette
f317019edd
:d error
2021-12-20 12:32:21 -07:00
Naïm Favier
1827cf5a9b
Add shell completion for why-depends
...
Fixes #5806
2021-12-20 19:58:30 +01:00
Nicolas Mattia
5d06836b9f
Use long in fromTOML
2021-12-17 23:15:26 +01:00
Nicolas Mattia
10a8b5d3ae
Update primops/fromTOML.cc to use toml11
2021-12-17 22:13:04 +01:00
Nicolas Mattia
c3f68b5db7
Replace cpptoml with toml11
2021-12-17 22:03:33 +01:00
Eelco Dolstra
6e6e998930
Merge pull request #5787 from edolstra/unshare-fs
...
Ignore EPERM when unsharing FS state
2021-12-17 12:00:09 +01:00
Théophane Hufschmitt
23ea1e46cc
Merge pull request #5047 from symphorien/fix-nix-channel
...
nix-channel: use nix-env -i --remove-all to upgrade
2021-12-17 10:05:48 +01:00
Eelco Dolstra
ec8f24ed3a
Ignore EPERM when unsharing FS state
...
On Docker (but not podman), unshare(CLONE_FS) fails with EPERM. So
let's ignore it and hope nothing bad happens.
Attempted fix for #5777 .
2021-12-16 22:02:50 +01:00
Noah Snelson
c3f9344cae
Fix typo in src/nix/shell.md
...
Changed `If not command` to `If no command`, also specified that the
default shell launched in `nix shell` can be specified with `$SHELL`.
2021-12-15 23:40:37 -08:00
Eelco Dolstra
18e4851752
Merge pull request #5769 from NixOS/ca/get-build-stats
...
Add a crude tracing mechansim for the build results
2021-12-14 10:53:51 +01:00
Théophane Hufschmitt
8868da45a8
Merge pull request #5623 from yorickvP/fix-5621
...
flakes: fix boolean and int nixConfig values
2021-12-14 10:35:37 +01:00
Théophane Hufschmitt
99d617bcde
Merge pull request #5771 from edolstra/single-file-flake-inputs
...
Re-allow inputs.x.url = "/path/to/file"
2021-12-14 09:17:24 +01:00
Théophane Hufschmitt
6234e1c811
Merge pull request #5702 from baloo/baloo/hide-non-reproducible-settings
...
reproducibility: hide non-reproducible settings from manual
2021-12-14 09:14:25 +01:00
Théophane Hufschmitt
3fc8042f77
Merge pull request #5366 from trofi/speedup-ca-query
...
ca-specific-schema.sql: add index on RealisationsRefs(referrer)
2021-12-14 09:08:17 +01:00