From f92bc05c182d9243a19c4af8c303986f1719eee6 Mon Sep 17 00:00:00 2001 From: Nathan Goldbaum Date: Wed, 10 May 2023 11:25:41 -0600 Subject: [PATCH] interpreter: use os.listdir instead of os.scandir to avoid ResourceWarning --- mesonbuild/interpreter/interpreter.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/mesonbuild/interpreter/interpreter.py b/mesonbuild/interpreter/interpreter.py index dd2cabf2f..5e36eea48 100644 --- a/mesonbuild/interpreter/interpreter.py +++ b/mesonbuild/interpreter/interpreter.py @@ -103,6 +103,7 @@ import typing as T import textwrap import importlib import copy +import contextlib if T.TYPE_CHECKING: import argparse @@ -2513,7 +2514,7 @@ class Interpreter(InterpreterBase, HoldableObject): exclude = (set(kwargs['exclude_files']), set(kwargs['exclude_directories'])) srcdir = os.path.join(self.environment.source_dir, self.subdir, args[0]) - if not os.path.isdir(srcdir) or not any(os.scandir(srcdir)): + if not os.path.isdir(srcdir) or not any(os.listdir(srcdir)): FeatureNew.single_use('install_subdir with empty directory', '0.47.0', self.subproject, location=node) FeatureDeprecated.single_use('install_subdir with empty directory', '0.60.0', self.subproject, 'It worked by accident and is buggy. Use install_emptydir instead.', node)