Releases: Tinche/uapi
Releases · Tinche/uapi
v23.3.0
- Return types of handlers are now type-checked.
(#57) - Introduce Response Shorthands, port the
str,bytes,Noneand attrs response types to them.
(#57) - Unions containing shorthands and uapi response classes (and any combination of these) are now better supported.
(#57) - uapi is now tested against Mypy.
(#57)
v23.2.0
v23.2.0 - 2023-12-10
Changed
datetime.datetimeanddatetime.dateare now supported in the OpenAPI schema, both in models and handler parameters.
(#53)- Simple forms are now supported using
uapi.ReqForm[T]. Learn more.
(#54) - uapi now sorts imports using Ruff.
v23.1.0
Changed
- Add the initial header implementation.
- Function composition (dependency injection) is now documented.
- Endpoints can be excluded from OpenAPI generation by passing them to
App.make_openapi_spec(exclude=...)orApp.serve_openapi(exclude=...). - Initial implementation of OpenAPI security schemas, supporting the
apikeytype in Redis session backend. - Update the Elements OpenAPI UI to better handle cookies.
- Flesh out the documentation for response types.
- Add OpenAPI support for string literal fields.
- Add OpenAPI support for generic attrs classes.
- Add OpenAPI support for unions of a single attrs class and
None(optionals). - Properly set the OpenAPI
requiredattribute for attrs fields without defaults. - Add OpenAPI support for primitive types in unions.
- uapi now uses PDM.
- Dictionary request bodies and attrs classes with dictionary fields are now supported.
- OpenAPI
operationIdproperties for operations are now generated from handler names. - OpenAPI summaries and descriptions are now supported, and can be overridden.
aiohttp.web.StreamResponseis now handled as the root class of aiohttp responses.uapi.aiohttp.AiohttpApp.runnow uses the aiohttp App runners internally.- uapi is now tested against Flask 3.
- uapi is now tested against Python 3.12.
Fixed
- Stringified annotations for return types are now handled properly.
- Framework-specific request objects are ignored for OpenAPI.
- Fix OpenAPI generation so items produced by the dependency injection system are properly generated.
- Fix OpenAPI generation for models with identical names.
- Fix OpenAPI generation for response models with lists of attrs classes.