Make the search path lazier with non-fatal errors
Thus, -I / $NIX_PATH entries are now downloaded only when they are needed for evaluation. An error to download an entry is a non-fatal warning (just like non-existant paths). This does change the semantics of builtins.nixPath, which now returns the original, rather than resulting path. E.g., before we had [ { path = "/nix/store/hgm3yxf1lrrwa3z14zpqaj5p9vs0qklk-nixexprs.tar.xz"; prefix = "nixpkgs"; } ... ] but now [ { path = "https://nixos.org/channels/nixos-16.03/nixexprs.tar.xz"; prefix = "nixpkgs"; } ... ] Fixes #792.
Showing
- src/libexpr/eval.cc 7 additions, 3 deletionssrc/libexpr/eval.cc
- src/libexpr/eval.hh 8 additions, 2 deletionssrc/libexpr/eval.hh
- src/libexpr/parser.y 42 additions, 18 deletionssrc/libexpr/parser.y
- src/libexpr/primops.cc 12 additions, 11 deletionssrc/libexpr/primops.cc
- tests/tarball.sh 6 additions, 0 deletionstests/tarball.sh
Loading
Please register or sign in to comment