]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
gh-142927: Tachyon: Fix singular and plurals (#145329)
authorHugo van Kemenade <1324225+hugovk@users.noreply.github.com>
Sat, 28 Feb 2026 01:48:35 +0000 (03:48 +0200)
committerGitHub <noreply@github.com>
Sat, 28 Feb 2026 01:48:35 +0000 (01:48 +0000)
Lib/profiling/sampling/sample.py
Lib/profiling/sampling/stack_collector.py

index c6abfb1c8ee8858f6e31023d2392b945f6dc70fa..6a76bbeeb24ee3f001775c4f81100f7e89430e55 100644 (file)
@@ -164,7 +164,8 @@ class SampleProfiler:
         # Don't print stats for live mode (curses is handling display)
         is_live_mode = LiveStatsCollector is not None and isinstance(collector, LiveStatsCollector)
         if not is_live_mode:
-            print(f"Captured {num_samples:n} samples in {fmt(running_time_sec, 2)} seconds")
+            s = "" if num_samples == 1 else "s"
+            print(f"Captured {num_samples:n} sample{s} in {fmt(running_time_sec, 2)} seconds")
             print(f"Sample rate: {fmt(sample_rate, 2)} samples/sec")
             print(f"Error rate: {fmt(error_rate, 2)}")
 
index 4e213cfe41ca24ffb98ebf6fa41a6f253c3c55b9..5a3497a5408414361bf60035f49add17dc49a8ef 100644 (file)
@@ -144,9 +144,13 @@ class FlamegraphCollector(StackTraceCollector):
         num_functions = len(flamegraph_data.get("children", []))
         total_time = flamegraph_data.get("value", 0)
         string_count = len(self._string_table)
+        s1 = "" if num_functions == 1 else "s"
+        s2 = "" if total_time == 1 else "s"
+        s3 = "" if string_count == 1 else "s"
         print(
-            f"Flamegraph data: {num_functions} root functions, total samples: {total_time}, "
-            f"{string_count} unique strings"
+            f"Flamegraph data: {num_functions} root function{s1}, "
+            f"{total_time} total sample{s2}, "
+            f"{string_count} unique string{s3}"
         )
 
         if num_functions == 0: