No description
Find a file
Raito Bezarius beae2cd27f feat(nix-compat/derivation/parser): init streaming variant
While processing `AddToStore` operation, it is possible to receive a
framed derivation as a response instead of a NAR.

Due to how the wire protocol works, it's not easy to know if we are done
with pulling more bytes (i.e. incomplete derivation) or not (i.e.
incorrect derivation).

To solve this, a streaming parser would propagate the incompleteness of
the parse as a valid response and the reader would be requested more
bytes until it returns EOF.

Change-Id: Icd2b311f03ad68010a9b48e883f6dbee2fbd2c3e
Signed-off-by: Raito Bezarius <raito@lix.systems>
Reviewed-on: https://cl.snix.dev/c/snix/+/30278
Reviewed-by: Florian Klink <flokli@flokli.de>
Tested-by: besadii
Autosubmit: Ryan Lahfa <masterancpp@gmail.com>
2025-03-27 17:45:06 +00:00
.gcroots feat(.envrc): gcroot third_party.sources 2022-09-15 11:27:53 +00:00
.nixery chore(3p/sources): bump to OpenSSH vulnerability hotfix 2024-07-01 17:42:30 +00:00
contrib chore(contrib/weave): bump some crate dependencies 2025-03-23 15:46:00 +00:00
docs doc(contributing): place commit conventions upfront 2025-03-21 16:13:25 +00:00
fun/clbot refactor(fun/clbot): drop changeShouldBeSkipped functionality 2025-03-21 16:36:29 +00:00
nix chore: Remove buildGo and supporting infrastructure 2025-03-21 09:58:25 +00:00
ops fix(ops/modules/forgejo): disable native sign-in 2025-03-25 14:56:20 +00:00
snix feat(nix-compat/derivation/parser): init streaming variant 2025-03-27 17:45:06 +00:00
third_party fix(treewide): remove trailing whitespace 2025-03-22 17:29:59 +00:00
tools feat(depotfmt): enforce editorconfig 2025-03-22 17:29:59 +00:00
web docs(reference/nix-daemon-protocol): migrate 2025-03-24 17:33:58 +00:00
.editorconfig feat(editorconfig): add global editorconfig 2025-03-19 11:35:35 +00:00
.envrc feat(.envrc): only gcroot explicitly specified 3p/sources 2025-01-11 16:04:43 +00:00
.git-blame-ignore-revs fix: add cl/4397 (treewide nixpkgs-fmt) to git-blame-ignore-revs 2022-02-07 18:15:09 +00:00
.gitignore feat(buildkite): avoid building extraSteps in pipeline construction 2024-03-07 15:39:56 +00:00
.gitreview chore: Introduce .gitreview file 2024-08-31 13:05:23 +00:00
.hgignore chore(hgignore): ignore .git for hg 2020-06-14 18:23:13 +00:00
.mailmap chore(mailmap): Add my name and email 2024-08-11 01:23:46 +00:00
.rgignore chore: Only exclude //third_party/git from ripgrep 2020-05-17 23:58:22 +01:00
buf.gen.yaml fix(treewide): add missing final newlines 2025-03-21 13:33:32 +00:00
buf.yaml chore(buf): Use nixpkgs-provided buf 2022-10-21 18:39:03 +00:00
default.nix fix(default.nix): drop usersFilter 2025-03-20 12:21:44 +00:00
LICENSE feat(LICENSE): add Snix Project 2025-03-17 12:45:09 +00:00
OWNERS chore: update OWNERS 2025-03-20 12:21:43 +00:00
README.md chore(*): drop everything that is not required for Tvix 2025-03-17 16:18:26 +00:00
RULES feat(whitby): Let sterni bear the wheel 2021-05-23 19:06:15 +00:00
rustfmt.toml feat(depotfmt): Check & format Rust code with rustfmt 2022-02-08 12:06:39 +00:00

Snix is a modern Rust re-implementation of the components of the Nix package manager.

For more information, checkout the website, hosted at snix.dev, which also is available in the web/ subdirectory of this repository.