AgeCommit message (Collapse)AuthorLines
Share the max-blob-size check and its refusalBryce Kwon-0/+5
Five copies of the test and four of the error page had to agree by hand. The new check pins the four refusals, which no test covered.
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
Reorganise into source, assets and librariesBryce Kwon-0/+0
Everything the build generates now lands in build/, so a clean is a single remove and the source tree stays free of build output.