about summary refs log tree commit diff
path: root/tvix/cli/src
diff options
context:
space:
mode:
Diffstat (limited to 'tvix/cli/src')
-rw-r--r--tvix/cli/src/derivation.rs6
-rw-r--r--tvix/cli/src/errors.rs2
2 files changed, 3 insertions, 5 deletions
diff --git a/tvix/cli/src/derivation.rs b/tvix/cli/src/derivation.rs
index cf15ebbb0dc3..fa246cc74fe9 100644
--- a/tvix/cli/src/derivation.rs
+++ b/tvix/cli/src/derivation.rs
@@ -5,8 +5,8 @@ use std::cell::RefCell;
 use std::collections::{btree_map, BTreeSet};
 use std::rc::Rc;
 use tvix_eval::builtin_macros::builtins;
-use tvix_eval::generators::{self, GenCo};
-use tvix_eval::{AddContext, CoercionKind, ErrorKind, NixAttrs, NixList, Value};
+use tvix_eval::generators::{self, emit_warning_kind, GenCo};
+use tvix_eval::{AddContext, CoercionKind, ErrorKind, NixAttrs, NixList, Value, WarningKind};
 
 use crate::errors::Error;
 use crate::known_paths::{KnownPaths, PathKind, PathName};
@@ -327,7 +327,7 @@ mod derivation_builtins {
                 .insert(output.to_string(), String::new())
                 .is_some()
             {
-                return Err(Error::ShadowedOutput(output.to_string()).into());
+                emit_warning_kind(&co, WarningKind::ShadowedOutput(output.to_string())).await;
             }
         }
 
diff --git a/tvix/cli/src/errors.rs b/tvix/cli/src/errors.rs
index 6f328dc0003c..5cbddcbba811 100644
--- a/tvix/cli/src/errors.rs
+++ b/tvix/cli/src/errors.rs
@@ -11,8 +11,6 @@ pub enum Error {
     ConflictingOutputTypes,
     #[error("the environment variable '{0}' has already been set in this derivation")]
     DuplicateEnvVar(String),
-    #[error("the environment variable '{0}' shadows the name of an output")]
-    ShadowedOutput(String),
     #[error("invalid derivation parameters: {0}")]
     InvalidDerivation(DerivationError),
     #[error("invalid output hash: {0}")]