mirror of
https://github.com/kennethreitz/responder.git
synced 2026-06-21 15:00:57 +00:00
6a28ff3f61
- resp.etag / resp.last_modified with automatic 304 Not Modified (RFC 7232: If-None-Match precedence, weak comparison, GET/HEAD only) - req.stream() iterates large request bodies without buffering - RateLimiter accepts pluggable backends; new RedisBackend shares budgets across processes (redis imported lazily, stays optional) - api.state application namespace; req.api now populated with the owning API instance (was always None) Fixes: - API(static_dir=None) crashed on every route registration; the static fallback check now only applies when no endpoint is given, and raises ValueError instead of a bare assert Performance: - Request headers parse into the case-insensitive dict lazily (~5% faster dispatch on header-heavy requests that don't read headers) Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
238 B
238 B
Backlog
Future Ideas
- OpenAPI: document path parameters from docstring operations' types when present
- First-class API client generation from the OpenAPI schema
- ETag auto-generation from response bodies (opt-in content hashing)