From b6b204e33eb396aaa3dc5576a062d0e5c0cc5d7e Mon Sep 17 00:00:00 2001 From: Jeremy Stanley Date: Fri, 19 Nov 2021 18:36:32 +0000 Subject: Use context blocks for open() calls in packaging Two unclosed file descriptors in packaging are raising ResourceWarning on termination in newer Python interpreters. Make sure they're closed as soon as we're done with them. Change-Id: I07f500e1157da18de799eb0ff9bf82d3bcb46510 --- pbr/packaging.py | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/pbr/packaging.py b/pbr/packaging.py index ae07796..8577b53 100644 --- a/pbr/packaging.py +++ b/pbr/packaging.py @@ -581,8 +581,9 @@ class LocalEggInfo(egg_info.egg_info): else: log.info("[pbr] Reusing existing SOURCES.txt") self.filelist = egg_info.FileList() - for entry in open(manifest_filename, 'r').read().split('\n'): - self.filelist.append(entry) + with open(manifest_filename, 'r') as fil: + for entry in fil.read().split('\n'): + self.filelist.append(entry) def _from_git(distribution): @@ -823,12 +824,9 @@ def _get_version_from_pkg_metadata(package_name): pkg_metadata = {} for filename in pkg_metadata_filenames: try: - pkg_metadata_file = open(filename, 'r') - except (IOError, OSError): - continue - try: - pkg_metadata = email.message_from_file(pkg_metadata_file) - except email.errors.MessageError: + with open(filename, 'r') as pkg_metadata_file: + pkg_metadata = email.message_from_file(pkg_metadata_file) + except (IOError, OSError, email.errors.MessageError): continue # Check to make sure we're in our own dir -- cgit v1.2.1