Repository navigation
Conversation
The site footer hid the version span next to "Powered by Gitea" (FG2-028). With one package for two Gitea majors the running version matters, so it is shown again; Gitea's [other] SHOW_FOOTER_VERSION still controls it and admins get the link to the site configuration. Only the page / template timing span (the one with <strong>) stays hidden. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Gitea dropped the "1." prefix: 28.0.0 (2026-09-29), 28.1.0 (2026-10-06).
v0.1.2's templates break on 28: repo/view_list.tmpl and repo/view_file.tmpl
call methods 28 removed (GetSubJumpablePathName without args,
Repository.CanEnableEditor) and the pages fail mid-render.
Templates: where 1.27.3 and 28.1.0 differ, a template starts with
`{{$gitea1 := StringUtils.HasPrefix AppVer "1."}}` and branches only there,
so non-github themes keep each version's upstream bytes (anonymous HTML of
every route with vs. without the templates differs only by the hidden
"N Commits" link). base/head_navbar.tmpl carries both upstream navbars;
custom/gh_head_navbar.tmpl gains 28's impersonation banner, the always
rendered stopwatch popup and the quick repo switcher on the repo crumb.
base/head_impersonate_banner.tmpl (28.1.0 verbatim) ships because
html/template rejects a reference to an undefined template even in a
branch that never runs.
CSS for 28's changed markup, next to the 1.27 selectors: profile sidebar
(segment + flex-divided-list), commit header and its "N files changed"
row, .site-banner-*, .dropzone without .ui, diff kebab, feed excerpt,
release header, notifications toolbar, Actions sidebar (second
"Management" menu: one sticky pane instead of two sticky menus), deploy
key/token panels, wiki `view` class (kept by the template).
28-only UI in Primer style: toasts per level, flash-full site and
impersonation banners, repo switcher (AppHeader crumb, SelectPanel),
job queue (Actions PageLayout, DataTable), artifact preview file tree,
diff file filter + extension menu, audit log filter row and table,
deploy tokens, "Mark this page as read", Audit Log nav icon.
Budget: 300 → 340 KB per file (gate 335); auto is 304 KB.
Package: gitea-theme-github-<v>-gitea1.27-28.
Checked on 1.27.3 and 28.1.0: 420 renders (105 routes, signed in and
anonymous), no template errors; light, dark, 390px; 1.27 pixel-diffed
against a pre-change capture of 99 routes (only live data differs);
334k-element diff: ~24 ms per class change on both.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
Gitea dropped the "1." prefix: 28.0.0 (2026-09-29) and 28.1.0 (2026-10-06). v0.1.2 does not work on 28:
repo/view_list.tmplcalls$entry.GetSubJumpablePathName(28: takes arguments,call $.GetSubJumpablePathName $entry) andrepo/view_file.tmplcalls.Repository.CanEnableEditor(28:CanContentChange). The repository home and every file page fail mid-render (HTTP 200, truncated page).repo/wiki/view.tmpluses$.CloneButtonShowHTTPS(removed); the navbar overrides miss 28's impersonation banner and the always-rendered stopwatch popup..web-banner-*→.site-banner-*,.ui.dropzone→.dropzone, release header, notifications toolbar, Actions sidebar, deploy keys) and adds UI the theme had never seen (toasts per level, repo switcher, job queue, artifact preview, diff file filter, audit log, deploy tokens).Fix
One package for both majors (
gitea-theme-github-0.2.0-gitea1.27-28):{{$gitea1 := StringUtils.HasPrefix AppVer "1."}}and branches only there. Non-github themes keep each version's upstream bytes;base/head_navbar.tmplcarries both upstream navbars.base/head_impersonate_banner.tmpl(28.1.0 verbatim) ships because html/template rejects a reference to an undefined template even in a branch that never runs (verified on 1.27.3).28 styled to Primer, 1.27 unchanged, with each version's own functions kept:
viewclass.Footer shows the Gitea version again (
[other] SHOW_FOOTER_VERSIONstill controls it); only the timing span stays hidden.Budget 300 → 340 KB per file (gate 335 KB);
theme-github-auto.cssis 304 KB.Checks
npm run lintpasses (PERF-2 / PERF-3 included);build.mjs --strictpasses; page-scope 0 leaks.diff-line-truncatedlabel (lines over 5000 characters) and a bot account's label. Both are plain Primer Labels.Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com