AgeCommit message (Collapse)AuthorLines
Keep the query string across the about redirectsBryce Kwon-2/+8
The hop to the trailing-slash form of the about page, and the hop back to the summary of a repository without a readme, were built from the path alone, so a request for the about page of another branch landed on the default one. The query goes into the Location line as the client sent it, with any byte a header cannot carry percent-encoded.
Harden the page renderersBryce Kwon-7/+17
Name the tagged object under its full idBryce Kwon-1/+2
Clean up the whole treeBryce Kwon-50/+31
Point clone rows at a url a browser can followBryce Kwon-0/+1
Restyle the sources and fix the audit's findingsBryce Kwon-14/+50
Settle the names, types and layout of the sourcesBryce Kwon-1/+1
Reorganize into source, assets and librariesBryce Kwon-0/+88
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.