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
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
regnat
6f1b3d711e
Test the update of multiple channels
...
Make sure that `nix-channel --update` won’t accidentaly remove one
2021-12-17 09:17:33 +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
Eelco Dolstra
c260640dec
Fix docker instructions
2021-12-16 21:48:38 +01:00
Eelco Dolstra
8c46629b83
Merge pull request #5786 from Infinisil/groupBy-tests
...
Add a test case for builtins.groupBy
2021-12-16 21:29:52 +01:00
Silvan Mosberger
d9fbe3e208
Add a test case for builtins.groupBy
2021-12-16 19:59:13 +01:00
Eelco Dolstra
7caf9f33f5
Merge pull request #5783 from johnae/master
...
docker: fix image so that nix profile works
2021-12-16 14:38:47 +01:00
John Axel Eriksson
6942ee8a84
docker: fix image so that nix profile works
...
nix profile will otherwise throw this error:
error: path '/nix/var/nix/profiles/default/manifest.nix' is not in the Nix store
That's not entirely true since manifest.nix is within a directory in
the nix store but nix profile seems to require the manifest.nix itself
to be a store path.
2021-12-16 11:29:05 +01:00
Eelco Dolstra
59a5f35802
Merge pull request #5774 from jessebrennan/patch-1
...
List aarch64 as supported macOS hardware
2021-12-16 09:53:17 +01:00
Eelco Dolstra
c4862fb1f9
Merge pull request #5779 from peeley/fix-shell-doc-typo
...
Fix typo in `nix shell --help` doc
2021-12-16 09:53:02 +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
jesse
11ee875a6d
List aarch64 as supported macOS hardware
...
Resolves #5767
2021-12-15 10:55:34 -08:00
Eelco Dolstra
f66923efde
pkgconfig -> pkg-config
2021-12-15 19:13:06 +01:00
Eelco Dolstra
1b6adfe18f
Revert "update flake.nix to 21.11"
...
This reverts commit ad9322a48f
because
it breaks hydraJobs.buildStatic.* and the evaluation of some tests.
2021-12-15 13:49:05 +01: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
regnat
bb8a53ab08
Add a test for boolean config options in flakes
2021-12-14 09:15: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
Eelco Dolstra
bcd4d2e4c6
Bump version
2021-12-14 00:01:42 +01:00
Eelco Dolstra
02cf49288a
Merge branch 'nixos-21.11' of https://github.com/Mic92/nix-1
2021-12-14 00:01:12 +01:00
Eelco Dolstra
95bd5da341
queryMissing(): Use a bigger thread pool
...
This is a temporary hack until we make queryMissing() async.
Closes #5324 .
2021-12-13 21:11:37 +01:00
Eelco Dolstra
ade870764a
Merge pull request #5725 from ConnorBaker/master
...
Add support for .tar.gz shorthand (.tgz) to TarballInputScheme
2021-12-13 21:08:06 +01:00
Eelco Dolstra
32a62b0d25
Re-allow inputs.x.url = "/path/to/file"
2021-12-13 20:59:33 +01:00
Eelco Dolstra
46d86e06ba
Simplify
2021-12-13 20:28:53 +01:00
Eelco Dolstra
9529de2eed
Merge branch 'arm32-personality' of https://github.com/cleverca22/nix
2021-12-13 19:58:40 +01:00
Eelco Dolstra
18cb094aab
rl-2.5.md: Set date
2021-12-13 19:57:06 +01:00
Eelco Dolstra
6ae5f39ea0
Merge pull request #5770 from edolstra/gc-fixes
...
Fix macOS GC failures
2021-12-13 19:55:32 +01:00
Eelco Dolstra
e2e5f3a78f
Respect /etc/hosts
...
https://hydra.nixos.org/build/161439329
2021-12-13 19:37:30 +01:00
Eelco Dolstra
cc6406cc59
Merge branch 'better-interpolation-error-location' of https://github.com/greedy/nix
2021-12-13 19:20:48 +01:00
Eelco Dolstra
2567b74c66
nix run: Tweak docs
2021-12-13 19:14:32 +01:00
Eelco Dolstra
775bdc0d9e
Merge branch 'pname-main-program' of https://github.com/figsoda/nix
2021-12-13 19:09:36 +01:00
Eelco Dolstra
d17d46cfc2
More debug info
2021-12-13 19:03:08 +01:00
Eelco Dolstra
df1edd143f
gc-non-blocking.sh: Don't hang indefinitely if the GC roots server crashes
2021-12-13 19:01:38 +01:00
Eelco Dolstra
05fcc681ac
Retry on ECONNREFUSED
...
https://hydra.nixos.org/build/161439235
2021-12-13 19:00:19 +01:00
Eelco Dolstra
6d30f9e6fe
Explicitly make GC roots client sockets blocking
...
On macOS / BSD, these sockets inherit the non-blocking flag of the
server soocket, which is not what we want.
https://github.com/dotnet/runtime/issues/25069
https://bugs.python.org/issue7995
https://hydra.nixos.org/build/161439304
2021-12-13 18:59:50 +01:00
regnat
2eec2f765a
Add a crude tracing mechansim for the build results
...
Add a `_NIX_TRACE_BUILT_OUTPUTS` environment variable that can be set to
a filename in which the result of each build will be logged.
This is intentionally crude and undocumented as it’s only meant to be a
temporary thing to assess the usefulness of CA derivations.
Any other use would need a cleaner re-implementation first.
2021-12-13 17:02:14 +01:00
regnat
55dbb7f1cc
More properly track the status of CA builds
...
Make the build of unresolved derivations return the same status as the
resolved one, except in the case of an `AlreadyValid` in which case it
will return `ResolvesToAlreadyValid` to mean that the outputs of the unresolved
derivation weren’t known, but the resolved one is.
2021-12-13 17:02:13 +01:00
Eelco Dolstra
f133001dc8
Move rl-next.md to rl-2.5.md
2021-12-13 16:48:44 +01:00
Eelco Dolstra
3f417c8d1c
Add release notes entry for #5149
2021-12-13 16:43:42 +01:00
Eelco Dolstra
853771b589
Merge pull request #5750 from tomberek/patch-1
...
Update bug_report.md
2021-12-13 13:38:25 +01:00
Eelco Dolstra
84497119ad
Merge pull request #5761 from yorickvP/fix-5741
...
extract_archive: fix "Hard-link target '...'" error
2021-12-13 13:37:40 +01:00
Eelco Dolstra
ec33014e23
Merge pull request #5763 from yorickvP/evalstate-root
...
EvalCommand::getEvalState: use gc tracable allocator for EvalState (fix segfault)
2021-12-13 13:37:17 +01:00
Yorick van Pelt
33e96820d5
EvalCommand::getEvalState: use gc tracable allocator for EvalState
2021-12-11 16:02:08 +01:00
Eelco Dolstra
f24ac3115f
Merge pull request #5760 from helsinki-systems/fix/doc-remote-builds
...
doc: Fix command for distributed builds
2021-12-10 17:28:04 +01:00
Yorick van Pelt
0e0de90b35
extract_archive: fix "Hard-link target '...'" error
...
Fixes #5741
2021-12-10 17:03:51 +01:00
Yorick van Pelt
be1055f2cc
extract_archive: use copy_pathname instead of set_pathname.
...
Libarchive documentation mentions that archive_entry_set_pathname
expects us to keep the passed string alive, which we don't.
2021-12-10 17:00:32 +01:00