diff --git a/crates/install-wheel-rs/src/uninstall.rs b/crates/install-wheel-rs/src/uninstall.rs index c17bd31d4..636d110b0 100644 --- a/crates/install-wheel-rs/src/uninstall.rs +++ b/crates/install-wheel-rs/src/uninstall.rs @@ -30,13 +30,19 @@ pub fn uninstall_wheel(dist_info: &Path) -> Result { Ok(()) => { debug!("Removed file: {}", path.display()); file_count += 1; + if let Some(parent) = path.parent() { + visited.insert(normalize_path(parent)); + } } Err(err) if err.kind() == std::io::ErrorKind::NotFound => {} - Err(err) => return Err(err.into()), - } - - if let Some(parent) = path.parent() { - visited.insert(normalize_path(parent)); + Err(err) => match fs::remove_dir_all(&path) { + Ok(()) => { + debug!("Removed directory: {}", path.display()); + dir_count += 1; + } + Err(err) if err.kind() == std::io::ErrorKind::NotFound => {} + Err(_) => return Err(err.into()), + }, } } diff --git a/crates/puffin-cli/tests/snapshots/pip_compile__compile_python_312.snap b/crates/puffin-cli/tests/snapshots/pip_compile__compile_python_312.snap index 22ce3d471..9b90e229e 100644 --- a/crates/puffin-cli/tests/snapshots/pip_compile__compile_python_312.snap +++ b/crates/puffin-cli/tests/snapshots/pip_compile__compile_python_312.snap @@ -8,9 +8,9 @@ info: - "--python-version" - py312 - "--cache-dir" - - /var/folders/nt/6gf2v7_s3k13zq_t3944rwz40000gn/T/.tmpbKzceW + - /var/folders/nt/6gf2v7_s3k13zq_t3944rwz40000gn/T/.tmpOMYCx3 env: - VIRTUAL_ENV: /var/folders/nt/6gf2v7_s3k13zq_t3944rwz40000gn/T/.tmpZkKRNz/.venv + VIRTUAL_ENV: /var/folders/nt/6gf2v7_s3k13zq_t3944rwz40000gn/T/.tmpPNeQK1/.venv --- success: true exit_code: 0 @@ -26,7 +26,7 @@ packaging==23.2 # via black pathspec==0.11.2 # via black -platformdirs==3.11.0 +platformdirs==4.0.0 # via black ----- stderr ----- diff --git a/crates/puffin-cli/tests/snapshots/pip_compile__compile_python_37.snap b/crates/puffin-cli/tests/snapshots/pip_compile__compile_python_37.snap index 54dc89187..ec4e94eb4 100644 --- a/crates/puffin-cli/tests/snapshots/pip_compile__compile_python_37.snap +++ b/crates/puffin-cli/tests/snapshots/pip_compile__compile_python_37.snap @@ -8,9 +8,9 @@ info: - "--python-version" - py37 - "--cache-dir" - - /var/folders/nt/6gf2v7_s3k13zq_t3944rwz40000gn/T/.tmpQwHoBA + - /var/folders/nt/6gf2v7_s3k13zq_t3944rwz40000gn/T/.tmpzwzUVe env: - VIRTUAL_ENV: /var/folders/nt/6gf2v7_s3k13zq_t3944rwz40000gn/T/.tmp1TmUIW/.venv + VIRTUAL_ENV: /var/folders/nt/6gf2v7_s3k13zq_t3944rwz40000gn/T/.tmpqFv4YL/.venv --- success: true exit_code: 0 @@ -28,7 +28,7 @@ packaging==23.2 # via black pathspec==0.11.2 # via black -platformdirs==3.11.0 +platformdirs==4.0.0 # via black tomli==2.0.1 # via black diff --git a/crates/puffin-resolver/tests/snapshots/resolver__black.snap b/crates/puffin-resolver/tests/snapshots/resolver__black.snap index 828a086c9..754dd7b39 100644 --- a/crates/puffin-resolver/tests/snapshots/resolver__black.snap +++ b/crates/puffin-resolver/tests/snapshots/resolver__black.snap @@ -11,6 +11,6 @@ packaging==23.2 # via black pathspec==0.11.2 # via black -platformdirs==3.11.0 +platformdirs==4.0.0 # via black diff --git a/crates/puffin-resolver/tests/snapshots/resolver__black_colorama.snap b/crates/puffin-resolver/tests/snapshots/resolver__black_colorama.snap index b783dcc75..fcc69dd59 100644 --- a/crates/puffin-resolver/tests/snapshots/resolver__black_colorama.snap +++ b/crates/puffin-resolver/tests/snapshots/resolver__black_colorama.snap @@ -12,6 +12,6 @@ packaging==23.2 # via black pathspec==0.11.2 # via black -platformdirs==3.11.0 +platformdirs==4.0.0 # via black diff --git a/crates/puffin-resolver/tests/snapshots/resolver__black_flake8.snap b/crates/puffin-resolver/tests/snapshots/resolver__black_flake8.snap index 828a086c9..754dd7b39 100644 --- a/crates/puffin-resolver/tests/snapshots/resolver__black_flake8.snap +++ b/crates/puffin-resolver/tests/snapshots/resolver__black_flake8.snap @@ -11,6 +11,6 @@ packaging==23.2 # via black pathspec==0.11.2 # via black -platformdirs==3.11.0 +platformdirs==4.0.0 # via black diff --git a/crates/puffin-resolver/tests/snapshots/resolver__black_ignore_preference.snap b/crates/puffin-resolver/tests/snapshots/resolver__black_ignore_preference.snap index 828a086c9..754dd7b39 100644 --- a/crates/puffin-resolver/tests/snapshots/resolver__black_ignore_preference.snap +++ b/crates/puffin-resolver/tests/snapshots/resolver__black_ignore_preference.snap @@ -11,6 +11,6 @@ packaging==23.2 # via black pathspec==0.11.2 # via black -platformdirs==3.11.0 +platformdirs==4.0.0 # via black diff --git a/crates/puffin-resolver/tests/snapshots/resolver__black_lowest_direct.snap b/crates/puffin-resolver/tests/snapshots/resolver__black_lowest_direct.snap index d452da36d..4f79b34fe 100644 --- a/crates/puffin-resolver/tests/snapshots/resolver__black_lowest_direct.snap +++ b/crates/puffin-resolver/tests/snapshots/resolver__black_lowest_direct.snap @@ -9,7 +9,7 @@ mypy-extensions==1.0.0 # via black pathspec==0.11.2 # via black -platformdirs==3.11.0 +platformdirs==4.0.0 # via black tomli==2.0.1 # via black diff --git a/crates/puffin-resolver/tests/snapshots/resolver__black_mypy_extensions.snap b/crates/puffin-resolver/tests/snapshots/resolver__black_mypy_extensions.snap index a2c3ed058..dd3c3718b 100644 --- a/crates/puffin-resolver/tests/snapshots/resolver__black_mypy_extensions.snap +++ b/crates/puffin-resolver/tests/snapshots/resolver__black_mypy_extensions.snap @@ -11,6 +11,6 @@ packaging==23.2 # via black pathspec==0.11.2 # via black -platformdirs==3.11.0 +platformdirs==4.0.0 # via black diff --git a/crates/puffin-resolver/tests/snapshots/resolver__black_mypy_extensions_extra.snap b/crates/puffin-resolver/tests/snapshots/resolver__black_mypy_extensions_extra.snap index a2c3ed058..dd3c3718b 100644 --- a/crates/puffin-resolver/tests/snapshots/resolver__black_mypy_extensions_extra.snap +++ b/crates/puffin-resolver/tests/snapshots/resolver__black_mypy_extensions_extra.snap @@ -11,6 +11,6 @@ packaging==23.2 # via black pathspec==0.11.2 # via black -platformdirs==3.11.0 +platformdirs==4.0.0 # via black diff --git a/crates/puffin-resolver/tests/snapshots/resolver__black_python_310.snap b/crates/puffin-resolver/tests/snapshots/resolver__black_python_310.snap index 49309d2c4..08f30b6dd 100644 --- a/crates/puffin-resolver/tests/snapshots/resolver__black_python_310.snap +++ b/crates/puffin-resolver/tests/snapshots/resolver__black_python_310.snap @@ -11,7 +11,7 @@ packaging==23.2 # via black pathspec==0.11.2 # via black -platformdirs==3.11.0 +platformdirs==4.0.0 # via black tomli==2.0.1 # via black diff --git a/crates/puffin-resolver/tests/snapshots/resolver__black_respect_preference.snap b/crates/puffin-resolver/tests/snapshots/resolver__black_respect_preference.snap index 5d231bf2a..910bacacb 100644 --- a/crates/puffin-resolver/tests/snapshots/resolver__black_respect_preference.snap +++ b/crates/puffin-resolver/tests/snapshots/resolver__black_respect_preference.snap @@ -11,6 +11,6 @@ packaging==23.2 # via black pathspec==0.11.2 # via black -platformdirs==3.11.0 +platformdirs==4.0.0 # via black