Benoit Chesneau b3b98b1322 perf(asgi): optimize HTTP parser for improved performance
- Read chunk size lines and trailers in 64-byte blocks instead of 1 byte
  at a time, pushing back excess data to the unreader buffer
- Reuse BytesIO buffers with truncate/seek instead of creating new
  objects to reduce GC pressure in AsyncUnreader
- Use bytearray.find() directly instead of converting to bytes first
  in header parsing loop
- Use index-based iteration for header parsing instead of list.pop(0)
  which is O(n) per pop vs O(1) for index access

Add tests for the optimized parsing code paths.
2026-02-18 10:00:46 +01:00
..
2026-02-06 08:21:18 +01:00

Generate Documentation

Requirements

Install the documentation dependencies with:

pip install -r requirements_dev.txt

This provides MkDocs with the Material theme and supporting plugins.

Build static HTML

mkdocs build

The rendered site is emitted into the site/ directory.

Preview locally

mkdocs serve

This serves the documentation at http://127.0.0.1:8000/ with live reload.