Taeer Bar-Yam
11e19ee690
libexpr: shrink ExprWith by 8 bytes
...
Correct bound on prevWith
Co-authored-by: John Ericson <git@JohnEricson.me>
2025-11-04 04:16:20 +01:00
Robert Hensing
9f322398b4
Run linkcheck as regular passthru test
...
... and add nix-manual.site attribute for a nice and DRY aftertaste.
2025-11-04 01:17:39 +01:00
Robert Hensing
e07510e504
Make nix check .#linkcheck pass
...
It's not quite perfect yet, with two kinds of excludes, but at least
we won't regress!
2025-11-04 00:31:46 +01:00
Robert Hensing
ae15d4eaf3
Fix links in the manual
2025-11-04 00:31:46 +01:00
Robert Hensing
469123eda1
doc: Check link fragments with lychee
2025-11-04 00:31:46 +01:00
John Ericson
389bcba97a
JSON Impl and schema for BuildResult
2025-11-03 18:25:16 -05:00
Sergei Zimmerman
3ef22a521d
Merge pull request #14468 from fzakaria/fzakaria/nar-warning
...
Fix warning in kaitai spec
2025-11-03 22:54:55 +00:00
Farid Zakaria
c8e24491c0
Fix warning in kaitai spec
...
Warning:
```
[39/483] Generating src/kaitai-struct-checks/kaitai-generated-sources with a custom command
../src/kaitai-struct-checks/nar.ksy: /types/padded_str/seq/1/encoding:
warning: use canonical encoding name `ASCII` instead of `ascii` (see https://doc.kaitai.io/ksy_style_guide.html#encoding-name )
```
2025-11-03 14:19:54 -08:00
dependabot[bot]
c3d4c5f69d
build(deps): bump cachix/install-nix-action from 31.5.1 to 31.8.2
...
Bumps [cachix/install-nix-action](https://github.com/cachix/install-nix-action ) from 31.5.1 to 31.8.2.
- [Release notes](https://github.com/cachix/install-nix-action/releases )
- [Changelog](https://github.com/cachix/install-nix-action/blob/master/RELEASE.md )
- [Commits](c134e4c9e3...456688f15b )
---
updated-dependencies:
- dependency-name: cachix/install-nix-action
dependency-version: 31.8.2
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-11-03 22:00:54 +00:00
Jörg Thalheim
43ce9da6ad
Merge pull request #14408 from obsidiansystems/hash-derivation-modulo
...
Document "hash derivation quotiented", resolution, and build trace
2025-11-03 21:41:49 +00:00
John Ericson
144c66215b
JSON Schema for build trace entry
...
Note, starting to make progress on #11895 by calling it this in the
manual.
2025-11-03 15:59:50 -05:00
John Ericson
0d7b16da4d
Split realisation protocol unit tests
...
This will allow us to more accurately test dropping support for
dependent realisations, by separating the tests that should not change
from the tests that should.
I do that change in PR #14247 , but even if for some reasons we don't end
up doing this soon, I think it is still good to separate the test data
this way so we have the option of doing that at some point.
2025-11-03 15:43:38 -05:00
John Ericson
72d0f7b619
Document "hash derivation quotiented", resolution, and build trace
...
Progress on #13405 , which asks for an explicit characterisation of the
equivalence relation like the one given here.
Also progress on #11895 , because we're using the term "build trace
entry" instead of "realisation".
Mention #9259 , a future work item.
Co-authored-by: Robert Hensing <roberth@users.noreply.github.com>
2025-11-03 15:18:18 -05:00
John Ericson
34ac1792f9
Merge pull request #14330 from lovesegfault/nix-s3-multipart
...
feat(libstore): add support for multipart s3 uploads
2025-11-03 18:36:48 +00:00
John Ericson
0586370e58
Merge pull request #14345 from fzakaria/fzakaria/nar-kaitai-spec
...
Add documentation for NAR spec in kaitai
2025-11-03 18:24:26 +00:00
John Ericson
f63bb5b338
Merge pull request #14427 from obsidiansystems/drv-output-better-schema
...
Better JSON schema for derivation outputs
2025-11-03 18:23:29 +00:00
Farid Zakaria
53b4ea6c85
Add documentation for NAR spec in kaitai
...
* Add a new flake check
* Add unit tests
* Add Kaitai spec
* Updated documentation
2025-11-03 12:59:16 -05:00
John Ericson
7c85ac23e2
Merge pull request #14444 from NixOS/less-c_str
...
Use less `c_str()` in the evaluator, and other cleanups
2025-11-03 17:56:22 +00:00
John Ericson
0539b58253
Merge pull request #14246 from obsidiansystems/dummy-store-derivations-separately
...
Make Dummy store store derivations separately
2025-11-03 17:29:28 +00:00
Eelco Dolstra
beace42e7a
Merge pull request #14458 from NixOS/thread-pool-move
...
ThreadPool::enqueue(): Use move semantics
2025-11-03 17:27:14 +00:00
Eelco Dolstra
4a0ccc89d9
ThreadPool::enqueue(): Use move semantics
...
This avoids a superfluous copy of the work item.
2025-11-03 17:39:18 +01:00
Sergei Zimmerman
89fa8c09a9
Merge pull request #14450 from roberth/update
...
flake: Update, nixos-25.05-small -> nixos-25.05
2025-11-03 16:19:58 +00:00
Eelco Dolstra
5e025ce940
Merge pull request #14456 from NixOS/remove-infoAttrs
...
getAccessorFromCommit(): Remove superfluous infoAttrs variable
2025-11-03 13:33:58 +00:00
Eelco Dolstra
2f6c865e25
getAccessorFromCommit(): Remove superfluous infoAttrs variable
2025-11-03 13:23:09 +01:00
John Ericson
bd42092873
Use less c_str() in the evaluator, and other cleanups
...
It is better to avoid null termination for performance and memory
safety, wherever possible.
These are good cleanups extracted from the Pascal String work that we
can land by themselves first, shrinking the diff in that PR.
Co-Authored-By: Aspen Smith <root@gws.fyi>
Co-Authored-By: Sergei Zimmerman <sergei@zimmerman.foo>
2025-11-03 15:14:50 +03:00
Robert Hensing
81a2809a52
Apply updated nixfmt
2025-11-03 12:01:55 +01:00
Bernardo Meurer Costa
3448d4fa4c
docs(rl-next/s3-curl-implementation): update with multipart uploads
2025-11-03 01:15:46 +00:00
Bernardo Meurer Costa
965d6be7c1
tests(nixos/s3-binary-cache-store): enable multipart
2025-11-03 01:15:46 +00:00
Bernardo Meurer Costa
040d1aae41
feat(libstore/s3-binary-cache-store): implement uploadMultipart()
...
Implement `uploadMultipart()`, the main method that orchestrates S3
multipart uploads
2025-11-03 01:15:46 +00:00
Bernardo Meurer Costa
bf947bfc26
feat(libstore/s3-binary-cache-store): add multipart upload config settings
...
Add three configuration settings to `S3BinaryCacheStoreConfig` to control
multipart upload behavior:
- `bool multipart-upload` (default `false`): Enable/disable multipart uploads
- `uint64_t multipart-chunk-size` (default 5 MiB): Size of each upload part
- `uint64_t multipart-threshold` (default 100 MiB): Minimum file size for multipart
The feature is disabled by default.
2025-11-02 18:41:48 +00:00
John Ericson
2d83bc6b83
Merge pull request #14446 from mjoerg/fix-docs
...
fix documentation issues
2025-11-02 16:59:33 +00:00
Sergei Zimmerman
e0debd61d5
Merge pull request #14449 from roberth/error-resolution-failed
...
Improve "resolution failed" error
2025-11-02 15:00:56 +00:00
Robert Hensing
233bd250d1
flake: Update, nixos-25.05-small -> nixos-25.05
...
Flake lock file updates:
• Updated input 'nixpkgs':
'github:NixOS/nixpkgs/d98ce345cdab58477ca61855540999c86577d19d?narHash=sha256-O2CIn7HjZwEGqBrwu9EU76zlmA5dbmna7jL1XUmAId8%3D' (2025-08-26)
→ 'github:NixOS/nixpkgs/daf6dc47aa4b44791372d6139ab7b25269184d55?narHash=sha256-wxX7u6D2rpkJLWkZ2E932SIvDJW8%2BON/0Yy8%2Ba5vsDU%3D' (2025-10-27)
2025-11-02 14:10:36 +01:00
Robert Hensing
4ea32d0b03
Improve "resolution failed" error
...
Previously:
error: Cannot build '/nix/store/cqc798lwy2njwbdzgd0319z4r19j2d1w-nix-manual-2.33.0pre20251101_e4e4063.drv'.
Reason: 1 dependency failed.
Output paths:
/nix/store/f1kln1c6z9r7rlhj0h9shcpch7j5g1fj-nix-manual-2.33.0pre20251101_e4e4063-man
/nix/store/k65203rx5g1kcagpcz3c3a09bghcj92a-nix-manual-2.33.0pre20251101_e4e4063
error: Cannot build '/nix/store/ajk2fb6r7ijn2fc5c3h85n6zdi36xlfl-nixops-manual.drv'.
Reason: 1 dependency failed.
Output paths:
/nix/store/0anr0998as8ry4hr5g3f3iarszx5aisx-nixops-manual
error: resolution failed
Now:
error: Cannot build '/nix/store/cqc798lwy2njwbdzgd0319z4r19j2d1w-nix-manual-2.33.0pre20251101_e4e4063.drv'.
Reason: 1 dependency failed.
Output paths:
/nix/store/f1kln1c6z9r7rlhj0h9shcpch7j5g1fj-nix-manual-2.33.0pre20251101_e4e4063-man
/nix/store/k65203rx5g1kcagpcz3c3a09bghcj92a-nix-manual-2.33.0pre20251101_e4e4063
error: Cannot build '/nix/store/ajk2fb6r7ijn2fc5c3h85n6zdi36xlfl-nixops-manual.drv'.
Reason: 1 dependency failed.
Output paths:
/nix/store/0anr0998as8ry4hr5g3f3iarszx5aisx-nixops-manual
error: Build failed due to failed dependency
2025-11-02 14:03:27 +01:00
Martin Joerg
892eba4944
fix documentation issues
2025-11-02 09:17:40 +00:00
Sergei Zimmerman
e4e4063f16
Merge pull request #14443 from NixOS/inline-unreused-lambda
...
Inline only-used-once closures in `ExprConcatStrings::eval`
2025-11-01 21:55:03 +00:00
Vladimir Panteleev
d8cec03fce
nix flake check: log success in verbose mode
...
The rule of silence can be a little surprising. As a compromise to
changing the default behavior, this adds printing a success message in
verbose mode, where we don't really have a reason to be silent about
our success.
2025-11-01 21:45:42 +00:00
Aspen Smith
b67c2f1572
Inline only-used-once closures in ExprConcatStrings::eval
...
Refactor `ExprConcatStrings::eval` by inlining two only-called-once
closures into the call-site, so that the code is easier to reason about
locally (especially since the variables that were closed over were
mutated all over the place within this function).
Also use curly braces with each branch for consistency in the the
resulting code.
This is a pure refactor, but also arguably causes us to depend less on
the optimizer; now, we don't have to make sure that this closure is
inlined.
2025-11-01 16:35:54 -04:00
John Ericson
ca9fde1b88
In EvalState::concatLists, local variable s -> strings
...
It deserves a better name.
Co-Authored-By: Aspen Smith <root@gws.fyi>
2025-11-01 13:41:50 -04:00
John Ericson
0ba1aa34dc
Merge pull request #14440 from lovesegfault/cleanup-aws-sdk
...
chore(libstore/package): remove lingering aws-sdk-cpp
2025-11-01 15:08:21 +00:00
John Ericson
6fa7510055
Merge pull request #14439 from NixOS/no-buffer-overflows
...
libexpr: Do not overflow heap buffer when there are too many formal a…
2025-11-01 14:48:11 +00:00
Bernardo Meurer Costa
8151afb345
chore(libstore/package): remove lingering aws-sdk-cpp
...
This was left behind during the great s3 refactoring of 2025
2025-11-01 14:42:07 +00:00
Sergei Zimmerman
134613e885
libexpr: Do not overflow heap buffer when there are too many formal arguments
...
3a3c062982 introduced a buffer overflow for the
case when there are more than 65535 formal arguments. It is a perfectly reasonable
limitation, but we *must* not crash, corrupt memory or otherwise crash the process.
Add a test for the graceful behavior and switch to using an explicit uninitialized_copy_n
to further guard against buffer overflows.
2025-11-01 12:53:53 +03:00
John Ericson
9d1907fff7
Merge pull request #14434 from NixOS/improve-ipv6-zoneid-backcompat
...
libstore: Improve store-reference back-compat with IPv6 ZoneId literals
2025-10-31 23:10:40 +00:00
John Ericson
c29411ada9
Merge pull request #14431 from NixOS/git-url-fixes
...
libfetchers: Restore plain git inputs recognition
2025-10-31 22:28:14 +00:00
Sergei Zimmerman
8dbc2475f7
libstore: Improve store-reference back-compat with IPv6 ZoneId literals
...
This restores the pre-2.31 handling of ZoneID identifiers in store references.
It's the only place we reasonably care about this back-compat.
2025-11-01 00:36:15 +03:00
John Ericson
9e79e83cb5
Merge pull request #14384 from Radvendii/exprlambda-alloc
...
libexpr: store ExprLambda data in Expr::alloc
2025-10-31 21:12:30 +00:00
John Ericson
937a6df809
Merge pull request #14432 from NixOS/meson-darwin-soname
...
meson: Also split version string at '+' for Darwin
2025-10-31 21:03:47 +00:00
Sergei Zimmerman
1ca6e9ef54
meson: Also split version string at '+' for Darwin
2025-10-31 23:12:54 +03:00
Sergei Zimmerman
ade3d5d746
libfetchers: Restore plain git inputs recognition
...
Accidentally broken in dbc235cc62 .
Adds a bit of tests for this, even though this protocol is mostly deprecated
everywhere.
2025-10-31 22:42:43 +03:00