From f7ab4ebb2cbff20b5f20c3547a3a4d1f69fe6cf9 Mon Sep 17 00:00:00 2001 From: "Miss Islington (bot)" <31488909+miss-islington@users.noreply.github.com> Date: Sun, 6 Apr 2025 11:28:22 +0200 Subject: [PATCH] [3.13] gh-132038: Make perf version check in test_perf_profiler more robust (GH-132039) (#132058) gh-132038: Make perf version check in test_perf_profiler more robust (GH-132039) Should work also if the version string includes a commit hash, like `perf version 6.12.9.g242e6068fd5c` (cherry picked from commit b6c92ec419cfa1e4483b072996bab403c9970a5d) Co-authored-by: Itamar Oren --- Lib/test/test_perf_profiler.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Lib/test/test_perf_profiler.py b/Lib/test/test_perf_profiler.py index 7c1bbeed168d..778d4db65b14 100644 --- a/Lib/test/test_perf_profiler.py +++ b/Lib/test/test_perf_profiler.py @@ -482,7 +482,8 @@ class TestPerfProfiler(unittest.TestCase, TestPerfProfilerMixin): def _is_perf_vesion_at_least(major, minor): # The output of perf --version looks like "perf version 6.7-3" but - # it can also be perf version "perf version 5.15.143" + # it can also be perf version "perf version 5.15.143", or even include + # a commit hash in the version string, like "6.12.9.g242e6068fd5c" try: output = subprocess.check_output(["perf", "--version"], text=True) except (subprocess.CalledProcessError, FileNotFoundError): @@ -490,7 +491,7 @@ def _is_perf_vesion_at_least(major, minor): version = output.split()[2] version = version.split("-")[0] version = version.split(".") - version = tuple(map(int, version)) + version = tuple(map(int, version[:2])) return version >= (major, minor) -- 2.47.3