tvl-depot/tvix/eval/src
Ryan Lahfa e7af8e0d62 feat(tvix/eval): implement appendContext
`appendContext s ctx` will just append a user-crafted context attrs to `s`.

The most important part of this builtin is to perform all the relevant invariant validations
to avoid letting the user craft invalid contexts which can never be built, e.g. invalid store paths,
inexistent derivations, etc.

This version is incomplete and full of TODOs, but passes all the Nix's
context strings tests, so we turn them on.

Change-Id: I625dc5e7c4f5b784f078b390f04b0ee5a8d65a7c
Signed-off-by: Ryan Lahfa <tvl@lahfa.xyz>
Reviewed-on: https://cl.tvl.fyi/c/depot/+/11263
Reviewed-by: flokli <flokli@flokli.de>
Tested-by: BuildkiteCI
2024-04-04 17:24:26 +00:00
..
builtins feat(tvix/eval): implement appendContext 2024-04-04 17:24:26 +00:00
compiler feat(tvix/eval): Store string context alongside data 2024-02-21 20:53:04 +00:00
tests fix(tvix/eval): propagate errs from key comparison in genericClosure 2024-03-19 06:20:52 +00:00
value feat(tvix/eval): implement unsafeDiscardOutputDependency 2024-03-31 12:40:49 +00:00
vm feat(tvix/eval): Store string context alongside data 2024-02-21 20:53:04 +00:00
chunk.rs feat(tvix/eval): Don't emit OpForce for non-thunk constants 2024-02-01 21:08:35 +00:00
errors.rs feat(tvix/eval): implement builtins.hashString 2024-02-23 16:04:35 +00:00
io.rs docs(tvix): fix some docstrings 2024-03-15 23:16:01 +00:00
lib.rs fix(tvix/eval): propagate catchable errors at the top of an eval 2024-02-20 12:33:57 +00:00
nix_search_path.rs refactor(tvix/eval): Box the strings in CatchableErrorKind 2024-02-10 20:35:28 +00:00
observer.rs feat(tvix/eval/observer): Allow capturing timing of events 2024-01-31 04:41:37 +00:00
opcode.rs refactor(tvix/eval): let OpCoerceToString select the CoercionKind 2023-12-29 21:34:45 +00:00
pretty_ast.rs fix(tvix/eval): fix current clippy warnings 2022-12-25 18:25:06 +00:00
properties.rs refactor(tvix/eval): Don't (ab)use PartialEq for Nix equality 2022-09-18 22:03:41 +00:00
source.rs refactor(tvix/eval): impl Default for SourceCode 2023-08-20 21:52:21 +00:00
spans.rs feat(tvix/eval): drop LightSpan::Delayed 2023-12-12 14:34:28 +00:00
systems.rs fix(tvix/eval): fix current clippy warnings 2022-12-25 18:25:06 +00:00
test_utils.rs test(tvix/eval): Add proof-of-concept test for Chunk 2022-09-18 17:55:06 +00:00
upvalues.rs fix(tvix/eval): remove impl PartialEq for Value 2022-11-04 00:30:13 +00:00
warnings.rs feat(tvix/glue): emit a warning in case of bad SRI hashes 2024-01-03 13:01:02 +00:00