fix(tvix/eval): correctly escape ${ in strings

Without this escape, it is possible for Nix to produce escaped
representations which are not literal Nix values again.

This was fixed in upstream Nix in
https://github.com/NixOS/nix/pull/4012 (though only for eval, not in
the REPL) and the updated test is picked from upstream after that commit.

Because we run the C++ Nix tests against our test suite as well, this
also bumps our custom Nix 2.3 to a commit that includes the
cherry-picked fix from the PR above.

Change-Id: I478547ade65f655c606ec46f7143932064192283
Reviewed-on: https://cl.tvl.fyi/c/depot/+/6271
Reviewed-by: grfn <grfn@gws.fyi>
Reviewed-by: sterni <sternenseemann@systemli.org>
Tested-by: BuildkiteCI
This commit is contained in:
Vincent Ambo 2022-08-25 14:23:26 +03:00 committed by tazjin
parent 265393301e
commit 39b01c3029
4 changed files with 19 additions and 14 deletions

View file

@ -9,14 +9,14 @@ let
nixSrc =
let
# branch 2.3-backport-await-users
rev = "4510dbc8a6802902cbab6444134659548fffb9b0";
rev = "abdc60f49f1104696bac723331d3ed0296d5a784";
in
self.fetchFromGitHub
{
owner = "tvlfyi";
repo = "nix";
inherit rev;
hash = "sha256:0vg2xzwc8q1sw20b26qbyd4flnws8668yhi1cg2h6z3jb3wamhr5";
hash = "sha256:0c1pmg8y0yafdkliz970k52s92z3qin3xrz3g0n2ss7xcfbg8nzy";
} // { revCount = 0; shortRev = builtins.substring 0 7 rev; };
in
{