| Age | Commit message (Collapse) | Author | Lines |
|
|
|
|
|
|
|
|
|
|
|
Each config listed every header cgit sends, where only its own nosniff
and strict policy on raw bytes bear on the headers set there. The list
also missed Vary, and the Apache one called Apache a proxy.
|
|
Each global filter entry restated the arguments and the stdin and
stdout contract that "Filter API" gives in full. commit-filter and
email-filter now name their shipped filters, as the others do.
|
|
|
|
|
|
A snapshot's format comes from the suffix of its filename in the path,
not from the query string.
|
|
The nginx sub-path recipe moved only the stylesheet and the logo, and
left the script and the icon pointing at the domain root.
|
|
Only the footer carries the git version. The reason the versions stay
out by default is left to MANUAL, which already gives it.
|
|
cgit falls back to SCRIPT_NAME followed by a slash when virtual-root
is unset, so its links always take the path form and none take the
?url= form the docs described.
|
|
The quick start says to uncomment scan-path, and in its old place a
scanned repository missed every setting below it, among them the
filters, the snapshots and the enable flags.
|
|
|
|
|
|
|
|
|
|
A list at the end of the file is easy to miss when a target is added
or renamed.
|
|
Named like build-development.sh, so the two sort together in tools/.
|
|
cgit's objects are compiled by its own rule rather than git's, so they
took no -MJ flag and a compilation database held only git's sources.
|
|
gen-version.sh was only ever run by this one recipe, so tools/ now
holds just the scripts a person runs.
|
|
A blob header's hash and a commit's download names are single words
wider than a phone's content area, so the whole main area scrolled
sideways. The hash may now break anywhere, and below 640px a download
name may too, while wider screens keep each name on one line with its
signature.
|
|
cgit's log, blame and graph pages read commits from the commit-graph
when a repository has one, and its changed path filters let a walk
limited to one file skip the commits that never touched it. git gc
writes a graph only now and then and starts those filters only when a
write asks for them, so the hook writes a split layer with them after
each push.
|
|
The hook cleared every slot on a push to any repository. cgit writes the
request a slot answers at its head, so the hook now reads it back and
drops only the pushed repository's pages and the index. It finds the
repository's url from scan-path or hooks.cgiturl, and with neither it
clears everything as before.
|
|
Each names the branch it was written for and the release current at its
last review, nginx 1.30.6 stable, Apache httpd 2.4.69 and lighttpd
1.4.85, as the projects' own sites listed them on 2026-10-29.
|
|
|
|
DocBook, pod2man and hand written pages leaked roff onto the page: font
escapes inside no fill blocks, comments, layout escapes such as \% and
\c, the colours and half line moves around DocBook's links, and the
requests and macro definitions their preambles open with. Those now
draw nothing, the common named characters and strings render, .EX and
pod2man's .Vb read as code, a .TP tag takes a line of its own and the
alternating font macros switch fonts between their arguments. Anything
rarer still falls back to its text.
|
|
A line of equals signs or dashes under a paragraph now makes a heading
of it, as on GitHub, instead of running into its text, and any other
rule ends the paragraph. Four spaces or a tab start a code block, and an
escaped pipe stays in its table cell. A link opening with two slashes
or backslashes in any mix leads to another site, so it renders as text
like the plain scheme relative one already did.
|
|
cgit takes filter output through a C string sink that stops at the
first NUL, so a readme holding one lost everything after it. Each NUL
now shows as U+FFFD, as a browser would show it.
|
|
Messages such as Path not found sat 2em further in than every other
block on the page.
|
|
The commit page draws no diff for a merge of three or more parents, so
the options above it changed nothing.
|
|
Muted, faint, the footer and the month and year ages fell short of
4.5:1 on the backgrounds they sit on, the row stripes and line number
cells among them, and links inside sentences differed from the text
around them only by colour. Each grey is now the lightest that clears
4.5:1 on its darkest background, with months stepped between weeks and
years so the age fade keeps all six steps, and links in running text
are underlined.
|
|
enable-version-info brings back the cgit and git versions that 3a00e19
took off the footer and the generator tag, for a site that wants them,
and the version 2a6726a put on the signature of patches now follows it
too. It stays off by default for the reason 3a00e19 gave.
|
|
Summary, about, log, refs, tag and stats pages shared one title, so
tabs, history and search results could not tell them apart. Titles now
read page, repository and site, with root-title as the site, and the
description stays in the meta description, where search engines read
it.
|
|
A forced colours palette, such as a Windows high contrast theme, drops
author backgrounds, and those were the only marks on the active tab and
on the lines a URL names. The user's own Highlight colour takes their
place.
|
|
Both were empty, so a screen reader moving through the table announced
those columns with no name. An aria-label names them without adding
text to the page.
|
|
A plain script in the head held up parsing until it had downloaded and
run, though cgit.js only acts once the document is ready. Deferred
scripts still run in the order given and before DOMContentLoaded, so a
site script after cgit.js can still call window.cgit.
|
|
They were the only colours written into their rules, so a theme could
not change them the way the README says it can change the rest.
|
|
Font sizes mixed percentages with ems, several paddings and margins
spelt out four values where fewer said the same, the blob and blame
tables set their position in a rule of their own, and the odd rows
repeated the base row background.
|
|
Rules now run from the tokens and the base elements through the
controls, the page frame, the listings, the readme, the blob and blame
views, the commit page, the diff, the stats and the login form, to the
media queries. Each rule moved whole, and every page renders the same
in Chromium, WebKit and Firefox.
|
|
Its caption sat above the box, each select took its own width, and the
reload button hung indented under them. The caption is now the panel's
header strip, the selects and the button share one column at the width
of the widest select, and the labels lose their colons to match the
commit details.
|
|
|
|
WCAG 1.4.11 asks for 3:1 where the border is what shows a field is
there, and the search field has no other edge. The strong grey gives
5.7:1 on the light background and 3.2:1 on the dark one. Hover moves to
the text colour so that it still shows.
|
|
The stats grid, the binary blob table and the line above a blob kept
the black of the original stylesheet as the darkest grey, and the
readme used the lightest, while the diffstat and diff options sat in
between. Rules such as the tab bar and the header line keep the light
grey.
|
|
Links fell back to each browser's own ring, which differs in shape and
colour from one engine to the next, while selects and inputs drew the
link colour ring. The repository title clips its overflow, so it gets
3px of padding, given back by a negative margin, for its ring to show
whole.
|
|
The radius tokens stay, set to zero, since the README offers metrics to
a theme, so a site can still round them. Zero rather than no radius at
all, since WebKit's own stylesheet gives a select a radius of its own.
The chevron loses its round caps and joins to match.
|
|
The stripe rules come later at the same specificity and match every
row, so the logheader background never showed.
|
|
|
|
The five rules differed only in their colours, so a change to the shape
of a label had to be made five times over.
|