From dee94473c435b38b2d7829731804ac96e6856d9c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bartek=20Iwa=C5=84czuk?= Date: Fri, 15 Nov 2024 17:09:19 +0000 Subject: fix: update message for unsupported schemes with npm and jsr (#26884) Closes https://github.com/denoland/deno/issues/26596 --- cli/file_fetcher.rs | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'cli') diff --git a/cli/file_fetcher.rs b/cli/file_fetcher.rs index 95d778f0b..640f83c35 100644 --- a/cli/file_fetcher.rs +++ b/cli/file_fetcher.rs @@ -164,8 +164,19 @@ fn get_validated_scheme( ) -> Result { let scheme = specifier.scheme(); if !SUPPORTED_SCHEMES.contains(&scheme) { + // NOTE(bartlomieju): this message list additional `npm` and `jsr` schemes, but they should actually be handled + // before `file_fetcher.rs` APIs are even hit. + let mut all_supported_schemes = SUPPORTED_SCHEMES.to_vec(); + all_supported_schemes.extend_from_slice(&["npm", "jsr"]); + all_supported_schemes.sort(); + let scheme_list = all_supported_schemes + .iter() + .map(|scheme| format!(" - \"{}\"", scheme)) + .collect::>() + .join("\n"); Err(generic_error(format!( - "Unsupported scheme \"{scheme}\" for module \"{specifier}\". Supported schemes: {SUPPORTED_SCHEMES:#?}" + "Unsupported scheme \"{scheme}\" for module \"{specifier}\". Supported schemes:\n{}", + scheme_list ))) } else { Ok(scheme.to_string()) -- cgit v1.2.3