From d3303b007301fb668db3108af6d0ebd6dae7e7bf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kat=20March=C3=A1n?= Date: Sat, 11 Mar 2023 15:59:26 -0800 Subject: [PATCH] feat(extract): remove existing modules as needed --- crates/node-maintainer/src/maintainer.rs | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/crates/node-maintainer/src/maintainer.rs b/crates/node-maintainer/src/maintainer.rs index d75173e7..7c1ecb4a 100644 --- a/crates/node-maintainer/src/maintainer.rs +++ b/crates/node-maintainer/src/maintainer.rs @@ -312,6 +312,19 @@ impl NodeMaintainer { let start = std::time::Instant::now(); + if target_dir.exists() { + for entry in std::fs::read_dir(&target_dir)? { + let entry = entry?; + if entry.file_name() == "node_modules" { + continue; + } else if entry.file_type()?.is_dir() { + async_std::fs::remove_dir_all(entry.path()).await?; + } else { + async_std::fs::remove_file(entry.path()).await?; + } + } + } + me.graph[child_idx] .package .extract_to_dir(&target_dir, prefer_copy, validate)