use crate::config::defaults::{
DEFAULT_HUGE_FILE_LINES, DEFAULT_IGNORED_PATHS, DEFAULT_MAX_DIRECTORY_DEPTH,
DEFAULT_MAX_DIRECTORY_MODULES, DEFAULT_MAX_FILE_LINES,
};
pub fn default_config_toml() -> String {
let ignored_paths = DEFAULT_IGNORED_PATHS
.iter()
.map(|path| format!(" \"{path}\""))
.collect::<Vec<_>>()
.join(",\n");
format!(
r#"# RepoPilot configuration file
# Generated by `repopilot init`
[scan]
ignore = [
{ignored_paths}
]
[architecture]
max_file_lines = {DEFAULT_MAX_FILE_LINES}
huge_file_lines = {DEFAULT_HUGE_FILE_LINES}
max_directory_modules = {DEFAULT_MAX_DIRECTORY_MODULES}
max_directory_depth = {DEFAULT_MAX_DIRECTORY_DEPTH}
detect_empty_directories = true
detect_suspicious_names = true
detect_large_files = true
[testing]
detect_missing_tests = true
[security]
detect_secret_like_names = true
[output]
default_format = "console"
"#
)
}