feat: std.http read buffers grow on demand toward read_buf_cap

read_buf_cap is now the per-request LIMIT, not a preallocation: slots
start at 16K, double when full (one-step sizing when a Content-Length
declares the body), and keep their grown capacity for slot reuse. At
the limit the refusal distinguishes oversized headers (431) from an
oversized body (413). Unblocks A1: distd accepts multi-hundred-MB
artifact uploads — preallocating that per slot was never an option.
examples/1633 adds a body past the initial capacity echoing intact.
This commit is contained in:
agra
2026-06-12 21:29:13 +03:00
parent 3a97019aa7
commit 8641441fad
40 changed files with 13450 additions and 13109 deletions

View File

@@ -3,5 +3,6 @@ keep-alive reuse ok
request cap: close + EOF
POST echo ok
404 routing ok
big body grows the buffer and echoes intact
slow client evicted, healthy client served
http server ok