-
Commit Analysis
-
-
{{ commit_analysis.total_commits }}
-
Total Commits
-
-
-
{{ commit_analysis.unique_authors }}
-
Authors
-
-
-
{{ "%.1f"|format(commit_analysis.average_commits_per_day) }}
-
Avg/Day
-
-
- | Author | Commits |
- {% for author in commit_analysis.top_authors[:5] %}
- | {{ author.name }} | {{ author.commit_count }} |
- {% endfor %}
-
+
Commit Analysis
+
+
{{ commit_analysis.total_commits }}
+
Total Commits
- {% endif %}
-
- {% if velocity_analysis %}
-
-
Velocity Analysis
-
-
{{ "%.1f"|format(velocity_analysis.commits_per_day) }}
-
Commits/Day
-
-
-
{{ "%.1f"|format(velocity_analysis.commits_per_week) }}
-
Commits/Week
-
-
-
{{ velocity_analysis.velocity_trend|capitalize }}
-
Trend
-
-
- {% endif %}
-
- {% if code_churn_analysis %}
-
-
Code Churn
-
-
{{ code_churn_analysis.total_lines_added }}
-
Lines Added
-
-
-
{{ code_churn_analysis.total_lines_deleted }}
-
Lines Deleted
-
-
-
{{ code_churn_analysis.net_change }}
-
Net Change
-
-
- {% endif %}
-
- {% if risky_commit_analysis %}
-
-
Risky Commits
-
-
{{ risky_commit_analysis.total_risky_commits }}
-
Total Risky
-
-
-
{{ "%.1f"|format(risky_commit_analysis.risk_score) }}%
-
Risk Score
-
+
+
{{ commit_analysis.unique_authors }}
+
Authors
{% endif %}
@@ -122,11 +51,7 @@ class HTMLFormatter(BaseFormatter):
def format(data: Any) -> str:
"""Format data as HTML."""
template = Template(HTML_TEMPLATE)
-
return template.render(
timestamp=datetime.now().isoformat(),
commit_analysis=data.commit_analysis if hasattr(data, "commit_analysis") else None,
- velocity_analysis=data.velocity_analysis if hasattr(data, "velocity_analysis") else None,
- code_churn_analysis=data.code_churn_analysis if hasattr(data, "code_churn_analysis") else None,
- risky_commit_analysis=data.risky_commit_analysis if hasattr(data, "risky_commit_analysis") else None,
)