From f2de6dfd1041ef2e62b41d437da2d62af4a4d437 Mon Sep 17 00:00:00 2001 From: Eli Schwartz Date: Mon, 25 Dec 2023 02:42:55 -0500 Subject: mypy: fix broken logic checks that used "if func" It's always true because the func is always a real, truthy func object. In the cmake case, the logic seems to be broken because if a path is not a file, then that includes the case where it does not exist. It also clearly meant "or" instead of "and". What actually ended up happening was that this check never fired at all. Because "if not func and not ..." would always fail, because "not func" is always false. Maybe we don't need this logic at all... --- mesonbuild/cmake/traceparser.py | 2 +- mesonbuild/dependencies/boost.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/mesonbuild/cmake/traceparser.py b/mesonbuild/cmake/traceparser.py index 69e413182..bc18b51a5 100644 --- a/mesonbuild/cmake/traceparser.py +++ b/mesonbuild/cmake/traceparser.py @@ -165,7 +165,7 @@ class CMakeTraceParser: def parse(self, trace: T.Optional[str] = None) -> None: # First load the trace (if required) if not self.requires_stderr(): - if not self.trace_file_path.exists and not self.trace_file_path.is_file(): + if not self.trace_file_path.is_file(): raise CMakeException(f'CMake: Trace file "{self.trace_file_path!s}" not found') trace = self.trace_file_path.read_text(errors='ignore', encoding='utf-8') if not trace: diff --git a/mesonbuild/dependencies/boost.py b/mesonbuild/dependencies/boost.py index 87f8db920..19d492977 100644 --- a/mesonbuild/dependencies/boost.py +++ b/mesonbuild/dependencies/boost.py @@ -261,7 +261,7 @@ class BoostLibraryFile(): update_vers(i[2:]) elif i.isdigit(): update_vers(i) - elif len(i) >= 3 and i[0].isdigit and i[2].isdigit() and i[1] == '.': + elif len(i) >= 3 and i[0].isdigit() and i[2].isdigit() and i[1] == '.': update_vers(i) else: other_tags += [i] -- cgit v1.2.3