commits on main

2026-11-12

5f7aba42 dawn readme: trim prose, list flags, and add a nixos services.knot-static example

readme: trim prose, list flags, and add a nixos services.knot-static example

open commit browse files

2026-11-10

f5e3841f dawn count the responses kit inlines past 32 KB, and name each repo's biggest, so a page that carries a whole payload shows in the summary

count the responses kit inlines past 32 KB, and name each repo's biggest, so a page that carries a whole payload shows in the summary

Signed-off-by: dawn <90008@klbr.net>

open commit browse files
9a345ced dawn a repo's state names each link once, so a big folder's pages don't make it tens of MB to write and read back

a repo's state names each link once, so a big folder's pages don't make it tens of MB to write and read back

Signed-off-by: dawn <90008@klbr.net>

open commit browse files
0417102e dawn read the worker's peak rss in KiB on every platform, as bun 1.4 reports it on macos too

read the worker's peak rss in KiB on every platform, as bun 1.4 reports it on macos too

Signed-off-by: dawn <90008@klbr.net>

open commit browse files
b7450e75 dawn log each repo's worker rss and peak, and how many workers a render started, so recycles show in the summary

log each repo's worker rss and peak, and how many workers a render started, so recycles show in the summary

Signed-off-by: dawn <90008@klbr.net>

open commit browse files
8ca0a8ea dawn run under bun, which renders the same pages in a third less memory

run under bun, which renders the same pages in a third less memory

Signed-off-by: dawn <90008@klbr.net>

open commit browse files
01ccffa3 dawn replace a bun worker past 360 MB as meant, not past node's 650

replace a bun worker past 360 MB as meant, not past node's 650

Signed-off-by: dawn <90008@klbr.net>

open commit browse files
cd1ad604 dawn a page that outranks kept ones takes their room, so a re-render that grows never drops a repo's front page, and every repo renders again once to get one back

a page that outranks kept ones takes their room, so a re-render that grows never drops a repo's front page, and every repo renders again once to get one back

Signed-off-by: dawn <90008@klbr.net>

open commit browse files
4e5d7557 dawn render the owners' user pages before the repos

render the owners' user pages before the repos

Signed-off-by: dawn <90008@klbr.net>

open commit browse files
70738d23 dawn keep the client chunks of every build a served page was rendered by, so a deploy never breaks a page before its re-render

keep the client chunks of every build a served page was rendered by, so a deploy never breaks a page before its re-render

Signed-off-by: dawn <90008@klbr.net>

open commit browse files
1e8fbec9 dawn save each repo's and owner's render as it finishes, so a superseded or killed run's work counts for the next

save each repo's and owner's render as it finishes, so a superseded or killed run's work counts for the next

Signed-off-by: dawn <90008@klbr.net>

open commit browse files
ef67c298 dawn render each repo owner's user page, again when its profile, handle or repo list changes

render each repo owner's user page, again when its profile, handle or repo list changes

Signed-off-by: dawn <90008@klbr.net>

open commit browse files

2026-11-09

1384bcfe dawn match a diff line to a read by the params the knot marks any, instead of guessing from a subset of them

match a diff line to a read by the params the knot marks any, instead of guessing from a subset of them

Signed-off-by: dawn <90008@klbr.net>

open commit browse files
3b2d5816 dawn publish a repo's open ticket counts apart from its pages, so a new ticket rewrites one file and no page

publish a repo's open ticket counts apart from its pages, so a new ticket rewrites one file and no page

Signed-off-by: dawn <90008@klbr.net>

open commit browse files
24cccda4 dawn revalidate pages and the app shell on every load, so a reader sees a new render at once

revalidate pages and the app shell on every load, so a reader sees a new render at once

Signed-off-by: dawn <90008@klbr.net>

open commit browse files
d8752ca2 dawn publish the routes a repo has pages for, so the spa loads only those as documents

publish the routes a repo has pages for, so the spa loads only those as documents

Signed-off-by: dawn <90008@klbr.net>

open commit browse files
05c81fac dawn keep a failed repo's pages and render it whole next run, while the other repos finish

keep a failed repo's pages and render it whole next run, while the other repos finish

Signed-off-by: dawn <90008@klbr.net>

open commit browse files
d1be6399 dawn set the worker heap cap with --worker-heap-mb

set the worker heap cap with --worker-heap-mb

Signed-off-by: dawn <90008@klbr.net>

open commit browse files
e2e9f8fc dawn report each repo's peak worker heap in the status

report each repo's peak worker heap in the status

Signed-off-by: dawn <90008@klbr.net>

open commit browse files
aea88a2b dawn keep one copy per repo of the routes and read keys its pages share, so a folder of generated files fits a worker's heap

keep one copy per repo of the routes and read keys its pages share, so a folder of generated files fits a worker's heap

Signed-off-by: dawn <90008@klbr.net>

open commit browse files
80b53268 dawn keep each ref's newest sidebar under a stable name for pages left to the spa

keep each ref's newest sidebar under a stable name for pages left to the spa

Signed-off-by: dawn <90008@klbr.net>

open commit browse files
378c1b86 dawn render a repo's tickets board when a pull comes from a fork on another knot

render a repo's tickets board when a pull comes from a fork on another knot

Signed-off-by: dawn <90008@klbr.net>

open commit browse files
23629333 dawn render a ticket page again when its comments, patches or labels change

render a ticket page again when its comments, patches or labels change

Signed-off-by: dawn <90008@klbr.net>

open commit browse files
e4e163b3 dawn build svfe-pages with nix, a flake whose svfe-pages runs pages.mjs on nixpkgs' node

build svfe-pages with nix, a flake whose svfe-pages runs pages.mjs on nixpkgs' node

open commit browse files
86bb3b20 dawn leave a page to the client when a path component is too long for a file name

leave a page to the client when a path component is too long for a file name

Signed-off-by: dawn <90008@klbr.net>

open commit browse files
93274b73 dawn serve a list's ?page=N from its own page, or the spa when it wasn't rendered

serve a list's ?page=N from its own page, or the spa when it wasn't rendered

Signed-off-by: dawn <90008@klbr.net>

open commit browse files
da8c9d00 dawn render the later pages of the commit log, branches and tags, after everything else

render the later pages of the commit log, branches and tags, after everything else

Signed-off-by: dawn <90008@klbr.net>

open commit browse files
8acb6afc dawn check an incremental render against a fresh one with shared names masked

check an incremental render against a fresh one with shared names masked

Signed-off-by: dawn <90008@klbr.net>

open commit browse files
518309b1 dawn store the sidebar every page of a repo shows once per content, outside the pages' reads

store the sidebar every page of a repo shows once per content, outside the pages' reads

Signed-off-by: dawn <90008@klbr.net>

open commit browse files
ffbedd59 dawn fork worker processes under bun when the coordinator runs on bun

fork worker processes under bun when the coordinator runs on bun

Signed-off-by: dawn <90008@klbr.net>

open commit browse files
b164d673 dawn compress static pages at gzip level 6

compress static pages at gzip level 6

Signed-off-by: dawn <90008@klbr.net>

open commit browse files
4e3168c9 dawn scan only the fetched script tail in canonicalHtml and deduplicate hrefs in linksOf

scan only the fetched script tail in canonicalHtml and deduplicate hrefs in linksOf

Signed-off-by: dawn <90008@klbr.net>

open commit browse files
2db8898b dawn reuse worker processes across repos and recycle them at rss or repo limits

reuse worker processes across repos and recycle them at rss or repo limits

Signed-off-by: dawn <90008@klbr.net>

open commit browse files
8f69f1d8 dawn keep a skipped repo's store generation in state and index unchanged repos in knot.json

keep a skipped repo's store generation in state and index unchanged repos in knot.json

Signed-off-by: dawn <90008@klbr.net>

open commit browse files
c4819b1b dawn cache xrpc reads within a repo in a bounded lru

cache xrpc reads within a repo in a bounded lru

Signed-off-by: dawn <90008@klbr.net>

open commit browse files
7d65785f dawn stop rendering a batch once the repo's byte budget is full

stop rendering a batch once the repo's byte budget is full

Signed-off-by: dawn <90008@klbr.net>

open commit browse files
f9a85bac dawn write finished pages in rank order as they complete and cap worker heap size

write finished pages in rank order as they complete and cap worker heap size

Signed-off-by: dawn <90008@klbr.net>

open commit browse files
3917f941 dawn skip commit pages outside the commit budget before rendering them

skip commit pages outside the commit budget before rendering them

Signed-off-by: dawn <90008@klbr.net>

open commit browse files
edafa53e dawn render svfe repo pages for knot-static generations

render svfe repo pages for knot-static generations

Signed-off-by: dawn <90008@klbr.net>

open commit browse files

full history: git clone https://git.klbr.net/ptr.pet/svfe-pages