From 94feb823ff9e2c0a67a68677e920b6ca9304302e Mon Sep 17 00:00:00 2001 From: Roland Schaer Date: Thu, 6 Feb 2025 08:52:20 -0300 Subject: [PATCH 1/2] fix: wrong config file type for rust-toolchain.toml files fix: wrong config file type for rust-toolchain.toml files --- src/config/config_file/mod.rs | 31 +++++++++++++++++++++---------- 1 file changed, 21 insertions(+), 10 deletions(-) diff --git a/src/config/config_file/mod.rs b/src/config/config_file/mod.rs index a60471b6f4..5610d74220 100644 --- a/src/config/config_file/mod.rs +++ b/src/config/config_file/mod.rs @@ -509,9 +509,18 @@ fn detect_config_file_type(path: &Path) -> Option { .and_then(|f| f.to_str()) .unwrap_or("mise.toml") { - f if f.ends_with(".toml") => Some(ConfigFileType::MiseToml), - f if env::MISE_OVERRIDE_CONFIG_FILENAMES.contains(f) => Some(ConfigFileType::MiseToml), - f if env::MISE_DEFAULT_CONFIG_FILENAME.as_str() == f => Some(ConfigFileType::MiseToml), + f if backend::list() + .iter() + .any(|b| match b.idiomatic_filenames() { + Ok(filenames) => filenames.contains(&f.to_string()), + Err(e) => { + debug!("idiomatic_filenames failed for {}: {:?}", b, e); + false + }, + }) => + { + Some(ConfigFileType::IdiomaticVersion) + } f if env::MISE_OVERRIDE_TOOL_VERSIONS_FILENAMES .as_ref() .is_some_and(|o| o.contains(f)) => @@ -521,12 +530,9 @@ fn detect_config_file_type(path: &Path) -> Option { f if env::MISE_DEFAULT_TOOL_VERSIONS_FILENAME.as_str() == f => { Some(ConfigFileType::ToolVersions) } - f if backend::list() - .iter() - .any(|b| b.idiomatic_filenames().unwrap().contains(&f.to_string())) => - { - Some(ConfigFileType::IdiomaticVersion) - } + f if f.ends_with(".toml") => Some(ConfigFileType::MiseToml), + f if env::MISE_OVERRIDE_CONFIG_FILENAMES.contains(f) => Some(ConfigFileType::MiseToml), + f if env::MISE_DEFAULT_CONFIG_FILENAME.as_str() == f => Some(ConfigFileType::MiseToml), _ => None, } } @@ -567,6 +573,7 @@ mod tests { #[test] fn test_detect_config_file_type() { + env::set_var("MISE_EXPERIMENTAL", "true"); assert_eq!( detect_config_file_type(Path::new("/foo/bar/.nvmrc")), Some(ConfigFileType::IdiomaticVersion) @@ -580,9 +587,13 @@ mod tests { Some(ConfigFileType::ToolVersions) ); assert_eq!( - detect_config_file_type(Path::new("/foo/bar/.tool-versions.toml")), + detect_config_file_type(Path::new("/foo/bar/mise.toml")), Some(ConfigFileType::MiseToml) ); + assert_eq!( + detect_config_file_type(Path::new("/foo/bar/rust-toolchain.toml")), + Some(ConfigFileType::IdiomaticVersion) + ); } #[test] From 3db1d2cc93b9e4184d2eb0469b574db860202305 Mon Sep 17 00:00:00 2001 From: "autofix-ci[bot]" <114827586+autofix-ci[bot]@users.noreply.github.com> Date: Sat, 8 Feb 2025 12:53:17 +0000 Subject: [PATCH 2/2] [autofix.ci] apply automated fixes --- src/config/config_file/mod.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/config/config_file/mod.rs b/src/config/config_file/mod.rs index 5610d74220..683a42f51c 100644 --- a/src/config/config_file/mod.rs +++ b/src/config/config_file/mod.rs @@ -516,7 +516,7 @@ fn detect_config_file_type(path: &Path) -> Option { Err(e) => { debug!("idiomatic_filenames failed for {}: {:?}", b, e); false - }, + } }) => { Some(ConfigFileType::IdiomaticVersion)