From 05cb6e9e350463573857a02b8c5a1f5496500c8f Mon Sep 17 00:00:00 2001 From: Bob van der Linden Date: Wed, 30 Oct 2024 22:36:20 +0100 Subject: feat(tvix/eval): introduce ErrorKind::InvalidHash The nixhash errors were wrapped in a generic TvixError. Now it has its own TvixError with unique error code. The nixhash error is passed along as a string. The errors looked like: error[E997]: invalid encoded digest length '51' for algo sha256 Now they look like: error[E041]: Invalid hash: invalid encoded digest length '51' for algo sha256 Change-Id: I5c420815538ba4c6567c95f5d44d60c4d48f43fd Reviewed-on: https://cl.tvl.fyi/c/depot/+/12718 Reviewed-by: flokli Tested-by: BuildkiteCI --- tvix/glue/src/builtins/fetchers.rs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'tvix/glue') diff --git a/tvix/glue/src/builtins/fetchers.rs b/tvix/glue/src/builtins/fetchers.rs index 1ad43b383353..2d9b30586703 100644 --- a/tvix/glue/src/builtins/fetchers.rs +++ b/tvix/glue/src/builtins/fetchers.rs @@ -73,8 +73,7 @@ async fn extract_fetch_args( let sha256 = match sha256_str { Some(sha256_str) => { let nixhash = nixhash::from_str(&sha256_str, Some("sha256")) - // TODO: DerivationError::InvalidOutputHash should be moved to ErrorKind::InvalidHash and used here instead - .map_err(|e| ErrorKind::TvixError(Rc::new(e)))?; + .map_err(|e| ErrorKind::InvalidHash(e.to_string()))?; Some(nixhash.digest_as_bytes().try_into().expect("is sha256")) } -- cgit 1.4.1