AgeCommit message (Collapse)AuthorLines
Add stable markup hooks for site themesBryce Kwon-19/+22
Harden the page renderersBryce Kwon-26/+71
Apply the mailmap at HEAD to every identBryce Kwon-0/+2
Clean up the whole treeBryce Kwon-76/+49
Trim the comments and dead code across the treeBryce Kwon-10/+8
Use standard HTTP reason phrasesBryce Kwon-1/+1
Replace non-ASCII output glyphs with ASCIIBryce Kwon-6/+5
Log scan lock failures that are not contentionBryce Kwon-1/+1
Tidy the structure of the generated markupBryce Kwon-1/+1
Omit the pager on a single log pageBryce Kwon-3/+7
Give the stub and tag rows their full widthBryce Kwon-3/+7
Let the listings wrap and the diff tables scrollBryce Kwon-1/+1
Restyle the sources and fix the audit's findingsBryce Kwon-233/+274
Settle the names, types and layout of the sourcesBryce Kwon-4/+4
Declutter the interface on small screensBryce Kwon-6/+6
Point the fork's links and credits at itselfBryce Kwon-1/+1
AUTHORS now records the upstream developers as the project's history rather than as maintainers of the fork.
Reject option-like revisions in the log walkBryce Kwon-0/+12
The log page passed the `id` query parameter to git's revision parser without resolving it and ahead of the end-of-options marker. A value like `id=--output=/path` was then parsed as an option, so an unauthenticated request could create or truncate any file the server user could write. No valid ref or object name begins with a dash.
Cast signed chars before ctype callsBryce Kwon-2/+2
A plain char is undefined in the ctype functions for negative values, which a high byte produces wherever char is signed.
Reorganize into source, assets and librariesBryce Kwon-0/+553
The C sources move to source/, the served files to assets/, the bundled Git submodule to libraries/git and the filter scripts to extensions/. Everything the build generates now lands in build/, so a clean is a single remove and the tree stays clean.