Skip to content

Commit 8c7cd5f

Browse files
committed
prefer stdlib TemporaryDirectory
1 parent fe045cd commit 8c7cd5f

File tree

5 files changed

+14
-12
lines changed

5 files changed

+14
-12
lines changed

src/poetry/inspection/info.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
import zipfile
1010

1111
from pathlib import Path
12+
from tempfile import TemporaryDirectory
1213
from typing import TYPE_CHECKING
1314
from typing import Any
1415

@@ -18,7 +19,6 @@
1819
from poetry.core.packages.dependency import Dependency
1920
from poetry.core.packages.package import Package
2021
from poetry.core.utils.helpers import parse_requires
21-
from poetry.core.utils.helpers import temporary_directory
2222
from poetry.core.version.markers import InvalidMarker
2323
from poetry.core.version.requirements import InvalidRequirement
2424

@@ -308,7 +308,7 @@ def _from_sdist_file(cls, path: Path) -> PackageInfo:
308308

309309
context = tarfile.open
310310

311-
with temporary_directory() as tmp_str:
311+
with TemporaryDirectory(ignore_cleanup_errors=True) as tmp_str:
312312
tmp = Path(tmp_str)
313313
with context(path.as_posix()) as archive:
314314
archive.extractall(tmp.as_posix())

src/poetry/installation/chef.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,12 @@
77
from contextlib import redirect_stdout
88
from io import StringIO
99
from pathlib import Path
10+
from tempfile import TemporaryDirectory
1011
from typing import TYPE_CHECKING
1112

1213
from build import BuildBackendException
1314
from build import ProjectBuilder
1415
from build.env import IsolatedEnv as BaseIsolatedEnv
15-
from poetry.core.utils.helpers import temporary_directory
1616
from pyproject_hooks import quiet_subprocess_runner # type: ignore[import]
1717

1818
from poetry.utils._compat import decode
@@ -160,7 +160,7 @@ def _prepare_sdist(self, archive: Path, destination: Path | None = None) -> Path
160160
else:
161161
context = tarfile.open
162162

163-
with temporary_directory() as tmp_dir:
163+
with TemporaryDirectory(ignore_cleanup_errors=True) as tmp_dir:
164164
with context(archive.as_posix()) as archive_archive:
165165
archive_archive.extractall(tmp_dir)
166166

src/poetry/repositories/http_repository.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
from collections import defaultdict
77
from contextlib import contextmanager
88
from pathlib import Path
9+
from tempfile import TemporaryDirectory
910
from typing import TYPE_CHECKING
1011
from typing import Any
1112
from typing import Iterator
@@ -15,7 +16,6 @@
1516
from poetry.core.constraints.version import parse_constraint
1617
from poetry.core.packages.dependency import Dependency
1718
from poetry.core.packages.utils.link import Link
18-
from poetry.core.utils.helpers import temporary_directory
1919
from poetry.core.version.markers import parse_marker
2020

2121
from poetry.repositories.cached_repository import CachedRepository
@@ -81,7 +81,7 @@ def _cached_or_downloaded_file(self, link: Link) -> Iterator[Path]:
8181
yield filepath
8282
else:
8383
self._log(f"Downloading: {link.url}", level="debug")
84-
with temporary_directory() as temp_dir:
84+
with TemporaryDirectory(ignore_cleanup_errors=True) as temp_dir:
8585
filepath = Path(temp_dir) / link.filename
8686
self._download(link.url, filepath)
8787
yield filepath

src/poetry/utils/env.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
from copy import deepcopy
1919
from pathlib import Path
2020
from subprocess import CalledProcessError
21+
from tempfile import TemporaryDirectory
2122
from typing import TYPE_CHECKING
2223
from typing import Any
2324

@@ -33,7 +34,6 @@
3334
from packaging.tags import sys_tags
3435
from poetry.core.constraints.version import Version
3536
from poetry.core.constraints.version import parse_constraint
36-
from poetry.core.utils.helpers import temporary_directory
3737
from virtualenv.seed.wheels.embed import get_embed_wheel
3838

3939
from poetry.toml.file import TOMLFile
@@ -1889,7 +1889,7 @@ def ephemeral_environment(
18891889
executable: Path | None = None,
18901890
flags: dict[str, bool] | None = None,
18911891
) -> Iterator[VirtualEnv]:
1892-
with temporary_directory() as tmp_dir:
1892+
with TemporaryDirectory(ignore_cleanup_errors=True) as tmp_dir:
18931893
# TODO: cache PEP 517 build environment corresponding to each project venv
18941894
venv_dir = Path(tmp_dir) / ".venv"
18951895
EnvManager.build_venv(

tests/packages/test_locker.py

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1090,11 +1090,13 @@ def test_lock_file_resolves_file_url_symlinks(root: ProjectPackage) -> None:
10901090
10911091
See https://github.com/python-poetry/poetry/issues/5849
10921092
"""
1093-
with tempfile.TemporaryDirectory() as d1:
1093+
with tempfile.TemporaryDirectory(ignore_cleanup_errors=True) as d1:
10941094
symlink_path = Path(d1).joinpath("testsymlink")
1095-
with tempfile.TemporaryDirectory(dir=d1) as d2, tempfile.TemporaryDirectory(
1096-
dir=d1
1097-
) as d4, tempfile.TemporaryDirectory(dir=d2) as d3, tempfile.NamedTemporaryFile(
1095+
with tempfile.TemporaryDirectory(
1096+
dir=d1, ignore_cleanup_errors=True
1097+
) as d2, tempfile.TemporaryDirectory(dir=d1) as d4, tempfile.TemporaryDirectory(
1098+
dir=d2, ignore_cleanup_errors=True
1099+
) as d3, tempfile.NamedTemporaryFile(
10981100
dir=d4
10991101
) as source_file, tempfile.NamedTemporaryFile(
11001102
dir=d3

0 commit comments

Comments
 (0)