chroma at render time, emitting CSS classes rather than inline colour, handed to a `code` theme fragment. Highlighting works with scripting off, in a feed reader, in a browser that never runs JavaScript. No lighter pure-Go option exists — every "alternative to chroma" is JavaScript, which the reference theme is gated against. A fence's info string carries the rest: title, numbers, start, hl=3,7-9, and file=name lines=A-B, which reads the snippet out of a file beside the bundle and numbers it by that file's own lines. So a post quotes several parts of one program without the copies drifting from it, and a reader can find what they are looking at. Verified on the real binary: the same file at lines 5-10 and 12-14, each numbered as it really is, with different lines tinted. Not a new package: a new one could not import the key=value parser this repo already has, because ADR-0069 forbids a feature importing its sibling, and a second parser for the same syntax is what §6 stops. Two costs, both stated in the ADR rather than buried. The binary goes from ~15MB to 19MB, for a project whose story is one small binary. And the reference theme now carries a token palette — the first thing in it that is a taste rather than a demonstration — kept to eight classes for that reason. The demo quotes a shell file, not a Go one: a .go file under examples/ joins the module and has to compile, which the build gate caught before it shipped. 6 of 9 modules, ext 2188/3500.
11 lines
739 B
Plaintext
11 lines
739 B
Plaintext
# Non-stdlib dependency allowlist. One module path per line; # starts a comment.
|
|
# Adding a line requires an ADR in docs/decisions.md. Stdlib first, always.
|
|
# Only direct requirements are checked here; the total module count is capped by DEPS_MAX.
|
|
# Infrastructure clients (Redis, S3, search) are dependencies like any other and get no exemption.
|
|
|
|
github.com/yuin/goldmark
|
|
golang.org/x/text # NFC normalisation (ADR-0015); collation later if earned
|
|
golang.org/x/image # CatmullRom resampling + WebP decode (ADR-0040); no stdlib resizer exists
|
|
gopkg.in/yaml.v3 # frontmatter + site declaration (ADR-0020)
|
|
github.com/alecthomas/chroma/v2 # server-side syntax highlighting (ADR-0075); the only mature pure-Go one
|