Files
responder/tests
kennethreitz 9735659d4b v5.1: finish v5's typed/OpenAPI story + add expected ergonomics
Correctness fixes:
- Type-driven OpenAPI now hoists nested-model $defs into top-level
  components and rewrites $ref, so nested models resolve (Swagger/ReDoc/
  codegen). Output is also down-converted to the declared dialect: under
  3.0.x, Optional fields become `nullable` and `examples` is singularized.
- Query/Header/Cookie/Path markers now enforce their constraints
  (min_length/gt/... via Annotated+Field) and 422 on violation; a typo'd
  kwarg raises TypeError instead of silently making the param required;
  description/deprecated now reach the spec.
- enable_hsts now sends a real Strict-Transport-Security header (new
  responder.middleware.HSTSMiddleware), not just the HTTP->HTTPS redirect;
  docstrings and tour.rst corrected.

Additive ergonomics:
- HTTP verb decorators (@api.get/post/put/patch/delete) + @api.websocket_route,
  on API and route groups; same-path routes allowed when methods are disjoint.
- resp.delete_cookie() and resp.vary(); opt-in API(auto_vary=True) emits
  Vary: Accept on negotiated responses (off by default).

All backwards-compatible. 473 tests pass; ruff + mypy clean.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-28 19:48:22 -04:00
..
2018-10-13 13:59:46 +01:00
2026-06-28 10:37:14 -04:00
2026-03-25 19:48:54 -04:00