From 55ca0c8137be61b951914abd626500939e977c84 Mon Sep 17 00:00:00 2001 From: Kevin Kirsche Date: Fri, 4 Nov 2022 06:46:50 -0400 Subject: [PATCH] refactor(scripts): prefer subprocess run over call (#625) 1. Fix resource warning in the destructor ``` /Users/REDACTED/.asdf/installs/python/3.10.0/lib/python3.10/subprocess.py:1067: ResourceWarning: subprocess 46612 is still running _warn("subprocess %s is still running" % self.pid, ResourceWarning: Enable tracemalloc to get the object allocation traceback ``` 2. Use preferred, non-legacy API per https://docs.python.org/3/library/subprocess.html#subprocess.call 3. Older call style no longer needed with Python 3.6+ --- scripts/resource.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/scripts/resource.py b/scripts/resource.py index d2b0f4c..cdea937 100644 --- a/scripts/resource.py +++ b/scripts/resource.py @@ -174,7 +174,7 @@ def round_png(pvd: str) -> None: def _round(base: str, path: str): path = os.path.join(base, path) - subprocess.call([cfg.CMD_ROUND, *cfg.CMD_ROUND_OPTS, path]) + subprocess.run([cfg.CMD_ROUND, *cfg.CMD_ROUND_OPTS, path]) for root, _, files in os.walk(resource_dir(pvd)): pngs = filter(lambda f: f.endswith(".png"), files) @@ -187,8 +187,8 @@ def svg2png(pvd: str) -> None: def _convert(base: str, path: str): path = os.path.join(base, path) - subprocess.call([cfg.CMD_SVG2PNG, *cfg.CMD_SVG2PNG_OPTS, path]) - subprocess.call(["rm", path]) + subprocess.run([cfg.CMD_SVG2PNG, *cfg.CMD_SVG2PNG_OPTS, path]) + subprocess.run(["rm", path]) for root, _, files in os.walk(resource_dir(pvd)): svgs = filter(lambda f: f.endswith(".svg"), files) @@ -201,8 +201,8 @@ def svg2png2(pvd: str) -> None: def _convert(base: str, path: str): path_src = os.path.join(base, path) path_dest = path_src.replace(".svg", ".png") - subprocess.call([cfg.CMD_SVG2PNG_IM, *cfg.CMD_SVG2PNG_IM_OPTS, path_src, path_dest]) - subprocess.call(["rm", path_src]) + subprocess.run([cfg.CMD_SVG2PNG_IM, *cfg.CMD_SVG2PNG_IM_OPTS, path_src, path_dest]) + subprocess.run(["rm", path_src]) for root, _, files in os.walk(resource_dir(pvd)): svgs = filter(lambda f: f.endswith(".svg"), files)