diff --git a/.buildinfo b/.buildinfo index a121562..9449f01 100644 --- a/.buildinfo +++ b/.buildinfo @@ -1,4 +1,4 @@ # Sphinx build info version 1 # This file records the configuration used when building these files. When it is not found, a full rebuild will be done. -config: e5a35904bc7bb78a12349affaec49f9c +config: c08221e9f0bc76c34b3bf9a7331fe62a tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/.doctrees/changes.doctree b/.doctrees/changes.doctree index afee43e..6f1974a 100644 Binary files a/.doctrees/changes.doctree and b/.doctrees/changes.doctree differ diff --git a/.doctrees/environment.pickle b/.doctrees/environment.pickle index eb35bce..4041a82 100644 Binary files a/.doctrees/environment.pickle and b/.doctrees/environment.pickle differ diff --git a/_modules/index.html b/_modules/index.html index ef1a4f1..9c5240f 100644 --- a/_modules/index.html +++ b/_modules/index.html @@ -4,13 +4,13 @@ - Overview: module code — responder 3.4.1 documentation + Overview: module code — responder 3.5.0 documentation - + diff --git a/_modules/responder/api.html b/_modules/responder/api.html index 35a5f3a..6c7633d 100644 --- a/_modules/responder/api.html +++ b/_modules/responder/api.html @@ -4,13 +4,13 @@ - responder.api — responder 3.4.1 documentation + responder.api — responder 3.5.0 documentation - + diff --git a/_modules/responder/background.html b/_modules/responder/background.html index 20919e6..a313823 100644 --- a/_modules/responder/background.html +++ b/_modules/responder/background.html @@ -4,13 +4,13 @@ - responder.background — responder 3.4.1 documentation + responder.background — responder 3.5.0 documentation - + diff --git a/_modules/responder/ext/ratelimit.html b/_modules/responder/ext/ratelimit.html index 3c1b31f..1dffd7a 100644 --- a/_modules/responder/ext/ratelimit.html +++ b/_modules/responder/ext/ratelimit.html @@ -4,13 +4,13 @@ - responder.ext.ratelimit — responder 3.4.1 documentation + responder.ext.ratelimit — responder 3.5.0 documentation - + diff --git a/_modules/responder/models.html b/_modules/responder/models.html index beec017..786aaf6 100644 --- a/_modules/responder/models.html +++ b/_modules/responder/models.html @@ -4,13 +4,13 @@ - responder.models — responder 3.4.1 documentation + responder.models — responder 3.5.0 documentation - + diff --git a/_modules/responder/status_codes.html b/_modules/responder/status_codes.html index 1bd686e..a538279 100644 --- a/_modules/responder/status_codes.html +++ b/_modules/responder/status_codes.html @@ -4,13 +4,13 @@ - responder.status_codes — responder 3.4.1 documentation + responder.status_codes — responder 3.5.0 documentation - + diff --git a/_sources/changes.md.txt b/_sources/changes.md.txt index c485090..ce86008 100644 --- a/_sources/changes.md.txt +++ b/_sources/changes.md.txt @@ -7,6 +7,57 @@ this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm ## [Unreleased] +## [v3.5.0] - 2026-03-24 + +### Added + +- CI validation for Python 3.14, 3.14 free-threaded, and PyPy 3.11 +- Marimo notebook mounting docs and example +- Type annotations for `routes.py` +- `uv.lock` for reproducible installs + +### Changed + +- Replaced deprecated `asyncio.iscoroutinefunction` with `inspect.iscoroutinefunction` ahead of Python 3.16 removal +- Narrowed broad `except Exception` to specific exceptions in response model serialization and websocket chat example +- Improved GraphQL API interface with expanded test coverage +- Code formatting cleanup via pyproject-fmt and ruff +- Dropped Python 3.9 from CI + +### Fixed + +- WSGI mount returning 400 when requesting the exact mount root path +- Werkzeug 3.1.7 compatibility for trusted host validation in tests +- `future.result` bare property access in background task test (now properly calls `future.result()`) +- OpenAPI template packaging and static file serving +- RST title underline warning breaking docs CI + +### Removed + +- Read the Docs configuration (docs hosted on GitHub Pages) + +## [v3.4.0] - 2026-03-22 + +### Changed + +- Upgraded to Starlette 1.0 +- Added comprehensive docstrings across the codebase +- Expanded API reference documentation + +## [v3.3.0] - 2026-03-22 + +### Added + +- Full documentation rewrite: tutorials for REST APIs, SQLAlchemy, Flask migration +- Auth, WebSocket, middleware, and configuration guides +- Testing docs with prose, examples, and tips +- GitHub Pages deployment for docs + +### Changed + +- Reworked homepage prose +- Rewrote CLI and API reference docs + ## [v3.2.0] - 2026-03-22 ### Added @@ -411,7 +462,11 @@ this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm - Conception! -[unreleased]: https://github.com/kennethreitz/responder/compare/v3.0.0..HEAD +[unreleased]: https://github.com/kennethreitz/responder/compare/v3.5.0..HEAD +[v3.5.0]: https://github.com/kennethreitz/responder/compare/v3.4.0..v3.5.0 +[v3.4.0]: https://github.com/kennethreitz/responder/compare/v3.3.0..v3.4.0 +[v3.3.0]: https://github.com/kennethreitz/responder/compare/v3.2.0..v3.3.0 +[v3.2.0]: https://github.com/kennethreitz/responder/compare/v3.0.0..v3.2.0 [v3.0.0]: https://github.com/kennethreitz/responder/compare/v2.0.5..v3.0.0 [v2.0.5]: https://github.com/kennethreitz/responder/compare/v2.0.4..v2.0.5 [v2.0.4]: https://github.com/kennethreitz/responder/compare/v2.0.3..v2.0.4 diff --git a/_static/documentation_options.js b/_static/documentation_options.js index 3d20959..f5d5075 100644 --- a/_static/documentation_options.js +++ b/_static/documentation_options.js @@ -1,5 +1,5 @@ const DOCUMENTATION_OPTIONS = { - VERSION: '3.4.1', + VERSION: '3.5.0', LANGUAGE: 'en', COLLAPSE_INDEX: false, BUILDER: 'html', diff --git a/api.html b/api.html index 8b23b4d..eac958c 100644 --- a/api.html +++ b/api.html @@ -5,13 +5,13 @@ - API Reference — responder 3.4.1 documentation + API Reference — responder 3.5.0 documentation - + diff --git a/backlog.html b/backlog.html index 3aa8d61..e39fb4f 100644 --- a/backlog.html +++ b/backlog.html @@ -5,13 +5,13 @@ - Backlog — responder 3.4.1 documentation + Backlog — responder 3.5.0 documentation - + diff --git a/changes.html b/changes.html index f4b6f5f..4ef1418 100644 --- a/changes.html +++ b/changes.html @@ -5,13 +5,13 @@ - Changelog — responder 3.4.1 documentation + Changelog — responder 3.5.0 documentation - + @@ -46,13 +46,81 @@

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

-

Unreleased

+

Unreleased

-
-

[v3.2.0] - 2026-03-22

+
+

v3.5.0 - 2026-03-24

Added

    +
  • CI validation for Python 3.14, 3.14 free-threaded, and PyPy 3.11

  • +
  • Marimo notebook mounting docs and example

  • +
  • Type annotations for routes.py

  • +
  • uv.lock for reproducible installs

  • +
+
+
+

Changed

+
    +
  • Replaced deprecated asyncio.iscoroutinefunction with inspect.iscoroutinefunction ahead of Python 3.16 removal

  • +
  • Narrowed broad except Exception to specific exceptions in response model serialization and websocket chat example

  • +
  • Improved GraphQL API interface with expanded test coverage

  • +
  • Code formatting cleanup via pyproject-fmt and ruff

  • +
  • Dropped Python 3.9 from CI

  • +
+
+
+

Fixed

+
    +
  • WSGI mount returning 400 when requesting the exact mount root path

  • +
  • Werkzeug 3.1.7 compatibility for trusted host validation in tests

  • +
  • future.result bare property access in background task test (now properly calls future.result())

  • +
  • OpenAPI template packaging and static file serving

  • +
  • RST title underline warning breaking docs CI

  • +
+
+
+

Removed

+
    +
  • Read the Docs configuration (docs hosted on GitHub Pages)

  • +
+
+
+
+

v3.4.0 - 2026-03-22

+
+

Changed

+
    +
  • Upgraded to Starlette 1.0

  • +
  • Added comprehensive docstrings across the codebase

  • +
  • Expanded API reference documentation

  • +
+
+
+
+

v3.3.0 - 2026-03-22

+
+

Added

+
    +
  • Full documentation rewrite: tutorials for REST APIs, SQLAlchemy, Flask migration

  • +
  • Auth, WebSocket, middleware, and configuration guides

  • +
  • Testing docs with prose, examples, and tips

  • +
  • GitHub Pages deployment for docs

  • +
+
+
+

Changed

+
    +
  • Reworked homepage prose

  • +
  • Rewrote CLI and API reference docs

  • +
+
+
+
+

v3.2.0 - 2026-03-22

+
+

Added

+
  • Pydantic auto-validation: request_model validates input, returns 422 on failure

  • Pydantic auto-serialization: response_model strips extra fields from responses

  • Server-Sent Events: @resp.sse for real-time streaming

  • @@ -71,8 +139,8 @@ this project adheres to -

    Changed

    +
    +

    Changed

    • Dependencies flattened: pip install responder gets everything

    • Core deps reduced to starlette + uvicorn

    • @@ -81,8 +149,8 @@ this project adheres to -

      Fixed

      +
      +

      Fixed

      • Multipart parser losing headers when parts have multiple headers

      • url_for() with typed route params ({id:int})

      • @@ -95,8 +163,8 @@ this project adheres to

        v3.0.0 - 2026-03-22

        -
        -

        Added

        +
        +

        Added

        • Platform: Added support for Python 3.10 - Python 3.13

        • CLI: responder run now also accepts a filesystem path on its <target> @@ -104,8 +172,8 @@ argument, enabling usage on single-file applications.

        • CLI: responder run now also accepts URLs.

        -
        -

        Changed

        +
        +

        Changed

        • Platform: Minimum Python version is now 3.9 (dropped 3.6, 3.7, 3.8)

        • Dependencies: Dramatically reduced core dependency count (10 → 5)

          @@ -127,8 +195,8 @@ extensions now, found within the

          Packaging: Migrated from setup.py to declarative pyproject.toml

        -
        -

        Removed

        +
        +

        Removed

        • Platform: Removed support for EOL Python 3.6, 3.7, 3.8

        • Status codes: Removed deprecated resume_incomplete and resume @@ -136,8 +204,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

        • CLI: responder run --build ceased to exist

        -
        -

        Fixed

        +
        +

        Fixed

        • Routing: Fixed dispatching static_route=None on Windows

        • uvicorn: --debug now maps to uvicorn’s log_level = "debug"

        • @@ -147,8 +215,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v2.0.5 - 2019-12-15

        -
        -

        Added

        +
        +

        Added

        • Update requirements to support python 3.8

        @@ -156,8 +224,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v2.0.4 - 2019-11-19

        -
        -

        Fixed

        +
        +

        Fixed

        • Fix static app resolving

        @@ -165,8 +233,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v2.0.3 - 2019-09-20

        -
        -

        Fixed

        +
        +

        Fixed

        • Fix template conflicts

        @@ -174,8 +242,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v2.0.2 - 2019-09-20

        -
        -

        Fixed

        +
        +

        Fixed

        • Fix template conflicts

        @@ -183,8 +251,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v2.0.1 - 2019-09-20

        -
        -

        Fixed

        +
        +

        Fixed

        • Fix template import

        @@ -192,8 +260,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v2.0.0 - 2019-09-19

        -
        -

        Changed

        +
        +

        Changed

        • Refactor Router and Schema

        @@ -201,8 +269,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v1.3.2 - 2019-08-15

        -
        -

        Added

        +
        +

        Added

        • ASGI 3 support

        • CI tests for python 3.8-dev

        • @@ -218,15 +286,15 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v1.3.1 - 2019-04-28

        -
        -

        Added

        +
        +

        Added

        • Route params Converters

        • Add search for documentation pages

        -
        -

        Changed

        +
        +

        Changed

        • Bump dependencies

        @@ -234,8 +302,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v1.3.0 - 2019-02-22

        -
        -

        Fixed

        +
        +

        Fixed

        • Versioning issue

        • Multiple cookies.

        • @@ -243,8 +311,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

        • Other bugfixes.

        -
        -

        Added

        +
        +

        Added

        • Stream support via resp.stream.

        • Cookie directives via resp.set_cookie.

        • @@ -255,14 +323,14 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v1.1.3 - 2019-01-12

        -
        -

        Changed

        +
        +

        Changed

        • Refactor _route_for

        -
        -

        Fixed

        +
        +

        Fixed

        • Resolve startup/shutdwown events

        @@ -270,21 +338,21 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v1.2.0 - 2018-12-29

        -
        -

        Added

        +
        +

        Added

        • Documentations

        -
        -

        Changed

        +
        +

        Changed

        • Use Starlette’s LifeSpan middleware

        • Update denpendencies

        -
        -

        Fixed

        +
        +

        Fixed

        • Fix route.is_class_based

        • Fix test_500

        • @@ -294,8 +362,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v1.1.2 - 2018-11-11

        -
        -

        Fixed

        +
        +

        Fixed

        • Minor fixes for Open API

        • Typos

        • @@ -304,8 +372,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v1.1.1 - 2018-10-29

        -
        -

        Changed

        +
        +

        Changed

        • Run sync views in a threadpoolexecutor.

        @@ -313,8 +381,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v1.1.0 - 2018-10-27

        -
        -

        Added

        +
        +

        Added

        • Support for before_request.

        @@ -322,8 +390,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v1.0.5- 2018-10-27

        -
        -

        Fixed

        +
        +

        Fixed

        • Fix sessions.

        @@ -331,8 +399,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v1.0.4 - 2018-10-27

        -
        -

        Fixed

        +
        +

        Fixed

        • Potential bufix for cookies.

        @@ -340,8 +408,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v1.0.3 - 2018-10-27

        -
        -

        Fixed

        +
        +

        Fixed

        • Bugfix for redirects.

        @@ -349,8 +417,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v1.0.2 - 2018-10-27

        -
        -

        Changed

        +
        +

        Changed

        • Improvement for static file hosting.

        @@ -358,8 +426,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v1.0.1 - 2018-10-26

        -
        -

        Changed

        +
        +

        Changed

        • Improve cors configuration settings.

        @@ -367,8 +435,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v1.0.0 - 2018-10-26

        -
        -

        Changed

        +
        +

        Changed

        • Move GraphQL support into a built-in plugin.

        @@ -376,14 +444,14 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v0.3.3 - 2018-10-25

        -
        -

        Added

        +
        +

        Added

        • CORS support

        -
        -

        Changed

        +
        +

        Changed

        • Improved exceptions.

        @@ -391,8 +459,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v0.3.2 - 2018-10-25

        -
        -

        Changed

        +
        +

        Changed

        • Subtle improvements.

        @@ -400,8 +468,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v0.3.1 - 2018-10-24

        -
        -

        Fixed

        +
        +

        Fixed

        • Packaging fix.

        @@ -409,8 +477,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v0.3.0 - 2018-10-24

        -
        -

        Changed

        +
        +

        Changed

        • Interactive Documentation endpoint.

        • Minor improvements.

        • @@ -419,8 +487,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v0.2.3 - 2018-10-24

        -
        -

        Changed

        +
        +

        Changed

        • Overall improvements.

        @@ -428,8 +496,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v0.2.2 - 2018-10-23

        -
        -

        Added

        +
        +

        Added

        • Show traceback info when background tasks raise exceptions.

        @@ -437,8 +505,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v0.2.1 - 2018-10-23

        -
        -

        Added

        +
        +

        Added

        • api.requests.

        @@ -446,8 +514,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v0.2.0 - 2018-10-22

        -
        -

        Added

        +
        +

        Added

        • WebSocket support.

        @@ -455,8 +523,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v0.1.6 - 2018-10-20

        -
        -

        Added

        +
        +

        Added

        • 500 support.

        @@ -464,14 +532,14 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v0.1.5 - 2018-10-20

        -
        -

        Added

        +
        +

        Added

        • File upload support

        -
        -

        Changed

        +
        +

        Changed

        • Improvements to sequential media reading.

        @@ -479,8 +547,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v0.1.4 - 2018-10-19

        -
        -

        Fixed

        +
        +

        Fixed

        • Stability.

        @@ -488,8 +556,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v0.1.3 - 2018-10-18

        -
        -

        Added

        +
        +

        Added

        • Sessions support.

        @@ -497,8 +565,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v0.1.2 - 2018-10-18

        -
        -

        Added

        +
        +

        Added

        • Cookies support.

        @@ -506,8 +574,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v0.1.1 - 2018-10-17

        -
        -

        Changed

        +
        +

        Changed

        • Default routes.

        @@ -515,8 +583,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v0.1.0 - 2018-10-17

        -
        -

        Added

        +
        +

        Added

        • Prototype of static application support.

        @@ -524,8 +592,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v0.0.10 - 2018-10-17

        -
        -

        Fixed

        +
        +

        Fixed

        • Bugfix for async class-based views.

        @@ -533,8 +601,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v0.0.9 - 2018-10-17

        -
        -

        Fixed

        +
        +

        Fixed

        • Bugfix for async class-based views.

        @@ -542,14 +610,14 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v0.0.8 - 2018-10-17

        -
        -

        Added

        +
        +

        Added

        • GraphiQL Support.

        -
        -

        Changed

        +
        +

        Changed

        • Improvement to route selection.

        @@ -557,8 +625,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v0.0.7 - 2018-10-16

        -
        -

        Changed

        +
        +

        Changed

        • Immutable Request object.

        @@ -566,8 +634,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v0.0.6 - 2018-10-16

        -
        -

        Added

        +
        +

        Added

        • Ability to mount WSGI apps.

        • Supply content-type when serving up the schema.

        • @@ -576,8 +644,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v0.0.5 - 2018-10-15

        -
        -

        Added

        +
        +

        Added

        • OpenAPI Schema support.

        • Safe load/dump yaml.

        • @@ -586,14 +654,14 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v0.0.4 - 2018-10-15

        -
        -

        Added

        +
        +

        Added

        • Asynchronous support for data uploads.

        -
        -

        Fixed

        +
        +

        Fixed

        • Bug fixes.

        @@ -601,8 +669,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v0.0.3 - 2018-10-13

        -
        -

        Fixed

        +
        +

        Fixed

        • Bug fixes.

        @@ -610,8 +678,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v0.0.2 - 2018-10-13

        -
        -

        Changed

        +
        +

        Changed

        • Switch to ASGI/Starlette.

        @@ -619,8 +687,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

        v0.0.1 - 2018-10-12

        -
        -

        Added

        +
        +

        Added

        • Conception!

        @@ -653,207 +721,223 @@ aliases for HTTP 308 (marked for removal in 3.0)

        • Changelog
          • Unreleased
          • -
          • [v3.2.0] - 2026-03-22
              +
            • v3.5.0 - 2026-03-24 -
            • -
            • v3.0.0 - 2026-03-22
            • -
            • v2.0.5 - 2019-12-15
                +
              • v3.4.0 - 2026-03-22 +
              • +
              • v3.3.0 - 2026-03-22 +
              • +
              • v3.2.0 - 2026-03-22 -
              • -
              • v2.0.4 - 2019-11-19 -
              • -
              • v2.0.3 - 2019-09-20
              • +
              • v3.0.0 - 2026-03-22 +
              • +
              • v2.0.5 - 2019-12-15 +
              • +
              • v2.0.4 - 2019-11-19 +
              • +
              • v2.0.3 - 2019-09-20 +
              • v2.0.2 - 2019-09-20
              • v2.0.1 - 2019-09-20
              • v2.0.0 - 2019-09-19
              • v1.3.2 - 2019-08-15
              • v1.3.1 - 2019-04-28
              • v1.3.0 - 2019-02-22
              • v1.1.3 - 2019-01-12 -
              • -
              • v1.2.0 - 2018-12-29 -
              • -
              • v1.1.2 - 2018-11-11 -
              • -
              • v1.1.1 - 2018-10-29 -
              • -
              • v1.1.0 - 2018-10-27 -
              • -
              • v1.0.5- 2018-10-27
              • -
              • v1.0.4 - 2018-10-27
                  -
                • Fixed
                • +
                • v1.2.0 - 2018-12-29
                • -
                • v1.0.3 - 2018-10-27
                    -
                  • Fixed
                  • +
                  • v1.1.2 - 2018-11-11
                  • -
                  • v1.0.2 - 2018-10-27 -
                  • -
                  • v1.0.1 - 2018-10-26 -
                  • -
                  • v1.0.0 - 2018-10-26
                      +
                    • v1.1.1 - 2018-10-29
                    • -
                    • v0.3.3 - 2018-10-25
                        +
                      • v1.1.0 - 2018-10-27
                      • -
                      • v0.3.2 - 2018-10-25
                          -
                        • Changed
                        • +
                        • v1.0.5- 2018-10-27
                        • -
                        • v0.3.1 - 2018-10-24
                            +
                          • v1.0.4 - 2018-10-27 +
                          • +
                          • v1.0.3 - 2018-10-27
                          • -
                          • v0.3.0 - 2018-10-24
                              +
                            • v1.0.2 - 2018-10-27
                            • -
                            • v0.2.3 - 2018-10-24
                                +
                              • v1.0.1 - 2018-10-26
                              • -
                              • v0.2.2 - 2018-10-23
                                  -
                                • Added
                                • +
                                • v1.0.0 - 2018-10-26
                                • -
                                • v0.2.1 - 2018-10-23
                                    +
                                  • v0.3.3 - 2018-10-25
                                  • -
                                  • v0.2.0 - 2018-10-22
                                      -
                                    • Added
                                    • +
                                    • v0.3.2 - 2018-10-25
                                    • -
                                    • v0.1.6 - 2018-10-20
                                        -
                                      • Added
                                      • +
                                      • v0.3.1 - 2018-10-24
                                      • -
                                      • v0.1.5 - 2018-10-20
                                          -
                                        • Added
                                        • +
                                        • v0.3.0 - 2018-10-24
                                        • -
                                        • v0.1.4 - 2018-10-19
                                            -
                                          • Fixed
                                          • +
                                          • v0.2.3 - 2018-10-24
                                          • -
                                          • v0.1.3 - 2018-10-18
                                              +
                                            • v0.2.2 - 2018-10-23
                                            • -
                                            • v0.1.2 - 2018-10-18
                                                +
                                              • v0.2.1 - 2018-10-23
                                              • -
                                              • v0.1.1 - 2018-10-17
                                                  -
                                                • Changed
                                                • +
                                                • v0.2.0 - 2018-10-22
                                                • -
                                                • v0.1.0 - 2018-10-17
                                                    +
                                                  • v0.1.6 - 2018-10-20
                                                  • -
                                                  • v0.0.10 - 2018-10-17
                                                      -
                                                    • Fixed
                                                    • +
                                                    • v0.1.5 - 2018-10-20
                                                    • -
                                                    • v0.0.9 - 2018-10-17
                                                        -
                                                      • Fixed
                                                      • +
                                                      • v0.1.4 - 2018-10-19
                                                      • -
                                                      • v0.0.8 - 2018-10-17
                                                          -
                                                        • Added
                                                        • -
                                                        • Changed
                                                        • +
                                                        • v0.1.3 - 2018-10-18
                                                        • -
                                                        • v0.0.7 - 2018-10-16
                                                            -
                                                          • Changed
                                                          • +
                                                          • v0.1.2 - 2018-10-18
                                                          • -
                                                          • v0.0.6 - 2018-10-16
                                                              -
                                                            • Added
                                                            • +
                                                            • v0.1.1 - 2018-10-17
                                                            • -
                                                            • v0.0.5 - 2018-10-15
                                                                +
                                                              • v0.1.0 - 2018-10-17
                                                              • -
                                                              • v0.0.4 - 2018-10-15
                                                                  -
                                                                • Added
                                                                • +
                                                                • v0.0.10 - 2018-10-17 +
                                                                • +
                                                                • v0.0.9 - 2018-10-17
                                                                • -
                                                                • v0.0.3 - 2018-10-13 -
                                                                • -
                                                                • v0.0.2 - 2018-10-13 diff --git a/cli.html b/cli.html index a15fd4e..1a2352b 100644 --- a/cli.html +++ b/cli.html @@ -5,13 +5,13 @@ - Command Line Interface — responder 3.4.1 documentation + Command Line Interface — responder 3.5.0 documentation - + diff --git a/deployment.html b/deployment.html index 80df762..ffc3620 100644 --- a/deployment.html +++ b/deployment.html @@ -5,13 +5,13 @@ - Deployment — responder 3.4.1 documentation + Deployment — responder 3.5.0 documentation - + diff --git a/genindex.html b/genindex.html index 305fe66..879371a 100644 --- a/genindex.html +++ b/genindex.html @@ -4,13 +4,13 @@ - Index — responder 3.4.1 documentation + Index — responder 3.5.0 documentation - + diff --git a/guide-config.html b/guide-config.html index 92fae7a..c48bee8 100644 --- a/guide-config.html +++ b/guide-config.html @@ -5,13 +5,13 @@ - Configuration — responder 3.4.1 documentation + Configuration — responder 3.5.0 documentation - + diff --git a/index.html b/index.html index 91fa4f0..27a31d6 100644 --- a/index.html +++ b/index.html @@ -5,13 +5,13 @@ - Responder — responder 3.4.1 documentation + Responder — responder 3.5.0 documentation - + diff --git a/objects.inv b/objects.inv index 88bec76..aaa6ecf 100644 --- a/objects.inv +++ b/objects.inv @@ -1,6 +1,6 @@ # Sphinx inventory version 2 # Project: responder -# Version: 3.4.1 +# Version: 3.5.0 # The remainder of this file is compressed using zlib. xڥXKs8 Whf{&ǥ>;Ig;;{$&E4 %9NM7>ˮBVC~7/ټ7[hP3eK]NB 5ڀ*,OwiKA mA])&?\v^9^a$cX  `1|FK^1 zN3KmXUo$Rn NP^`*F:,dEGvfI4Һ3Ֆ)iLߵ$j!&M}iDTV5Y-I P)^ch:g5Ta&5$ k<nwEoA9mϕxzpmRWN ~'D!ӪP f-7W&ޅ0xTO Fc產f++9xP3S7~]ΊvQy|KEu̪v77NOm;^3oN}-?9'6ՇJҹ'sWP2\6sdy'?(f d@ž8 ));A~ PAQ6sƚ4eso0k,`MlGb@Gf@iގב װ?nOVxfWhGLn~0 diff --git a/py-modindex.html b/py-modindex.html index dc59a5a..74c3eb8 100644 --- a/py-modindex.html +++ b/py-modindex.html @@ -4,13 +4,13 @@ - Python Module Index — responder 3.4.1 documentation + Python Module Index — responder 3.5.0 documentation - + diff --git a/quickstart.html b/quickstart.html index 82a22de..7115bd5 100644 --- a/quickstart.html +++ b/quickstart.html @@ -5,13 +5,13 @@ - Quick Start — responder 3.4.1 documentation + Quick Start — responder 3.5.0 documentation - + diff --git a/sandbox.html b/sandbox.html index e71e9a8..e02b2f6 100644 --- a/sandbox.html +++ b/sandbox.html @@ -5,13 +5,13 @@ - Development Sandbox — responder 3.4.1 documentation + Development Sandbox — responder 3.5.0 documentation - + diff --git a/search.html b/search.html index 6b397a9..f70d22f 100644 --- a/search.html +++ b/search.html @@ -4,14 +4,14 @@ - Search — responder 3.4.1 documentation + Search — responder 3.5.0 documentation - + diff --git a/searchindex.js b/searchindex.js index 7c4cb80..e6838fb 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({"alltitles":{"API Key Authentication":[[11,"api-key-authentication"]],"API Reference":[[0,null]],"Added":[[2,"added"],[2,"id1"],[2,"id4"],[2,"id10"],[2,"id11"],[2,"id14"],[2,"id17"],[2,"id22"],[2,"id29"],[2,"id35"],[2,"id36"],[2,"id37"],[2,"id38"],[2,"id39"],[2,"id42"],[2,"id43"],[2,"id45"],[2,"id48"],[2,"id51"],[2,"id52"],[2,"id53"],[2,"id57"]],"Adding Third-Party Middleware":[[13,"adding-third-party-middleware"]],"After-Request Hooks":[[10,"after-request-hooks"]],"Allowed Hosts":[[5,"allowed-hosts"]],"Authentication":[[11,null]],"Background Queue":[[0,"background-queue"]],"Background Tasks":[[7,"background-tasks"]],"Backlog":[[1,null]],"Bearer Token Authentication":[[11,"bearer-token-authentication"]],"Before-Request Hooks":[[10,"before-request-hooks"]],"Before-Request Hooks for WebSockets":[[16,"before-request-hooks-for-websockets"]],"Blueprints \u2192 Route Groups":[[12,"blueprints-route-groups"]],"Building Frontend Assets":[[3,"building-frontend-assets"]],"Building a REST API":[[14,null]],"Built-in Middleware":[[13,"built-in-middleware"]],"CORS":[[10,"cors"]],"CRUD Endpoints":[[15,"crud-endpoints"]],"Changed":[[2,"changed"],[2,"id2"],[2,"id9"],[2,"id12"],[2,"id15"],[2,"id18"],[2,"id21"],[2,"id26"],[2,"id27"],[2,"id28"],[2,"id30"],[2,"id31"],[2,"id33"],[2,"id34"],[2,"id40"],[2,"id44"],[2,"id49"],[2,"id50"],[2,"id56"]],"Changelog":[[2,null]],"Chat Room":[[16,"chat-room"]],"Class-Based Views":[[10,"class-based-views"]],"Cloud Platforms":[[4,"cloud-platforms"]],"Command Line Interface":[[3,null]],"Configuration":[[5,null]],"Configuration Class Pattern":[[5,"configuration-class-pattern"]],"Cookie-Based Sessions":[[10,"cookie-based-sessions"]],"Cookies":[[10,"cookies"]],"Create a Book":[[14,"create-a-book"]],"Create a Web Service":[[7,"create-a-web-service"]],"Custom Error Handling":[[10,"custom-error-handling"]],"Custom Exception for Auth Errors":[[11,"custom-exception-for-auth-errors"]],"Custom Instance Names":[[3,"custom-instance-names"]],"Data Formats":[[16,"data-formats"]],"Database Setup":[[15,"database-setup"]],"Debug Mode":[[5,"debug-mode"]],"Define Your Models":[[14,"define-your-models"],[15,"define-your-models"]],"Delete a Book":[[14,"delete-a-book"]],"Deployment":[[4,null]],"Deprecated":[[2,"deprecated"]],"Development Sandbox":[[8,null]],"Docker":[[4,"docker"]],"Echo Server":[[16,"echo-server"]],"Environment Variables":[[5,"environment-variables"]],"Error Handling":[[14,"error-handling"]],"Feature Tour":[[10,null]],"Fixed":[[2,"fixed"],[2,"id3"],[2,"id5"],[2,"id6"],[2,"id7"],[2,"id8"],[2,"id13"],[2,"id16"],[2,"id19"],[2,"id20"],[2,"id23"],[2,"id24"],[2,"id25"],[2,"id32"],[2,"id41"],[2,"id46"],[2,"id47"],[2,"id54"],[2,"id55"]],"Future Ideas":[[1,"future-ideas"]],"Get a Single Book":[[14,"get-a-single-book"]],"Getting Started":[[9,"getting-started"]],"Gradual Migration":[[12,"gradual-migration"]],"GraphQL":[[10,"graphql"]],"HSTS":[[10,"hsts"]],"HTML Client":[[16,"html-client"]],"Hello World":[[7,"hello-world"]],"Hooks vs. Middleware":[[13,"hooks-vs-middleware"]],"How WebSockets Work":[[16,"how-websockets-work"]],"In-Memory Storage":[[14,"in-memory-storage"]],"Installation":[[6,"installation"],[15,"installation"]],"JSON APIs":[[12,"json-apis"]],"Launching from a File":[[3,"launching-from-a-file"]],"Launching from a Module":[[3,"launching-from-a-module"]],"Launching from a URL":[[3,"launching-from-a-url"]],"Lifespan Events":[[10,"lifespan-events"]],"Lifespan for Startup and Shutdown":[[15,"lifespan-for-startup-and-shutdown"]],"List All Books":[[14,"list-all-books"]],"MessagePack":[[10,"messagepack"]],"Method Filtering":[[10,"method-filtering"]],"Middleware Order":[[13,"middleware-order"]],"Migrating from Flask":[[12,null]],"Mounting Other Apps":[[10,"mounting-other-apps"]],"OpenAPI Documentation":[[10,"openapi-documentation"]],"Operations":[[8,"operations"]],"Project":[[6,null]],"Project Setup":[[14,"project-setup"]],"Putting It All Together":[[5,"putting-it-all-together"],[7,"putting-it-all-together"]],"Query Dict":[[0,"query-dict"]],"Quick Reference":[[12,"quick-reference"]],"Quick Start":[[7,null]],"Rate Limiter":[[0,"rate-limiter"]],"Rate Limiting":[[10,"rate-limiting"]],"Reading Requests":[[7,"reading-requests"]],"Removed":[[2,"removed"]],"Rendering Templates":[[7,"rendering-templates"]],"Request":[[0,"request"]],"Request ID":[[10,"request-id"]],"Responder":[[6,null]],"Response":[[0,"response"]],"Reverse Proxy":[[4,"reverse-proxy"]],"Route Groups":[[0,"route-groups"],[10,"route-groups"]],"Route Parameters":[[7,"route-parameters"],[12,"route-parameters"]],"Run It":[[14,"run-it"],[15,"run-it"]],"Run the Server":[[7,"run-the-server"]],"Running Locally":[[4,"running-locally"]],"Secret Key":[[5,"secret-key"]],"Sending Responses":[[7,"sending-responses"]],"Server-Sent Events (SSE)":[[10,"server-sent-events-sse"]],"Serving Files":[[10,"serving-files"]],"Setup":[[8,"setup"]],"Skipping Auth for Public Routes":[[11,"skipping-auth-for-public-routes"]],"Static Files":[[10,"static-files"]],"Status Code Helpers":[[0,"status-code-helpers"]],"Templates":[[12,"templates"]],"Testing":[[9,null]],"Testing Before and After Hooks":[[9,"testing-before-and-after-hooks"]],"Testing Error Handling":[[9,"testing-error-handling"]],"Testing File Uploads":[[9,"testing-file-uploads"]],"Testing Headers and Cookies":[[9,"testing-headers-and-cookies"]],"Testing JSON APIs":[[9,"testing-json-apis"]],"Testing Lifespan Events":[[9,"testing-lifespan-events"]],"Testing Request Validation":[[9,"testing-request-validation"]],"Testing WebSockets":[[9,"testing-websockets"],[16,"testing-websockets"]],"The API Class":[[0,"the-api-class"]],"The Big Differences":[[12,"the-big-differences"]],"The Idea":[[6,"the-idea"]],"Tips":[[9,"tips"],[15,"tips"]],"Trusted Hosts":[[10,"trusted-hosts"]],"Try It Out":[[14,"try-it-out"]],"Tutorials":[[6,null]],"Type Convertors":[[7,"type-convertors"]],"Unreleased":[[2,"unreleased"]],"Update a Book":[[14,"update-a-book"]],"User Guide":[[6,null]],"Using .env Files":[[5,"using-env-files"]],"Using Fixtures":[[9,"using-fixtures"]],"Using PostgreSQL":[[15,"using-postgresql"]],"Using SQLAlchemy":[[15,null]],"Using Sessions for Web Apps":[[11,"using-sessions-for-web-apps"]],"Using Starlette Middleware":[[13,"using-starlette-middleware"]],"Uvicorn Directly":[[4,"uvicorn-directly"]],"WebSocket Support":[[10,"websocket-support"]],"WebSocket Tutorial":[[16,null]],"What You Get":[[6,"what-you-get"]],"What\u2019s Next":[[14,"what-s-next"]],"When to Use What":[[13,"when-to-use-what"]],"Writing Middleware":[[13,null]],"[v3.2.0] - 2026-03-22":[[2,"v3-2-0-2026-03-22"]],"v0.0.1 - 2018-10-12":[[2,"v0-0-1-2018-10-12"]],"v0.0.10 - 2018-10-17":[[2,"v0-0-10-2018-10-17"]],"v0.0.2 - 2018-10-13":[[2,"v0-0-2-2018-10-13"]],"v0.0.3 - 2018-10-13":[[2,"v0-0-3-2018-10-13"]],"v0.0.4 - 2018-10-15":[[2,"v0-0-4-2018-10-15"]],"v0.0.5 - 2018-10-15":[[2,"v0-0-5-2018-10-15"]],"v0.0.6 - 2018-10-16":[[2,"v0-0-6-2018-10-16"]],"v0.0.7 - 2018-10-16":[[2,"v0-0-7-2018-10-16"]],"v0.0.8 - 2018-10-17":[[2,"v0-0-8-2018-10-17"]],"v0.0.9 - 2018-10-17":[[2,"v0-0-9-2018-10-17"]],"v0.1.0 - 2018-10-17":[[2,"v0-1-0-2018-10-17"]],"v0.1.1 - 2018-10-17":[[2,"v0-1-1-2018-10-17"]],"v0.1.2 - 2018-10-18":[[2,"v0-1-2-2018-10-18"]],"v0.1.3 - 2018-10-18":[[2,"v0-1-3-2018-10-18"]],"v0.1.4 - 2018-10-19":[[2,"v0-1-4-2018-10-19"]],"v0.1.5 - 2018-10-20":[[2,"v0-1-5-2018-10-20"]],"v0.1.6 - 2018-10-20":[[2,"v0-1-6-2018-10-20"]],"v0.2.0 - 2018-10-22":[[2,"v0-2-0-2018-10-22"]],"v0.2.1 - 2018-10-23":[[2,"v0-2-1-2018-10-23"]],"v0.2.2 - 2018-10-23":[[2,"v0-2-2-2018-10-23"]],"v0.2.3 - 2018-10-24":[[2,"v0-2-3-2018-10-24"]],"v0.3.0 - 2018-10-24":[[2,"v0-3-0-2018-10-24"]],"v0.3.1 - 2018-10-24":[[2,"v0-3-1-2018-10-24"]],"v0.3.2 - 2018-10-25":[[2,"v0-3-2-2018-10-25"]],"v0.3.3 - 2018-10-25":[[2,"v0-3-3-2018-10-25"]],"v1.0.0 - 2018-10-26":[[2,"v1-0-0-2018-10-26"]],"v1.0.1 - 2018-10-26":[[2,"v1-0-1-2018-10-26"]],"v1.0.2 - 2018-10-27":[[2,"v1-0-2-2018-10-27"]],"v1.0.3 - 2018-10-27":[[2,"v1-0-3-2018-10-27"]],"v1.0.4 - 2018-10-27":[[2,"v1-0-4-2018-10-27"]],"v1.0.5- 2018-10-27":[[2,"v1-0-5-2018-10-27"]],"v1.1.0 - 2018-10-27":[[2,"v1-1-0-2018-10-27"]],"v1.1.1 - 2018-10-29":[[2,"v1-1-1-2018-10-29"]],"v1.1.2 - 2018-11-11":[[2,"v1-1-2-2018-11-11"]],"v1.1.3 - 2019-01-12":[[2,"v1-1-3-2019-01-12"]],"v1.2.0 - 2018-12-29":[[2,"v1-2-0-2018-12-29"]],"v1.3.0 - 2019-02-22":[[2,"v1-3-0-2019-02-22"]],"v1.3.1 - 2019-04-28":[[2,"v1-3-1-2019-04-28"]],"v1.3.2 - 2019-08-15":[[2,"v1-3-2-2019-08-15"]],"v2.0.0 - 2019-09-19":[[2,"v2-0-0-2019-09-19"]],"v2.0.1 - 2019-09-20":[[2,"v2-0-1-2019-09-20"]],"v2.0.2 - 2019-09-20":[[2,"v2-0-2-2019-09-20"]],"v2.0.3 - 2019-09-20":[[2,"v2-0-3-2019-09-20"]],"v2.0.4 - 2019-11-19":[[2,"v2-0-4-2019-11-19"]],"v2.0.5 - 2019-12-15":[[2,"v2-0-5-2019-12-15"]],"v3.0.0 - 2026-03-22":[[2,"v3-0-0-2026-03-22"]]},"docnames":["api","backlog","changes","cli","deployment","guide-config","index","quickstart","sandbox","testing","tour","tutorial-auth","tutorial-flask","tutorial-middleware","tutorial-rest","tutorial-sqlalchemy","tutorial-websockets"],"envversion":{"sphinx":65,"sphinx.domains.c":3,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":9,"sphinx.domains.index":1,"sphinx.domains.javascript":3,"sphinx.domains.math":2,"sphinx.domains.python":4,"sphinx.domains.rst":2,"sphinx.domains.std":2,"sphinx.ext.viewcode":1},"filenames":["api.rst","backlog.md","changes.md","cli.rst","deployment.rst","guide-config.rst","index.rst","quickstart.rst","sandbox.md","testing.rst","tour.rst","tutorial-auth.rst","tutorial-flask.rst","tutorial-middleware.rst","tutorial-rest.rst","tutorial-sqlalchemy.rst","tutorial-websockets.rst"],"indexentries":{"accepts() (responder.request method)":[[0,"responder.Request.accepts",false]],"add_event_handler() (responder.api method)":[[0,"responder.API.add_event_handler",false]],"add_middleware() (responder.api method)":[[0,"responder.API.add_middleware",false]],"add_route() (responder.api method)":[[0,"responder.API.add_route",false]],"after_request() (responder.api method)":[[0,"responder.API.after_request",false]],"api (class in responder)":[[0,"responder.API",false]],"apparent_encoding (responder.request property)":[[0,"responder.Request.apparent_encoding",false]],"backgroundqueue (class in responder.background)":[[0,"responder.background.BackgroundQueue",false]],"before_request() (responder.api method)":[[0,"responder.API.before_request",false]],"check() (responder.ext.ratelimit.ratelimiter method)":[[0,"responder.ext.ratelimit.RateLimiter.check",false]],"client (responder.request property)":[[0,"responder.Request.client",false]],"content (responder.request property)":[[0,"responder.Request.content",false]],"cookies (responder.request property)":[[0,"responder.Request.cookies",false]],"encoding (responder.request property)":[[0,"responder.Request.encoding",false]],"exception_handler() (responder.api method)":[[0,"responder.API.exception_handler",false]],"file() (responder.response method)":[[0,"responder.Response.file",false]],"full_url (responder.request property)":[[0,"responder.Request.full_url",false]],"get() (responder.models.querydict method)":[[0,"responder.models.QueryDict.get",false]],"get_list() (responder.models.querydict method)":[[0,"responder.models.QueryDict.get_list",false]],"graphql() (responder.api method)":[[0,"responder.API.graphql",false]],"group() (responder.api method)":[[0,"responder.API.group",false]],"headers (responder.request property)":[[0,"responder.Request.headers",false]],"install() (responder.ext.ratelimit.ratelimiter method)":[[0,"responder.ext.ratelimit.RateLimiter.install",false]],"is_100() (in module responder.status_codes)":[[0,"responder.status_codes.is_100",false]],"is_200() (in module responder.status_codes)":[[0,"responder.status_codes.is_200",false]],"is_300() (in module responder.status_codes)":[[0,"responder.status_codes.is_300",false]],"is_400() (in module responder.status_codes)":[[0,"responder.status_codes.is_400",false]],"is_500() (in module responder.status_codes)":[[0,"responder.status_codes.is_500",false]],"is_json (responder.request property)":[[0,"responder.Request.is_json",false]],"is_secure (responder.request property)":[[0,"responder.Request.is_secure",false]],"items() (responder.models.querydict method)":[[0,"responder.models.QueryDict.items",false]],"items_list() (responder.models.querydict method)":[[0,"responder.models.QueryDict.items_list",false]],"media() (responder.request method)":[[0,"responder.Request.media",false]],"method (responder.request property)":[[0,"responder.Request.method",false]],"mimetype (responder.request property)":[[0,"responder.Request.mimetype",false]],"module":[[0,"module-responder",false]],"mount() (responder.api method)":[[0,"responder.API.mount",false]],"ok (responder.response property)":[[0,"responder.Response.ok",false]],"on_event() (responder.api method)":[[0,"responder.API.on_event",false]],"params (responder.request property)":[[0,"responder.Request.params",false]],"path_matches_route() (responder.api method)":[[0,"responder.API.path_matches_route",false]],"path_params (responder.request property)":[[0,"responder.Request.path_params",false]],"querydict (class in responder.models)":[[0,"responder.models.QueryDict",false]],"ratelimiter (class in responder.ext.ratelimit)":[[0,"responder.ext.ratelimit.RateLimiter",false]],"redirect() (responder.api method)":[[0,"responder.API.redirect",false]],"redirect() (responder.response method)":[[0,"responder.Response.redirect",false]],"request (class in responder)":[[0,"responder.Request",false]],"requests (responder.api property)":[[0,"responder.API.requests",false]],"responder":[[0,"module-responder",false]],"response (class in responder)":[[0,"responder.Response",false]],"route() (responder.api method)":[[0,"responder.API.route",false]],"routegroup (class in responder.api)":[[0,"responder.api.RouteGroup",false]],"run() (responder.api method)":[[0,"responder.API.run",false]],"run() (responder.background.backgroundqueue method)":[[0,"responder.background.BackgroundQueue.run",false]],"schema() (responder.api method)":[[0,"responder.API.schema",false]],"serve() (responder.api method)":[[0,"responder.API.serve",false]],"session (responder.request property)":[[0,"responder.Request.session",false]],"session() (responder.api method)":[[0,"responder.API.session",false]],"set_cookie() (responder.response method)":[[0,"responder.Response.set_cookie",false]],"sse() (responder.response method)":[[0,"responder.Response.sse",false]],"state (responder.request property)":[[0,"responder.Request.state",false]],"static_app (responder.api property)":[[0,"responder.API.static_app",false]],"status_code_safe (responder.response property)":[[0,"responder.Response.status_code_safe",false]],"stream() (responder.response method)":[[0,"responder.Response.stream",false]],"stream_file() (responder.response method)":[[0,"responder.Response.stream_file",false]],"task() (responder.background.backgroundqueue method)":[[0,"responder.background.BackgroundQueue.task",false]],"template() (responder.api method)":[[0,"responder.API.template",false]],"template_string() (responder.api method)":[[0,"responder.API.template_string",false]],"text (responder.request property)":[[0,"responder.Request.text",false]],"url (responder.request property)":[[0,"responder.Request.url",false]],"url_for() (responder.api method)":[[0,"responder.API.url_for",false]]},"objects":{"":[[0,0,0,"-","responder"]],"responder":[[0,1,1,"","API"],[0,1,1,"","Request"],[0,1,1,"","Response"]],"responder.API":[[0,2,1,"","add_event_handler"],[0,2,1,"","add_middleware"],[0,2,1,"","add_route"],[0,2,1,"","after_request"],[0,2,1,"","before_request"],[0,2,1,"","exception_handler"],[0,2,1,"","graphql"],[0,2,1,"","group"],[0,2,1,"","mount"],[0,2,1,"","on_event"],[0,2,1,"","path_matches_route"],[0,2,1,"","redirect"],[0,3,1,"","requests"],[0,2,1,"","route"],[0,2,1,"","run"],[0,2,1,"","schema"],[0,2,1,"","serve"],[0,2,1,"","session"],[0,3,1,"","static_app"],[0,2,1,"","template"],[0,2,1,"","template_string"],[0,2,1,"","url_for"]],"responder.Request":[[0,2,1,"","accepts"],[0,3,1,"","apparent_encoding"],[0,3,1,"","client"],[0,3,1,"","content"],[0,3,1,"","cookies"],[0,3,1,"","encoding"],[0,3,1,"","full_url"],[0,3,1,"","headers"],[0,3,1,"","is_json"],[0,3,1,"","is_secure"],[0,2,1,"","media"],[0,3,1,"","method"],[0,3,1,"","mimetype"],[0,3,1,"","params"],[0,3,1,"","path_params"],[0,3,1,"","session"],[0,3,1,"","state"],[0,3,1,"","text"],[0,3,1,"","url"]],"responder.Response":[[0,2,1,"","file"],[0,3,1,"","ok"],[0,2,1,"","redirect"],[0,2,1,"","set_cookie"],[0,2,1,"","sse"],[0,3,1,"","status_code_safe"],[0,2,1,"","stream"],[0,2,1,"","stream_file"]],"responder.api":[[0,1,1,"","RouteGroup"]],"responder.background":[[0,1,1,"","BackgroundQueue"]],"responder.background.BackgroundQueue":[[0,2,1,"","run"],[0,2,1,"","task"]],"responder.ext.ratelimit":[[0,1,1,"","RateLimiter"]],"responder.ext.ratelimit.RateLimiter":[[0,2,1,"","check"],[0,2,1,"","install"]],"responder.models":[[0,1,1,"","QueryDict"]],"responder.models.QueryDict":[[0,2,1,"","get"],[0,2,1,"","get_list"],[0,2,1,"","items"],[0,2,1,"","items_list"]],"responder.status_codes":[[0,4,1,"","is_100"],[0,4,1,"","is_200"],[0,4,1,"","is_300"],[0,4,1,"","is_400"],[0,4,1,"","is_500"]]},"objnames":{"0":["py","module","Python module"],"1":["py","class","Python class"],"2":["py","method","Python method"],"3":["py","property","Python property"],"4":["py","function","Python function"]},"objtypes":{"0":"py:module","1":"py:class","2":"py:method","3":"py:property","4":"py:function"},"terms":{"":[0,2,3,4,5,6,7,9,10,11,12,13,15,16],"0":[3,4,5,7,10,14,15],"00":0,"01":0,"0441172719":14,"1":[0,3,4,5,7,10,11,12,14,16],"10":[0,6,7,10],"100":[0,2,10],"127":[3,4,5],"13":4,"150mb":4,"1965":14,"2":[4,7,9,10,14,15,16],"200":[0,7,9,10,14],"201":[7,9,12,14,15],"2026":0,"204":[14,15],"24":11,"2xx":0,"3":[4,6,7,9,10,14,16],"3000":5,"301":[0,7],"308":2,"32":5,"3600":[0,10],"3f":13,"4":[4,7],"40":2,"400":[0,9,10,14],"401":[0,10,11],"404":[0,7,12,14,15],"41d4":7,"422":[2,9,10,14],"429":[0,10],"446655440000":7,"500":[2,7,9,10,13,14],"5000":10,"5042":[3,4,7,11,14,16],"550e8400":7,"561":2,"60":[0,2,10],"600":[0,10],"7":11,"8":0,"80":4,"8000":[4,7],"8192":0,"9":9,"978":14,"99":9,"A":[0,4,5,6,7,10,13,16],"And":[5,6,7],"As":[0,10],"But":[7,9,10],"By":[3,7,9,10,13,14],"For":[0,3,4,5,7,9,10,11,14,15],"If":[0,3,5,6,7,9,10,12,15],"In":[0,5,6,7,10,11,12,15,16],"It":[0,3,6,9,10,13],"No":[6,9,10,12,14],"Not":7,"On":[5,10],"One":[6,7,9],"Or":[0,5],"That":[4,6,7,9],"The":[2,3,4,5,7,9,10,11,13,14,15,16],"There":[9,10],"These":7,"To":[14,15],"Will":0,"With":[0,5],"__init__":11,"__main__":[4,6,7,9,14,15],"__name__":[4,6,7,9,10,12,14,15],"__tablename__":15,"_route_for":2,"a2wsgi":2,"a716":7,"abc":14,"abc123":[0,9,10,11],"abil":2,"abl":0,"abort":12,"about":[4,7,9,12],"abov":[6,11],"abstract":15,"accept":[0,2,7,9,10,16],"access":[0,4,10,11,15],"acm":3,"acquir":8,"across":[4,10,15],"activ":[8,16],"actual":[0,7,10],"ad":[0,1,6,10],"adapt":10,"add":[0,1,2,5,7,11,13,14,15,16],"add_event_handl":0,"add_head":[10,13],"add_middlewar":[0,13],"add_request_id":0,"add_rout":[0,10],"add_tim":[9,10],"add_vers":9,"addeventlisten":16,"addit":[0,13],"address":[0,5,7,10],"adher":2,"admin":11,"affect":10,"after":[0,6,7,11,15,16],"after_request":[0,1,2,9,10,13],"ag":[0,10],"again":11,"against":[0,4,10,11],"agre":7,"ai":10,"aiosqlit":15,"alemb":15,"algorithm":11,"alias":2,"alic":10,"all":[0,2,3,4,6,8,9,10,12,13,15,16],"alloc":9,"allow":[6,10],"allow_credenti":[0,10],"allow_head":[0,10],"allow_method":[0,5,10],"allow_origin":[0,5,10],"allow_origin_regex":0,"allowed_host":[0,5,10],"alongsid":10,"alpin":4,"alreadi":[0,9,10],"also":[0,2,3,7,9,10],"altern":[0,10],"alwai":[4,5,6,7,10],"an":[0,3,5,7,10,12,13,14,15,16],"analysi":10,"angle_bracket":12,"angular":10,"ani":[0,3,4,5,6,7,9,10,11,13,14,15,16],"annot":[6,7,10],"annual":[7,10],"answer":[10,16],"anyon":6,"anyth":7,"anywher":[4,10],"api":[2,3,4,5,6,7,10,13,15,16],"api_kei":11,"api_v1":12,"apispec":2,"app":[0,2,3,4,5,6,7,9,12,14,15,16],"appar":0,"apparent_encod":0,"appear":10,"appendchild":16,"appli":[0,13],"applic":[0,2,3,4,5,7,9,10,11,13,14,15],"approach":[5,10,11,12],"appropri":[10,15],"ar":[0,2,3,4,6,7,9,10,11,12,13,15,16],"architectur":10,"aren":[7,13],"arg":[0,12],"argument":[0,2,7,12,13],"around":[0,6],"arriv":[7,12],"asgi":[0,2,4,6,7,10,12,13],"ask":[6,10,16],"assert":[9,16],"asset":[0,4,6,10],"assign":14,"associ":0,"async":[0,1,2,4,6,7,9,10,11,12,13,14,15,16],"async_sess":15,"async_sessionmak":15,"asynccontextmanag":[10,15],"asynchron":[2,4],"asyncio":15,"asyncpg":15,"attach":10,"attack":[4,5,10],"attribut":[0,3,15],"audio":16,"auth":[6,10,13],"auth_check":10,"auth_guard":11,"authent":[6,7,10,13,16],"autherror":11,"author":[0,7,8,10,11,13,14,15],"auto":[2,10,16],"auto_escap":0,"autobuild":8,"autoincr":15,"automat":[0,2,4,5,6,7,9,10,11,12,13,14,15],"avail":[0,7],"avoid":[9,10],"aw":4,"await":[0,2,7,9,10,11,12,13,14,15,16],"azur":[3,4],"b":[7,9,13,15,16],"back":[0,7,10,15,16],"background":[2,6],"backgroundqueu":0,"backlog":6,"bad":[9,10,14],"balanc":4,"bandwidth":10,"bar":10,"base":[0,2,6,11,13,15],"base_url":0,"basehttpmiddlewar":13,"basemodel":[0,9,10,14,15],"basic":7,"batteri":6,"battl":6,"bearer":6,"becaus":[0,6,7,11,12,14],"becom":[0,15],"been":0,"befor":[0,2,6,7,11,13,15],"before_request":[0,1,2,9,10,11,12,13,16],"begin":15,"behavior":[5,13],"behind":[4,10],"being":0,"best":6,"better":6,"between":13,"bidirect":[10,16],"big":6,"biggest":12,"bin":8,"binari":[7,10,16],"bind":[0,4,5,7],"blob":3,"block":[0,7,9,10,12,16],"blueprint":6,"bodi":[0,2,7,9,10,12,14,16],"boilerpl":6,"book":[6,15],"book_id":[14,15],"bookin":[14,15],"bookout":15,"books_db":14,"bool":5,"born":6,"both":[6,7,10,12,16],"bottom":14,"box":13,"bp":12,"break":9,"bring":6,"broadcast":16,"broke":[7,9],"broker":7,"browser":[7,8,10,11,14,16],"bucket":[0,10],"buffer":[0,7],"bufix":2,"bug":[2,9],"bugfix":2,"build":[2,4,6,7,8,10,11,15,16],"builder":15,"built":[2,4,6,7,9,10,16],"bump":2,"bypass":4,"byte":[0,2,6,7,13,16],"c":[5,16],"cach":[7,9,10],"caddi":4,"call":[3,7,9,10,13,14,16],"call_next":13,"callabl":0,"came":7,"can":[0,2,3,4,5,6,7,9,10,11,12,13,14,15,16],"carri":7,"case":[0,6,7,13],"cat":10,"catalog":14,"catch":[10,11,13],"categori":0,"cd":8,"ceas":2,"celeri":7,"cell":10,"central":[0,7],"certain":0,"certif":4,"chang":[0,15],"changelog":6,"channel":[10,16],"chardet":0,"chat":[6,10],"check":[0,8,9,10,11,13,16],"check_api_kei":11,"check_auth":0,"check_exist":[0,10,14,15],"choic":[7,10],"choos":10,"chunk":[0,10],"chunk_siz":0,"ci":2,"circuit":[0,1,2,6,10],"class":[2,6,7,9,11,13,14,15],"clean":[6,10,14],"cleaner":[10,11],"cleanli":5,"cleanup":10,"clear":11,"cli":2,"click":6,"client":[0,2,6,7,9,10,11,14],"clone":8,"close":[9,10,15,16],"close_database_connection_pool":0,"cloud":[3,5,6,7],"cmd":4,"code":[2,3,4,5,6,7,8,9,10,11,14,15,16],"collabor":[10,16],"colon":3,"column":15,"com":[0,3,5,7,8,10],"combin":7,"come":[7,10,12],"command":[4,6],"commit":[5,15],"common":[3,4,5,7,10,11,12,13,14],"commonli":7,"commun":[10,11],"compact":10,"compat":[0,2],"complement":[1,10],"complet":[7,10,14,16],"complex":[13,15],"compon":13,"compos":15,"compress":[6,7,13],"compromis":5,"comput":7,"concept":[2,10,12],"concern":[7,13],"concurr":[0,4],"condit":[9,10],"config":[5,15],"configur":[0,2,4,6,7,9,10,13],"conflict":2,"confus":9,"conn":15,"connect":[0,4,7,9,10,15,16],"consid":[1,7,15],"consist":[7,10],"consol":[10,15],"const":[10,16],"constructor":[0,13],"consum":10,"contact":0,"contain":[0,4,7],"container":4,"content":[0,2,6,7,9,10,14],"content_typ":[0,9,10],"context":[2,6,9,10,15,16],"contextlib":[10,15],"continu":7,"contract":9,"control":[0,4,5,7,10,11,15],"conveni":[0,5,15],"convent":[4,14],"convert":[2,7],"convertor":[2,6,12],"cooki":[0,2,5,6,7,11,12,13],"copi":4,"cor":[0,2,5,6,9,13],"core":[2,4],"coroutin":0,"correctli":4,"correspond":15,"cors_en":5,"cors_origin":5,"cors_param":[0,5,10],"corsmiddlewar":13,"count":2,"cover":[5,11,13],"cpu":[0,4,7],"crash":2,"creat":[0,6,8,9,10,11,12,15],"create_al":15,"create_asgi_app":10,"create_async_engin":15,"create_book":[14,15],"create_connect":16,"create_item":[0,10,12],"create_pet":10,"create_token":11,"createel":16,"creation":15,"credenti":11,"cross":[10,13],"crud":[6,7,14],"css":10,"csv":10,"curl":[3,7,11,14],"curly_brac":12,"custom":[0,2,6,7,9,14,16],"cut":13,"cycl":7,"d":[7,9,14],"dashboard":[5,10,11,16],"data":[0,2,5,6,7,9,10,11,12,14,15],"databas":[5,6,7,9,10,11,14],"database_url":[5,15],"date":0,"datetim":11,"db":[5,15],"debug":[0,2,6,10,12],"decim":7,"declar":[2,7],"declarativebas":15,"decod":[2,10,11],"decor":[0,2,7,10],"deep":6,"def":[0,6,7,9,10,11,12,13,14,15,16],"def456":11,"default":[0,1,2,3,5,7,9,10,15],"default_valu":[0,10],"defend":10,"defin":[0,6,7,10,11],"definit":0,"del":14,"delet":[5,6,7,10,15],"delete_book":[14,15],"deliber":7,"demo":3,"denpend":2,"dep":2,"depend":[2,4,9,13],"deploi":[4,6],"deploy":6,"depth":10,"describ":10,"descript":[0,10],"design":[7,10,14],"detail":[4,5,10,14],"detect":[0,6,10],"dev":[2,5],"develop":[3,4,5,10,15],"devic":10,"dict":[6,7,10,11,14,15],"dictionari":0,"differ":[0,3,5,6,9,10,15],"digit":7,"direct":[0,2,10],"directli":[3,6,7,9,14,15],"directori":[0,7,10],"disabl":[9,15],"discard":16,"disconnect":16,"disk":[0,7,10],"dispatch":[2,10,13],"dispos":15,"distribut":[4,10],"div":16,"django":[6,10],"do":[4,5,7,10],"doc":[8,9,10,11,14],"docker":[5,6],"dockerfil":4,"docs_rout":[0,10,14],"docstr":10,"doctyp":16,"document":[0,2,4,6,8,14,16],"doe":15,"doesn":[0,10,14,15],"domain":[0,5,10],"don":[5,7,9,10,11,12,15],"done":4,"dot":3,"dotenv":5,"doubl":14,"down":[10,15],"download":10,"dramat":2,"driver":15,"drop":[2,16],"dump":2,"dune":14,"duplex":10,"duplic":10,"durat":13,"dure":[3,4,9,15],"duti":14,"dynam":7,"e":[0,16],"e29b":7,"each":[0,4,9,10,15],"easi":[3,5,7],"echo":[6,7,15],"ecosystem":[6,7],"edit":8,"editor":[10,16],"effect":[9,14],"effici":4,"either":[0,16],"element":[0,10],"els":[7,10,11,12,15],"email":7,"emb":10,"empti":[0,14],"enabl":[2,10,13,14],"enable_async":7,"enable_hst":[0,10,13],"encod":[0,2,11],"encrypt":11,"end":[7,14],"endpoint":[0,2,6,9,10,11,12,14],"enforc":10,"engin":[7,15],"enough":[4,13],"ensur":[10,14,15,16],"enter":[9,16],"entir":[0,10,11,13,14],"entri":14,"env":[4,6],"environ":[0,3,4,6,7],"eol":2,"equival":12,"error":[0,2,5,6,15],"errorhandl":12,"escap":0,"essenti":10,"establish":16,"etc":[7,9,10],"even":[3,4,10,16],"event":[0,2,6,7,12,16],"event_typ":0,"eventsourc":10,"ever":[5,6],"everi":[0,4,5,6,7,9,10,11,13,14,15],"everyth":[0,2,4,7,10,12,14,15,16],"everywher":[3,5],"evolv":15,"exactli":[9,10],"exampl":[0,3,5,7,10,11],"exc":[0,9,10,11,14],"exceed":[0,10],"except":[0,2,6,9,10,13,16],"exception_cl":0,"exception_handl":[0,2,9,10,11,12,14],"exceptionmiddlewar":13,"execut":15,"exist":[0,2,6,12,13],"exit":[9,10,16],"exp":11,"expect":7,"expir":[0,10,11],"expire_on_commit":15,"explain":10,"explan":0,"explicit":[7,10,12],"explicitli":[10,12],"explor":[1,7,10],"export":[5,10],"expos":[4,5],"expose_head":0,"express":[6,7],"ext":[0,2,10,15],"extens":[2,7],"extern":7,"extra":[2,4,10],"extract":0,"extrem":7,"f":[0,6,7,9,10,11,13,14,16],"factori":15,"fail":[9,10,15],"failur":[2,9],"falcon":[6,10],"fall":0,"fals":[0,5,9,10,14,15],"familiar":[6,12],"fast":[4,6,7,9],"fastapi":6,"faster":10,"featur":[0,6,7],"feed":10,"feel":6,"fetch":3,"few":12,"fido":10,"field":[0,2,9,10,14],"figur":7,"file":[0,2,4,6,7,14,15,16],"filenam":[0,9],"filepath":7,"filesystem":[2,3],"fill":7,"filter":[6,7],"final":16,"find":[3,10,12],"fine":[4,10,15],"fire":[0,9],"first":[0,10,11,13,14,15],"fit":6,"fix":8,"fixtur":6,"flag":[4,10,15],"flask":[6,10],"flask_app":[10,12],"flatten":2,"float":[0,7,9],"flow":[11,13],"fly":4,"follow":7,"font":10,"forg":[5,10],"forget":0,"form":[0,7,11,12],"format":[0,2,6,7,8,10,11],"formerli":10,"forward":[4,10],"found":[2,7,14,15],"foundat":10,"fragment":3,"framework":[6,10],"franca":7,"frank":14,"freeli":16,"fresh":9,"from":[0,2,4,5,6,7,9,10,11,13,14,15,16],"from_attribut":15,"front":4,"frontend":[6,10],"fsspec":3,"full":[0,2,3,7,10],"full_url":[0,7,10],"fulli":7,"fun":6,"func":0,"function":[0,7,10,12,13],"futur":[0,6],"g":0,"game":[10,16],"gatewai":4,"gener":[0,2,5,6,9,10,13,14],"get":[0,2,5,7,10,11,15],"get_book":[14,15],"get_list":0,"get_m":11,"get_us":[0,10,12],"getelementbyid":16,"getenv":5,"git":[5,8],"github":[3,8],"gitignor":5,"give":[0,9,10,13,15],"given":[0,9],"global":[12,14],"gmt":0,"go":[7,12],"goe":[10,12],"good":[4,6,10],"googl":[3,4],"grace":4,"grade":7,"gradual":[6,10],"graduat":13,"grain":15,"graphen":[0,2,6,10],"graphiql":[2,6,10],"graphql":[0,2,6],"great":[3,6,10],"greet":[6,7,10],"greet_world":6,"greetingresourc":10,"group":[2,6],"grow":10,"guard":[6,11],"guid":[5,7,11,12,15],"guido":7,"gzip":[6,7],"gzipmiddlewar":13,"h":[7,11,14],"h1":[7,11],"ha":[7,9,12,14,16],"half":7,"halv":10,"hand":0,"handl":[0,2,4,5,6,7,11,16],"handle_auth_error":11,"handle_value_error":[0,10,14],"handler":[0,6,9,10,11,13,14],"handshak":16,"happen":[6,7],"hard":9,"hasn":0,"have":[0,2,3,7,9,12,13,14],"hdf":3,"head":3,"header":[0,2,4,5,6,7,10,11,12,13,16],"health":11,"heavi":7,"hello":[0,3,6,9,10,12,16],"hello_html":7,"hello_json":7,"hello_to":7,"hello_world":7,"helloworld":3,"help":[0,15],"helper":[6,11],"herbert":14,"here":[4,5,7,10,12,16],"high":[4,10],"hold":[0,6,7],"home":6,"honor":[4,7],"hood":10,"hook":[0,1,2,6,7,11],"host":[0,2,4,6,7,13],"hostnam":10,"hour":[10,11],"how":[5,6,7,10,11,12,14,15],"hs256":11,"hst":6,"html":[0,2,6,7,10,11,12],"http":[0,2,3,4,5,6,7,8,9,10,11,14,16],"httponli":[0,10],"httpsredirect":0,"httpsredirectmiddlewar":[0,4,13],"httpx":[2,9],"i":[0,2,3,4,5,6,7,9,10,11,12,13,14,15,16],"id":[0,2,6,7,12,13,14,15,16],"idea":12,"idempot":14,"ident":12,"identifi":10,"imag":[4,7,10,16],"immedi":[0,6,7,10],"immut":2,"imperson":5,"implement":9,"import":[0,2,3,5,6,7,9,10,11,12,13,14,15,16],"improv":2,"inaccess":0,"includ":[3,4,6,7,8,9,10,11,14],"incom":[0,7,14],"incredibli":10,"independ":4,"index":[0,7,10,16],"individu":10,"industri":10,"info":[0,2,10],"inform":[0,14],"infrastructur":[4,6],"inherit":[0,10],"initi":[0,9],"inject":10,"innermost":13,"input":[2,9,10,14,16],"insensit":[0,6,7],"insid":13,"inspect":0,"instal":[0,2,3,4,5,8,10,11,16],"instanc":[0,4,6,7,9],"instant":7,"instead":[0,7,9,10,13,14,15,16],"int":[0,2,7,10,11,12,14,15],"integ":[0,7,14,15],"integr":[13,14,15],"intens":7,"intent":6,"intention":10,"interact":[2,10,14],"interfac":[4,6,7,12],"intern":[9,10,13],"invalid":[5,9,10,11],"invalidtokenerror":11,"involv":0,"io":4,"iot":10,"ip":[0,7,10],"is_100":0,"is_200":0,"is_300":0,"is_400":0,"is_500":0,"is_class_bas":2,"is_json":[0,2,7],"is_secur":[0,7],"isbn":[14,15],"isn":[7,10,12],"issu":[2,11],"item":[0,9,10,12,15],"itemin":0,"itemout":0,"items_list":0,"iter":16,"its":[0,2,4,14,15],"itself":11,"j":10,"jan":0,"javascript":[0,3,10],"jinja2":[0,7,12],"jpeg":10,"jpg":10,"json":[0,3,6,7,10,11,14,16],"jsonifi":12,"jump":7,"just":[4,9,10,13,15,16],"jwt":11,"keep":[2,5,7,9,10,13,15,16],"kei":[0,6,7,9,10,12,15,16],"kennethreitz":[3,8],"keypress":16,"keyword":[0,7,12,13],"know":[5,7],"known":[0,11],"kwarg":0,"languag":10,"larg":[0,2,10],"larger":[5,9,13],"last":[0,13],"later":[7,9],"launch":[4,6],"layer":13,"lazi":2,"lazili":0,"lead":9,"learn":10,"legaci":12,"less":10,"let":[3,4,7,10,14,15],"level":[4,13],"librari":[9,10,16],"licens":0,"lifecycl":16,"lifespan":[0,2,6,14],"lift":7,"lightn":4,"lightweight":7,"like":[4,7,9,10,11,13,14,16],"limit":[1,2,4,6,13,15,16],"line":[6,7],"liner":2,"lingua":7,"list":[0,6,7,9,10,15],"list_book":[14,15],"list_item":10,"list_pet":10,"list_us":[0,10,12],"list_users_v2":10,"live":[10,16],"ll":[6,7,10,12,14,15],"load":[0,2,3,4,5,7,10],"load_dotenv":5,"local":[3,5,6,12],"localhost":[5,7,11,14,15,16],"locat":[0,7,11,12],"log":[4,10,11,13],"log_level":2,"log_request":13,"log_respons":10,"logic":[6,7,10],"login":[10,11],"logout":11,"long":7,"look":[3,6,7],"loop":[7,12,16],"lose":[2,15],"lower":[0,5],"lowercas":7,"machin":10,"made":[0,6],"magic":12,"mai":4,"main":3,"make":[4,5,7,9,10,11,12],"malici":10,"manag":[2,5,6,9,10,11,13,15,16],"mani":[0,4,7,10],"manual":0,"map":[2,7,10,12,15],"mapper":15,"marimo":10,"mark":[2,10],"marker":2,"marshmallow":[0,2,10],"match":[0,5,7,10,14],"matter":10,"max_ag":[0,10],"maximum":0,"me":11,"mean":[4,7,12],"mechan":10,"media":[0,2,6,7,9,10,11,12,14,15],"memori":[0,2,6,7,10],"messag":[0,7,10,11,16],"messagepack":[2,6],"metadata":[0,7,15],"method":[0,6,7,9,11,12,13,14,15,16],"microservic":10,"middelwar":0,"middlewar":[0,1,2,6,7,10],"middleware_cl":0,"middleware_config":0,"might":7,"migrat":[2,6,10,15],"mime":0,"mimetyp":[0,7,10],"min":[0,10],"mind":13,"minim":[4,16],"minimum":2,"minor":2,"miss":[2,9,10,11],"mix":10,"ml":10,"mode":[0,6,8],"model":[0,6,9,10],"model_dump":15,"model_valid":15,"modern":[4,10,11,12,15],"modifi":[0,10,13,14,15],"modul":[0,2,6,7,10],"more":[0,3,4,7,10,11,12,13,14,16],"most":[0,3,4,5,7,9,10,11,13,15],"mount":[0,2,6,12],"move":[2,7,10,12],"msgpack":[2,10],"much":[7,10],"multi":0,"multipart":[2,7],"multipl":[2,4,10,14],"multiplay":[10,16],"must":[0,7,10,11,14,16],"mutabl":6,"mutat":[0,7,12],"my_templ":7,"myapi":4,"myapp":3,"mydb":15,"mysql":15,"n":[0,7],"name":[0,5,6,7,9,10,12],"namespac":2,"nativ":12,"natur":[9,15],"nearli":12,"need":[4,5,6,7,9,10,11,12,13,15,16],"negoti":[0,6,7,9,10],"nervou":7,"network":9,"never":[5,10,11,14],"new":[0,7,9,10,12,14,16],"new_endpoint":12,"next":[6,13],"next_id":14,"nginx":4,"non":7,"none":[0,2,11,14,15],"normal":[10,16],"notabl":2,"notasecret":0,"note":[7,10,12,14],"notebook":10,"notic":7,"notif":10,"now":[2,7,10,11,15,16],"npm":3,"nullabl":15,"number":[0,7],"o":[0,5,7,12],"object":[0,2,7,10,12,13,15,16],"objecttyp":[0,10],"obviou":9,"off":[5,7],"offload":4,"offset":15,"often":[3,7,10],"ok":[0,7,9,14],"old":12,"on_delet":10,"on_ev":[0,9,10],"on_get":[6,10],"on_post":[6,10],"on_put":10,"on_request":[6,10],"on_startup":9,"onc":[10,12,14],"one":[0,2,5,6,7,10,12,15],"ones":[6,7,10],"onion":13,"onli":[0,5,7,10,12,14],"onmessag":[10,16],"open":[2,7,8,15],"open_database_connection_pool":0,"openapi":[0,2,6,14],"openapi_rout":0,"openapi_them":0,"oper":[7,10,12,14],"opt":10,"option":[0,2,4,6,7,13],"option1":13,"option2":13,"order":[0,6],"order_bi":15,"organ":[0,5,9,10,12],"origin":10,"orm":15,"other":[0,2,6,7,15],"otherwis":[0,10],"our":14,"out":[5,6,7,13],"outermost":13,"outgo":7,"output":14,"outsid":13,"over":[0,6,7,10,12,15],"overal":2,"overhead":9,"overrid":[0,10],"overwhelm":10,"own":[4,10,15],"p":[4,11,16],"pace":10,"packag":[2,3,4],"page":[0,2,5,7,10,11,16],"pagin":7,"painless":9,"pair":0,"param":[0,2,6,7,12],"paramet":[0,6,9,10,14],"parameter":0,"pars":[0,2,7,9,10],"parser":2,"part":[2,6,7,10],"parti":6,"pass":[0,7,9,12,13,15,16],"passion":6,"password":11,"patch":[7,10],"path":[0,2,3,6,7,9,10,11,13],"path_matches_rout":0,"path_param":[0,2,7],"pattern":[4,6,7,10,11,12,14,15],"payload":11,"pdf":[7,9,10],"pep":2,"per":[0,4,9,10],"perfect":10,"period":[0,2,10],"perman":7,"permit":10,"persist":[0,10,16],"person":6,"pet":[0,10],"petin":10,"petout":10,"petschema":[0,10],"photo":10,"piec":10,"pin":2,"pip":[2,3,4,5,6,8,11,15,16],"place":[5,10],"placehold":[7,16],"plain":[0,7,10,16],"platform":[2,5,6,7],"pleasant":6,"plot":10,"plu":15,"plugin":2,"poethepoet":2,"point":[3,4,14],"polici":10,"pool":[0,6,7,10,12,15],"popular":[7,10,15],"port":[0,4,5,7,9],"portion":0,"possibl":7,"post":[0,5,7,9,10,11,12,14,15],"postgresql":6,"potenti":2,"power":[6,9,10,13,15,16],"practic":10,"prefer":10,"prefix":[0,2,10],"present":7,"prevent":[5,10],"price":[0,9],"primari":0,"primary_kei":15,"print":[0,5,10,13,15,16],"privat":10,"proce":16,"process":[4,6,7,9,10,13],"process_data":7,"prod":5,"produc":[0,7],"product":[2,3,4,5,6,7,9,10,11,15],"profil":10,"programmat":10,"progress":10,"project":[2,3,8],"propag":9,"proper":[7,11,15],"properli":[5,9,15],"properti":[0,2,7,9],"protect":[4,11],"proto":4,"protocol":[3,7,9,10,16],"prototyp":[2,3,6],"provid":0,"proxi":6,"public":[0,6,10],"public_path":11,"push":[4,6,10],"put":[6,10,14,15],"py":[2,3,4,5,7,9,10,14,15],"pydant":[0,2,9,10,14,15],"pyjwt":11,"pyproject":2,"pytest":[6,8,9],"python":[0,2,3,4,5,6,7,10,14,15,16],"pythonpath":3,"q":[7,12],"queri":[2,6,7,10,15,16],"query_str":0,"querydict":0,"queue":[6,7],"quick":[0,3,6],"r":[7,9],"race":9,"railwai":4,"rais":[0,2,9,10,11],"raise_server_except":9,"random":[0,5],"rang":[0,7,10],"rapidoc":[0,10],"rare":7,"rate":[1,2,4,6,13],"rate_limit":0,"ratelimit":[0,2,10,13],"rather":9,"raw":[0,3,6,7,10,13,15,16],"re":[0,4,7,9,10,12,13,14,16],"reach":[11,13],"react":[2,10],"reactiv":10,"read":[0,2,5,6,10,11,12,14,15],"readabl":10,"readi":[4,5,6,7],"real":[2,5,10,11,14,15],"realli":[9,10],"receiv":[0,6,7,9,10,11,13,16],"receive_byt":[10,16],"receive_incom":7,"receive_json":[10,16],"receive_text":[9,10,16],"recommend":10,"reconnect":10,"recv":16,"redirect":[0,2,7,11,12],"redoc":[0,10],"reduc":2,"ref":3,"refactor":[2,9],"refer":[6,9],"refresh":15,"refus":10,"regist":[0,9,10,11],"register_blueprint":12,"reject":[9,10],"relat":[0,10,15],"releas":8,"reliabl":9,"remain":10,"rememb":11,"remov":[10,12,14,16],"renam":9,"render":[0,1,4,6,10],"render_async":7,"render_templ":12,"replac":[2,7,10,14],"report":[7,9,10],"repres":0,"represent":0,"req":[0,2,6,7,9,10,11,12,13,14,15,16],"request":[2,3,4,6,11,12,13,14,15],"request_id":[0,2,10,13],"request_model":[0,2,9,10,14,15],"requir":[0,2,9,10],"research":6,"resolv":[2,10],"resolve_hello":[0,10],"resourc":[7,10,14],"resp":[0,2,6,7,9,10,11,12,13,14,15,16],"respect":3,"respond":[0,2,3,4,5,7,8,9,10,11,12,13,14,15,16],"respons":[2,6,9,10,12,13,14,15,16],"response_model":[0,2,10,14,15],"rest":[4,6,7,10],"restrict":10,"result":[0,7,10,15],"resum":2,"resume_incomplet":2,"retri":[0,10],"retriev":[0,10,14],"return":[0,2,6,7,9,10,11,12,13,14,15],"reusabl":11,"revers":[0,6],"rfc3986":2,"right":[6,7,10,12,13],"roll":15,"room":6,"root":10,"rotat":5,"rout":[2,6,9,13,14,15,16],"routegroup":0,"router":2,"ruff":8,"rule":5,"run":[0,2,3,6,8,9,10,12,13,16],"run_sync":15,"runner":[2,4],"runtimeerror":0,"s3":3,"safe":[2,14],"sai":7,"said":4,"same":[3,4,6,7,10,12,14,15],"sandbox":6,"save":[7,16],"scalar":15,"scale":6,"schema":[0,2,6,10,11,14,15],"scope":[0,10,13],"scratch":[6,14],"script":16,"search":[0,2,7,10],"second":0,"secret":[6,10,11],"secret_kei":[0,5,10,11],"section":10,"secur":[0,10,13],"see":[0,4,5,7,9,10,13,14,15],"select":[0,2,15],"self":[0,10,11,13],"semant":2,"send":[0,2,6,9,10,11,14,16],"send_byt":[10,16],"send_email":0,"send_json":[10,16],"send_text":[9,10,16],"sensit":11,"sent":[0,2,6,7,13],"separ":[7,9,14],"sequenti":2,"serial":[0,2,7,10,16],"serializ":7,"serv":[0,2,3,4,5,6,7,9,14,16],"server":[0,2,3,4,5,6,9,11,13,14,15],"servererrormiddlewar":13,"servestat":2,"servic":[0,3,6,9,10,14],"session":[0,2,5,6,7,9,12,13,15],"session_id":10,"sessionmiddlewar":13,"set":[0,2,4,5,6,7,8,9,10,11,15,16],"set_cooki":[0,2,10],"set_text":0,"setattr":15,"setup":[2,5,6,9],"sever":[10,13],"sftp":3,"share":[0,3,7,9,10,15],"shell":5,"short":[0,1,2,6,10],"shorthand":0,"should":[5,14,15],"shouldn":0,"show":[2,10,12,15,16],"shut":[10,15],"shutdown":[0,4,6,9,10],"shutdwown":2,"sibl":6,"side":[7,10,11,16],"sign":[0,5,6,7,10,11,13],"signatur":[7,10,12],"signup":11,"simpl":[3,9,10,11,13,14,16],"simplecooki":0,"simpler":[7,10,11,13],"simplest":[5,7,11,13,16],"simpli":11,"simplic":[6,15],"simul":7,"sinc":[7,9],"singl":[0,2,3,6,7,10,12,15],"sit":13,"size":[0,15],"sk":11,"skip":[0,6,10],"slash":7,"sleep":[7,9],"slim":4,"slow":7,"slowlori":4,"slug":7,"small":[4,6,9,10],"smaller":4,"so":[9,10,12,13,14,15],"solv":10,"some":[4,5,10],"some_packag":13,"somemiddlewar":13,"someon":[5,7,10,16],"someth":[6,7,9,10],"sometim":[7,10],"somewher":7,"sourc":[0,5,8,10],"spawn":4,"spec":[7,10],"special":[6,10],"specif":[0,5,9,10,13,14],"specifi":3,"sphinx":8,"spin":7,"split":5,"sprawl":6,"sql":15,"sqlalchemi":[6,7,14],"sqlite":[5,15],"sse":[0,2,6],"ssl":4,"stabil":2,"stack":13,"stai":[12,15],"standard":[3,4,10,11,14],"starlett":[0,2,6,9,16],"start":[0,3,4,6,10,13,14,15],"startswith":11,"startup":[0,2,6,9,10],"state":[0,2,9,10,11],"statement":6,"static":[0,2,4,6,7,16],"static_app":0,"static_dir":[0,10],"static_rout":[0,2,10],"staticfil":0,"statu":[2,6,7,9,10,14],"status_cod":[0,6,7,9,10,11,12,13,14,15],"status_code_saf":0,"stderr":0,"stdlib":2,"still":[10,12],"stop":10,"storag":[3,6],"store":[0,5,10,11,14],"str":[0,7,9,10,11,14,15],"straightforward":10,"stranger":[0,10],"stream":[0,2,10],"stream_data":0,"stream_fil":[0,2,10],"strict":10,"string":[0,6,7,10,15,16],"strip":[2,10,11],"structur":10,"style":10,"stylesheet":10,"sub":11,"subclass":0,"subcommand":3,"subject":0,"submiss":0,"submit":0,"subrout":[6,10,12],"subsequ":[10,11],"subtl":2,"success":[0,7,14],"successfulli":14,"successor":4,"suit":9,"suppli":2,"support":[0,1,2,3,4,6,7,12,15,16],"swagger":[6,10,14],"swagger_ui":[0,10],"switch":[2,15,16],"sync":[2,6,7,12],"synchron":[0,12],"syntax":[2,6,7,12],"system":[3,7,10],"t":[0,4,5,7,9,10,11,12,13,14,15],"tabl":15,"take":[6,7],"tamper":[10,11],"target":2,"task":[0,2,6],"teach":6,"tear":10,"tell":[7,10,14,15],"templat":[0,1,2,6],"template_str":[0,7],"templates_dir":0,"termin":[3,4],"terms_of_servic":0,"test":[0,2,3,5,6,8,14],"test_500":[2,9],"test_api":9,"test_create_item":9,"test_custom_error":9,"test_echo":16,"test_head":9,"test_hello":9,"test_hook":9,"test_json":9,"test_upload":9,"test_valid":9,"test_websocket":9,"test_with_lifespan":9,"testclient":[0,2,9,16],"text":[0,2,6,7,9,10,12,16],"textcont":16,"than":[9,10,11,12,13,14],"thei":[0,5,7,10,12,13,14,16],"them":[6,7,9,10,11,12,14,16],"theme":[0,10],"themselv":10,"thi":[0,2,3,4,5,6,7,9,10,11,12,13,14,15,16],"thing":[5,6,7,9,13],"think":7,"third":6,"though":4,"thousand":4,"thread":[0,6,7,12],"threadpoolexecutor":[0,2],"three":[7,10,16],"through":[0,7,10,13,14,16],"throughput":10,"thu":0,"time":[0,2,6,7,9,10,12,13,14,15,16],"time_start":0,"timedelta":11,"timeout":4,"timingmiddlewar":13,"tip":6,"titl":[0,7,10,14,15],"tl":4,"togeth":[6,10],"token":[0,6,7,10,16],"token_hex":5,"toml":2,"too":[0,3,4,9,10],"tool":[8,13],"toolbelt":2,"toolkit":15,"top":[0,5],"total":10,"tour":[0,6,7],"trace":10,"traceback":[0,2,5,10],"track":15,"tradit":[10,11],"traffic":4,"transact":15,"transform":13,"translat":12,"transport":10,"treat":[0,10],"trick":10,"trigger":9,"true":[0,2,5,7,9,10,11,12,13,15,16],"trust":6,"trustedhostmiddlewar":[4,13],"try":[6,7,11,16],"tupl":[0,7,9],"tutori":[7,14],"two":[7,10,13],"type":[0,2,6,10,12,14,16],"typic":[7,10],"typo":[2,10],"ui":[2,6,10,14],"unauthor":[0,10,11],"under":[0,7,10,12],"understand":[6,7],"unexpectedli":16,"unhandl":13,"unicod":0,"union":2,"uniqu":10,"unit":15,"univers":5,"unknown":0,"unless":10,"unlik":10,"unmaintain":2,"unmatch":10,"unpin":2,"unrecogn":10,"until":7,"up":[0,2,7,8,10],"updat":[2,6,7,10,15,16],"update_book":[14,15],"upgrad":[2,8,10,16],"upload":[2,6,7],"url":[0,2,5,6,7,9,10,11,12,13,15],"url_for":[0,2,9],"url_prefix":12,"urllib":2,"us":[0,2,3,4,6,7,10,12,14,16],"usag":[0,2],"user":[0,5,7,10,11,12,15],"user_id":[7,10,11,12],"usernam":[10,11],"usual":9,"utcnow":11,"utf":0,"uuid":[0,2,7,10],"uuid4":0,"uv":[3,5,6,8,11,15],"uvicorn":[0,2,6,7],"uvloop":4,"v":6,"v1":[0,10],"v2":10,"valid":[0,2,6,7,10,11,13,14,15],"valu":[0,6,7,9,10,11,12,13,14,15,16],"valueerror":[0,9,10,12,14],"variabl":[0,4,6,7],"ve":[6,9,12],"venv":8,"verb":10,"veri":[0,7,15],"verifi":[9,11],"verify_token":11,"version":[0,2,9,10,14],"via":[0,2,5,10,12],"view":[0,2,6,7,9,12],"virtual":[3,4],"virtualenv":8,"visit":[10,14],"vue":10,"w":[9,10,16],"wa":[0,2,7,14],"wai":[3,4,6,7,10,11,12,13,15],"wait":12,"walk":[7,10,14],"want":[0,3,4,6,7,9,10,14,15,16],"watch":8,"we":[14,15,16],"web":[0,4,6,10,15],"websit":10,"websocket":[0,1,2,4,6],"websocket_connect":[9,16],"welcom":[6,7,11],"well":6,"went":6,"what":[0,7,9,10,16],"whatev":7,"when":[0,2,4,5,6,7,9,10,12,14,15,16],"where":[0,4,7,10,15,16],"whether":[0,7],"which":[0,2,7,9,10,12,15],"whichev":6,"while":[7,10,12,16],"whitenois":2,"who":[6,7,11],"widget":[9,10],"wildcard":10,"window":2,"wire":7,"with_app":10,"within":[2,10,15],"without":[0,2,4,7,9,10,15],"won":[7,9,10,15],"work":[3,4,5,6,7,10,13,14,15],"workdir":4,"worker":4,"world":[0,3,6,9,10,12],"worri":9,"would":9,"wrap":[0,7,9,10,13],"write":[6,7,10,12],"wrong":10,"ws_auth":16,"wsgi":[0,2,4,6,10,12],"www":5,"x":[0,4,7,9,10,11,12,13,14],"x00":16,"x01":16,"x02":16,"x89png":7,"xml":0,"xss":10,"yaml":[0,2,6,7,9,10],"year":[14,15],"yield":[0,10,15],"yml":[0,10,11],"you":[0,3,4,5,7,9,10,11,12,13,14,15,16],"your":[0,3,4,5,6,7,9,10,11,12,13],"yourself":7,"zero":4},"titles":["API Reference","Backlog","Changelog","Command Line Interface","Deployment","Configuration","Responder","Quick Start","Development Sandbox","Testing","Feature Tour","Authentication","Migrating from Flask","Writing Middleware","Building a REST API","Using SQLAlchemy","WebSocket Tutorial"],"titleterms":{"":14,"0":2,"01":2,"02":2,"03":2,"04":2,"08":2,"09":2,"1":2,"10":2,"11":2,"12":2,"13":2,"15":2,"16":2,"17":2,"18":2,"19":2,"2":2,"20":2,"2018":2,"2019":2,"2026":2,"22":2,"23":2,"24":2,"25":2,"26":2,"27":2,"28":2,"29":2,"3":2,"4":2,"5":2,"6":2,"7":2,"8":2,"9":2,"In":14,"It":[5,7,14,15],"The":[0,6,12],"ad":[2,13],"after":[9,10],"all":[5,7,14],"allow":5,"api":[0,9,11,12,14],"app":[10,11],"asset":3,"auth":11,"authent":11,"background":[0,7],"backlog":1,"base":10,"bearer":11,"befor":[9,10,16],"big":12,"blueprint":12,"book":14,"build":[3,14],"built":13,"chang":2,"changelog":2,"chat":16,"class":[0,5,10],"client":16,"cloud":4,"code":0,"command":3,"configur":5,"convertor":7,"cooki":[9,10],"cor":10,"creat":[7,14],"crud":15,"custom":[3,10,11],"data":16,"databas":15,"debug":5,"defin":[14,15],"delet":14,"deploy":4,"deprec":2,"develop":8,"dict":0,"differ":12,"directli":4,"docker":4,"document":10,"echo":16,"endpoint":15,"env":5,"environ":5,"error":[9,10,11,14],"event":[9,10],"except":11,"featur":10,"file":[3,5,9,10],"filter":10,"fix":2,"fixtur":9,"flask":12,"format":16,"from":[3,12],"frontend":3,"futur":1,"get":[6,9,14],"gradual":12,"graphql":10,"group":[0,10,12],"guid":6,"handl":[9,10,14],"header":9,"hello":7,"helper":0,"hook":[9,10,13,16],"host":[5,10],"how":16,"hst":10,"html":16,"id":10,"idea":[1,6],"instal":[6,15],"instanc":3,"interfac":3,"json":[9,12],"kei":[5,11],"launch":3,"lifespan":[9,10,15],"limit":[0,10],"line":3,"list":14,"local":4,"memori":14,"messagepack":10,"method":10,"middlewar":13,"migrat":12,"mode":5,"model":[14,15],"modul":3,"mount":10,"name":3,"next":14,"openapi":10,"oper":8,"order":13,"other":10,"out":14,"paramet":[7,12],"parti":13,"pattern":5,"platform":4,"postgresql":15,"project":[6,14],"proxi":4,"public":11,"put":[5,7],"queri":0,"queue":0,"quick":[7,12],"rate":[0,10],"read":7,"refer":[0,12],"remov":2,"render":7,"request":[0,7,9,10,16],"respond":6,"respons":[0,7],"rest":14,"revers":4,"room":16,"rout":[0,7,10,11,12],"run":[4,7,14,15],"sandbox":8,"secret":5,"send":7,"sent":10,"serv":10,"server":[7,10,16],"servic":7,"session":[10,11],"setup":[8,14,15],"shutdown":15,"singl":14,"skip":11,"sqlalchemi":15,"sse":10,"starlett":13,"start":[7,9],"startup":15,"static":10,"statu":0,"storag":14,"support":10,"task":7,"templat":[7,12],"test":[9,16],"third":13,"tip":[9,15],"togeth":[5,7],"token":11,"tour":10,"trust":10,"try":14,"tutori":[6,16],"type":7,"unreleas":2,"updat":14,"upload":9,"url":3,"us":[5,9,11,13,15],"user":6,"uvicorn":4,"v":13,"v0":2,"v1":2,"v2":2,"v3":2,"valid":9,"variabl":5,"view":10,"web":[7,11],"websocket":[9,10,16],"what":[6,13,14],"when":13,"work":16,"world":7,"write":13,"you":6,"your":[14,15]}}) \ No newline at end of file +Search.setIndex({"alltitles":{"API Key Authentication":[[11,"api-key-authentication"]],"API Reference":[[0,null]],"Added":[[2,"added"],[2,"id2"],[2,"id4"],[2,"id7"],[2,"id11"],[2,"id17"],[2,"id18"],[2,"id21"],[2,"id24"],[2,"id29"],[2,"id36"],[2,"id42"],[2,"id43"],[2,"id44"],[2,"id45"],[2,"id46"],[2,"id49"],[2,"id50"],[2,"id52"],[2,"id55"],[2,"id58"],[2,"id59"],[2,"id60"],[2,"id64"]],"Adding Third-Party Middleware":[[13,"adding-third-party-middleware"]],"After-Request Hooks":[[10,"after-request-hooks"]],"Allowed Hosts":[[5,"allowed-hosts"]],"Authentication":[[11,null]],"Background Queue":[[0,"background-queue"]],"Background Tasks":[[7,"background-tasks"]],"Backlog":[[1,null]],"Bearer Token Authentication":[[11,"bearer-token-authentication"]],"Before-Request Hooks":[[10,"before-request-hooks"]],"Before-Request Hooks for WebSockets":[[16,"before-request-hooks-for-websockets"]],"Blueprints \u2192 Route Groups":[[12,"blueprints-route-groups"]],"Building Frontend Assets":[[3,"building-frontend-assets"]],"Building a REST API":[[14,null]],"Built-in Middleware":[[13,"built-in-middleware"]],"CORS":[[10,"cors"]],"CRUD Endpoints":[[15,"crud-endpoints"]],"Changed":[[2,"changed"],[2,"id1"],[2,"id3"],[2,"id5"],[2,"id8"],[2,"id16"],[2,"id19"],[2,"id22"],[2,"id25"],[2,"id28"],[2,"id33"],[2,"id34"],[2,"id35"],[2,"id37"],[2,"id38"],[2,"id40"],[2,"id41"],[2,"id47"],[2,"id51"],[2,"id56"],[2,"id57"],[2,"id63"]],"Changelog":[[2,null]],"Chat Room":[[16,"chat-room"]],"Class-Based Views":[[10,"class-based-views"]],"Cloud Platforms":[[4,"cloud-platforms"]],"Command Line Interface":[[3,null]],"Configuration":[[5,null]],"Configuration Class Pattern":[[5,"configuration-class-pattern"]],"Cookie-Based Sessions":[[10,"cookie-based-sessions"]],"Cookies":[[10,"cookies"]],"Create a Book":[[14,"create-a-book"]],"Create a Web Service":[[7,"create-a-web-service"]],"Custom Error Handling":[[10,"custom-error-handling"]],"Custom Exception for Auth Errors":[[11,"custom-exception-for-auth-errors"]],"Custom Instance Names":[[3,"custom-instance-names"]],"Data Formats":[[16,"data-formats"]],"Database Setup":[[15,"database-setup"]],"Debug Mode":[[5,"debug-mode"]],"Define Your Models":[[14,"define-your-models"],[15,"define-your-models"]],"Delete a Book":[[14,"delete-a-book"]],"Deployment":[[4,null]],"Deprecated":[[2,"deprecated"]],"Development Sandbox":[[8,null]],"Docker":[[4,"docker"]],"Echo Server":[[16,"echo-server"]],"Environment Variables":[[5,"environment-variables"]],"Error Handling":[[14,"error-handling"]],"Feature Tour":[[10,null]],"Fixed":[[2,"fixed"],[2,"id6"],[2,"id10"],[2,"id12"],[2,"id13"],[2,"id14"],[2,"id15"],[2,"id20"],[2,"id23"],[2,"id26"],[2,"id27"],[2,"id30"],[2,"id31"],[2,"id32"],[2,"id39"],[2,"id48"],[2,"id53"],[2,"id54"],[2,"id61"],[2,"id62"]],"Future Ideas":[[1,"future-ideas"]],"Get a Single Book":[[14,"get-a-single-book"]],"Getting Started":[[9,"getting-started"]],"Gradual Migration":[[12,"gradual-migration"]],"GraphQL":[[10,"graphql"]],"HSTS":[[10,"hsts"]],"HTML Client":[[16,"html-client"]],"Hello World":[[7,"hello-world"]],"Hooks vs. Middleware":[[13,"hooks-vs-middleware"]],"How WebSockets Work":[[16,"how-websockets-work"]],"In-Memory Storage":[[14,"in-memory-storage"]],"Installation":[[6,"installation"],[15,"installation"]],"JSON APIs":[[12,"json-apis"]],"Launching from a File":[[3,"launching-from-a-file"]],"Launching from a Module":[[3,"launching-from-a-module"]],"Launching from a URL":[[3,"launching-from-a-url"]],"Lifespan Events":[[10,"lifespan-events"]],"Lifespan for Startup and Shutdown":[[15,"lifespan-for-startup-and-shutdown"]],"List All Books":[[14,"list-all-books"]],"MessagePack":[[10,"messagepack"]],"Method Filtering":[[10,"method-filtering"]],"Middleware Order":[[13,"middleware-order"]],"Migrating from Flask":[[12,null]],"Mounting Other Apps":[[10,"mounting-other-apps"]],"OpenAPI Documentation":[[10,"openapi-documentation"]],"Operations":[[8,"operations"]],"Project":[[6,null]],"Project Setup":[[14,"project-setup"]],"Putting It All Together":[[5,"putting-it-all-together"],[7,"putting-it-all-together"]],"Query Dict":[[0,"query-dict"]],"Quick Reference":[[12,"quick-reference"]],"Quick Start":[[7,null]],"Rate Limiter":[[0,"rate-limiter"]],"Rate Limiting":[[10,"rate-limiting"]],"Reading Requests":[[7,"reading-requests"]],"Removed":[[2,"removed"],[2,"id9"]],"Rendering Templates":[[7,"rendering-templates"]],"Request":[[0,"request"]],"Request ID":[[10,"request-id"]],"Responder":[[6,null]],"Response":[[0,"response"]],"Reverse Proxy":[[4,"reverse-proxy"]],"Route Groups":[[0,"route-groups"],[10,"route-groups"]],"Route Parameters":[[7,"route-parameters"],[12,"route-parameters"]],"Run It":[[14,"run-it"],[15,"run-it"]],"Run the Server":[[7,"run-the-server"]],"Running Locally":[[4,"running-locally"]],"Secret Key":[[5,"secret-key"]],"Sending Responses":[[7,"sending-responses"]],"Server-Sent Events (SSE)":[[10,"server-sent-events-sse"]],"Serving Files":[[10,"serving-files"]],"Setup":[[8,"setup"]],"Skipping Auth for Public Routes":[[11,"skipping-auth-for-public-routes"]],"Static Files":[[10,"static-files"]],"Status Code Helpers":[[0,"status-code-helpers"]],"Templates":[[12,"templates"]],"Testing":[[9,null]],"Testing Before and After Hooks":[[9,"testing-before-and-after-hooks"]],"Testing Error Handling":[[9,"testing-error-handling"]],"Testing File Uploads":[[9,"testing-file-uploads"]],"Testing Headers and Cookies":[[9,"testing-headers-and-cookies"]],"Testing JSON APIs":[[9,"testing-json-apis"]],"Testing Lifespan Events":[[9,"testing-lifespan-events"]],"Testing Request Validation":[[9,"testing-request-validation"]],"Testing WebSockets":[[9,"testing-websockets"],[16,"testing-websockets"]],"The API Class":[[0,"the-api-class"]],"The Big Differences":[[12,"the-big-differences"]],"The Idea":[[6,"the-idea"]],"Tips":[[9,"tips"],[15,"tips"]],"Trusted Hosts":[[10,"trusted-hosts"]],"Try It Out":[[14,"try-it-out"]],"Tutorials":[[6,null]],"Type Convertors":[[7,"type-convertors"]],"Unreleased":[[2,"unreleased"]],"Update a Book":[[14,"update-a-book"]],"User Guide":[[6,null]],"Using .env Files":[[5,"using-env-files"]],"Using Fixtures":[[9,"using-fixtures"]],"Using PostgreSQL":[[15,"using-postgresql"]],"Using SQLAlchemy":[[15,null]],"Using Sessions for Web Apps":[[11,"using-sessions-for-web-apps"]],"Using Starlette Middleware":[[13,"using-starlette-middleware"]],"Uvicorn Directly":[[4,"uvicorn-directly"]],"WebSocket Support":[[10,"websocket-support"]],"WebSocket Tutorial":[[16,null]],"What You Get":[[6,"what-you-get"]],"What\u2019s Next":[[14,"what-s-next"]],"When to Use What":[[13,"when-to-use-what"]],"Writing Middleware":[[13,null]],"v0.0.1 - 2018-10-12":[[2,"v0-0-1-2018-10-12"]],"v0.0.10 - 2018-10-17":[[2,"v0-0-10-2018-10-17"]],"v0.0.2 - 2018-10-13":[[2,"v0-0-2-2018-10-13"]],"v0.0.3 - 2018-10-13":[[2,"v0-0-3-2018-10-13"]],"v0.0.4 - 2018-10-15":[[2,"v0-0-4-2018-10-15"]],"v0.0.5 - 2018-10-15":[[2,"v0-0-5-2018-10-15"]],"v0.0.6 - 2018-10-16":[[2,"v0-0-6-2018-10-16"]],"v0.0.7 - 2018-10-16":[[2,"v0-0-7-2018-10-16"]],"v0.0.8 - 2018-10-17":[[2,"v0-0-8-2018-10-17"]],"v0.0.9 - 2018-10-17":[[2,"v0-0-9-2018-10-17"]],"v0.1.0 - 2018-10-17":[[2,"v0-1-0-2018-10-17"]],"v0.1.1 - 2018-10-17":[[2,"v0-1-1-2018-10-17"]],"v0.1.2 - 2018-10-18":[[2,"v0-1-2-2018-10-18"]],"v0.1.3 - 2018-10-18":[[2,"v0-1-3-2018-10-18"]],"v0.1.4 - 2018-10-19":[[2,"v0-1-4-2018-10-19"]],"v0.1.5 - 2018-10-20":[[2,"v0-1-5-2018-10-20"]],"v0.1.6 - 2018-10-20":[[2,"v0-1-6-2018-10-20"]],"v0.2.0 - 2018-10-22":[[2,"v0-2-0-2018-10-22"]],"v0.2.1 - 2018-10-23":[[2,"v0-2-1-2018-10-23"]],"v0.2.2 - 2018-10-23":[[2,"v0-2-2-2018-10-23"]],"v0.2.3 - 2018-10-24":[[2,"v0-2-3-2018-10-24"]],"v0.3.0 - 2018-10-24":[[2,"v0-3-0-2018-10-24"]],"v0.3.1 - 2018-10-24":[[2,"v0-3-1-2018-10-24"]],"v0.3.2 - 2018-10-25":[[2,"v0-3-2-2018-10-25"]],"v0.3.3 - 2018-10-25":[[2,"v0-3-3-2018-10-25"]],"v1.0.0 - 2018-10-26":[[2,"v1-0-0-2018-10-26"]],"v1.0.1 - 2018-10-26":[[2,"v1-0-1-2018-10-26"]],"v1.0.2 - 2018-10-27":[[2,"v1-0-2-2018-10-27"]],"v1.0.3 - 2018-10-27":[[2,"v1-0-3-2018-10-27"]],"v1.0.4 - 2018-10-27":[[2,"v1-0-4-2018-10-27"]],"v1.0.5- 2018-10-27":[[2,"v1-0-5-2018-10-27"]],"v1.1.0 - 2018-10-27":[[2,"v1-1-0-2018-10-27"]],"v1.1.1 - 2018-10-29":[[2,"v1-1-1-2018-10-29"]],"v1.1.2 - 2018-11-11":[[2,"v1-1-2-2018-11-11"]],"v1.1.3 - 2019-01-12":[[2,"v1-1-3-2019-01-12"]],"v1.2.0 - 2018-12-29":[[2,"v1-2-0-2018-12-29"]],"v1.3.0 - 2019-02-22":[[2,"v1-3-0-2019-02-22"]],"v1.3.1 - 2019-04-28":[[2,"v1-3-1-2019-04-28"]],"v1.3.2 - 2019-08-15":[[2,"v1-3-2-2019-08-15"]],"v2.0.0 - 2019-09-19":[[2,"v2-0-0-2019-09-19"]],"v2.0.1 - 2019-09-20":[[2,"v2-0-1-2019-09-20"]],"v2.0.2 - 2019-09-20":[[2,"v2-0-2-2019-09-20"]],"v2.0.3 - 2019-09-20":[[2,"v2-0-3-2019-09-20"]],"v2.0.4 - 2019-11-19":[[2,"v2-0-4-2019-11-19"]],"v2.0.5 - 2019-12-15":[[2,"v2-0-5-2019-12-15"]],"v3.0.0 - 2026-03-22":[[2,"v3-0-0-2026-03-22"]],"v3.2.0 - 2026-03-22":[[2,"v3-2-0-2026-03-22"]],"v3.3.0 - 2026-03-22":[[2,"v3-3-0-2026-03-22"]],"v3.4.0 - 2026-03-22":[[2,"v3-4-0-2026-03-22"]],"v3.5.0 - 2026-03-24":[[2,"v3-5-0-2026-03-24"]]},"docnames":["api","backlog","changes","cli","deployment","guide-config","index","quickstart","sandbox","testing","tour","tutorial-auth","tutorial-flask","tutorial-middleware","tutorial-rest","tutorial-sqlalchemy","tutorial-websockets"],"envversion":{"sphinx":65,"sphinx.domains.c":3,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":9,"sphinx.domains.index":1,"sphinx.domains.javascript":3,"sphinx.domains.math":2,"sphinx.domains.python":4,"sphinx.domains.rst":2,"sphinx.domains.std":2,"sphinx.ext.viewcode":1},"filenames":["api.rst","backlog.md","changes.md","cli.rst","deployment.rst","guide-config.rst","index.rst","quickstart.rst","sandbox.md","testing.rst","tour.rst","tutorial-auth.rst","tutorial-flask.rst","tutorial-middleware.rst","tutorial-rest.rst","tutorial-sqlalchemy.rst","tutorial-websockets.rst"],"indexentries":{"accepts() (responder.request method)":[[0,"responder.Request.accepts",false]],"add_event_handler() (responder.api method)":[[0,"responder.API.add_event_handler",false]],"add_middleware() (responder.api method)":[[0,"responder.API.add_middleware",false]],"add_route() (responder.api method)":[[0,"responder.API.add_route",false]],"after_request() (responder.api method)":[[0,"responder.API.after_request",false]],"api (class in responder)":[[0,"responder.API",false]],"apparent_encoding (responder.request property)":[[0,"responder.Request.apparent_encoding",false]],"backgroundqueue (class in responder.background)":[[0,"responder.background.BackgroundQueue",false]],"before_request() (responder.api method)":[[0,"responder.API.before_request",false]],"check() (responder.ext.ratelimit.ratelimiter method)":[[0,"responder.ext.ratelimit.RateLimiter.check",false]],"client (responder.request property)":[[0,"responder.Request.client",false]],"content (responder.request property)":[[0,"responder.Request.content",false]],"cookies (responder.request property)":[[0,"responder.Request.cookies",false]],"encoding (responder.request property)":[[0,"responder.Request.encoding",false]],"exception_handler() (responder.api method)":[[0,"responder.API.exception_handler",false]],"file() (responder.response method)":[[0,"responder.Response.file",false]],"full_url (responder.request property)":[[0,"responder.Request.full_url",false]],"get() (responder.models.querydict method)":[[0,"responder.models.QueryDict.get",false]],"get_list() (responder.models.querydict method)":[[0,"responder.models.QueryDict.get_list",false]],"graphql() (responder.api method)":[[0,"responder.API.graphql",false]],"group() (responder.api method)":[[0,"responder.API.group",false]],"headers (responder.request property)":[[0,"responder.Request.headers",false]],"install() (responder.ext.ratelimit.ratelimiter method)":[[0,"responder.ext.ratelimit.RateLimiter.install",false]],"is_100() (in module responder.status_codes)":[[0,"responder.status_codes.is_100",false]],"is_200() (in module responder.status_codes)":[[0,"responder.status_codes.is_200",false]],"is_300() (in module responder.status_codes)":[[0,"responder.status_codes.is_300",false]],"is_400() (in module responder.status_codes)":[[0,"responder.status_codes.is_400",false]],"is_500() (in module responder.status_codes)":[[0,"responder.status_codes.is_500",false]],"is_json (responder.request property)":[[0,"responder.Request.is_json",false]],"is_secure (responder.request property)":[[0,"responder.Request.is_secure",false]],"items() (responder.models.querydict method)":[[0,"responder.models.QueryDict.items",false]],"items_list() (responder.models.querydict method)":[[0,"responder.models.QueryDict.items_list",false]],"media() (responder.request method)":[[0,"responder.Request.media",false]],"method (responder.request property)":[[0,"responder.Request.method",false]],"mimetype (responder.request property)":[[0,"responder.Request.mimetype",false]],"module":[[0,"module-responder",false]],"mount() (responder.api method)":[[0,"responder.API.mount",false]],"ok (responder.response property)":[[0,"responder.Response.ok",false]],"on_event() (responder.api method)":[[0,"responder.API.on_event",false]],"params (responder.request property)":[[0,"responder.Request.params",false]],"path_matches_route() (responder.api method)":[[0,"responder.API.path_matches_route",false]],"path_params (responder.request property)":[[0,"responder.Request.path_params",false]],"querydict (class in responder.models)":[[0,"responder.models.QueryDict",false]],"ratelimiter (class in responder.ext.ratelimit)":[[0,"responder.ext.ratelimit.RateLimiter",false]],"redirect() (responder.api method)":[[0,"responder.API.redirect",false]],"redirect() (responder.response method)":[[0,"responder.Response.redirect",false]],"request (class in responder)":[[0,"responder.Request",false]],"requests (responder.api property)":[[0,"responder.API.requests",false]],"responder":[[0,"module-responder",false]],"response (class in responder)":[[0,"responder.Response",false]],"route() (responder.api method)":[[0,"responder.API.route",false]],"routegroup (class in responder.api)":[[0,"responder.api.RouteGroup",false]],"run() (responder.api method)":[[0,"responder.API.run",false]],"run() (responder.background.backgroundqueue method)":[[0,"responder.background.BackgroundQueue.run",false]],"schema() (responder.api method)":[[0,"responder.API.schema",false]],"serve() (responder.api method)":[[0,"responder.API.serve",false]],"session (responder.request property)":[[0,"responder.Request.session",false]],"session() (responder.api method)":[[0,"responder.API.session",false]],"set_cookie() (responder.response method)":[[0,"responder.Response.set_cookie",false]],"sse() (responder.response method)":[[0,"responder.Response.sse",false]],"state (responder.request property)":[[0,"responder.Request.state",false]],"static_app (responder.api property)":[[0,"responder.API.static_app",false]],"status_code_safe (responder.response property)":[[0,"responder.Response.status_code_safe",false]],"stream() (responder.response method)":[[0,"responder.Response.stream",false]],"stream_file() (responder.response method)":[[0,"responder.Response.stream_file",false]],"task() (responder.background.backgroundqueue method)":[[0,"responder.background.BackgroundQueue.task",false]],"template() (responder.api method)":[[0,"responder.API.template",false]],"template_string() (responder.api method)":[[0,"responder.API.template_string",false]],"text (responder.request property)":[[0,"responder.Request.text",false]],"url (responder.request property)":[[0,"responder.Request.url",false]],"url_for() (responder.api method)":[[0,"responder.API.url_for",false]]},"objects":{"":[[0,0,0,"-","responder"]],"responder":[[0,1,1,"","API"],[0,1,1,"","Request"],[0,1,1,"","Response"]],"responder.API":[[0,2,1,"","add_event_handler"],[0,2,1,"","add_middleware"],[0,2,1,"","add_route"],[0,2,1,"","after_request"],[0,2,1,"","before_request"],[0,2,1,"","exception_handler"],[0,2,1,"","graphql"],[0,2,1,"","group"],[0,2,1,"","mount"],[0,2,1,"","on_event"],[0,2,1,"","path_matches_route"],[0,2,1,"","redirect"],[0,3,1,"","requests"],[0,2,1,"","route"],[0,2,1,"","run"],[0,2,1,"","schema"],[0,2,1,"","serve"],[0,2,1,"","session"],[0,3,1,"","static_app"],[0,2,1,"","template"],[0,2,1,"","template_string"],[0,2,1,"","url_for"]],"responder.Request":[[0,2,1,"","accepts"],[0,3,1,"","apparent_encoding"],[0,3,1,"","client"],[0,3,1,"","content"],[0,3,1,"","cookies"],[0,3,1,"","encoding"],[0,3,1,"","full_url"],[0,3,1,"","headers"],[0,3,1,"","is_json"],[0,3,1,"","is_secure"],[0,2,1,"","media"],[0,3,1,"","method"],[0,3,1,"","mimetype"],[0,3,1,"","params"],[0,3,1,"","path_params"],[0,3,1,"","session"],[0,3,1,"","state"],[0,3,1,"","text"],[0,3,1,"","url"]],"responder.Response":[[0,2,1,"","file"],[0,3,1,"","ok"],[0,2,1,"","redirect"],[0,2,1,"","set_cookie"],[0,2,1,"","sse"],[0,3,1,"","status_code_safe"],[0,2,1,"","stream"],[0,2,1,"","stream_file"]],"responder.api":[[0,1,1,"","RouteGroup"]],"responder.background":[[0,1,1,"","BackgroundQueue"]],"responder.background.BackgroundQueue":[[0,2,1,"","run"],[0,2,1,"","task"]],"responder.ext.ratelimit":[[0,1,1,"","RateLimiter"]],"responder.ext.ratelimit.RateLimiter":[[0,2,1,"","check"],[0,2,1,"","install"]],"responder.models":[[0,1,1,"","QueryDict"]],"responder.models.QueryDict":[[0,2,1,"","get"],[0,2,1,"","get_list"],[0,2,1,"","items"],[0,2,1,"","items_list"]],"responder.status_codes":[[0,4,1,"","is_100"],[0,4,1,"","is_200"],[0,4,1,"","is_300"],[0,4,1,"","is_400"],[0,4,1,"","is_500"]]},"objnames":{"0":["py","module","Python module"],"1":["py","class","Python class"],"2":["py","method","Python method"],"3":["py","property","Python property"],"4":["py","function","Python function"]},"objtypes":{"0":"py:module","1":"py:class","2":"py:method","3":"py:property","4":"py:function"},"terms":{"":[0,2,3,4,5,6,7,9,10,11,12,13,15,16],"0":[3,4,5,7,10,14,15],"00":0,"01":0,"0441172719":14,"1":[0,3,4,5,7,10,11,12,14,16],"10":[0,6,7,10],"100":[0,2,10],"127":[3,4,5],"13":4,"14":2,"150mb":4,"1965":14,"2":[4,7,9,10,14,15,16],"200":[0,7,9,10,14],"201":[7,9,12,14,15],"2026":0,"204":[14,15],"24":11,"2xx":0,"3":[4,6,7,9,10,14,16],"3000":5,"301":[0,7],"308":2,"32":5,"3600":[0,10],"3f":13,"4":[4,7],"40":2,"400":[0,2,9,10,14],"401":[0,10,11],"404":[0,7,12,14,15],"41d4":7,"422":[2,9,10,14],"429":[0,10],"446655440000":7,"500":[2,7,9,10,13,14],"5000":10,"5042":[3,4,7,11,14,16],"550e8400":7,"561":2,"60":[0,2,10],"600":[0,10],"7":11,"8":0,"80":4,"8000":[4,7],"8192":0,"9":9,"978":14,"99":9,"A":[0,4,5,6,7,10,13,16],"And":[5,6,7],"As":[0,10],"But":[7,9,10],"By":[3,7,9,10,13,14],"For":[0,3,4,5,7,9,10,11,14,15],"If":[0,3,5,6,7,9,10,12,15],"In":[0,5,6,7,10,11,12,15,16],"It":[0,3,6,9,10,13],"No":[6,9,10,12,14],"Not":7,"On":[5,10],"One":[6,7,9],"Or":[0,5],"That":[4,6,7,9],"The":[2,3,4,5,7,9,10,11,13,14,15,16],"There":[9,10],"These":7,"To":[14,15],"Will":0,"With":[0,5],"__init__":11,"__main__":[4,6,7,9,14,15],"__name__":[4,6,7,9,10,12,14,15],"__tablename__":15,"_route_for":2,"a2wsgi":2,"a716":7,"abc":14,"abc123":[0,9,10,11],"abil":2,"abl":0,"abort":12,"about":[4,7,9,12],"abov":[6,11],"abstract":15,"accept":[0,2,7,9,10,16],"access":[0,2,4,10,11,15],"acm":3,"acquir":8,"across":[2,4,10,15],"activ":[8,16],"actual":[0,7,10],"ad":[0,1,6,10],"adapt":10,"add":[0,1,2,5,7,11,13,14,15,16],"add_event_handl":0,"add_head":[10,13],"add_middlewar":[0,13],"add_request_id":0,"add_rout":[0,10],"add_tim":[9,10],"add_vers":9,"addeventlisten":16,"addit":[0,13],"address":[0,5,7,10],"adher":2,"admin":11,"affect":10,"after":[0,6,7,11,15,16],"after_request":[0,1,2,9,10,13],"ag":[0,10],"again":11,"against":[0,4,10,11],"agre":7,"ahead":2,"ai":10,"aiosqlit":15,"alemb":15,"algorithm":11,"alias":2,"alic":10,"all":[0,2,3,4,6,8,9,10,12,13,15,16],"alloc":9,"allow":[6,10],"allow_credenti":[0,10],"allow_head":[0,10],"allow_method":[0,5,10],"allow_origin":[0,5,10],"allow_origin_regex":0,"allowed_host":[0,5,10],"alongsid":10,"alpin":4,"alreadi":[0,9,10],"also":[0,2,3,7,9,10],"altern":[0,10],"alwai":[4,5,6,7,10],"an":[0,3,5,7,10,12,13,14,15,16],"analysi":10,"angle_bracket":12,"angular":10,"ani":[0,3,4,5,6,7,9,10,11,13,14,15,16],"annot":[2,6,7,10],"annual":[7,10],"answer":[10,16],"anyon":6,"anyth":7,"anywher":[4,10],"api":[2,3,4,5,6,7,10,13,15,16],"api_kei":11,"api_v1":12,"apispec":2,"app":[0,2,3,4,5,6,7,9,12,14,15,16],"appar":0,"apparent_encod":0,"appear":10,"appendchild":16,"appli":[0,13],"applic":[0,2,3,4,5,7,9,10,11,13,14,15],"approach":[5,10,11,12],"appropri":[10,15],"ar":[0,2,3,4,6,7,9,10,11,12,13,15,16],"architectur":10,"aren":[7,13],"arg":[0,12],"argument":[0,2,7,12,13],"around":[0,6],"arriv":[7,12],"asgi":[0,2,4,6,7,10,12,13],"ask":[6,10,16],"assert":[9,16],"asset":[0,4,6,10],"assign":14,"associ":0,"async":[0,1,2,4,6,7,9,10,11,12,13,14,15,16],"async_sess":15,"async_sessionmak":15,"asynccontextmanag":[10,15],"asynchron":[2,4],"asyncio":[2,15],"asyncpg":15,"attach":10,"attack":[4,5,10],"attribut":[0,3,15],"audio":16,"auth":[2,6,10,13],"auth_check":10,"auth_guard":11,"authent":[6,7,10,13,16],"autherror":11,"author":[0,7,8,10,11,13,14,15],"auto":[2,10,16],"auto_escap":0,"autobuild":8,"autoincr":15,"automat":[0,2,4,5,6,7,9,10,11,12,13,14,15],"avail":[0,7],"avoid":[9,10],"aw":4,"await":[0,2,7,9,10,11,12,13,14,15,16],"azur":[3,4],"b":[7,9,13,15,16],"back":[0,7,10,15,16],"background":[2,6],"backgroundqueu":0,"backlog":6,"bad":[9,10,14],"balanc":4,"bandwidth":10,"bar":10,"bare":2,"base":[0,2,6,11,13,15],"base_url":0,"basehttpmiddlewar":13,"basemodel":[0,9,10,14,15],"basic":7,"batteri":6,"battl":6,"bearer":6,"becaus":[0,6,7,11,12,14],"becom":[0,15],"been":0,"befor":[0,2,6,7,11,13,15],"before_request":[0,1,2,9,10,11,12,13,16],"begin":15,"behavior":[5,13],"behind":[4,10],"being":0,"best":6,"better":6,"between":13,"bidirect":[10,16],"big":6,"biggest":12,"bin":8,"binari":[7,10,16],"bind":[0,4,5,7],"blob":3,"block":[0,7,9,10,12,16],"blueprint":6,"bodi":[0,2,7,9,10,12,14,16],"boilerpl":6,"book":[6,15],"book_id":[14,15],"bookin":[14,15],"bookout":15,"books_db":14,"bool":5,"born":6,"both":[6,7,10,12,16],"bottom":14,"box":13,"bp":12,"break":[2,9],"bring":6,"broad":2,"broadcast":16,"broke":[7,9],"broker":7,"browser":[7,8,10,11,14,16],"bucket":[0,10],"buffer":[0,7],"bufix":2,"bug":[2,9],"bugfix":2,"build":[2,4,6,7,8,10,11,15,16],"builder":15,"built":[2,4,6,7,9,10,16],"bump":2,"bypass":4,"byte":[0,2,6,7,13,16],"c":[5,16],"cach":[7,9,10],"caddi":4,"call":[2,3,7,9,10,13,14,16],"call_next":13,"callabl":0,"came":7,"can":[0,2,3,4,5,6,7,9,10,11,12,13,14,15,16],"carri":7,"case":[0,6,7,13],"cat":10,"catalog":14,"catch":[10,11,13],"categori":0,"cd":8,"ceas":2,"celeri":7,"cell":10,"central":[0,7],"certain":0,"certif":4,"chang":[0,15],"changelog":6,"channel":[10,16],"chardet":0,"chat":[2,6,10],"check":[0,8,9,10,11,13,16],"check_api_kei":11,"check_auth":0,"check_exist":[0,10,14,15],"choic":[7,10],"choos":10,"chunk":[0,10],"chunk_siz":0,"ci":2,"circuit":[0,1,2,6,10],"class":[2,6,7,9,11,13,14,15],"clean":[6,10,14],"cleaner":[10,11],"cleanli":5,"cleanup":[2,10],"clear":11,"cli":2,"click":6,"client":[0,2,6,7,9,10,11,14],"clone":8,"close":[9,10,15,16],"close_database_connection_pool":0,"cloud":[3,5,6,7],"cmd":4,"code":[2,3,4,5,6,7,8,9,10,11,14,15,16],"codebas":2,"collabor":[10,16],"colon":3,"column":15,"com":[0,3,5,7,8,10],"combin":7,"come":[7,10,12],"command":[4,6],"commit":[5,15],"common":[3,4,5,7,10,11,12,13,14],"commonli":7,"commun":[10,11],"compact":10,"compat":[0,2],"complement":[1,10],"complet":[7,10,14,16],"complex":[13,15],"compon":13,"compos":15,"comprehens":2,"compress":[6,7,13],"compromis":5,"comput":7,"concept":[2,10,12],"concern":[7,13],"concurr":[0,4],"condit":[9,10],"config":[5,15],"configur":[0,2,4,6,7,9,10,13],"conflict":2,"confus":9,"conn":15,"connect":[0,4,7,9,10,15,16],"consid":[1,7,15],"consist":[7,10],"consol":[10,15],"const":[10,16],"constructor":[0,13],"consum":10,"contact":0,"contain":[0,4,7],"container":4,"content":[0,2,6,7,9,10,14],"content_typ":[0,9,10],"context":[2,6,9,10,15,16],"contextlib":[10,15],"continu":7,"contract":9,"control":[0,4,5,7,10,11,15],"conveni":[0,5,15],"convent":[4,14],"convert":[2,7],"convertor":[2,6,12],"cooki":[0,2,5,6,7,11,12,13],"copi":4,"cor":[0,2,5,6,9,13],"core":[2,4],"coroutin":0,"correctli":4,"correspond":15,"cors_en":5,"cors_origin":5,"cors_param":[0,5,10],"corsmiddlewar":13,"count":2,"cover":[5,11,13],"coverag":2,"cpu":[0,4,7],"crash":2,"creat":[0,6,8,9,10,11,12,15],"create_al":15,"create_asgi_app":10,"create_async_engin":15,"create_book":[14,15],"create_connect":16,"create_item":[0,10,12],"create_pet":10,"create_token":11,"createel":16,"creation":15,"credenti":11,"cross":[10,13],"crud":[6,7,14],"css":10,"csv":10,"curl":[3,7,11,14],"curly_brac":12,"custom":[0,2,6,7,9,14,16],"cut":13,"cycl":7,"d":[7,9,14],"dashboard":[5,10,11,16],"data":[0,2,5,6,7,9,10,11,12,14,15],"databas":[5,6,7,9,10,11,14],"database_url":[5,15],"date":0,"datetim":11,"db":[5,15],"debug":[0,2,6,10,12],"decim":7,"declar":[2,7],"declarativebas":15,"decod":[2,10,11],"decor":[0,2,7,10],"deep":6,"def":[0,6,7,9,10,11,12,13,14,15,16],"def456":11,"default":[0,1,2,3,5,7,9,10,15],"default_valu":[0,10],"defend":10,"defin":[0,6,7,10,11],"definit":0,"del":14,"delet":[5,6,7,10,15],"delete_book":[14,15],"deliber":7,"demo":3,"denpend":2,"dep":2,"depend":[2,4,9,13],"deploi":[4,6],"deploy":[2,6],"depth":10,"describ":10,"descript":[0,10],"design":[7,10,14],"detail":[4,5,10,14],"detect":[0,6,10],"dev":[2,5],"develop":[3,4,5,10,15],"devic":10,"dict":[6,7,10,11,14,15],"dictionari":0,"differ":[0,3,5,6,9,10,15],"digit":7,"direct":[0,2,10],"directli":[3,6,7,9,14,15],"directori":[0,7,10],"disabl":[9,15],"discard":16,"disconnect":16,"disk":[0,7,10],"dispatch":[2,10,13],"dispos":15,"distribut":[4,10],"div":16,"django":[6,10],"do":[4,5,7,10],"doc":[2,8,9,10,11,14],"docker":[5,6],"dockerfil":4,"docs_rout":[0,10,14],"docstr":[2,10],"doctyp":16,"document":[0,2,4,6,8,14,16],"doe":15,"doesn":[0,10,14,15],"domain":[0,5,10],"don":[5,7,9,10,11,12,15],"done":4,"dot":3,"dotenv":5,"doubl":14,"down":[10,15],"download":10,"dramat":2,"driver":15,"drop":[2,16],"dump":2,"dune":14,"duplex":10,"duplic":10,"durat":13,"dure":[3,4,9,15],"duti":14,"dynam":7,"e":[0,16],"e29b":7,"each":[0,4,9,10,15],"easi":[3,5,7],"echo":[6,7,15],"ecosystem":[6,7],"edit":8,"editor":[10,16],"effect":[9,14],"effici":4,"either":[0,16],"element":[0,10],"els":[7,10,11,12,15],"email":7,"emb":10,"empti":[0,14],"enabl":[2,10,13,14],"enable_async":7,"enable_hst":[0,10,13],"encod":[0,2,11],"encrypt":11,"end":[7,14],"endpoint":[0,2,6,9,10,11,12,14],"enforc":10,"engin":[7,15],"enough":[4,13],"ensur":[10,14,15,16],"enter":[9,16],"entir":[0,10,11,13,14],"entri":14,"env":[4,6],"environ":[0,3,4,6,7],"eol":2,"equival":12,"error":[0,2,5,6,15],"errorhandl":12,"escap":0,"essenti":10,"establish":16,"etc":[7,9,10],"even":[3,4,10,16],"event":[0,2,6,7,12,16],"event_typ":0,"eventsourc":10,"ever":[5,6],"everi":[0,4,5,6,7,9,10,11,13,14,15],"everyth":[0,2,4,7,10,12,14,15,16],"everywher":[3,5],"evolv":15,"exact":2,"exactli":[9,10],"exampl":[0,2,3,5,7,10,11],"exc":[0,9,10,11,14],"exceed":[0,10],"except":[0,2,6,9,10,13,16],"exception_cl":0,"exception_handl":[0,2,9,10,11,12,14],"exceptionmiddlewar":13,"execut":15,"exist":[0,2,6,12,13],"exit":[9,10,16],"exp":11,"expand":2,"expect":7,"expir":[0,10,11],"expire_on_commit":15,"explain":10,"explan":0,"explicit":[7,10,12],"explicitli":[10,12],"explor":[1,7,10],"export":[5,10],"expos":[4,5],"expose_head":0,"express":[6,7],"ext":[0,2,10,15],"extens":[2,7],"extern":7,"extra":[2,4,10],"extract":0,"extrem":7,"f":[0,6,7,9,10,11,13,14,16],"factori":15,"fail":[9,10,15],"failur":[2,9],"falcon":[6,10],"fall":0,"fals":[0,5,9,10,14,15],"familiar":[6,12],"fast":[4,6,7,9],"fastapi":6,"faster":10,"featur":[0,6,7],"feed":10,"feel":6,"fetch":3,"few":12,"fido":10,"field":[0,2,9,10,14],"figur":7,"file":[0,2,4,6,7,14,15,16],"filenam":[0,9],"filepath":7,"filesystem":[2,3],"fill":7,"filter":[6,7],"final":16,"find":[3,10,12],"fine":[4,10,15],"fire":[0,9],"first":[0,10,11,13,14,15],"fit":6,"fix":8,"fixtur":6,"flag":[4,10,15],"flask":[2,6,10],"flask_app":[10,12],"flatten":2,"float":[0,7,9],"flow":[11,13],"fly":4,"fmt":2,"follow":7,"font":10,"forg":[5,10],"forget":0,"form":[0,7,11,12],"format":[0,2,6,7,8,10,11],"formerli":10,"forward":[4,10],"found":[2,7,14,15],"foundat":10,"fragment":3,"framework":[6,10],"franca":7,"frank":14,"free":2,"freeli":16,"fresh":9,"from":[0,2,4,5,6,7,9,10,11,13,14,15,16],"from_attribut":15,"front":4,"frontend":[6,10],"fsspec":3,"full":[0,2,3,7,10],"full_url":[0,7,10],"fulli":7,"fun":6,"func":0,"function":[0,7,10,12,13],"futur":[0,2,6],"g":0,"game":[10,16],"gatewai":4,"gener":[0,2,5,6,9,10,13,14],"get":[0,2,5,7,10,11,15],"get_book":[14,15],"get_list":0,"get_m":11,"get_us":[0,10,12],"getelementbyid":16,"getenv":5,"git":[5,8],"github":[2,3,8],"gitignor":5,"give":[0,9,10,13,15],"given":[0,9],"global":[12,14],"gmt":0,"go":[7,12],"goe":[10,12],"good":[4,6,10],"googl":[3,4],"grace":4,"grade":7,"gradual":[6,10],"graduat":13,"grain":15,"graphen":[0,2,6,10],"graphiql":[2,6,10],"graphql":[0,2,6],"great":[3,6,10],"greet":[6,7,10],"greet_world":6,"greetingresourc":10,"group":[2,6],"grow":10,"guard":[6,11],"guid":[2,5,7,11,12,15],"guido":7,"gzip":[6,7],"gzipmiddlewar":13,"h":[7,11,14],"h1":[7,11],"ha":[7,9,12,14,16],"half":7,"halv":10,"hand":0,"handl":[0,2,4,5,6,7,11,16],"handle_auth_error":11,"handle_value_error":[0,10,14],"handler":[0,6,9,10,11,13,14],"handshak":16,"happen":[6,7],"hard":9,"hasn":0,"have":[0,2,3,7,9,12,13,14],"hdf":3,"head":3,"header":[0,2,4,5,6,7,10,11,12,13,16],"health":11,"heavi":7,"hello":[0,3,6,9,10,12,16],"hello_html":7,"hello_json":7,"hello_to":7,"hello_world":7,"helloworld":3,"help":[0,15],"helper":[6,11],"herbert":14,"here":[4,5,7,10,12,16],"high":[4,10],"hold":[0,6,7],"home":6,"homepag":2,"honor":[4,7],"hood":10,"hook":[0,1,2,6,7,11],"host":[0,2,4,6,7,13],"hostnam":10,"hour":[10,11],"how":[5,6,7,10,11,12,14,15],"hs256":11,"hst":6,"html":[0,2,6,7,10,11,12],"http":[0,2,3,4,5,6,7,8,9,10,11,14,16],"httponli":[0,10],"httpsredirect":0,"httpsredirectmiddlewar":[0,4,13],"httpx":[2,9],"i":[0,2,3,4,5,6,7,9,10,11,12,13,14,15,16],"id":[0,2,6,7,12,13,14,15,16],"idea":12,"idempot":14,"ident":12,"identifi":10,"imag":[4,7,10,16],"immedi":[0,6,7,10],"immut":2,"imperson":5,"implement":9,"import":[0,2,3,5,6,7,9,10,11,12,13,14,15,16],"improv":2,"inaccess":0,"includ":[3,4,6,7,8,9,10,11,14],"incom":[0,7,14],"incredibli":10,"independ":4,"index":[0,7,10,16],"individu":10,"industri":10,"info":[0,2,10],"inform":[0,14],"infrastructur":[4,6],"inherit":[0,10],"initi":[0,9],"inject":10,"innermost":13,"input":[2,9,10,14,16],"insensit":[0,6,7],"insid":13,"inspect":[0,2],"instal":[0,2,3,4,5,8,10,11,16],"instanc":[0,4,6,7,9],"instant":7,"instead":[0,7,9,10,13,14,15,16],"int":[0,2,7,10,11,12,14,15],"integ":[0,7,14,15],"integr":[13,14,15],"intens":7,"intent":6,"intention":10,"interact":[2,10,14],"interfac":[2,4,6,7,12],"intern":[9,10,13],"invalid":[5,9,10,11],"invalidtokenerror":11,"involv":0,"io":4,"iot":10,"ip":[0,7,10],"is_100":0,"is_200":0,"is_300":0,"is_400":0,"is_500":0,"is_class_bas":2,"is_json":[0,2,7],"is_secur":[0,7],"isbn":[14,15],"iscoroutinefunct":2,"isn":[7,10,12],"issu":[2,11],"item":[0,9,10,12,15],"itemin":0,"itemout":0,"items_list":0,"iter":16,"its":[0,2,4,14,15],"itself":11,"j":10,"jan":0,"javascript":[0,3,10],"jinja2":[0,7,12],"jpeg":10,"jpg":10,"json":[0,3,6,7,10,11,14,16],"jsonifi":12,"jump":7,"just":[4,9,10,13,15,16],"jwt":11,"keep":[2,5,7,9,10,13,15,16],"kei":[0,6,7,9,10,12,15,16],"kennethreitz":[3,8],"keypress":16,"keyword":[0,7,12,13],"know":[5,7],"known":[0,11],"kwarg":0,"languag":10,"larg":[0,2,10],"larger":[5,9,13],"last":[0,13],"later":[7,9],"launch":[4,6],"layer":13,"lazi":2,"lazili":0,"lead":9,"learn":10,"legaci":12,"less":10,"let":[3,4,7,10,14,15],"level":[4,13],"librari":[9,10,16],"licens":0,"lifecycl":16,"lifespan":[0,2,6,14],"lift":7,"lightn":4,"lightweight":7,"like":[4,7,9,10,11,13,14,16],"limit":[1,2,4,6,13,15,16],"line":[6,7],"liner":2,"lingua":7,"list":[0,6,7,9,10,15],"list_book":[14,15],"list_item":10,"list_pet":10,"list_us":[0,10,12],"list_users_v2":10,"live":[10,16],"ll":[6,7,10,12,14,15],"load":[0,2,3,4,5,7,10],"load_dotenv":5,"local":[3,5,6,12],"localhost":[5,7,11,14,15,16],"locat":[0,7,11,12],"lock":2,"log":[4,10,11,13],"log_level":2,"log_request":13,"log_respons":10,"logic":[6,7,10],"login":[10,11],"logout":11,"long":7,"look":[3,6,7],"loop":[7,12,16],"lose":[2,15],"lower":[0,5],"lowercas":7,"machin":10,"made":[0,6],"magic":12,"mai":4,"main":3,"make":[4,5,7,9,10,11,12],"malici":10,"manag":[2,5,6,9,10,11,13,15,16],"mani":[0,4,7,10],"manual":0,"map":[2,7,10,12,15],"mapper":15,"marimo":[2,10],"mark":[2,10],"marker":2,"marshmallow":[0,2,10],"match":[0,5,7,10,14],"matter":10,"max_ag":[0,10],"maximum":0,"me":11,"mean":[4,7,12],"mechan":10,"media":[0,2,6,7,9,10,11,12,14,15],"memori":[0,2,6,7,10],"messag":[0,7,10,11,16],"messagepack":[2,6],"metadata":[0,7,15],"method":[0,6,7,9,11,12,13,14,15,16],"microservic":10,"middelwar":0,"middlewar":[0,1,2,6,7,10],"middleware_cl":0,"middleware_config":0,"might":7,"migrat":[2,6,10,15],"mime":0,"mimetyp":[0,7,10],"min":[0,10],"mind":13,"minim":[4,16],"minimum":2,"minor":2,"miss":[2,9,10,11],"mix":10,"ml":10,"mode":[0,6,8],"model":[0,2,6,9,10],"model_dump":15,"model_valid":15,"modern":[4,10,11,12,15],"modifi":[0,10,13,14,15],"modul":[0,2,6,7,10],"more":[0,3,4,7,10,11,12,13,14,16],"most":[0,3,4,5,7,9,10,11,13,15],"mount":[0,2,6,12],"move":[2,7,10,12],"msgpack":[2,10],"much":[7,10],"multi":0,"multipart":[2,7],"multipl":[2,4,10,14],"multiplay":[10,16],"must":[0,7,10,11,14,16],"mutabl":6,"mutat":[0,7,12],"my_templ":7,"myapi":4,"myapp":3,"mydb":15,"mysql":15,"n":[0,7],"name":[0,5,6,7,9,10,12],"namespac":2,"narrow":2,"nativ":12,"natur":[9,15],"nearli":12,"need":[4,5,6,7,9,10,11,12,13,15,16],"negoti":[0,6,7,9,10],"nervou":7,"network":9,"never":[5,10,11,14],"new":[0,7,9,10,12,14,16],"new_endpoint":12,"next":[6,13],"next_id":14,"nginx":4,"non":7,"none":[0,2,11,14,15],"normal":[10,16],"notabl":2,"notasecret":0,"note":[7,10,12,14],"notebook":[2,10],"notic":7,"notif":10,"now":[2,7,10,11,15,16],"npm":3,"nullabl":15,"number":[0,7],"o":[0,5,7,12],"object":[0,2,7,10,12,13,15,16],"objecttyp":[0,10],"obviou":9,"off":[5,7],"offload":4,"offset":15,"often":[3,7,10],"ok":[0,7,9,14],"old":12,"on_delet":10,"on_ev":[0,9,10],"on_get":[6,10],"on_post":[6,10],"on_put":10,"on_request":[6,10],"on_startup":9,"onc":[10,12,14],"one":[0,2,5,6,7,10,12,15],"ones":[6,7,10],"onion":13,"onli":[0,5,7,10,12,14],"onmessag":[10,16],"open":[2,7,8,15],"open_database_connection_pool":0,"openapi":[0,2,6,14],"openapi_rout":0,"openapi_them":0,"oper":[7,10,12,14],"opt":10,"option":[0,2,4,6,7,13],"option1":13,"option2":13,"order":[0,6],"order_bi":15,"organ":[0,5,9,10,12],"origin":10,"orm":15,"other":[0,2,6,7,15],"otherwis":[0,10],"our":14,"out":[5,6,7,13],"outermost":13,"outgo":7,"output":14,"outsid":13,"over":[0,6,7,10,12,15],"overal":2,"overhead":9,"overrid":[0,10],"overwhelm":10,"own":[4,10,15],"p":[4,11,16],"pace":10,"packag":[2,3,4],"page":[0,2,5,7,10,11,16],"pagin":7,"painless":9,"pair":0,"param":[0,2,6,7,12],"paramet":[0,6,9,10,14],"parameter":0,"pars":[0,2,7,9,10],"parser":2,"part":[2,6,7,10],"parti":6,"pass":[0,7,9,12,13,15,16],"passion":6,"password":11,"patch":[7,10],"path":[0,2,3,6,7,9,10,11,13],"path_matches_rout":0,"path_param":[0,2,7],"pattern":[4,6,7,10,11,12,14,15],"payload":11,"pdf":[7,9,10],"pep":2,"per":[0,4,9,10],"perfect":10,"period":[0,2,10],"perman":7,"permit":10,"persist":[0,10,16],"person":6,"pet":[0,10],"petin":10,"petout":10,"petschema":[0,10],"photo":10,"piec":10,"pin":2,"pip":[2,3,4,5,6,8,11,15,16],"place":[5,10],"placehold":[7,16],"plain":[0,7,10,16],"platform":[2,5,6,7],"pleasant":6,"plot":10,"plu":15,"plugin":2,"poethepoet":2,"point":[3,4,14],"polici":10,"pool":[0,6,7,10,12,15],"popular":[7,10,15],"port":[0,4,5,7,9],"portion":0,"possibl":7,"post":[0,5,7,9,10,11,12,14,15],"postgresql":6,"potenti":2,"power":[6,9,10,13,15,16],"practic":10,"prefer":10,"prefix":[0,2,10],"present":7,"prevent":[5,10],"price":[0,9],"primari":0,"primary_kei":15,"print":[0,5,10,13,15,16],"privat":10,"proce":16,"process":[4,6,7,9,10,13],"process_data":7,"prod":5,"produc":[0,7],"product":[2,3,4,5,6,7,9,10,11,15],"profil":10,"programmat":10,"progress":10,"project":[2,3,8],"propag":9,"proper":[7,11,15],"properli":[2,5,9,15],"properti":[0,2,7,9],"prose":2,"protect":[4,11],"proto":4,"protocol":[3,7,9,10,16],"prototyp":[2,3,6],"provid":0,"proxi":6,"public":[0,6,10],"public_path":11,"push":[4,6,10],"put":[6,10,14,15],"py":[2,3,4,5,7,9,10,14,15],"pydant":[0,2,9,10,14,15],"pyjwt":11,"pypi":2,"pyproject":2,"pytest":[6,8,9],"python":[0,2,3,4,5,6,7,10,14,15,16],"pythonpath":3,"q":[7,12],"queri":[2,6,7,10,15,16],"query_str":0,"querydict":0,"queue":[6,7],"quick":[0,3,6],"r":[7,9],"race":9,"railwai":4,"rais":[0,2,9,10,11],"raise_server_except":9,"random":[0,5],"rang":[0,7,10],"rapidoc":[0,10],"rare":7,"rate":[1,2,4,6,13],"rate_limit":0,"ratelimit":[0,2,10,13],"rather":9,"raw":[0,3,6,7,10,13,15,16],"re":[0,4,7,9,10,12,13,14,16],"reach":[11,13],"react":[2,10],"reactiv":10,"read":[0,2,5,6,10,11,12,14,15],"readabl":10,"readi":[4,5,6,7],"real":[2,5,10,11,14,15],"realli":[9,10],"receiv":[0,6,7,9,10,11,13,16],"receive_byt":[10,16],"receive_incom":7,"receive_json":[10,16],"receive_text":[9,10,16],"recommend":10,"reconnect":10,"recv":16,"redirect":[0,2,7,11,12],"redoc":[0,10],"reduc":2,"ref":3,"refactor":[2,9],"refer":[2,6,9],"refresh":15,"refus":10,"regist":[0,9,10,11],"register_blueprint":12,"reject":[9,10],"relat":[0,10,15],"releas":8,"reliabl":9,"remain":10,"rememb":11,"remov":[10,12,14,16],"renam":9,"render":[0,1,4,6,10],"render_async":7,"render_templ":12,"replac":[2,7,10,14],"report":[7,9,10],"repres":0,"represent":0,"reproduc":2,"req":[0,2,6,7,9,10,11,12,13,14,15,16],"request":[2,3,4,6,11,12,13,14,15],"request_id":[0,2,10,13],"request_model":[0,2,9,10,14,15],"requir":[0,2,9,10],"research":6,"resolv":[2,10],"resolve_hello":[0,10],"resourc":[7,10,14],"resp":[0,2,6,7,9,10,11,12,13,14,15,16],"respect":3,"respond":[0,2,3,4,5,7,8,9,10,11,12,13,14,15,16],"respons":[2,6,9,10,12,13,14,15,16],"response_model":[0,2,10,14,15],"rest":[2,4,6,7,10],"restrict":10,"result":[0,2,7,10,15],"resum":2,"resume_incomplet":2,"retri":[0,10],"retriev":[0,10,14],"return":[0,2,6,7,9,10,11,12,13,14,15],"reusabl":11,"revers":[0,6],"rework":2,"rewrit":2,"rewrot":2,"rfc3986":2,"right":[6,7,10,12,13],"roll":15,"room":6,"root":[2,10],"rotat":5,"rout":[2,6,9,13,14,15,16],"routegroup":0,"router":2,"rst":2,"ruff":[2,8],"rule":5,"run":[0,2,3,6,8,9,10,12,13,16],"run_sync":15,"runner":[2,4],"runtimeerror":0,"s3":3,"safe":[2,14],"sai":7,"said":4,"same":[3,4,6,7,10,12,14,15],"sandbox":6,"save":[7,16],"scalar":15,"scale":6,"schema":[0,2,6,10,11,14,15],"scope":[0,10,13],"scratch":[6,14],"script":16,"search":[0,2,7,10],"second":0,"secret":[6,10,11],"secret_kei":[0,5,10,11],"section":10,"secur":[0,10,13],"see":[0,4,5,7,9,10,13,14,15],"select":[0,2,15],"self":[0,10,11,13],"semant":2,"send":[0,2,6,9,10,11,14,16],"send_byt":[10,16],"send_email":0,"send_json":[10,16],"send_text":[9,10,16],"sensit":11,"sent":[0,2,6,7,13],"separ":[7,9,14],"sequenti":2,"serial":[0,2,7,10,16],"serializ":7,"serv":[0,2,3,4,5,6,7,9,14,16],"server":[0,2,3,4,5,6,9,11,13,14,15],"servererrormiddlewar":13,"servestat":2,"servic":[0,3,6,9,10,14],"session":[0,2,5,6,7,9,12,13,15],"session_id":10,"sessionmiddlewar":13,"set":[0,2,4,5,6,7,8,9,10,11,15,16],"set_cooki":[0,2,10],"set_text":0,"setattr":15,"setup":[2,5,6,9],"sever":[10,13],"sftp":3,"share":[0,3,7,9,10,15],"shell":5,"short":[0,1,2,6,10],"shorthand":0,"should":[5,14,15],"shouldn":0,"show":[2,10,12,15,16],"shut":[10,15],"shutdown":[0,4,6,9,10],"shutdwown":2,"sibl":6,"side":[7,10,11,16],"sign":[0,5,6,7,10,11,13],"signatur":[7,10,12],"signup":11,"simpl":[3,9,10,11,13,14,16],"simplecooki":0,"simpler":[7,10,11,13],"simplest":[5,7,11,13,16],"simpli":11,"simplic":[6,15],"simul":7,"sinc":[7,9],"singl":[0,2,3,6,7,10,12,15],"sit":13,"size":[0,15],"sk":11,"skip":[0,6,10],"slash":7,"sleep":[7,9],"slim":4,"slow":7,"slowlori":4,"slug":7,"small":[4,6,9,10],"smaller":4,"so":[9,10,12,13,14,15],"solv":10,"some":[4,5,10],"some_packag":13,"somemiddlewar":13,"someon":[5,7,10,16],"someth":[6,7,9,10],"sometim":[7,10],"somewher":7,"sourc":[0,5,8,10],"spawn":4,"spec":[7,10],"special":[6,10],"specif":[0,2,5,9,10,13,14],"specifi":3,"sphinx":8,"spin":7,"split":5,"sprawl":6,"sql":15,"sqlalchemi":[2,6,7,14],"sqlite":[5,15],"sse":[0,2,6],"ssl":4,"stabil":2,"stack":13,"stai":[12,15],"standard":[3,4,10,11,14],"starlett":[0,2,6,9,16],"start":[0,3,4,6,10,13,14,15],"startswith":11,"startup":[0,2,6,9,10],"state":[0,2,9,10,11],"statement":6,"static":[0,2,4,6,7,16],"static_app":0,"static_dir":[0,10],"static_rout":[0,2,10],"staticfil":0,"statu":[2,6,7,9,10,14],"status_cod":[0,6,7,9,10,11,12,13,14,15],"status_code_saf":0,"stderr":0,"stdlib":2,"still":[10,12],"stop":10,"storag":[3,6],"store":[0,5,10,11,14],"str":[0,7,9,10,11,14,15],"straightforward":10,"stranger":[0,10],"stream":[0,2,10],"stream_data":0,"stream_fil":[0,2,10],"strict":10,"string":[0,6,7,10,15,16],"strip":[2,10,11],"structur":10,"style":10,"stylesheet":10,"sub":11,"subclass":0,"subcommand":3,"subject":0,"submiss":0,"submit":0,"subrout":[6,10,12],"subsequ":[10,11],"subtl":2,"success":[0,7,14],"successfulli":14,"successor":4,"suit":9,"suppli":2,"support":[0,1,2,3,4,6,7,12,15,16],"swagger":[6,10,14],"swagger_ui":[0,10],"switch":[2,15,16],"sync":[2,6,7,12],"synchron":[0,12],"syntax":[2,6,7,12],"system":[3,7,10],"t":[0,4,5,7,9,10,11,12,13,14,15],"tabl":15,"take":[6,7],"tamper":[10,11],"target":2,"task":[0,2,6],"teach":6,"tear":10,"tell":[7,10,14,15],"templat":[0,1,2,6],"template_str":[0,7],"templates_dir":0,"termin":[3,4],"terms_of_servic":0,"test":[0,2,3,5,6,8,14],"test_500":[2,9],"test_api":9,"test_create_item":9,"test_custom_error":9,"test_echo":16,"test_head":9,"test_hello":9,"test_hook":9,"test_json":9,"test_upload":9,"test_valid":9,"test_websocket":9,"test_with_lifespan":9,"testclient":[0,2,9,16],"text":[0,2,6,7,9,10,12,16],"textcont":16,"than":[9,10,11,12,13,14],"thei":[0,5,7,10,12,13,14,16],"them":[6,7,9,10,11,12,14,16],"theme":[0,10],"themselv":10,"thi":[0,2,3,4,5,6,7,9,10,11,12,13,14,15,16],"thing":[5,6,7,9,13],"think":7,"third":6,"though":4,"thousand":4,"thread":[0,2,6,7,12],"threadpoolexecutor":[0,2],"three":[7,10,16],"through":[0,7,10,13,14,16],"throughput":10,"thu":0,"time":[0,2,6,7,9,10,12,13,14,15,16],"time_start":0,"timedelta":11,"timeout":4,"timingmiddlewar":13,"tip":[2,6],"titl":[0,2,7,10,14,15],"tl":4,"togeth":[6,10],"token":[0,6,7,10,16],"token_hex":5,"toml":2,"too":[0,3,4,9,10],"tool":[8,13],"toolbelt":2,"toolkit":15,"top":[0,5],"total":10,"tour":[0,6,7],"trace":10,"traceback":[0,2,5,10],"track":15,"tradit":[10,11],"traffic":4,"transact":15,"transform":13,"translat":12,"transport":10,"treat":[0,10],"trick":10,"trigger":9,"true":[0,2,5,7,9,10,11,12,13,15,16],"trust":[2,6],"trustedhostmiddlewar":[4,13],"try":[6,7,11,16],"tupl":[0,7,9],"tutori":[2,7,14],"two":[7,10,13],"type":[0,2,6,10,12,14,16],"typic":[7,10],"typo":[2,10],"ui":[2,6,10,14],"unauthor":[0,10,11],"under":[0,7,10,12],"underlin":2,"understand":[6,7],"unexpectedli":16,"unhandl":13,"unicod":0,"union":2,"uniqu":10,"unit":15,"univers":5,"unknown":0,"unless":10,"unlik":10,"unmaintain":2,"unmatch":10,"unpin":2,"unrecogn":10,"until":7,"up":[0,2,7,8,10],"updat":[2,6,7,10,15,16],"update_book":[14,15],"upgrad":[2,8,10,16],"upload":[2,6,7],"url":[0,2,5,6,7,9,10,11,12,13,15],"url_for":[0,2,9],"url_prefix":12,"urllib":2,"us":[0,2,3,4,6,7,10,12,14,16],"usag":[0,2],"user":[0,5,7,10,11,12,15],"user_id":[7,10,11,12],"usernam":[10,11],"usual":9,"utcnow":11,"utf":0,"uuid":[0,2,7,10],"uuid4":0,"uv":[2,3,5,6,8,11,15],"uvicorn":[0,2,6,7],"uvloop":4,"v":6,"v1":[0,10],"v2":10,"valid":[0,2,6,7,10,11,13,14,15],"valu":[0,6,7,9,10,11,12,13,14,15,16],"valueerror":[0,9,10,12,14],"variabl":[0,4,6,7],"ve":[6,9,12],"venv":8,"verb":10,"veri":[0,7,15],"verifi":[9,11],"verify_token":11,"version":[0,2,9,10,14],"via":[0,2,5,10,12],"view":[0,2,6,7,9,12],"virtual":[3,4],"virtualenv":8,"visit":[10,14],"vue":10,"w":[9,10,16],"wa":[0,2,7,14],"wai":[3,4,6,7,10,11,12,13,15],"wait":12,"walk":[7,10,14],"want":[0,3,4,6,7,9,10,14,15,16],"warn":2,"watch":8,"we":[14,15,16],"web":[0,4,6,10,15],"websit":10,"websocket":[0,1,2,4,6],"websocket_connect":[9,16],"welcom":[6,7,11],"well":6,"went":6,"werkzeug":2,"what":[0,7,9,10,16],"whatev":7,"when":[0,2,4,5,6,7,9,10,12,14,15,16],"where":[0,4,7,10,15,16],"whether":[0,7],"which":[0,2,7,9,10,12,15],"whichev":6,"while":[7,10,12,16],"whitenois":2,"who":[6,7,11],"widget":[9,10],"wildcard":10,"window":2,"wire":7,"with_app":10,"within":[2,10,15],"without":[0,2,4,7,9,10,15],"won":[7,9,10,15],"work":[3,4,5,6,7,10,13,14,15],"workdir":4,"worker":4,"world":[0,3,6,9,10,12],"worri":9,"would":9,"wrap":[0,7,9,10,13],"write":[6,7,10,12],"wrong":10,"ws_auth":16,"wsgi":[0,2,4,6,10,12],"www":5,"x":[0,4,7,9,10,11,12,13,14],"x00":16,"x01":16,"x02":16,"x89png":7,"xml":0,"xss":10,"yaml":[0,2,6,7,9,10],"year":[14,15],"yield":[0,10,15],"yml":[0,10,11],"you":[0,3,4,5,7,9,10,11,12,13,14,15,16],"your":[0,3,4,5,6,7,9,10,11,12,13],"yourself":7,"zero":4},"titles":["API Reference","Backlog","Changelog","Command Line Interface","Deployment","Configuration","Responder","Quick Start","Development Sandbox","Testing","Feature Tour","Authentication","Migrating from Flask","Writing Middleware","Building a REST API","Using SQLAlchemy","WebSocket Tutorial"],"titleterms":{"":14,"0":2,"01":2,"02":2,"03":2,"04":2,"08":2,"09":2,"1":2,"10":2,"11":2,"12":2,"13":2,"15":2,"16":2,"17":2,"18":2,"19":2,"2":2,"20":2,"2018":2,"2019":2,"2026":2,"22":2,"23":2,"24":2,"25":2,"26":2,"27":2,"28":2,"29":2,"3":2,"4":2,"5":2,"6":2,"7":2,"8":2,"9":2,"In":14,"It":[5,7,14,15],"The":[0,6,12],"ad":[2,13],"after":[9,10],"all":[5,7,14],"allow":5,"api":[0,9,11,12,14],"app":[10,11],"asset":3,"auth":11,"authent":11,"background":[0,7],"backlog":1,"base":10,"bearer":11,"befor":[9,10,16],"big":12,"blueprint":12,"book":14,"build":[3,14],"built":13,"chang":2,"changelog":2,"chat":16,"class":[0,5,10],"client":16,"cloud":4,"code":0,"command":3,"configur":5,"convertor":7,"cooki":[9,10],"cor":10,"creat":[7,14],"crud":15,"custom":[3,10,11],"data":16,"databas":15,"debug":5,"defin":[14,15],"delet":14,"deploy":4,"deprec":2,"develop":8,"dict":0,"differ":12,"directli":4,"docker":4,"document":10,"echo":16,"endpoint":15,"env":5,"environ":5,"error":[9,10,11,14],"event":[9,10],"except":11,"featur":10,"file":[3,5,9,10],"filter":10,"fix":2,"fixtur":9,"flask":12,"format":16,"from":[3,12],"frontend":3,"futur":1,"get":[6,9,14],"gradual":12,"graphql":10,"group":[0,10,12],"guid":6,"handl":[9,10,14],"header":9,"hello":7,"helper":0,"hook":[9,10,13,16],"host":[5,10],"how":16,"hst":10,"html":16,"id":10,"idea":[1,6],"instal":[6,15],"instanc":3,"interfac":3,"json":[9,12],"kei":[5,11],"launch":3,"lifespan":[9,10,15],"limit":[0,10],"line":3,"list":14,"local":4,"memori":14,"messagepack":10,"method":10,"middlewar":13,"migrat":12,"mode":5,"model":[14,15],"modul":3,"mount":10,"name":3,"next":14,"openapi":10,"oper":8,"order":13,"other":10,"out":14,"paramet":[7,12],"parti":13,"pattern":5,"platform":4,"postgresql":15,"project":[6,14],"proxi":4,"public":11,"put":[5,7],"queri":0,"queue":0,"quick":[7,12],"rate":[0,10],"read":7,"refer":[0,12],"remov":2,"render":7,"request":[0,7,9,10,16],"respond":6,"respons":[0,7],"rest":14,"revers":4,"room":16,"rout":[0,7,10,11,12],"run":[4,7,14,15],"sandbox":8,"secret":5,"send":7,"sent":10,"serv":10,"server":[7,10,16],"servic":7,"session":[10,11],"setup":[8,14,15],"shutdown":15,"singl":14,"skip":11,"sqlalchemi":15,"sse":10,"starlett":13,"start":[7,9],"startup":15,"static":10,"statu":0,"storag":14,"support":10,"task":7,"templat":[7,12],"test":[9,16],"third":13,"tip":[9,15],"togeth":[5,7],"token":11,"tour":10,"trust":10,"try":14,"tutori":[6,16],"type":7,"unreleas":2,"updat":14,"upload":9,"url":3,"us":[5,9,11,13,15],"user":6,"uvicorn":4,"v":13,"v0":2,"v1":2,"v2":2,"v3":2,"valid":9,"variabl":5,"view":10,"web":[7,11],"websocket":[9,10,16],"what":[6,13,14],"when":13,"work":16,"world":7,"write":13,"you":6,"your":[14,15]}}) \ No newline at end of file diff --git a/testing.html b/testing.html index f68e6b6..56e9fa2 100644 --- a/testing.html +++ b/testing.html @@ -5,13 +5,13 @@ - Testing — responder 3.4.1 documentation + Testing — responder 3.5.0 documentation - + diff --git a/tour.html b/tour.html index 276e4a5..ce28cde 100644 --- a/tour.html +++ b/tour.html @@ -5,13 +5,13 @@ - Feature Tour — responder 3.4.1 documentation + Feature Tour — responder 3.5.0 documentation - + diff --git a/tutorial-auth.html b/tutorial-auth.html index 27c305a..ee2d5d7 100644 --- a/tutorial-auth.html +++ b/tutorial-auth.html @@ -5,13 +5,13 @@ - Authentication — responder 3.4.1 documentation + Authentication — responder 3.5.0 documentation - + diff --git a/tutorial-flask.html b/tutorial-flask.html index 43226d6..df23133 100644 --- a/tutorial-flask.html +++ b/tutorial-flask.html @@ -5,13 +5,13 @@ - Migrating from Flask — responder 3.4.1 documentation + Migrating from Flask — responder 3.5.0 documentation - + diff --git a/tutorial-middleware.html b/tutorial-middleware.html index 1ca3335..b7253d4 100644 --- a/tutorial-middleware.html +++ b/tutorial-middleware.html @@ -5,13 +5,13 @@ - Writing Middleware — responder 3.4.1 documentation + Writing Middleware — responder 3.5.0 documentation - + diff --git a/tutorial-rest.html b/tutorial-rest.html index 3e69c36..d6eee2d 100644 --- a/tutorial-rest.html +++ b/tutorial-rest.html @@ -5,13 +5,13 @@ - Building a REST API — responder 3.4.1 documentation + Building a REST API — responder 3.5.0 documentation - + diff --git a/tutorial-sqlalchemy.html b/tutorial-sqlalchemy.html index b4953e7..b6bf451 100644 --- a/tutorial-sqlalchemy.html +++ b/tutorial-sqlalchemy.html @@ -5,13 +5,13 @@ - Using SQLAlchemy — responder 3.4.1 documentation + Using SQLAlchemy — responder 3.5.0 documentation - + diff --git a/tutorial-websockets.html b/tutorial-websockets.html index 451b71c..4e6d90d 100644 --- a/tutorial-websockets.html +++ b/tutorial-websockets.html @@ -5,13 +5,13 @@ - WebSocket Tutorial — responder 3.4.1 documentation + WebSocket Tutorial — responder 3.5.0 documentation - +