Age | Commit message (Collapse) | Author |
|
|
|
The boolean is only used to determine if the formals are set to a
non-null pointer in all our cases. We can get rid of that allocation and
instead just compare the pointer value with NULL. Saving up to
sizeof(bool) + platform specific alignment per ExprLambda instace.
Probably not a lot of memory but perhaps a few kilobyte with nixpkgs?
This also gets rid of a potential issue with dereferencing formals based on
the value of the boolean that didn't have to be aligned with the formals
pointer but was in all our cases.
|
|
|
|
This reverts commit 0574c1850a785297b7f28c6f286a23fa3eca14a8.
|
|
docs: add troubleshooting session in remote builds
|
|
|
|
Don't reset the logger in a vfork
|
|
Disable testing against nixUnstable on macOS
|
|
9c766a40cbbd3a350a9582d0fd8201e3361a63b2 broke logging from the
daemon, because commonChildInit is called when starting the build hook
in a vfork, so it ends up resetting the parent's logger. So don't
vfork.
It might be best to get rid of vfork altogether, but that may cause
problems, e.g. when we call an external program like git from the
evaluator.
|
|
Remove links to .md files in help output
|
|
This is failing randomly at the moment which isn't very helpful.
|
|
Fixes #5337.
|
|
Flake lock file changes:
• Updated input 'lowdown-src':
'github:kristapsdz/lowdown/6bd668af3fd098bdd07a1bedd399564141e275da' (2021-09-24)
→ 'github:kristapsdz/lowdown/d2c2b44ff6c27b936ec27358a2653caaef8f73b8' (2021-10-06)
|
|
Support arbitrary-length socket paths
|
|
|
|
|
|
|
|
|
|
|
|
In the child process, we can do a chdir() and avoid the problem of the
path not fitting into sockaddr_un.
|
|
This reverts commit 5ec873b127139ca90cc31967c25c9a34fb4cc3e4.
|
|
Add a test for RefScanSink and clean up the code
|
|
Issue #5322.
|
|
|
|
mk/tests.mk: document 'check' and 'installcheck' in 'make help'
|
|
local-derivation-goal.cc: drop spammy "warning: rewriting hashes in..…
|
|
fix creation of NAR files >4GB on 32-bit platforms
|
|
Fix typo
|
|
|
|
`size_t` is 32-bit on 32-bit platforms, while the file size can be bigger
|
|
Fix typo
|
|
|
|
|
|
to debug
Before the changes when building the whole system with
`contentAddressedByDefault = true;` we get many noninformative messages:
$ nix build -f nixos system --keep-going
...
warning: rewriting hashes in '/nix/store/...-clang-11.1.0.drv.chroot/nix/store/...-11.1.0'; cross fingers
warning: rewriting hashes in '/nix/store/...-clang-11.1.0.drv.chroot/nix/store/...-11.1.0-dev'; cross fingers
warning: rewriting hashes in '/nix/store/...-clang-11.1.0.drv.chroot/nix/store/...-11.1.0-python'; cross fingers
error: 2 dependencies of derivation '/nix/store/...-hub-2.14.2.drv' failed to build
warning: rewriting hashes in '/nix/store/...-subversion-1.14.1.drv.chroot/nix/store/...-subversion-1.14.1-dev'; cross fingers
warning: rewriting hashes in '/nix/store/...-subversion-1.14.1.drv.chroot/nix/store/...-subversion-1.14.1-man'; cross fingers
...
Let's downgrade these messages down to debug().
|
|
Nix 2.4 release notes
|
|
nix-store --serve: pass on `settings.keepFailed` from SSH store
|
|
|
|
|
|
`std::visit` by reference
|
|
Co-authored-by: Sebastian Ullrich <sebasti@nullri.ch>
|
|
I had started the trend of doing `std::visit` by value (because a type
error once mislead me into thinking that was the only form that
existed). While the optomizer in principle should be able to deal with
extra coppying or extra indirection once the lambdas inlined, sticking
with by reference is the conventional default. I hope this might even
improve performance.
|
|
|
|
reset yylloc when yyless(0) is called
|
|
|
|
libexpr: throw a more helpful eval-error if a builtin is not available due to a missing feature-flag
|
|
to a missing feature-flag
I found it somewhat confusing to have an error like
error: attribute 'getFlake' missing
if the required experimental-feature (`flakes`) is not enabled. Instead,
I'd expect Nix to throw an error just like it's the case when using e.g. `nix
flake` without `flakes` being enabled.
With this change, the error looks like this:
$ nix-instantiate -E 'builtins.getFlake "nixpkgs"'
error: Cannot call 'builtins.getFlake' because experimental Nix feature 'flakes' is disabled. You can enable it via '--extra-experimental-features flakes'.
at «string»:1:1:
1| builtins.getFlake "nixpkgs"
| ^
I didn't use `settings.requireExperimentalFeature` here on purpose
because this doesn't contain a position. Also, it doesn't seem as if we
need to catch the error and check for the missing feature here since
this already happens at evaluation time.
|
|
Flake lock file changes:
• Updated input 'lowdown-src':
'github:kristapsdz/lowdown/0b85e777f3cdacf4210f0d624a0ceec8df612e05' (2021-09-23)
→ 'github:kristapsdz/lowdown/6bd668af3fd098bdd07a1bedd399564141e275da' (2021-09-24)
• Updated input 'nixpkgs':
'github:NixOS/nixpkgs/f6551e1efa261568c82b76c3a582b2c2ceb1f53f' (2021-08-11)
→ 'github:NixOS/nixpkgs/82891b5e2c2359d7e58d08849e4c89511ab94234' (2021-09-28)
|
|
build: also throw hash-mismatch errors if `buildMode == bmCheck`
|
|
This actually bit me quite recently in `nixpkgs` because I assumed that
`nix-build --check` would also error out if hashes don't match anymore[1]
and so I wrongly assumed that I couldn't reproduce the mismatch error.
The fix is rather simple, during the output registration a so-called
`delayedException` is instantiated e.g. if a FOD hash-mismatch occurs.
However, in case of `nix-build --check` (or `--rebuild` in case of `nix
build`), the code-path where this exception is thrown will never be
reached.
By adding that check to the if-clause that causes an early exit in case
of `bmCheck`, the issue is gone. Also added a (previously failing)
test-case to demonstrate the problem.
[1] https://github.com/NixOS/nixpkgs/pull/139238, the underlying issue
was that `nix-prefetch-git` returns different hashes than `fetchgit`
because the latter one fetches submodules by default.
|
|
With -vvvv, the ProgressBar was polluting the stderr of the child,
messing up its \2 message to the parent.
|