fix: resolve CI linting errors
This commit is contained in:
@@ -63,7 +63,7 @@ class OutputFormatter:
|
|||||||
if analysis.all_suggestions:
|
if analysis.all_suggestions:
|
||||||
output_parts.append(self._format_suggestions(analysis.all_suggestions))
|
output_parts.append(self._format_suggestions(analysis.all_suggestions))
|
||||||
|
|
||||||
return '\n'.join(output_parts)
|
return '\\n'.join(output_parts)
|
||||||
|
|
||||||
def _format_summary(self, analysis: DiffAnalysis) -> str:
|
def _format_summary(self, analysis: DiffAnalysis) -> str:
|
||||||
"""Format the summary section."""
|
"""Format the summary section."""
|
||||||
@@ -76,19 +76,19 @@ class OutputFormatter:
|
|||||||
lines.append(f"[info]Total changes:[/info] {analysis.total_changes}")
|
lines.append(f"[info]Total changes:[/info] {analysis.total_changes}")
|
||||||
|
|
||||||
if analysis.language_breakdown:
|
if analysis.language_breakdown:
|
||||||
lines.append("\n[bold blue]Languages:[/bold blue]")
|
lines.append("\\n[bold blue]Languages:[/bold blue]")
|
||||||
for lang, count in sorted(analysis.language_breakdown.items()):
|
for lang, count in sorted(analysis.language_breakdown.items()):
|
||||||
lines.append(f" - {lang}: {count}")
|
lines.append(f" - {lang}: {count}")
|
||||||
|
|
||||||
return '\n'.join(lines)
|
return '\\n'.join(lines)
|
||||||
|
|
||||||
def _format_files(self, analysis: DiffAnalysis) -> str:
|
def _format_files(self, analysis: DiffAnalysis) -> str:
|
||||||
"""Format file changes section."""
|
"""Format file changes section."""
|
||||||
lines = []
|
lines = []
|
||||||
lines.append("\n[bold blue]=== File Changes ===[/bold blue]")
|
lines.append("\\n[bold blue]=== File Changes ===[/bold blue]")
|
||||||
|
|
||||||
for i, file_obj in enumerate(analysis.files, 1):
|
for i, file_obj in enumerate(analysis.files, 1):
|
||||||
lines.append(f"\n[filename]{i}. {file_obj.filename}[/filename]")
|
lines.append(f"\\n[filename]{i}. {file_obj.filename}[/filename]")
|
||||||
|
|
||||||
change_emoji = {
|
change_emoji = {
|
||||||
"add": "[added]✚[/added]",
|
"add": "[added]✚[/added]",
|
||||||
@@ -107,10 +107,11 @@ class OutputFormatter:
|
|||||||
lines.append(f" Changes: {total_changes} lines")
|
lines.append(f" Changes: {total_changes} lines")
|
||||||
|
|
||||||
for j, hunk in enumerate(file_obj.hunks, 1):
|
for j, hunk in enumerate(file_obj.hunks, 1):
|
||||||
lines.append(f" Hunk {j} (lines {hunk.old_start}-{hunk.old_start + hunk.old_lines}):")
|
hunk_range = f"{hunk.old_start}-{hunk.old_start + hunk.old_lines}"
|
||||||
|
lines.append(f" Hunk {j} (lines {hunk_range}):")
|
||||||
lines.append(self._format_hunk(hunk))
|
lines.append(self._format_hunk(hunk))
|
||||||
|
|
||||||
return '\n'.join(lines)
|
return '\\n'.join(lines)
|
||||||
|
|
||||||
def _format_hunk(self, hunk) -> str:
|
def _format_hunk(self, hunk) -> str:
|
||||||
"""Format a single hunk with color-coded changes."""
|
"""Format a single hunk with color-coded changes."""
|
||||||
@@ -126,20 +127,22 @@ class OutputFormatter:
|
|||||||
lines.append(f" [info]{line}[/info]")
|
lines.append(f" [info]{line}[/info]")
|
||||||
else:
|
else:
|
||||||
lines.append(f" {line}")
|
lines.append(f" {line}")
|
||||||
return '\n'.join(lines)
|
return '\\n'.join(lines)
|
||||||
|
|
||||||
def _format_issues(self, issues: list[dict]) -> str:
|
def _format_issues(self, issues: list[dict]) -> str:
|
||||||
"""Format issues section."""
|
"""Format issues section."""
|
||||||
lines = []
|
lines = []
|
||||||
lines.append("\n[bold blue]=== Detected Issues ===[/bold blue]")
|
lines.append("\\n[bold blue]=== Detected Issues ===[/bold blue]")
|
||||||
|
|
||||||
severity_priority = {'critical': 0, 'high': 1, 'medium': 2, 'low': 3}
|
severity_priority = {'critical': 0, 'high': 1, 'medium': 2, 'low': 3}
|
||||||
sorted_issues = sorted(issues, key=lambda x: severity_priority.get(x.get('severity', ''), 4))
|
sorted_issues = sorted(
|
||||||
|
issues, key=lambda x: severity_priority.get(x.get('severity', ''), 4)
|
||||||
|
)
|
||||||
|
|
||||||
for issue in sorted_issues:
|
for issue in sorted_issues:
|
||||||
severity = issue.get('severity', 'info').lower()
|
severity = issue.get('severity', 'info').lower()
|
||||||
color = getattr(SeverityColors, severity.upper(), 'info')
|
color = getattr(SeverityColors, severity.upper(), 'info')
|
||||||
lines.append(f"\n[{color}]✖ {issue.get('title', 'Issue')}[/[{color}]]")
|
lines.append(f"\\n[{color}]✖ {issue.get('title', 'Issue')}[/[{color}]]")
|
||||||
lines.append(f" Severity: [{color}]{severity.upper()}[/[{color}]]")
|
lines.append(f" Severity: [{color}]{severity.upper()}[/[{color}]]")
|
||||||
lines.append(f" Description: {issue.get('description', '')}")
|
lines.append(f" Description: {issue.get('description', '')}")
|
||||||
if issue.get('line'):
|
if issue.get('line'):
|
||||||
@@ -147,17 +150,17 @@ class OutputFormatter:
|
|||||||
if issue.get('suggestion'):
|
if issue.get('suggestion'):
|
||||||
lines.append(f" Suggestion: {issue['suggestion']}")
|
lines.append(f" Suggestion: {issue['suggestion']}")
|
||||||
|
|
||||||
return '\n'.join(lines)
|
return '\\n'.join(lines)
|
||||||
|
|
||||||
def _format_suggestions(self, suggestions: list[str]) -> str:
|
def _format_suggestions(self, suggestions: list[str]) -> str:
|
||||||
"""Format suggestions section."""
|
"""Format suggestions section."""
|
||||||
lines = []
|
lines = []
|
||||||
lines.append("\n[bold blue]=== Suggestions ===[/bold blue]")
|
lines.append("\\n[bold blue]=== Suggestions ===[/bold blue]")
|
||||||
|
|
||||||
for i, suggestion in enumerate(suggestions, 1):
|
for i, suggestion in enumerate(suggestions, 1):
|
||||||
lines.append(f"\n[info]{i}. {suggestion}[/info]")
|
lines.append(f"\\n[info]{i}. {suggestion}[/info]")
|
||||||
|
|
||||||
return '\n'.join(lines)
|
return '\\n'.join(lines)
|
||||||
|
|
||||||
def _format_json(self, analysis: DiffAnalysis) -> str:
|
def _format_json(self, analysis: DiffAnalysis) -> str:
|
||||||
"""Format as JSON."""
|
"""Format as JSON."""
|
||||||
@@ -217,14 +220,14 @@ class OutputFormatter:
|
|||||||
lines.append(f"Total changes: {analysis.total_changes}")
|
lines.append(f"Total changes: {analysis.total_changes}")
|
||||||
|
|
||||||
if analysis.language_breakdown:
|
if analysis.language_breakdown:
|
||||||
lines.append("\nLanguages:")
|
lines.append("\\nLanguages:")
|
||||||
for lang, count in sorted(analysis.language_breakdown.items()):
|
for lang, count in sorted(analysis.language_breakdown.items()):
|
||||||
lines.append(f" - {lang}: {count}")
|
lines.append(f" - {lang}: {count}")
|
||||||
|
|
||||||
lines.append("\n=== File Changes ===")
|
lines.append("\\n=== File Changes ===")
|
||||||
|
|
||||||
for i, file_obj in enumerate(analysis.files, 1):
|
for i, file_obj in enumerate(analysis.files, 1):
|
||||||
lines.append(f"\n{i}. {file_obj.filename}")
|
lines.append(f"\\n{i}. {file_obj.filename}")
|
||||||
lines.append(f" Status: {file_obj.change_type}")
|
lines.append(f" Status: {file_obj.change_type}")
|
||||||
|
|
||||||
if file_obj.is_rename:
|
if file_obj.is_rename:
|
||||||
@@ -238,18 +241,18 @@ class OutputFormatter:
|
|||||||
lines.append(f" {line}")
|
lines.append(f" {line}")
|
||||||
|
|
||||||
if analysis.all_issues:
|
if analysis.all_issues:
|
||||||
lines.append("\n=== Detected Issues ===")
|
lines.append("\\n=== Detected Issues ===")
|
||||||
for issue in analysis.all_issues:
|
for issue in analysis.all_issues:
|
||||||
lines.append(f"- {issue.get('title', 'Issue')}")
|
lines.append(f"- {issue.get('title', 'Issue')}")
|
||||||
lines.append(f" Severity: {issue.get('severity', 'unknown')}")
|
lines.append(f" Severity: {issue.get('severity', 'unknown')}")
|
||||||
lines.append(f" Description: {issue.get('description', '')}")
|
lines.append(f" Description: {issue.get('description', '')}")
|
||||||
|
|
||||||
if analysis.all_suggestions:
|
if analysis.all_suggestions:
|
||||||
lines.append("\n=== Suggestions ===")
|
lines.append("\\n=== Suggestions ===")
|
||||||
for i, suggestion in enumerate(analysis.all_suggestions, 1):
|
for i, suggestion in enumerate(analysis.all_suggestions, 1):
|
||||||
lines.append(f"{i}. {suggestion}")
|
lines.append(f"{i}. {suggestion}")
|
||||||
|
|
||||||
return '\n'.join(lines)
|
return '\\n'.join(lines)
|
||||||
|
|
||||||
def print(self, content: str) -> None:
|
def print(self, content: str) -> None:
|
||||||
"""Print content to console."""
|
"""Print content to console."""
|
||||||
|
|||||||
Reference in New Issue
Block a user