diff --git a/xdk-build/src/python.rs b/xdk-build/src/python.rs index 1d15d6f0..8b12c69e 100644 --- a/xdk-build/src/python.rs +++ b/xdk-build/src/python.rs @@ -159,16 +159,15 @@ fn run_formatter(output_dir: &Path, venv_python_path: &Path, script_path: &Path) let stdout = String::from_utf8_lossy(&output.stdout); if !stdout.trim().is_empty() { println!(); - stdout - .split("\n") - .collect::>() - .into_iter() - .for_each(|line| { - let parts = line.split(" ").collect::>(); - if parts.len() == 2 { - log_info!("{} {}", parts[0], parts[1].magenta()); - } - }); + // OPTIMIZATION: Use character split ('\n') and iterate directly instead of collecting to a Vec + stdout.split('\n').for_each(|line| { + // OPTIMIZATION: Use character split (' ') and a mutable iterator to extract elements + // without allocating an intermediate vector. + let mut parts = line.split(' '); + if let (Some(p0), Some(p1), None) = (parts.next(), parts.next(), parts.next()) { + log_info!("{} {}", p0, p1.magenta()); + } + }); println!(); }