diff options
author | Linus Heckemann <git@sphalerite.org> | 2023-06-01T19·21+0200 |
---|---|---|
committer | clbot <clbot@tvl.fyi> | 2023-06-11T20·59+0000 |
commit | 2b4ad47c16dc0fb114be0fd03526ffb871aa1875 (patch) | |
tree | 200449d6fe54a5d970afb769add2e82ae9ccb574 /tvix/eval/src/warnings.rs | |
parent | 7604833d2ae2a26f6262f17593e2748e978c410d (diff) |
fix(tvix/eval): emit only warnings on shadowed outputs r/6266
Unfortunately, nixpkgs has at least one case[1] where the out environment variable is shadowed -- though it doesn't cause a problem, since it's shadowed with the correct value, odd as this may be! [1]: https://github.com/NixOS/nixpkgs/blob/c7c298471676ac1c7789ab3c424fbcebecaa6791/pkgs/development/python-modules/pybind11/default.nix#L19 Change-Id: Ibf6790d2484dc9cce8e424feeb5886664d498dc3 Reviewed-on: https://cl.tvl.fyi/c/depot/+/8696 Autosubmit: tazjin <tazjin@tvl.su> Reviewed-by: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI
Diffstat (limited to 'tvix/eval/src/warnings.rs')
-rw-r--r-- | tvix/eval/src/warnings.rs | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/tvix/eval/src/warnings.rs b/tvix/eval/src/warnings.rs index aa567f302755..e007d9c34f2d 100644 --- a/tvix/eval/src/warnings.rs +++ b/tvix/eval/src/warnings.rs @@ -17,6 +17,7 @@ pub enum WarningKind { DeadCode, EmptyInherit, EmptyLet, + ShadowedOutput(String), /// Tvix internal warning for features triggered by users that are /// not actually implemented yet, but do not cause runtime failures. @@ -100,6 +101,11 @@ impl EvalWarning { WarningKind::EmptyLet => "this `let`-expression contains no bindings".to_string(), + WarningKind::ShadowedOutput(ref out) => format!( + "this derivation's environment shadows the output name {}", + out + ), + WarningKind::NotImplemented(what) => { format!("feature not yet implemented in tvix: {}", what) } @@ -120,6 +126,7 @@ impl EvalWarning { WarningKind::DeadCode => "W008", WarningKind::EmptyInherit => "W009", WarningKind::EmptyLet => "W010", + WarningKind::ShadowedOutput(_) => "W011", WarningKind::NotImplemented(_) => "W999", } |