From 898db5af11a60f6b6c1f70c6e9f3bdcb0f1adad4 Mon Sep 17 00:00:00 2001 From: Angelos Evripiotis Date: Mon, 22 Oct 2018 15:30:38 +0100 Subject: plugins/sources: refactor, rm needless ExitStack-s Remove two uses of ExitStack that aren't necessary and make the code a little harder to follow. --- buildstream/plugins/sources/deb.py | 5 ++--- buildstream/plugins/sources/tar.py | 5 ++--- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/buildstream/plugins/sources/deb.py b/buildstream/plugins/sources/deb.py index 7c70e1de9..e1d4b65d1 100644 --- a/buildstream/plugins/sources/deb.py +++ b/buildstream/plugins/sources/deb.py @@ -50,7 +50,7 @@ deb - stage files from .deb packages """ import tarfile -from contextlib import contextmanager, ExitStack +from contextlib import contextmanager import arpy # pylint: disable=import-error from .tar import TarSource @@ -69,8 +69,7 @@ class DebSource(TarSource): @contextmanager def _get_tar(self): - with ExitStack() as context: - deb_file = context.enter_context(open(self._get_mirror_file(), 'rb')) + with open(self._get_mirror_file(), 'rb') as deb_file: arpy_archive = arpy.Archive(fileobj=deb_file) arpy_archive.read_all_headers() data_tar_arpy = [v for k, v in arpy_archive.archived_files.items() if b"data.tar" in k][0] diff --git a/buildstream/plugins/sources/tar.py b/buildstream/plugins/sources/tar.py index 7814679c7..8bbc8fce5 100644 --- a/buildstream/plugins/sources/tar.py +++ b/buildstream/plugins/sources/tar.py @@ -57,7 +57,7 @@ tar - stage files from tar archives import os import tarfile -from contextlib import contextmanager, ExitStack +from contextlib import contextmanager from tempfile import TemporaryFile from buildstream import SourceError @@ -88,8 +88,7 @@ class TarSource(DownloadableFileSource): def _run_lzip(self): assert self.host_lzip with TemporaryFile() as lzip_stdout: - with ExitStack() as context: - lzip_file = context.enter_context(open(self._get_mirror_file(), 'r')) + with open(self._get_mirror_file(), 'r') as lzip_file: self.call([self.host_lzip, '-d'], stdin=lzip_file, stdout=lzip_stdout) -- cgit v1.2.1