https://github.com/python/cpython/commit/09d6bf20b67f4d3001afac9d20886a6e9cbcc94f
commit: 09d6bf20b67f4d3001afac9d20886a6e9cbcc94f
branch: main
author: Stan Ulbrych <[email protected]>
committer: pablogsal <[email protected]>
date: 2025-12-09T17:45:52Z
summary:
Tachyon: Fix unesecarry plural when there is a single file/sample (#142478)
files:
M Lib/profiling/sampling/heatmap_collector.py
diff --git a/Lib/profiling/sampling/heatmap_collector.py
b/Lib/profiling/sampling/heatmap_collector.py
index e1454f0663a439..f705fbe3a32eb9 100644
--- a/Lib/profiling/sampling/heatmap_collector.py
+++ b/Lib/profiling/sampling/heatmap_collector.py
@@ -335,12 +335,14 @@ def render_hierarchical_html(self, trees: Dict[str,
TreeNode]) -> str:
icon = '▶' if is_collapsed else '▼'
content_style = ' style="display: none;"' if is_collapsed else ''
+ file_word = "file" if tree.count == 1 else "files"
+ sample_word = "sample" if tree.samples == 1 else "samples"
section_html = f'''
<div class="type-section">
<div class="type-header" onclick="toggleTypeSection(this)">
<span class="type-icon">{icon}</span>
<span class="type-title">{type_names[module_type]}</span>
- <span class="type-stats">({tree.count} files, {tree.samples:,}
samples)</span>
+ <span class="type-stats">({tree.count} {file_word}, {tree.samples:,}
{sample_word})</span>
</div>
<div class="type-content"{content_style}>
'''
@@ -380,11 +382,14 @@ def _render_folder(self, node: TreeNode, name: str,
level: int = 1) -> str:
parts = []
# Render folder header (collapsed by default)
+ file_word = "file" if node.count == 1 else "files"
+ sample_word = "sample" if node.samples == 1 else "samples"
parts.append(f'{indent}<div class="folder-node collapsed"
data-level="{level}">')
parts.append(f'{indent} <div class="folder-header"
onclick="toggleFolder(this)">')
parts.append(f'{indent} <span class="folder-icon">▶</span>')
parts.append(f'{indent} <span class="folder-name">📁
{html.escape(name)}</span>')
- parts.append(f'{indent} <span class="folder-stats">({node.count}
files, {node.samples:,} samples)</span>')
+ parts.append(f'{indent} <span class="folder-stats">'
+ f'({node.count} {file_word}, {node.samples:,}
{sample_word})</span>')
parts.append(f'{indent} </div>')
parts.append(f'{indent} <div class="folder-content" style="display:
none;">')
_______________________________________________
Python-checkins mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3//lists/python-checkins.python.org
Member address: [email protected]