Skip to content

Commit 4129e5d

Browse files
committed
refactor(server): improve version link parsing
1 parent 7a74f56 commit 4129e5d

File tree

3 files changed

+27
-20
lines changed

3 files changed

+27
-20
lines changed

src/server/server_config.py

Lines changed: 16 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -42,14 +42,24 @@ def get_version_info() -> dict[str, str]:
4242
version = VERSION
4343
repo_url = REPOSITORY_URL.rstrip("/")
4444

45-
# Check if version looks like a tag (doesn't contain branch-commit pattern)
46-
if version != "unknown" and "-" in version and len(version.split("-")) >= MIN_BRANCH_COMMIT_PARTS:
47-
# This looks like branch-commit format (e.g., "main-abc1234")
45+
# Check if version contains PR number (e.g., "pr-123", "pull-456")
46+
if version != "unknown" and ("-" in version):
4847
parts = version.split("-")
4948
if len(parts) >= MIN_BRANCH_COMMIT_PARTS:
50-
# Take the last part as commit hash
51-
commit_hash = parts[-1]
52-
version_link = f"{repo_url}/commit/{commit_hash}"
49+
# Check if first part indicates a PR
50+
if parts[0].lower() in ("pr", "pull"):
51+
# Extract PR number from the second part
52+
try:
53+
pr_number = int(parts[1])
54+
version_link = f"{repo_url}/pull/{pr_number}"
55+
except (ValueError, IndexError):
56+
# If PR number is invalid, fallback to main branch
57+
version_link = f"{repo_url}/tree/main"
58+
else:
59+
# This looks like branch-commit format (e.g., "main-abc1234")
60+
# Take the last part as commit hash
61+
commit_hash = parts[-1]
62+
version_link = f"{repo_url}/commit/{commit_hash}"
5363
else:
5464
# Fallback to main branch
5565
version_link = f"{repo_url}/tree/main"

src/server/templates/components/footer.jinja

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -18,13 +18,5 @@
1818
'Discord') }}
1919
</div>
2020
</div>
21-
{# Version information row #}
22-
<div class="mt-2 text-center text-xs text-gray-600">
23-
<span>Version:</span>
24-
<a href="{{ version_link }}"
25-
target="_blank"
26-
rel="noopener noreferrer"
27-
class="text-blue-600 hover:text-blue-800 underline">{{ version }}</a>
28-
</div>
2921
</div>
3022
</footer>

src/server/templates/components/navbar.jinja

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,17 @@
33
<div class="flex justify-between items-center h-16">
44
{# Logo #}
55
<div class="flex items-center gap-4">
6-
<h1 class="text-2xl font-bold tracking-tight">
7-
<a href="/" class="hover:opacity-80 transition-opacity">
8-
<span class="text-gray-900">Git</span><span class="text-[#FE4A60]">ingest</span>
9-
</a>
10-
</h1>
6+
<div class="flex flex-col gap-px">
7+
<h1 class="text-2xl font-bold tracking-tight mb-0">
8+
<a href="/" class="hover:opacity-80 transition-opacity">
9+
<span class="text-gray-900">Git</span><span class="text-[#FE4A60]">ingest</span>
10+
</a>
11+
</h1>
12+
<a href="{{ version_link }}"
13+
target="_blank"
14+
rel="noopener noreferrer"
15+
class="text-blue-600 hover:text-blue-800 text-sm self-end no-underline">{{ version }}</a>
16+
</div>
1117
</div>
1218
{# Navigation with updated styling #}
1319
<nav class="flex items-center space-x-6">
@@ -36,5 +42,4 @@
3642
</div>
3743
</div>
3844
</header>
39-
{# Load GitHub stars script #}
4045
<script defer src="/static/js/navbar.js"></script>

0 commit comments

Comments
 (0)