Cole Helbling
90459e60dc
Fix reference to experimental features docs
...
Arose because https://github.com/NixOS/nix/pull/9014 merged before
https://github.com/NixOS/nix/pull/11131 , but the latter did not rebase /
merge against the latest master.
2024-07-25 21:41:31 +02:00
Cole Helbling
6e178cd899
Fix reference to experimental features docs
...
Arose because https://github.com/NixOS/nix/pull/9014 merged before
https://github.com/NixOS/nix/pull/11131 , but the latter did not rebase /
merge against the latest master.
2024-07-25 11:38:45 -07:00
Robert Hensing
6ec123ad6b
Merge pull request #11131 from rhendric/rhendric/pipe-operators
...
libexpr: experimental pipe operators
2024-07-25 16:58:43 +02:00
Robert Hensing
76f04b4146
Merge pull request #11111 from NixOS/grep-safety-AGAIN
...
Grep newline safety
2024-07-25 16:30:33 +02:00
Eelco Dolstra
499a9b5f89
Merge pull request #11182 from Mic92/less-alloc
...
build-remote: only allocate storeUri once
2024-07-25 16:23:06 +02:00
Robert Hensing
55a654abfd
Make panic() and unreachable() robust
...
Plus one or two tweaks.
2024-07-25 15:50:01 +02:00
Robert Hensing
f0fe1d880d
Update doc/manual/rl-next/10734-nix3-build-show-all-fod-errors-with-keep-going.md
...
Co-authored-by: Jörg Thalheim <Mic92@users.noreply.github.com>
2024-07-25 15:39:15 +02:00
Robert Hensing
baa28159d3
Update tests/functional/test-infra.sh
...
Co-authored-by: John Ericson <John.Ericson@Obsidian.Systems>
2024-07-25 15:38:02 +02:00
Jörg Thalheim
9b5ce9acc2
build-remote: only allocate storeUri once
...
also it's probably not much overhead compared to the networking stuff
it, but it's less code at least.
2024-07-25 14:04:03 +02:00
Eelco Dolstra
99c20d6624
Merge pull request #11179 from obsidiansystems/misc-fix
...
Misc fixes
2024-07-25 14:01:54 +02:00
John Ericson
ca1e1e983f
Merge pull request #11180 from Mic92/override-warnings
...
add werror=suggest-override
2024-07-25 03:00:50 -04:00
John Ericson
36252fed6b
Merge pull request #11176 from obsidiansystems/flake-test-group
...
Put flake functional tests in their own group
2024-07-25 02:41:11 -04:00
Jörg Thalheim
63e50a4b56
add werror=suggest-override
...
Improves code readability by making overrides explicit.
Inspired by lix code-base
2024-07-25 07:41:12 +02:00
Jörg Thalheim
2c07ea8abb
build-utils-meson: remove oudated meson build comment
2024-07-25 07:40:36 +02:00
Jörg Thalheim
6c38bc0952
{src/perl,build-utils-meson/diagnostics}: sort cflags
...
This makes them easier to copy between places.
2024-07-25 07:38:00 +02:00
Robert Hensing
6662c9012d
Merge pull request #11177 from obsidiansystems/skip-exit-code
...
Change skipped test error code from 99 to 77
2024-07-25 06:59:18 +02:00
John Ericson
90f7f2139e
Merge pull request #11115 from NixOS/doc-derivation
...
Document builtins.derivation
2024-07-25 00:21:53 -04:00
John Ericson
1ae5738317
Fix some warnings
...
I think they came from the last Nixpkgs bump.
2024-07-25 00:02:43 -04:00
Robert Hensing
b711fcbef9
rl-next: Drop zzz-other. Number soup.
2024-07-25 06:00:59 +02:00
John Ericson
e92dd06a7b
build-remote: Cope with long store URLs by falling back on hashing
...
I hit this in the Meson port of the functional tests, because the use of
standalone build directories.
2024-07-25 00:00:52 -04:00
Robert Hensing
7275d68d3b
rl-next: Add top 10 by +1 reactions on PRs
...
We should use a metric that weighs the related issues.
Counterbalancing time doesn't make much sense to me.
If it's around for longer, the fix will be relevant to more people.
2024-07-25 05:57:53 +02:00
Robert Hensing
8a7e31362a
rl-next: Add credit
2024-07-25 05:57:06 +02:00
John Ericson
3b49f7a143
Deduplicate our many package.nix
a bit ( #11175 )
...
- They should all be built in parallel
- They should all use strict deps by default
2024-07-25 03:12:39 +00:00
Valentin Gagarin
a2fed6db9e
manual: Contributing -> Development, Hacking -> Building ( #9014 )
...
* manual: Contributing -> Development, Hacking -> Building
what's currently called "hacking" are really instructions for setting up
a development environment and compiling from source. we have
a contribution guide in the repo (which rightly focuses on GitHub
workflows), and the material in the manual is more about working
on the code itself.
since we'd otherwise have three headings that amount to "Building Nix",
this change also moves the "classic Nix" instructions to the top.
we may want to reorganise this in the future, and bring
contributor-oriented information closer to the code, but for now let's
stick to more accurate names to ease navigation.
2024-07-25 02:53:06 +00:00
John Ericson
dcbe2453f5
Change skipped test error code from 99 to 77
...
Meson uses a venerable GNU convention described in
https://www.gnu.org/software/automake/manual/html_node/Scripts_002dbased-Testsuites.html
in which:
> When no test protocol is in use, an exit status of 0 from a test
> script will denote a success, an exit status of 77 a skipped test, an
> exit status of 99 a hard error, and any other exit status will denote
> a failure.
77 is thus what we want, not 99.
2024-07-24 22:36:43 -04:00
John Ericson
f4915af71c
Put flake functional tests in their own group
...
This is a nice thing to have, and it made it easier to work on the
Meson-ifcation of these functional tests too.
2024-07-24 22:31:37 -04:00
Valentin Gagarin
dba1142c01
docs: add identifiers ( #11174 )
...
* docs: add identifiers
* clarify attribute set notation and add examples
* add definition of names
Co-authored-by: Ryan Hendrickson <ryan.hendrickson@alum.mit.edu>
2024-07-25 03:45:34 +02:00
Valentin Gagarin
e062021314
fix NIX_PATH
for real ( #11079 )
...
* fix NIX_PATH overriding
- test restricted evaluation
- test precedence for setting the search path
Co-authored-by: Robert Hensing <robert@roberthensing.nl>
Co-authored-by: John Ericson <git@JohnEricson.me>
2024-07-24 21:17:15 +00:00
Eelco Dolstra
01839b525c
Show when we're unpacking an archive into the Git cache
...
This happens in parallel with the download (which starts later), so
you only see this message when the download has finished but the
import hasn't.
2024-07-24 20:22:26 +02:00
Eelco Dolstra
f6a9a71b38
Warn if the download buffer is full
2024-07-24 20:14:31 +02:00
Eelco Dolstra
8ffea0a018
Add 'download-buffer-size' setting
...
We are piping curl downloads into `unpackTarfileToSink()`, but the
latter is typically slower than the former if you're on a fast
connection. So the download could appear unnecessarily slow. (There is
even a risk that if the Git import is *really* slow for whatever
reason, the TCP connection could time out.)
So let's make the download buffer bigger by default - 64 MiB is big
enough for the Nixpkgs tarball. Perhaps in the future, we could have
an unlimited buffer that spills data to disk beyond a certain
threshold, but that's probably overkill.
2024-07-24 20:10:45 +02:00
Eelco Dolstra
caf4e98f0c
Log download durations
2024-07-24 20:10:41 +02:00
Robert Hensing
4bfc96f376
Fix and update release notes
2024-07-24 19:36:49 +02:00
Robert Hensing
459ee00563
Render the release notes when building the manual from dev shell
2024-07-24 19:36:49 +02:00
Ryan Hendrickson
e086d5d899
libexpr: experimental pipe operators
2024-07-24 13:17:28 -04:00
Robert Hensing
3172e88af5
Make abort() call sites log first
2024-07-24 16:52:04 +02:00
Eelco Dolstra
874c1bdbbf
Merge pull request #11169 from NixOS/flake-update
...
Flake update
2024-07-24 16:52:03 +02:00
Eelco Dolstra
b8684eb447
sourceToSink(): Fix abort
2024-07-24 16:44:00 +02:00
Eelco Dolstra
ca0f7db843
Remove hacks to support evaluation from coroutines
...
Since we're not doing this anymore.
2024-07-24 16:43:25 +02:00
Eelco Dolstra
609df83c01
sourceToSink(): Throw EndOfFile
2024-07-24 16:24:38 +02:00
Eelco Dolstra
0194f81587
addToStore(): Do evaluation on the main stack
...
This hopefully avoids the need for all our Boehm GC coroutine
workarounds, since the GC roots will be on the main stack of the
thread.
Fixes #11141 .
2024-07-24 16:24:38 +02:00
Eelco Dolstra
3be7c0037e
WorkerProto: Support fine-grained protocol feature negotiation
...
Currently, the worker protocol has a version number that we increment
whenever we change something in the protocol. However, this can cause
a collision between Nix PRs / forks that make protocol changes
(e.g. PR #9857 increments the version, which could collide with
another PR). So instead, the client and daemon now exchange a set of
protocol features (such as `auth-forwarding`). They will use the
intersection of the sets of features, i.e. the features they both
support.
Note that protocol features are completely distinct from
`ExperimentalFeature`s.
2024-07-24 16:23:37 +02:00
Eelco Dolstra
b13ba7490c
Merge pull request #11162 from NixOS/rename-stack-limit
...
Rename osStackLow -> osStackLimit
2024-07-24 16:18:26 +02:00
Robert Hensing
171ef75218
Rename pre-commit-hooks -> git-hooks-nix
...
Following the upstream rename
2024-07-24 15:55:57 +02:00
Robert Hensing
c316f1557d
flake: Switch to nixos-24.05 channel
...
Flake lock file updates:
• Updated input 'nixpkgs':
'github:NixOS/nixpkgs/d0907b75146a0ccc1ec0d6c3db287ec287588ef6?narHash=sha256-PhmkdTJs2SfqKzSyDB74rDKp1MH4mGk0pG/%2BWqrnGEw%3D' (2024-07-24)
→ 'github:NixOS/nixpkgs/63d37ccd2d178d54e7fb691d7ec76000740ea24a?narHash=sha256-7cCC8%2BTdq1%2B3OPyc3%2BgVo9dzUNkNIQfwSDJ2HSi2u3o%3D' (2024-07-21)
2024-07-24 15:31:30 +02:00
Robert Hensing
f9a23c8d21
flake.nix: Remove outdated comment
2024-07-24 15:30:28 +02:00
Robert Hensing
650f189402
flake.nix: Pin libgit2 to a release
2024-07-24 15:24:10 +02:00
Robert Hensing
a16df88252
flake.lock: Update
...
Flake lock file updates:
• Updated input 'flake-compat':
'github:edolstra/flake-compat/35bb57c0c8d8b62bbfd284272c928ceb64ddbde9?narHash=sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm%2B504Ch3sNKLd8%3D' (2023-01-17)
→ 'github:edolstra/flake-compat/0f9255e01c2351cc7d116c072cb317785dd33b33?narHash=sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U%3D' (2023-10-04)
• Updated input 'flake-parts':
'github:hercules-ci/flake-parts/9126214d0a59633752a136528f5f3b9aa8565b7d?narHash=sha256-sB4SWl2lX95bExY2gMFG5HIzvva5AVMJd4Igm%2BGpZNw%3D' (2024-04-01)
→ 'github:hercules-ci/flake-parts/9227223f6d922fee3c7b190b2cc238a99527bbb7?narHash=sha256-pQMhCCHyQGRzdfAkdJ4cIWiw%2BJNuWsTX7f0ZYSyz0VY%3D' (2024-07-03)
• Updated input 'libgit2':
'github:libgit2/libgit2/45fd9ed7ae1a9b74b957ef4f337bc3c8b3df01b5?narHash=sha256-oX4Z3S9WtJlwvj0uH9HlYcWv%2Bx1hqp8mhXl7HsLu2f0%3D' (2023-10-18)
→ 'github:libgit2/libgit2/503b66cf00ad7dca940148529f60b1a409ccc462?narHash=sha256-tDUQi%2Bs8sxJ30SmUH7Ln9WmDz5jGatlgKumjwi7KnCo%3D' (2024-07-17)
• Updated input 'nixpkgs':
'github:NixOS/nixpkgs/be3ca229c85e978880babdeda9748b14e6aa008f?narHash=sha256-L61BXz7n/yNzOeZ3FqlnUmxj4145JOVeq9fvQTQzbNM%3D' (2024-07-21)
→ 'github:NixOS/nixpkgs/d0907b75146a0ccc1ec0d6c3db287ec287588ef6?narHash=sha256-PhmkdTJs2SfqKzSyDB74rDKp1MH4mGk0pG/%2BWqrnGEw%3D' (2024-07-24)
• Updated input 'pre-commit-hooks':
'github:cachix/pre-commit-hooks.nix/40e6053ecb65fcbf12863338a6dcefb3f55f1bf8?narHash=sha256-nMirxrGteNAl9sWiOhoN5tIHyjBbVi5e2tgZUgZlK3Y%3D' (2024-04-12)
→ 'github:cachix/pre-commit-hooks.nix/f451c19376071a90d8c58ab1a953c6e9840527fd?narHash=sha256-6FPUl7HVtvRHCCBQne7Ylp4p%2BdpP3P/OYuzjztZ4s70%3D' (2024-07-15)
• Removed input 'pre-commit-hooks/flake-utils'
2024-07-24 15:18:50 +02:00
Robert Hensing
68693276f9
Update fixupBoehmStackPointer doc
...
lo might have made sense in the bdwgc code, maybe?, but not here.
2024-07-24 13:02:49 +02:00
Robert Hensing
907b0a371a
Rename osStackLow -> osStackLimit
...
This is in accordance with ARM's naming convention.
"Low" is confusing, because it could refer to either the cold end
of the stack as an abstract data type, or a low address.
These are different places, because the stack grows down through
the address space.
2024-07-24 13:02:49 +02:00