From 969c0b408d69a626db77703b8c395bb7112bfbcb Mon Sep 17 00:00:00 2001 From: kennethreitz Date: Sun, 12 Apr 2026 21:53:01 +0000 Subject: [PATCH] deploy: 2f5e46e2330fe4499cf4a963ab65813d9f717981 --- .buildinfo | 2 +- .doctrees/api.doctree | Bin 230829 -> 231807 bytes .doctrees/changes.doctree | Bin 108894 -> 110565 bytes .doctrees/environment.pickle | Bin 243848 -> 245057 bytes _modules/index.html | 6 +- _modules/responder/api.html | 13 +- _modules/responder/background.html | 6 +- _modules/responder/ext/ratelimit.html | 6 +- _modules/responder/models.html | 6 +- _modules/responder/status_codes.html | 6 +- _sources/changes.md.txt | 7 + _static/documentation_options.js | 2 +- api.html | 9 +- backlog.html | 6 +- changes.html | 491 +++++++++++++------------- cli.html | 6 +- deployment.html | 6 +- genindex.html | 6 +- guide-config.html | 6 +- index.html | 6 +- objects.inv | 2 +- py-modindex.html | 6 +- quickstart.html | 6 +- sandbox.html | 6 +- search.html | 6 +- searchindex.js | 2 +- testing.html | 6 +- tour.html | 6 +- tutorial-auth.html | 6 +- tutorial-flask.html | 6 +- tutorial-middleware.html | 6 +- tutorial-rest.html | 6 +- tutorial-sqlalchemy.html | 6 +- tutorial-websockets.html | 6 +- 34 files changed, 346 insertions(+), 320 deletions(-) diff --git a/.buildinfo b/.buildinfo index 97c14f3..0373b38 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: c4ffdc22e8e2f024e32bdac6fd7533c9 +config: 927e170ec6c070fcbd4e14c41825f173 tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/.doctrees/api.doctree b/.doctrees/api.doctree index b9a77ab9bc8703fe040c2fe916d926036f32b865..e2a8e09e150d15ccf4ba16c29e3d73b80650e0d4 100644 GIT binary patch literal 231807 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 NNMllP5&B;G{{Y68RVV-e literal 230829 zcmeFa37A|*buVsN`)ISgTbAwXk+E9xXvSM?BU?7Yt8B}bC1E=lGt)EOGu>A`-R)i^ z55{1d&4vykcnAIa;k1ip}}XDta+n zthVMKpWpWI{Dbqk&gw?~NVC>%Ocm!l$Dzbjsaz>Eiq-jh=S#ny93tHt@-+LQUtP`=e_lqcIQbci~zv|MNc+0M$TO1{~|OFS>H z=4a*8szST2e@y154mFC?RHofo*~-t*r}@(Q(x%dy(wU{DrOlmZj+JV&#j!@aS}iul zj?@~5#u~+Dy;d#Yr+xyO%`u7ISiW8!Z8U-ZS+^YDo63CIvb)>3Lu`tkmb%Y0l2fY*(yMg@OKADIbSTDhXUv0|2fD@ zX?tlG`tnT3pjF!})LDTJP}R;-2*o@G7yX>gm#g!on>#DbfYu@S(A#r(WbLj$z+A<<6#O;*Ma=~Y#uNJ*aSICiGTHaY> z$bux~)%>kgP}EySl47(q?V(#~Pb!j4rXpGCPK#Xi^yDf%uOqRJC(n{mqdOL9iiwP* zmPQOhi`fCh9*XFtX2A{oqOO-vc1!Jbx7s#OZjU=GX<8a0|s zM}}t0g+iqW5iE`bts-WdJiQjeHC3xlmuK1yRsY&X5#NGZwHV}EV(w|x>I9YA8=9>Z z+7*1kYK;SQSESr6>o$r85Ses9S7Z)OL*!2o?+XI-V-DnhKrCo8q7L&n5>_e)`6lxOR; zMk|PP;?NN0ykM7pF^bWU8w&8BFcfwT@0|+{NPZ8G&};SImf&_M02(@?oTvfmZ9=>4 z8op@sLaVT-qid*gqD~F10EJz{myBLGda+w;OMtJFkV^$jRKYyl92fGxYj}))ShcnU z2ae=tW{QpAIeSRZMF~-Fs@7=kI@oAqq{RFefx7ng{Rc#Om{E;lYy41gZrAWsDPNr_ z?wBn`u(n_rG^x8mvpiFUA`DPa)XP^YwIjvCc&XNGHFw=JtgL|1soL!Dy(2^0lo0%k zAB%+_a^PbW{Z7+oC#=4Iwz9KX&y&@?s*WLqVNnz|#z&Rb*=UT!%R0-;us`oNMxeC9 z6ZKbTB`Jimuz_LT)br)Wd}pJan6K0$biQ+fe77SS#q*^Vx3%W;q<22cD3mr!)2;M5 z);gKMuV_M~;V5)Yr!k%rc6v~*YBaXNHHZ+PS;LFOah(;)HZqJqp^lTuvAoqjmd56ZMPrXec<|Q_g{YyMdgG$UZS~6(ZiTy3nl{#0v} zXUf&_MscQiKPpKCR5kf6Y72IGtyvs*Ak60PABQuBx|dye;e()sH9gx*fJZi41gWJ4 z8E=w?W8XzFMsjpDeGubHhDX zv2>D}f#X`(8C#V_Sw*v}F0O+hEc!Kxhx8)!+l`giZ6kbF>8Q;|cUl-Y>qE8enI;A6?HF`JnKyMYH zCvjUvZ6~93od>NG1zKX_DPj_?lo8C)#Ju|e=Jub>>pz>mu

Dj4U(1jd1zipH2FP8Q;=I5B*(XS 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 diff --git a/_modules/index.html b/_modules/index.html index 5fe0c40..d9eaf4e 100644 --- a/_modules/index.html +++ b/_modules/index.html @@ -4,13 +4,13 @@ - Overview: module code — responder 3.6.0 documentation + Overview: module code — responder 3.6.1 documentation - + @@ -58,7 +58,7 @@

Responder — a familiar HTTP service framework for Python.
- v3.6.0 + v3.6.1

Useful Links

    diff --git a/_modules/responder/api.html b/_modules/responder/api.html index 29ebbc9..6e4605d 100644 --- a/_modules/responder/api.html +++ b/_modules/responder/api.html @@ -4,13 +4,13 @@ - responder.api — responder 3.6.0 documentation + responder.api — responder 3.6.1 documentation - + @@ -73,6 +73,7 @@ :param templates_dir: The directory to use for templates. Will be created for you if it doesn't already exist. :param auto_escape: If ``True``, HTML and XML templates will automatically be escaped. :param enable_hsts: If ``True``, send all responses to HTTPS URLs. + :param gzip: If ``True`` (the default), compress responses with GZip. :param openapi_theme: OpenAPI documentation theme, must be one of ``elements``, ``rapidoc``, ``redoc``, ``swagger_ui`` """ # noqa: E501 @@ -102,6 +103,7 @@ allowed_hosts=None, openapi_theme=DEFAULT_OPENAPI_THEME, lifespan=None, + gzip=True, request_id=False, enable_logging=False, ): @@ -128,6 +130,7 @@ :param allowed_hosts: List of allowed hostnames (e.g. ``["example.com"]``). Defaults to ``["*"]``. :param openapi_theme: Documentation UI theme: ``"swagger_ui"``, ``"redoc"``, ``"rapidoc"``, or ``"elements"``. :param lifespan: An async context manager for startup/shutdown logic. + :param gzip: If ``True`` (the default), compress responses with GZip. :param request_id: If ``True``, add ``X-Request-ID`` headers to all responses. :param enable_logging: If ``True``, enable structured logging with per-request context (request ID, method, path, client IP). """ # noqa: E501 @@ -164,7 +167,9 @@ self.default_endpoint = None self.app = ExceptionMiddleware(self.router, debug=debug) - self.add_middleware(GZipMiddleware) + + if gzip: + self.add_middleware(GZipMiddleware) if self.hsts_enabled: self.add_middleware(HTTPSRedirectMiddleware) @@ -738,7 +743,7 @@

    Responder — a familiar HTTP service framework for Python.
    - v3.6.0 + v3.6.1

    Useful Links

      diff --git a/_modules/responder/background.html b/_modules/responder/background.html index 50e4f02..c83453f 100644 --- a/_modules/responder/background.html +++ b/_modules/responder/background.html @@ -4,13 +4,13 @@ - responder.background — responder 3.6.0 documentation + responder.background — responder 3.6.1 documentation - + @@ -144,7 +144,7 @@

      Responder — a familiar HTTP service framework for Python.
      - v3.6.0 + v3.6.1

      Useful Links

        diff --git a/_modules/responder/ext/ratelimit.html b/_modules/responder/ext/ratelimit.html index c7cbba3..10be91a 100644 --- a/_modules/responder/ext/ratelimit.html +++ b/_modules/responder/ext/ratelimit.html @@ -4,13 +4,13 @@ - responder.ext.ratelimit — responder 3.6.0 documentation + responder.ext.ratelimit — responder 3.6.1 documentation - + @@ -127,7 +127,7 @@

        Responder — a familiar HTTP service framework for Python.
        - v3.6.0 + v3.6.1

        Useful Links

          diff --git a/_modules/responder/models.html b/_modules/responder/models.html index 51f3628..bdedfad 100644 --- a/_modules/responder/models.html +++ b/_modules/responder/models.html @@ -4,13 +4,13 @@ - responder.models — responder 3.6.0 documentation + responder.models — responder 3.6.1 documentation - + @@ -710,7 +710,7 @@

          Responder — a familiar HTTP service framework for Python.
          - v3.6.0 + v3.6.1

          Useful Links

            diff --git a/_modules/responder/status_codes.html b/_modules/responder/status_codes.html index 8bdba6d..572defe 100644 --- a/_modules/responder/status_codes.html +++ b/_modules/responder/status_codes.html @@ -4,13 +4,13 @@ - responder.status_codes — responder 3.6.0 documentation + responder.status_codes — responder 3.6.1 documentation - + @@ -176,7 +176,7 @@

            Responder — a familiar HTTP service framework for Python.
            - v3.6.0 + v3.6.1

            Useful Links

            @@ -979,7 +980,7 @@ into. Useful in middleware and after-request hooks:

            Responder — a familiar HTTP service framework for Python.
            - v3.6.0 + v3.6.1

            Useful Links

              diff --git a/backlog.html b/backlog.html index c9eba81..bdf6638 100644 --- a/backlog.html +++ b/backlog.html @@ -5,13 +5,13 @@ - Backlog — responder 3.6.0 documentation + Backlog — responder 3.6.1 documentation - + @@ -67,7 +67,7 @@

              Responder — a familiar HTTP service framework for Python.
              - v3.6.0 + v3.6.1

              Useful Links

                diff --git a/changes.html b/changes.html index 119fa5f..5c31d73 100644 --- a/changes.html +++ b/changes.html @@ -5,13 +5,13 @@ - Changelog — responder 3.6.0 documentation + Changelog — responder 3.6.1 documentation - + @@ -45,11 +45,20 @@

                All notable changes to this project will be documented in this file.

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

                -
                -

                v3.6.0 - 2026-03-24

                +
                +

                v3.6.1 - 2026-04-12

                Added

                  +
                • Configurable GZip compression via gzip parameter on API() (defaults to True)

                • +
                +
                +
                +
                +

                v3.6.0 - 2026-03-24

                +
                +

                Added

                +
                • Built-in structured logging with per-request context (enable_logging=True)

                  • api.log — always-available logger, enriched with request context when logging is enabled

                  • @@ -92,16 +101,16 @@ WebSocket WebSocket

                v3.5.0 - 2026-03-24

                -
                -

                Added

                +
                +

                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

                -
                -

                Changed

                +
                +

                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

                • @@ -120,8 +129,8 @@ WebSocket WebSocket
                • RST title underline warning breaking docs CI

                -
                -

                Removed

                +
                +

                Removed

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

                @@ -129,8 +138,8 @@ WebSocket WebSocket

                v3.4.0 - 2026-03-22

                -
                -

                Changed

                +
                +

                Changed

                • Upgraded to Starlette 1.0

                • Added comprehensive docstrings across the codebase

                • @@ -140,8 +149,8 @@ WebSocket WebSocket

                v3.3.0 - 2026-03-22

                -
                -

                Added

                +
                +

                Added

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

                • Auth, WebSocket, middleware, and configuration guides

                • @@ -149,8 +158,8 @@ WebSocket WebSocket
                • GitHub Pages deployment for docs

                -
                -

                Changed

                +
                +

                Changed

                • Reworked homepage prose

                • Rewrote CLI and API reference docs

                • @@ -159,8 +168,8 @@ WebSocket WebSocket

                v3.2.0 - 2026-03-22

                -
                -

                Added

                +
                +

                Added

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

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

                • @@ -180,8 +189,8 @@ WebSocket WebSocket
                • Pydantic support for OpenAPI schema generation

                -
                -

                Changed

                +
                +

                Changed

                • Dependencies flattened: pip install responder gets everything

                • Core deps reduced to starlette + uvicorn

                • @@ -190,8 +199,8 @@ WebSocket WebSocket
                • Removed poethepoet task runner

                -
                -

                Fixed

                +
                +

                Fixed

                • Multipart parser losing headers when parts have multiple headers

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

                • @@ -204,8 +213,8 @@ WebSocket WebSocket

                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> @@ -213,8 +222,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)

                  @@ -236,8 +245,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 @@ -245,8 +254,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"

                • @@ -256,8 +265,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

                @@ -265,8 +274,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

                v2.0.4 - 2019-11-19

                -
                -

                Fixed

                +
                +

                Fixed

                • Fix static app resolving

                @@ -274,15 +283,6 @@ aliases for HTTP 308 (marked for removal in 3.0)

                v2.0.3 - 2019-09-20

                -
                -

                Fixed

                -
                  -
                • Fix template conflicts

                • -
                -
                -
                -
                -

                v2.0.2 - 2019-09-20

                Fixed

                  @@ -290,19 +290,28 @@ aliases for HTTP 308 (marked for removal in 3.0)

                -
                -

                v2.0.1 - 2019-09-20

                +
                +

                v2.0.2 - 2019-09-20

                Fixed

                  +
                • Fix template conflicts

                • +
                +
                +
                +
                +

                v2.0.1 - 2019-09-20

                +
                +

                Fixed

                +
                • Fix template import

                v2.0.0 - 2019-09-19

                -
                -

                Changed

                +
                +

                Changed

                • Refactor Router and Schema

                @@ -310,8 +319,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

                • @@ -327,15 +336,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

                @@ -343,8 +352,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

                v1.3.0 - 2019-02-22

                -
                -

                Fixed

                +
                +

                Fixed

                • Versioning issue

                • Multiple cookies.

                • @@ -352,8 +361,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.

                • @@ -364,14 +373,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

                @@ -379,21 +388,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

                • @@ -403,8 +412,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

                • @@ -413,8 +422,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.

                @@ -422,8 +431,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

                v1.1.0 - 2018-10-27

                -
                -

                Added

                +
                +

                Added

                • Support for before_request.

                @@ -431,8 +440,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

                v1.0.5- 2018-10-27

                -
                -

                Fixed

                +
                +

                Fixed

                • Fix sessions.

                @@ -440,8 +449,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

                v1.0.4 - 2018-10-27

                -
                -

                Fixed

                +
                +

                Fixed

                • Potential bufix for cookies.

                @@ -449,8 +458,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

                v1.0.3 - 2018-10-27

                -
                -

                Fixed

                +
                +

                Fixed

                • Bugfix for redirects.

                @@ -458,8 +467,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

                v1.0.2 - 2018-10-27

                -
                -

                Changed

                +
                +

                Changed

                • Improvement for static file hosting.

                @@ -467,8 +476,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

                v1.0.1 - 2018-10-26

                -
                -

                Changed

                +
                +

                Changed

                • Improve cors configuration settings.

                @@ -476,8 +485,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.

                @@ -485,14 +494,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.

                @@ -500,8 +509,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

                v0.3.2 - 2018-10-25

                -
                -

                Changed

                +
                +

                Changed

                • Subtle improvements.

                @@ -509,8 +518,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

                v0.3.1 - 2018-10-24

                -
                -

                Fixed

                +
                +

                Fixed

                • Packaging fix.

                @@ -518,8 +527,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

                v0.3.0 - 2018-10-24

                -
                -

                Changed

                +
                +

                Changed

                • Interactive Documentation endpoint.

                • Minor improvements.

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

                v0.2.3 - 2018-10-24

                -
                -

                Changed

                +
                +

                Changed

                • Overall improvements.

                @@ -537,8 +546,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.

                @@ -546,8 +555,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

                v0.2.1 - 2018-10-23

                -
                -

                Added

                +
                +

                Added

                • api.requests.

                @@ -555,8 +564,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

                v0.2.0 - 2018-10-22

                -
                -

                Added

                +
                +

                Added

                • WebSocket support.

                @@ -564,8 +573,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

                v0.1.6 - 2018-10-20

                -
                -

                Added

                +
                +

                Added

                • 500 support.

                @@ -573,14 +582,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.

                @@ -588,8 +597,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

                v0.1.4 - 2018-10-19

                -
                -

                Fixed

                +
                +

                Fixed

                • Stability.

                @@ -597,8 +606,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

                v0.1.3 - 2018-10-18

                -
                -

                Added

                +
                +

                Added

                • Sessions support.

                @@ -606,8 +615,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

                v0.1.2 - 2018-10-18

                -
                -

                Added

                +
                +

                Added

                • Cookies support.

                @@ -615,8 +624,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

                v0.1.1 - 2018-10-17

                -
                -

                Changed

                +
                +

                Changed

                • Default routes.

                @@ -624,8 +633,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

                v0.1.0 - 2018-10-17

                -
                -

                Added

                +
                +

                Added

                • Prototype of static application support.

                @@ -633,15 +642,6 @@ aliases for HTTP 308 (marked for removal in 3.0)

                v0.0.10 - 2018-10-17

                -
                -

                Fixed

                -
                  -
                • Bugfix for async class-based views.

                • -
                -
                -
                -
                -

                v0.0.9 - 2018-10-17

                Fixed

                  @@ -649,16 +649,25 @@ aliases for HTTP 308 (marked for removal in 3.0)

                +
                +

                v0.0.9 - 2018-10-17

                +
                +

                Fixed

                +
                  +
                • Bugfix for async class-based views.

                • +
                +
                +

                v0.0.8 - 2018-10-17

                -
                -

                Added

                +
                +

                Added

                • GraphiQL Support.

                -
                -

                Changed

                +
                +

                Changed

                • Improvement to route selection.

                @@ -666,8 +675,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

                v0.0.7 - 2018-10-16

                -
                -

                Changed

                +
                +

                Changed

                • Immutable Request object.

                @@ -675,8 +684,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.

                • @@ -685,8 +694,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.

                • @@ -695,21 +704,12 @@ aliases for HTTP 308 (marked for removal in 3.0)

                v0.0.4 - 2018-10-15

                -
                -

                Added

                +
                +

                Added

                • Asynchronous support for data uploads.

                -
                -

                Fixed

                -
                  -
                • Bug fixes.

                • -
                -
                -
                -
                -

                v0.0.3 - 2018-10-13

                Fixed

                  @@ -717,10 +717,19 @@ aliases for HTTP 308 (marked for removal in 3.0)

                +
                +

                v0.0.3 - 2018-10-13

                +
                +

                Fixed

                +
                  +
                • Bug fixes.

                • +
                +
                +

                v0.0.2 - 2018-10-13

                -
                -

                Changed

                +
                +

                Changed

                • Switch to ASGI/Starlette.

                @@ -728,8 +737,8 @@ aliases for HTTP 308 (marked for removal in 3.0)

                v0.0.1 - 2018-10-12

                -
                -

                Added

                +
                +

                Added

                • Conception!

                @@ -751,7 +760,7 @@ aliases for HTTP 308 (marked for removal in 3.0)

                Responder — a familiar HTTP service framework for Python.
                - v3.6.0 + v3.6.1

                Useful Links

                  @@ -763,229 +772,233 @@ aliases for HTTP 308 (marked for removal in 3.0)

                  Table of Contents

                  • Changelog
                      -
                    • v3.6.0 - 2026-03-24
                        +
                      • v3.6.1 - 2026-04-12 +
                      • +
                      • v3.6.0 - 2026-03-24
                      • v3.5.0 - 2026-03-24
                      • v3.4.0 - 2026-03-22
                      • v3.3.0 - 2026-03-22
                      • v3.2.0 - 2026-03-22
                      • 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.3 - 2019-09-20
                        • -
                        • v2.0.1 - 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.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
                          • -
                          • v1.0.3 - 2018-10-27
                              +
                            • v1.0.4 - 2018-10-27
                            • -
                            • v1.0.2 - 2018-10-27
                                -
                              • Changed
                              • +
                              • v1.0.3 - 2018-10-27
                              • -
                              • v1.0.1 - 2018-10-26
                                  +
                                • v1.0.2 - 2018-10-27
                                • -
                                • v1.0.0 - 2018-10-26
                                    +
                                  • v1.0.1 - 2018-10-26
                                  • -
                                  • v0.3.3 - 2018-10-25
                                      -
                                    • Added
                                    • -
                                    • Changed
                                    • +
                                    • v1.0.0 - 2018-10-26
                                    • -
                                    • v0.3.2 - 2018-10-25
                                        +
                                      • v0.3.3 - 2018-10-25
                                      • +
                                      • v0.3.2 - 2018-10-25 +
                                      • v0.3.1 - 2018-10-24
                                      • v0.3.0 - 2018-10-24 -
                                      • -
                                      • v0.2.3 - 2018-10-24
                                      • -
                                      • v0.2.2 - 2018-10-23
                                          -
                                        • Added
                                        • +
                                        • v0.2.3 - 2018-10-24
                                        • -
                                        • v0.2.1 - 2018-10-23
                                            +
                                          • v0.2.2 - 2018-10-23
                                          • -
                                          • v0.2.0 - 2018-10-22
                                              +
                                            • v0.2.1 - 2018-10-23
                                            • -
                                            • v0.1.6 - 2018-10-20
                                                +
                                              • v0.2.0 - 2018-10-22
                                              • -
                                              • v0.1.5 - 2018-10-20
                                                  +
                                                • v0.1.6 - 2018-10-20 +
                                                • +
                                                • v0.1.5 - 2018-10-20
                                                • v0.1.4 - 2018-10-19
                                                • v0.1.3 - 2018-10-18 -
                                                • -
                                                • v0.1.2 - 2018-10-18
                                                • +
                                                • v0.1.2 - 2018-10-18 +
                                                • v0.1.1 - 2018-10-17
                                                • v0.1.0 - 2018-10-17
                                                • v0.0.10 - 2018-10-17 -
                                                • -
                                                • v0.0.9 - 2018-10-17
                                                • -
                                                • v0.0.8 - 2018-10-17
                                                    -
                                                  • Added
                                                  • -
                                                  • Changed
                                                  • +
                                                  • v0.0.9 - 2018-10-17
                                                  • -
                                                  • v0.0.7 - 2018-10-16
                                                      +
                                                    • v0.0.8 - 2018-10-17
                                                    • -
                                                    • v0.0.6 - 2018-10-16
                                                        -
                                                      • Added
                                                      • +
                                                      • v0.0.7 - 2018-10-16
                                                      • -
                                                      • v0.0.5 - 2018-10-15
                                                          +
                                                        • v0.0.6 - 2018-10-16
                                                        • -
                                                        • v0.0.4 - 2018-10-15
                                                            +
                                                          • v0.0.5 - 2018-10-15
                                                          • -
                                                          • v0.0.3 - 2018-10-13 diff --git a/cli.html b/cli.html index 805096e..d4f0bb2 100644 --- a/cli.html +++ b/cli.html @@ -5,13 +5,13 @@ - Command Line Interface — responder 3.6.0 documentation + Command Line Interface — responder 3.6.1 documentation - + @@ -146,7 +146,7 @@ $ responder build /path/to/frontend

                                                            Responder — a familiar HTTP service framework for Python.
                                                            - v3.6.0 + v3.6.1

                                                            Useful Links

                                                              diff --git a/deployment.html b/deployment.html index d1a112e..39a8b16 100644 --- a/deployment.html +++ b/deployment.html @@ -5,13 +5,13 @@ - Deployment — responder 3.6.0 documentation + Deployment — responder 3.6.1 documentation - + @@ -224,7 +224,7 @@ uvicorn directly without a reverse proxy and do just fine.

                                                              Responder — a familiar HTTP service framework for Python.
                                                              - v3.6.0 + v3.6.1

                                                              Useful Links

                                                                diff --git a/genindex.html b/genindex.html index e007979..83d3334 100644 --- a/genindex.html +++ b/genindex.html @@ -4,13 +4,13 @@ - Index — responder 3.6.0 documentation + Index — responder 3.6.1 documentation - + @@ -354,7 +354,7 @@

                                                                Responder — a familiar HTTP service framework for Python.
                                                                - v3.6.0 + v3.6.1

                                                                Useful Links

                                                                  diff --git a/guide-config.html b/guide-config.html index e6f7fec..3bf8bb9 100644 --- a/guide-config.html +++ b/guide-config.html @@ -5,13 +5,13 @@ - Configuration — responder 3.6.0 documentation + Configuration — responder 3.6.1 documentation - + @@ -213,7 +213,7 @@ platform’s dashboard, Docker secrets, or a secrets manager).

                                                                  Responder — a familiar HTTP service framework for Python.
                                                                  - v3.6.0 + v3.6.1

                                                                  Useful Links

                                                                    diff --git a/index.html b/index.html index 1846494..b096ad8 100644 --- a/index.html +++ b/index.html @@ -5,13 +5,13 @@ - Responder — responder 3.6.0 documentation + Responder — responder 3.6.1 documentation - + @@ -319,7 +319,7 @@ work with — welcome.

                                                                    Responder — a familiar HTTP service framework for Python.
                                                                    - v3.6.0 + v3.6.1

                                                                    Useful Links

                                                                      diff --git a/objects.inv b/objects.inv index a04e6a1..fdb8ec4 100644 --- a/objects.inv +++ b/objects.inv @@ -1,6 +1,6 @@ # Sphinx inventory version 2 # Project: responder -# Version: 3.6.0 +# Version: 3.6.1 # 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 c7cdf02..c746165 100644 --- a/py-modindex.html +++ b/py-modindex.html @@ -4,13 +4,13 @@ - Python Module Index — responder 3.6.0 documentation + Python Module Index — responder 3.6.1 documentation - + @@ -76,7 +76,7 @@

                                                                      Responder — a familiar HTTP service framework for Python.
                                                                      - v3.6.0 + v3.6.1

                                                                      Useful Links

                                                                        diff --git a/quickstart.html b/quickstart.html index 0fe6901..74ac7d4 100644 --- a/quickstart.html +++ b/quickstart.html @@ -5,13 +5,13 @@ - Quick Start — responder 3.6.0 documentation + Quick Start — responder 3.6.1 documentation - + @@ -409,7 +409,7 @@ jump into the tutorials:

                                                                        Responder — a familiar HTTP service framework for Python.
                                                                        - v3.6.0 + v3.6.1

                                                                        Useful Links

                                                                          diff --git a/sandbox.html b/sandbox.html index 3065772..390ab72 100644 --- a/sandbox.html +++ b/sandbox.html @@ -5,13 +5,13 @@ - Development Sandbox — responder 3.6.0 documentation + Development Sandbox — responder 3.6.1 documentation - + @@ -120,7 +120,7 @@ make html

                                                                          Responder — a familiar HTTP service framework for Python.
                                                                          - v3.6.0 + v3.6.1

                                                                          Useful Links

                                                                            diff --git a/search.html b/search.html index b42f864..3b027ea 100644 --- a/search.html +++ b/search.html @@ -4,14 +4,14 @@ - Search — responder 3.6.0 documentation + Search — responder 3.6.1 documentation - + @@ -85,7 +85,7 @@

                                                                            Responder — a familiar HTTP service framework for Python.
                                                                            - v3.6.0 + v3.6.1

                                                                            Useful Links

                                                                              diff --git a/searchindex.js b/searchindex.js index 9eac755..66bb311 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,"id5"],[2,"id7"],[2,"id10"],[2,"id14"],[2,"id20"],[2,"id21"],[2,"id24"],[2,"id27"],[2,"id32"],[2,"id39"],[2,"id45"],[2,"id46"],[2,"id47"],[2,"id48"],[2,"id49"],[2,"id52"],[2,"id53"],[2,"id55"],[2,"id58"],[2,"id61"],[2,"id62"],[2,"id63"],[2,"id67"]],"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,"id4"],[2,"id6"],[2,"id8"],[2,"id11"],[2,"id19"],[2,"id22"],[2,"id25"],[2,"id28"],[2,"id31"],[2,"id36"],[2,"id37"],[2,"id38"],[2,"id40"],[2,"id41"],[2,"id43"],[2,"id44"],[2,"id50"],[2,"id54"],[2,"id59"],[2,"id60"],[2,"id66"]],"Changelog":[[2,null]],"Chat Room":[[16,"chat-room"]],"Choosing an Auth Strategy":[[11,"choosing-an-auth-strategy"]],"Class-Based Views":[[10,"class-based-views"]],"Cloud Platforms":[[4,"cloud-platforms"]],"Code Formatting":[[8,"code-formatting"]],"Command Line Interface":[[3,null]],"Configuration":[[5,null]],"Configuration Class Pattern":[[5,"configuration-class-pattern"]],"Connection Lifecycle":[[16,"connection-lifecycle"]],"Content Negotiation":[[10,"content-negotiation"]],"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"]],"Docker Compose":[[4,"docker-compose"]],"Documentation":[[8,"documentation"]],"Echo Server":[[16,"echo-server"]],"Environment Variables":[[3,"environment-variables"],[5,"environment-variables"]],"Error Handling":[[14,"error-handling"]],"Feature Tour":[[10,null]],"Fixed":[[2,"fixed"],[2,"id9"],[2,"id13"],[2,"id15"],[2,"id16"],[2,"id17"],[2,"id18"],[2,"id23"],[2,"id26"],[2,"id29"],[2,"id30"],[2,"id33"],[2,"id34"],[2,"id35"],[2,"id42"],[2,"id51"],[2,"id56"],[2,"id57"],[2,"id64"],[2,"id65"]],"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"]],"Health Check Endpoint":[[4,"health-check-endpoint"]],"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"]],"Production Checklist":[[4,"production-checklist"]],"Project":[[6,null]],"Project Layout":[[8,"project-layout"]],"Project Setup":[[14,"project-setup"]],"Putting It All Together":[[5,"putting-it-all-together"],[7,"putting-it-all-together"]],"Pydantic Validation":[[10,"pydantic-validation"]],"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,"id3"],[2,"id12"]],"Rendering Templates":[[7,"rendering-templates"]],"Request":[[0,"request"]],"Request ID":[[10,"request-id"]],"Responder":[[6,null]],"Response":[[0,"response"]],"Reverse Proxy":[[4,"reverse-proxy"]],"Role-Based Access Control":[[11,"role-based-access-control"]],"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"]],"Running Tests":[[8,"running-tests"]],"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"]],"Structured Logging":[[10,"structured-logging"]],"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 Mounted Apps":[[9,"testing-mounted-apps"]],"Testing Rate Limiting":[[9,"testing-rate-limiting"]],"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 Checking":[[8,"type-checking"]],"Type Convertors":[[7,"type-convertors"]],"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]],"Writing Pure ASGI Middleware":[[13,"writing-pure-asgi-middleware"]],"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"]],"v3.6.0 - 2026-03-24":[[2,"v3-6-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":[0,3,4,5,7,10,14,15],"00":[0,10],"01":0,"03":10,"0441172719":14,"1":[0,1,3,4,5,7,9,10,11,12,14,16],"10":[0,6,7,10],"100":[0,2,10],"1000":16,"1001":16,"1008":16,"1011":16,"12":10,"127":[3,4,5],"13":4,"14":2,"150mb":4,"16":4,"1965":14,"2":[0,4,7,9,10,14,15,16],"200":[0,2,4,7,9,10,14],"201":[0,7,9,12,14,15],"2026":[0,10],"204":[14,15],"24":[10,11],"2m":[2,10],"2xx":0,"3":[0,1,4,6,7,9,10,14,16],"30":4,"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],"403":11,"404":[0,7,12,14,15],"41d4":7,"42":10,"422":[2,9,10,14],"429":[0,9,10],"446655440000":7,"500":[2,7,9,10,13,14],"5000":10,"5042":[3,4,7,10,11,14,16],"550e8400":7,"561":2,"60":[0,2,9,10],"600":[0,10],"7":[9,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,11],"As":[0,10],"But":[7,9,10],"By":[3,7,9,10,13,14],"For":[0,3,4,5,7,9,10,11,13,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,11,12,14],"Not":7,"On":[5,10],"One":[6,7,9],"Or":[0,5,8],"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],"_":9,"__call__":13,"__init__":[11,13],"__main__":[4,6,7,9,14,15],"__name__":[4,6,7,9,10,12,14,15],"__tablename__":15,"_route_for":2,"a1b2c3":10,"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":[13,15],"accept":[0,1,2,7,9,10,16],"access":[0,2,4,6,10,13,15],"accumul":16,"acm":3,"across":[2,4,10,15],"activ":[8,16],"actual":[0,4,7,10],"ad":[0,6,10],"adapt":10,"add":[0,2,4,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,10,13],"address":[0,5,7,10],"adher":2,"admin":11,"affect":10,"after":[0,6,7,11,15,16],"after_request":[0,2,9,10,13],"ag":[0,10],"again":11,"against":[0,4,10,11],"aggreg":4,"agre":7,"ahead":2,"ai":10,"aiosqlit":15,"alemb":15,"algorithm":11,"alias":2,"alic":10,"aliv":4,"all":[0,2,3,4,6,8,9,10,12,13,15,16],"alloc":9,"allow":[4,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,9,10],"alongsid":10,"alpin":4,"alreadi":[0,9,10],"also":[0,2,3,7,9,10,16],"altern":[0,10],"alwai":[2,4,5,6,7,10,16],"an":[0,2,3,4,5,6,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,15],"annual":[7,10],"answer":[10,16],"anyon":6,"anyth":7,"anywher":[4,10],"api":[2,3,4,5,6,7,8,10,13,15,16],"api_kei":11,"api_v1":12,"apispec":2,"app":[0,2,3,4,5,6,7,8,12,13,14,15,16],"appar":0,"apparent_encod":0,"appear":[0,10],"appendchild":16,"appli":[0,13],"applic":[0,2,3,4,5,7,9,10,11,13,14,15],"approach":[5,10,11,12,13],"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],"ask":[6,10,16],"assert":[9,16],"asset":[0,4,6,10],"assign":14,"associ":0,"astral":4,"async":[0,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":[4,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,10,11,13,14,15],"auto":[0,2,8,10,16],"auto_escap":0,"autobuild":8,"autoincr":15,"automat":[0,2,3,4,5,6,7,9,10,11,12,13,14,15],"avail":[0,2,7,10],"avoid":[9,10,13,16],"aw":4,"awai":16,"await":[0,2,7,9,10,11,12,13,14,15,16],"azur":[3,4],"b":[0,7,9,13,15,16],"back":[0,7,10,15,16],"background":[2,6,8],"backgroundqueu":0,"backlog":[2,6],"bad":[9,10,14],"balanc":4,"bandwidth":10,"bar":10,"bare":[2,16],"base":[0,2,6,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,1,2,4,6,7,11,13,15],"before_request":[0,1,2,9,10,11,12,13,16],"begin":15,"behav":0,"behavior":[5,13],"behind":[4,10],"being":[0,10],"best":[6,11],"better":6,"between":13,"bidirect":[10,16],"big":6,"biggest":12,"bin":[4,8],"binari":[7,10,16],"bind":[0,3,4,5,7],"blob":3,"block":[0,7,9,10,12,16],"blocklist":11,"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,"boundari":10,"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,16],"bugfix":2,"build":[2,4,6,7,8,10,11,15,16],"builder":15,"built":[1,2,4,6,7,9,10,16],"bump":2,"bypass":[4,13],"byte":[0,2,6,7,13,16],"c":[5,16],"cach":[7,9,10],"caddi":[2,4],"caddyfil":4,"call":[2,3,7,9,10,13,14,16],"call_next":13,"callabl":[0,13],"came":7,"can":[0,2,3,4,5,7,9,10,11,12,13,14,15,16],"carri":7,"case":[0,6,7,13],"cat":10,"catalog":14,"catch":[10,11,13,16],"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,2,6,9,10,11,13,16],"check_api_kei":11,"check_auth":0,"check_exist":[0,10,14,15],"checker":15,"checklist":[2,6],"choic":[7,10],"choos":[6,10],"chunk":[0,10],"chunk_siz":0,"ci":2,"circuit":[0,1,2,10],"class":[2,6,7,8,9,11,13,14,15],"claud":2,"clean":[6,10,14],"cleaner":[10,11,15],"cleanli":5,"cleanup":[2,10],"clear":[11,16],"cli":[2,8,11],"click":6,"client":[0,2,6,7,9,10,11,14],"client_ip":10,"clone":8,"close":[9,10,15,16],"close_database_connection_pool":0,"closur":16,"cloud":[3,5,6,7],"cmd":4,"code":[2,3,4,5,6,7,9,10,11,14,15,16],"codebas":2,"coercion":10,"collabor":[10,16],"colon":3,"column":15,"com":[0,3,4,5,7,8,10],"combin":7,"come":[7,10,12],"command":[2,4,6],"commit":[5,15],"common":[0,3,4,5,7,10,11,12,13,14,16],"commonli":7,"commun":[7,10,11],"compact":10,"compat":[0,2],"complement":10,"complet":[7,10,14,16],"complex":[13,15],"compon":13,"compos":[2,6,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":[4,5,8,15],"configur":[0,2,4,6,7,9,10,13],"confirm":4,"conflict":2,"confus":9,"conn":15,"connect":[0,4,6,7,9,10,13,15],"consid":[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,8,9,13,14],"content_typ":[0,9,10],"context":[1,2,6,9,10,15,16],"contextlib":[10,15],"contextvar":2,"continu":7,"contract":9,"control":[0,4,5,6,7,10,13,15],"conveni":[0,5,15],"convent":[3,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,8],"cpu":[0,4,7],"crash":2,"creat":[0,6,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":[13,15],"credenti":11,"cross":[10,13],"crud":[6,7,14],"css":10,"csv":[0,10],"curl":[3,4,7,10,11,14],"curly_brac":12,"current":10,"custom":[0,2,6,7,9,14,16],"cut":13,"cycl":7,"d":[7,9,10,14],"dashboard":[5,10,11,16],"data":[0,2,4,5,6,7,9,10,11,12,14,15],"databas":[4,5,6,7,9,10,11,14],"database_url":[4,5,15],"datadog":10,"date":0,"datetim":[2,11],"db":[4,5,10,15],"dead":16,"debug":[0,2,4,6,10,12],"decim":7,"declar":[2,7],"declarativebas":15,"decod":[2,10,11],"decor":[0,2,7,10],"deep":6,"def":[0,4,6,7,9,10,11,12,13,14,15,16],"def456":11,"default":[0,2,3,4,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,"deni":13,"denpend":2,"dep":2,"depend":[1,2,4,8,9,13],"depends_on":4,"deploi":[4,6],"deploy":[2,6,7],"depth":10,"describ":10,"descript":[0,10],"design":[7,10,14],"detail":[4,5,10,14],"detect":[0,6,10],"dev":[2,4,5],"develop":[3,4,5,10,15],"devic":10,"dict":[6,7,10,11,14,15],"dictionari":0,"differ":[0,1,3,5,6,9,10,11,15],"digit":7,"direct":[0,2,10,13],"directli":[3,6,7,9,10,14,15],"directori":[0,7,10],"disabl":[4,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":[0,2,8,9,10,11,14],"docker":[2,5,6,7],"dockerfil":4,"docs_rout":[0,10,14],"docstr":[2,10],"doctyp":16,"document":[0,2,4,6,14,16],"doe":15,"doesn":[0,10,14,15],"domain":[0,4,5,10],"don":[4,5,7,9,10,11,12,15],"done":4,"dot":3,"dotenv":5,"doubl":14,"down":[10,15],"download":10,"downsid":11,"dramat":2,"driver":15,"drop":[2,16],"dump":2,"dune":14,"duplex":10,"duplic":10,"durat":13,"dure":[3,4,9,10,11,15],"duti":14,"dynam":7,"e":[0,10,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,11],"emit":10,"empti":[0,14],"enabl":[0,2,4,10,13,14],"enable_async":7,"enable_hst":[0,10,13],"enable_log":[0,2,10],"encod":[0,2,11],"encrypt":11,"end":[7,14],"endpoint":[0,1,2,6,9,10,11,12,14],"enforc":10,"engin":[7,15],"enough":[4,13],"enrich":2,"ensur":[10,14,15,16],"enter":[9,16],"entir":[0,4,10,11,13,14],"entiti":10,"entri":[8,14],"env":[4,6],"environ":[0,4,6,7],"eol":2,"equival":12,"error":[0,2,5,6,15,16],"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,2,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,4,5,7,8,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":[4,9,10,16],"exp":11,"expand":2,"expect":7,"expens":4,"expir":[0,10,11],"expire_on_commit":15,"explain":10,"explan":0,"explicit":[7,10,12],"explicitli":[10,12],"explor":[7,10],"export":[0,5,10],"expos":[4,5],"expose_head":0,"express":[6,7],"ext":[0,2,8,9,10,15],"extens":[2,7,8],"extern":7,"extra":[2,4,10,13],"extract":0,"extrem":7,"f":[0,4,6,7,9,10,11,13,14,16],"factori":[11,15],"fail":[9,10,15],"failur":[2,8,9],"falcon":[6,10],"fall":0,"fals":[0,4,5,9,10,14,15],"familiar":[6,12],"fast":[4,6,7,9],"fastapi":6,"faster":[4,10,13],"featur":[0,2,6,7],"feed":10,"feel":6,"fetch":[3,10],"few":12,"fido":10,"field":[0,2,9,10,14],"figur":7,"file":[0,2,4,6,7,8,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,13,15],"fire":[0,9],"first":[0,8,9,10,11,13,14,15],"fit":6,"fix":8,"fixtur":6,"flag":[4,10,15],"flask":[2,6,7,9,10],"flask_app":[9,10,12],"flatten":2,"float":[0,7,9,10],"flow":[11,13],"fly":[3,4],"fmt":2,"follow":7,"font":10,"forg":[5,10],"forget":0,"form":[0,7,11,12],"format":[0,2,6,7,10,11],"formatt":10,"formerli":10,"forward":[2,4,10],"found":[2,7,14,15],"foundat":10,"fragment":3,"frame":13,"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,8,10],"full_url":[0,7,10],"fulli":[7,16],"fun":6,"func":0,"function":[0,7,10,12,13],"futur":[0,2,6],"g":[0,10],"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_client_ip":10,"get_list":0,"get_logg":[2,10],"get_m":11,"get_request_id":10,"get_us":[0,10,12],"getattr":11,"getelementbyid":16,"getenv":5,"getlist":0,"ghcr":4,"git":[5,8],"github":[2,3,8],"gitignor":5,"give":[0,9,10,13,15],"given":[0,9],"global":[12,14],"gmt":0,"go":[4,7,12,16],"goe":[10,12],"good":[4,6,10,11],"googl":[3,4],"got":16,"grace":4,"grade":7,"gradual":[6,10],"graduat":13,"grain":15,"graphen":[0,2,6,10],"graphiql":[2,6,10],"graphql":[0,2,6,8],"great":[3,6,10],"greet":[6,7,10],"greet_world":6,"greetingresourc":10,"group":[2,6],"grow":10,"guard":11,"guid":[2,5,7,11,12,15],"guido":7,"gzip":[6,7],"gzipmiddlewar":13,"h":[7,10,11,14],"h1":[0,7,11],"ha":[7,9,12,14,16],"half":7,"halv":10,"hand":0,"handl":[0,2,4,5,6,7,11,13,16],"handle_auth_error":11,"handle_value_error":[0,10,14],"handler":[0,1,6,9,10,11,13,14,16],"handshak":16,"happen":[6,7,10],"hard":9,"hasn":0,"have":[0,2,3,7,9,11,12,13,14],"hdf":3,"head":3,"header":[0,2,4,5,6,7,10,11,12,13,16],"health":[2,6,11],"healthcheck":4,"healthi":4,"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,10,11],"herbert":14,"here":[4,5,7,10,12,16],"heroku":[3,4],"high":[4,10],"hold":[0,6,7],"home":6,"homepag":2,"honor":[4,7],"hood":10,"hook":[0,2,6,7,11],"host":[0,2,4,6,7,9,13],"hostnam":10,"hour":[10,11],"how":[3,5,6,7,10,11,12,14,15],"hs256":11,"hst":6,"html":[0,2,6,7,8,10,11,12],"http":[0,2,3,4,5,6,7,8,9,10,11,13,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":[2,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,9,10,11,14],"incom":[0,7,10,14],"incredibli":10,"independ":4,"index":[0,7,8,10,16],"individu":10,"industri":10,"info":[0,2,10],"inform":[0,14],"infrastructur":[4,6],"inherit":[0,10],"initi":[0,9,16],"inject":[1,2,3,10,13],"innermost":13,"input":[2,9,10,14,16],"insensit":[0,6,7],"insid":13,"inspect":[0,2],"instal":[0,2,3,4,5,8,9,10,11,16],"instanc":[0,4,6,7,9,10],"instant":7,"instantli":4,"instead":[0,2,7,9,10,13,14,15,16],"instruct":4,"insuffici":11,"int":[0,2,7,10,11,12,14,15],"integ":[0,7,14],"integr":[10,13,14,15],"intens":7,"intent":[6,16],"intention":10,"interact":[2,10,14],"interfac":[2,4,6,7,12],"intern":[9,10,11,13],"interv":4,"invalid":[5,9,10,11],"invalidtokenerror":11,"involv":0,"io":[3,4],"iot":10,"ip":[0,2,7,10],"is_100":0,"is_200":0,"is_300":0,"is_400":0,"is_500":0,"is_class_bas":2,"is_http":0,"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,10],"itemout":[0,10],"items_list":0,"iter":16,"its":[0,2,4,14,15],"itself":[10,11],"j":10,"jan":0,"javascript":[0,3,10],"jinja2":[0,7,12],"jpeg":10,"jpg":10,"json":[0,3,6,7,8,10,11,14,16],"jsonifi":12,"jump":7,"just":[4,9,10,13,15,16],"jwt":11,"k":8,"keep":[2,4,5,7,9,10,13,15,16],"kei":[0,4,6,7,9,10,12,15,16],"kennethreitz":[3,8],"keypress":16,"keyword":[0,7,12,13],"know":[5,7],"known":[0,11],"kubernet":4,"kwarg":0,"languag":10,"larg":[0,2,10],"larger":[5,9,13],"last":[0,13],"later":[7,9],"latest":4,"launch":[4,6],"layer":13,"layout":2,"lazi":2,"lazili":0,"lead":9,"learn":10,"legaci":12,"less":10,"let":[3,4,7,10,14,15],"level":[4,13],"lib":4,"librari":[2,9,10,16],"licens":0,"lifecycl":[6,11],"lifespan":[0,2,6,14],"lift":7,"lightn":4,"lightweight":[4,7],"like":[0,3,4,7,9,10,11,13,14,16],"limit":[1,2,4,6,8,13,15,16],"line":[6,7],"liner":2,"lingua":7,"link":2,"lint":8,"list":[0,6,7,9,10,13,15],"list_all_us":11,"list_book":[14,15],"list_item":10,"list_pet":10,"list_us":[0,10,12],"list_users_v2":10,"listen":3,"live":[4,8,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":[4,5,7,9,10,11,14,15,16],"locat":[0,7,11,12],"lock":[2,4],"log":[1,2,4,6,11,13],"log_error":0,"log_level":2,"log_request":13,"log_respons":10,"logger":[2,10],"logic":[6,7,10],"login":[10,11],"logout":11,"long":7,"look":[3,4,6,7],"loop":[7,12,16],"lose":[2,15,16],"lower":[0,5],"lowercas":7,"machin":10,"made":[0,6],"magic":12,"mai":4,"main":[3,8],"make":[4,5,7,8,9,10,11,12,16],"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],"mapped_column":[2,15],"mapper":15,"marimo":[2,10],"mark":[2,10],"marker":2,"marshmallow":[0,2,10],"match":[0,5,7,8,10,14],"matter":10,"max_ag":[0,10],"maximum":[0,13],"md":2,"me":[0,11],"mean":[4,7,10,12],"mechan":10,"media":[0,2,4,6,7,9,10,11,12,14,15],"memori":[0,2,6,7,10],"messag":[0,7,10,11,13,16],"messagepack":[2,6],"metadata":[0,7,8,15],"method":[0,2,6,7,9,11,12,13,14,15,16],"microservic":10,"middelwar":0,"middlewar":[0,2,6,7,10],"middleware_cl":0,"middleware_config":0,"might":7,"migrat":[2,6,7,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,"mobil":11,"mode":[0,4,6],"model":[0,2,6,8,9,10],"model_dump":15,"model_valid":15,"modern":[2,4,10,11,12],"modifi":[0,10,13,14,15],"modul":[0,2,6,7,10],"monitor":4,"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,8,10],"much":[7,10],"multi":0,"multipart":[2,7],"multipl":[0,2,4,10,14],"multiplay":[10,16],"must":[0,7,10,11,14,16],"mutabl":6,"mutat":[0,7,12],"my":0,"my_templ":7,"myapi":4,"myapp":[3,4,10],"mydb":15,"mypi":8,"mysql":15,"n":[0,7],"name":[0,4,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,2,6,7,8,9],"nervou":7,"network":[9,16],"never":[4,5,10,11,14],"new":[0,7,9,10,12,14,16],"new_endpoint":12,"next":[6,13,16],"next_id":14,"nginx":4,"non":7,"none":[0,2,11,14,15],"nonexist":16,"normal":[0,10,16],"nosniff":13,"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,2,7],"o":[0,3,5,7,12],"object":[0,2,7,10,12,13,15,16],"objecttyp":[0,10],"obviou":9,"octet":0,"off":[5,7],"offload":4,"offset":15,"often":[3,7,10],"ok":[0,7,9,14],"old":12,"older":15,"omit":4,"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":[8,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,16],"open_database_connection_pool":0,"openapi":[0,1,2,6,8,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,"orchestr":4,"order":[0,6],"order_bi":15,"organ":[0,5,9,10,12],"origin":[10,13],"orm":15,"other":[0,2,3,4,6,7,15],"otherwis":[0,10,16],"our":14,"out":[5,6,7,13],"outermost":13,"outgo":[7,10],"output":14,"outsid":13,"over":[0,6,7,10,12,15],"overal":2,"overhead":[9,13],"overrid":[0,10],"overwhelm":10,"own":[4,10,15],"p":[4,11,16],"pace":10,"packag":[2,3,4,8],"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,3,4,7,9,10,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":[0,4,6,7,8,10,11,12,13,14,15],"payload":11,"pdf":[0,7,9,10],"pep":2,"per":[0,1,2,4,6,9,10],"perfect":10,"perfectli":13,"perform":13,"period":[0,2,9,10],"perman":7,"permiss":11,"permit":10,"persist":[0,10,16],"person":6,"pet":[0,10],"petin":10,"petout":10,"petschema":[0,10],"pgdata":4,"photo":10,"piec":10,"pin":[2,4],"pip":[2,3,4,5,6,8,11,15,16],"pipe":4,"place":[5,10],"placehold":[7,16],"plain":[0,7,10,13,16],"platform":[2,3,5,6,7],"pleasant":6,"plot":10,"plu":15,"plugin":2,"poethepoet":2,"point":[3,4,8,14],"polici":[10,13,16],"poll":4,"pool":[0,6,7,10,12,15],"popular":[7,10,15],"port":[0,3,4,5,7,9],"portion":0,"possibl":7,"post":[0,5,7,9,10,11,12,14,15],"postgr":4,"postgres_db":4,"postgres_password":4,"postgres_us":4,"postgresql":[4,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,10],"primari":0,"primary_kei":15,"print":[0,5,10,13,15,16],"privat":10,"proce":16,"process":[0,4,6,7,9,10,13],"process_data":7,"procfil":[2,4],"prod":5,"produc":[0,7],"product":[2,3,5,6,7,9,10,11,15],"profil":10,"programmat":10,"progress":10,"project":[2,3],"propag":9,"proper":[7,11,15],"properli":[2,5,9,15,16],"properti":[0,2,7,9],"prose":2,"protect":[4,11],"proto":4,"protocol":[3,7,9,10,13,16],"prototyp":[2,3,6],"provid":0,"proxi":6,"public":[0,6,10],"public_path":11,"pure":[2,6],"push":[2,4,6,10],"put":[6,10,14,15],"py":[2,3,4,5,7,8,9,10,14,15],"pydant":[0,2,6,9,14,15],"pyjwt":11,"pypi":2,"pyproject":[2,8],"pytest":[6,7,8,9,16],"python":[0,2,3,4,5,6,7,10,14,15,16],"pythonpath":3,"q":[0,7,12],"queri":[2,4,6,7,10,15,16],"query_str":0,"querydict":0,"queue":[6,7,8],"quick":[0,3,6],"quickstart":2,"r":[7,9],"race":9,"railwai":[3,4],"rais":[0,2,9,10,11,16],"raise_server_except":9,"random":[0,5],"rang":[0,7,9,10],"rapidoc":[0,10],"rare":7,"rate":[1,2,4,6,8,13],"rate_limit":0,"ratelimit":[0,2,6,9,10,13],"rather":[9,16],"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,3,5,6,10,11,12,14,15],"readabl":10,"readi":[4,5,6,7],"real":[2,5,6,7,10,11,14,15,16],"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,"record":2,"recv":16,"redirect":[0,2,7,11,12],"redoc":[0,10],"reduc":2,"ref":3,"refactor":[2,9],"refer":[2,6,9],"referr":13,"refresh":15,"refus":10,"regist":[0,9,10,11],"register_blueprint":12,"reject":[1,9,10,16],"relat":[0,10,15],"releas":[2,8],"reliabl":9,"reload":8,"remain":[0,9,10],"rememb":11,"remov":[10,12,14,16],"renam":9,"render":[0,4,6,10],"render_async":7,"render_templ":12,"replac":[2,7,10,14],"repo":8,"report":[7,9,10],"repres":0,"represent":0,"reproduc":4,"req":[0,2,4,6,7,9,10,11,12,13,14,15,16],"request":[1,2,3,4,6,8,11,12,13,14,15],"request_id":[0,2,10,13],"request_model":[0,2,9,10,14,15],"requestcontext":[2,10],"requestcontextfilt":2,"requir":[0,2,4,9,10],"require_rol":11,"research":6,"resolv":[2,10],"resolve_hello":[0,10],"resourc":[7,10,14],"resp":[0,2,4,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,8,9,10,12,13,14,15,16],"response_model":[0,2,10,14,15],"rest":[2,4,6,7,10],"restrict":[4,10,11],"result":[0,2,7,10,15],"resum":2,"resume_incomplet":2,"retri":[0,10],"retriev":[0,10,14],"return":[0,2,4,6,7,9,10,11,12,13,14,15],"reusabl":11,"revers":[0,6],"reverse_proxi":4,"revok":11,"rework":2,"rewrit":2,"rewrot":2,"rfc3986":2,"right":[6,7,10,12,13],"role":[2,6],"roll":15,"room":6,"root":[2,10],"rotat":5,"rout":[1,2,4,6,8,9,13,14,15,16],"routegroup":0,"router":[2,8],"rst":2,"ruff":[2,8],"rule":5,"run":[0,2,3,6,9,10,12,13,16],"run_sync":15,"runnabl":8,"runner":[2,4],"runtim":3,"runtimeerror":0,"s3":3,"safe":[2,14],"sai":7,"said":4,"same":[3,4,6,7,10,12,13,14,15],"sandbox":[2,6],"save":[7,16],"scalar":15,"scale":[6,11],"schema":[0,2,6,10,11,14,15],"scope":[0,10,13],"scratch":[6,14],"script":16,"search":[0,2,7,10],"searchabl":10,"second":0,"secret":[4,6,7,10,11],"secret_kei":[0,3,4,5,10,11],"section":[2,10],"secur":[0,10,13],"securityheadersmiddlewar":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,13,14,16],"send_byt":[10,16],"send_email":0,"send_json":[10,16],"send_text":[9,10,16],"send_with_head":13,"sensit":11,"sent":[0,2,6,7,13],"sentri":10,"separ":[7,9,14],"sequenti":2,"serial":[0,2,6,7,10,16],"serializ":7,"serv":[0,2,3,4,5,6,7,9,14,16],"server":[0,2,3,4,5,6,8,9,11,13,14,15],"servererrormiddlewar":13,"servestat":2,"servic":[0,3,4,6,9,10,11,14],"session":[0,2,5,6,7,9,12,13,15],"session_id":10,"sessionmiddlewar":13,"set":[0,2,3,4,5,6,7,9,10,11,15,16],"set_cooki":[0,2,10],"set_text":0,"setattr":15,"setup":[2,5,6,9],"sever":[10,13,16],"sftp":3,"sh":4,"shape":10,"share":[0,3,7,9,10,15],"shell":5,"short":[0,1,2,10],"shorthand":0,"should":[4,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],"sidebar":2,"sign":[0,5,6,7,10,11,13],"signatur":[7,10,12],"significantli":4,"signup":11,"simpl":[3,4,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,8,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,11,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],"spa":11,"spawn":4,"spec":[7,10],"special":[6,10],"specif":[0,2,5,9,10,11,13,14,16],"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,11,13,14,15],"startswith":11,"startup":[0,2,6,9,10],"state":[0,2,9,10,11,16],"stateless":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,4,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":[8,10],"storag":[3,6],"store":[0,5,10,11,14],"str":[0,7,9,10,11,14,15],"straightforward":10,"stranger":[0,10],"strategi":[2,6],"stream":[0,2,6,10,13],"stream_data":0,"stream_fil":[0,2,10],"strict":[10,13],"string":[0,6,7,10,15,16],"strip":[2,10,11],"structur":[1,2,6],"style":[10,15],"stylesheet":10,"sub":11,"subclass":0,"subcommand":3,"subject":0,"submiss":0,"submit":0,"subrout":[6,9,10,12],"subsequ":[10,11],"subtl":2,"succe":9,"success":[0,7,14],"successfulli":14,"successor":4,"suit":[8,9],"supersed":10,"suppli":2,"support":[0,1,2,3,4,6,7,12,15,16],"swagger":[0,6,10,14],"swagger_ui":[0,10],"swallow":16,"switch":[2,15,16],"sync":[2,6,7,12],"synchron":[0,12],"syntax":[2,6,7,12,15],"synthet":9,"syslog":10,"system":[3,4,7,10],"t":[0,4,5,7,9,10,11,12,13,14,15],"tab":16,"tabl":15,"tag":0,"take":[6,7],"tamper":[10,11],"target":2,"task":[0,2,6,8],"teach":6,"tear":10,"tell":[7,10,14,15],"templat":[0,2,6],"template_str":[0,7],"templates_dir":0,"termin":[3,4,16],"terms_of_servic":0,"test":[0,2,3,5,6,7,14],"test_500":[2,9],"test_api":9,"test_create_item":9,"test_custom_error":9,"test_echo":16,"test_flask_mount":9,"test_head":9,"test_hello":9,"test_hook":9,"test_json":9,"test_mount":8,"test_rate_limit":9,"test_respond":8,"test_upload":9,"test_valid":9,"test_websocket":9,"test_websocket_404":16,"test_with_lifespan":9,"testclient":[0,2,9,16],"text":[0,2,6,7,9,10,12,16],"textcont":16,"than":[4,9,10,11,12,13,14,15,16],"thei":[0,5,7,9,10,11,12,13,14,16],"them":[3,4,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,10,13],"think":7,"third":[6,9],"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,"ti":4,"time":[0,2,6,7,9,10,12,13,14,15,16],"time_start":0,"timedelta":11,"timeout":4,"timezon":11,"timingmiddlewar":13,"tip":[2,6],"titl":[0,2,7,10,14,15],"tl":4,"togeth":[4,6,10],"token":[0,6,7,10,16],"token_hex":5,"toml":[2,8],"too":[0,3,4,9,10],"tool":[4,8,11,13],"toolbelt":2,"toolkit":15,"top":[0,5],"total":10,"tour":[0,2,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,9],"trustedhostmiddlewar":[4,13],"try":[6,7,11,16],"tupl":[0,7,9],"tutori":[2,7,14],"two":[7,9,10,13],"type":[0,2,6,10,12,13,14,15,16],"typic":[7,10],"typo":[2,10],"ui":[0,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,11],"unlik":10,"unmaintain":2,"unmatch":10,"unpin":2,"unprocess":10,"unrecogn":10,"until":7,"up":[0,2,4,7,10],"updat":[2,6,7,10,15,16],"update_book":[14,15],"upgrad":[2,8,10,16],"upload":[0,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,4,5,7,10,11,12,15],"user_id":[7,10,11,12],"user_rol":11,"usernam":[10,11],"usr":4,"usual":9,"utc":11,"utcnow":2,"utf":0,"uuid":[0,2,7,10],"uuid4":0,"uv":[2,3,4,5,6,8,11,15],"uvicorn":[0,2,6,7,13],"uvloop":4,"v":6,"v1":[0,10],"v2":10,"valid":[0,2,6,7,11,13,14,15],"valu":[0,6,7,9,10,11,12,13,14,15,16],"valueerror":[0,9,10,12,14],"var":4,"variabl":[0,4,6,7],"ve":[6,9,12],"venv":8,"verb":10,"veri":[0,7,15],"verif":11,"verifi":[4,9,11],"verify_token":11,"version":[0,2,6,9,10,14],"via":[0,2,4,5,10,12],"view":[0,2,6,7,9,12],"violat":16,"virtual":[3,4],"visit":[10,14],"volum":4,"vue":10,"w":[9,10,16],"wa":[0,2,7,14],"wai":[3,4,6,7,10,11,12,13,15],"wait":[4,12],"walk":[7,10,14],"walkthrough":10,"want":[0,3,4,6,7,9,10,13,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,7,13],"websocket_connect":[9,16],"websocketdisconnect":[2,16],"websocketrout":8,"welcom":[6,7,11],"well":[6,11],"went":6,"werkzeug":[2,9],"what":[0,7,9,10,16],"whatev":[7,10],"when":[0,2,3,4,5,6,7,9,10,12,14,15,16],"where":[0,4,7,10,11,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,11,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],"wrapper":8,"write":[6,7,10,12],"wrong":10,"ws_auth":16,"wsgi":[0,2,4,6,9,10,12],"www":5,"x":[0,2,4,6,7,9,10,11,12,13,14],"x00":16,"x01":16,"x02":16,"x89png":7,"xml":0,"xss":10,"xv":8,"yaml":[0,2,6,7,8,9,10],"year":[14,15],"yield":[0,10,15],"yml":[0,4,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,16],"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],"access":11,"ad":[2,13],"after":[9,10],"all":[5,7,14],"allow":5,"an":11,"api":[0,9,11,12,14],"app":[9,10,11],"asgi":13,"asset":3,"auth":11,"authent":11,"background":[0,7],"backlog":1,"base":[10,11],"bearer":11,"befor":[9,10,16],"big":12,"blueprint":12,"book":14,"build":[3,14],"built":13,"chang":2,"changelog":2,"chat":16,"check":[4,8],"checklist":4,"choos":11,"class":[0,5,10],"client":16,"cloud":4,"code":[0,8],"command":3,"compos":4,"configur":5,"connect":16,"content":10,"control":11,"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":[8,10],"echo":16,"endpoint":[4,15],"env":5,"environ":[3,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":[8,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,"health":4,"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,"layout":8,"lifecycl":16,"lifespan":[9,10,15],"limit":[0,9,10],"line":3,"list":14,"local":4,"log":10,"memori":14,"messagepack":10,"method":10,"middlewar":13,"migrat":12,"mode":5,"model":[14,15],"modul":3,"mount":[9,10],"name":3,"negoti":10,"next":14,"openapi":10,"order":13,"other":10,"out":14,"paramet":[7,12],"parti":13,"pattern":5,"platform":4,"postgresql":15,"product":4,"project":[6,8,14],"proxi":4,"public":11,"pure":13,"put":[5,7],"pydant":10,"queri":0,"queue":0,"quick":[7,12],"rate":[0,9,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,"role":11,"room":16,"rout":[0,7,10,11,12],"run":[4,7,8,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,"strategi":11,"structur":10,"support":10,"task":7,"templat":[7,12],"test":[8,9,16],"third":13,"tip":[9,15],"togeth":[5,7],"token":11,"tour":10,"trust":10,"try":14,"tutori":[6,16],"type":[7,8],"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,10],"variabl":[3,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,"id1"],[2,"id2"],[2,"id6"],[2,"id8"],[2,"id11"],[2,"id15"],[2,"id21"],[2,"id22"],[2,"id25"],[2,"id28"],[2,"id33"],[2,"id40"],[2,"id46"],[2,"id47"],[2,"id48"],[2,"id49"],[2,"id50"],[2,"id53"],[2,"id54"],[2,"id56"],[2,"id59"],[2,"id62"],[2,"id63"],[2,"id64"],[2,"id68"]],"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,"id3"],[2,"id5"],[2,"id7"],[2,"id9"],[2,"id12"],[2,"id20"],[2,"id23"],[2,"id26"],[2,"id29"],[2,"id32"],[2,"id37"],[2,"id38"],[2,"id39"],[2,"id41"],[2,"id42"],[2,"id44"],[2,"id45"],[2,"id51"],[2,"id55"],[2,"id60"],[2,"id61"],[2,"id67"]],"Changelog":[[2,null]],"Chat Room":[[16,"chat-room"]],"Choosing an Auth Strategy":[[11,"choosing-an-auth-strategy"]],"Class-Based Views":[[10,"class-based-views"]],"Cloud Platforms":[[4,"cloud-platforms"]],"Code Formatting":[[8,"code-formatting"]],"Command Line Interface":[[3,null]],"Configuration":[[5,null]],"Configuration Class Pattern":[[5,"configuration-class-pattern"]],"Connection Lifecycle":[[16,"connection-lifecycle"]],"Content Negotiation":[[10,"content-negotiation"]],"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"]],"Docker Compose":[[4,"docker-compose"]],"Documentation":[[8,"documentation"]],"Echo Server":[[16,"echo-server"]],"Environment Variables":[[3,"environment-variables"],[5,"environment-variables"]],"Error Handling":[[14,"error-handling"]],"Feature Tour":[[10,null]],"Fixed":[[2,"fixed"],[2,"id10"],[2,"id14"],[2,"id16"],[2,"id17"],[2,"id18"],[2,"id19"],[2,"id24"],[2,"id27"],[2,"id30"],[2,"id31"],[2,"id34"],[2,"id35"],[2,"id36"],[2,"id43"],[2,"id52"],[2,"id57"],[2,"id58"],[2,"id65"],[2,"id66"]],"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"]],"Health Check Endpoint":[[4,"health-check-endpoint"]],"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"]],"Production Checklist":[[4,"production-checklist"]],"Project":[[6,null]],"Project Layout":[[8,"project-layout"]],"Project Setup":[[14,"project-setup"]],"Putting It All Together":[[5,"putting-it-all-together"],[7,"putting-it-all-together"]],"Pydantic Validation":[[10,"pydantic-validation"]],"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,"id4"],[2,"id13"]],"Rendering Templates":[[7,"rendering-templates"]],"Request":[[0,"request"]],"Request ID":[[10,"request-id"]],"Responder":[[6,null]],"Response":[[0,"response"]],"Reverse Proxy":[[4,"reverse-proxy"]],"Role-Based Access Control":[[11,"role-based-access-control"]],"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"]],"Running Tests":[[8,"running-tests"]],"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"]],"Structured Logging":[[10,"structured-logging"]],"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 Mounted Apps":[[9,"testing-mounted-apps"]],"Testing Rate Limiting":[[9,"testing-rate-limiting"]],"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 Checking":[[8,"type-checking"]],"Type Convertors":[[7,"type-convertors"]],"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]],"Writing Pure ASGI Middleware":[[13,"writing-pure-asgi-middleware"]],"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"]],"v3.6.0 - 2026-03-24":[[2,"v3-6-0-2026-03-24"]],"v3.6.1 - 2026-04-12":[[2,"v3-6-1-2026-04-12"]]},"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":[0,3,4,5,7,10,14,15],"00":[0,10],"01":0,"03":10,"0441172719":14,"1":[0,1,3,4,5,7,9,10,11,12,14,16],"10":[0,6,7,10],"100":[0,2,10],"1000":16,"1001":16,"1008":16,"1011":16,"12":10,"127":[3,4,5],"13":4,"14":2,"150mb":4,"16":4,"1965":14,"2":[0,4,7,9,10,14,15,16],"200":[0,2,4,7,9,10,14],"201":[0,7,9,12,14,15],"2026":[0,10],"204":[14,15],"24":[10,11],"2m":[2,10],"2xx":0,"3":[0,1,4,6,7,9,10,14,16],"30":4,"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],"403":11,"404":[0,7,12,14,15],"41d4":7,"42":10,"422":[2,9,10,14],"429":[0,9,10],"446655440000":7,"500":[2,7,9,10,13,14],"5000":10,"5042":[3,4,7,10,11,14,16],"550e8400":7,"561":2,"60":[0,2,9,10],"600":[0,10],"7":[9,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,11],"As":[0,10],"But":[7,9,10],"By":[3,7,9,10,13,14],"For":[0,3,4,5,7,9,10,11,13,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,11,12,14],"Not":7,"On":[5,10],"One":[6,7,9],"Or":[0,5,8],"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],"_":9,"__call__":13,"__init__":[11,13],"__main__":[4,6,7,9,14,15],"__name__":[4,6,7,9,10,12,14,15],"__tablename__":15,"_route_for":2,"a1b2c3":10,"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":[13,15],"accept":[0,1,2,7,9,10,16],"access":[0,2,4,6,10,13,15],"accumul":16,"acm":3,"across":[2,4,10,15],"activ":[8,16],"actual":[0,4,7,10],"ad":[0,6,10],"adapt":10,"add":[0,2,4,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,10,13],"address":[0,5,7,10],"adher":2,"admin":11,"affect":10,"after":[0,6,7,11,15,16],"after_request":[0,2,9,10,13],"ag":[0,10],"again":11,"against":[0,4,10,11],"aggreg":4,"agre":7,"ahead":2,"ai":10,"aiosqlit":15,"alemb":15,"algorithm":11,"alias":2,"alic":10,"aliv":4,"all":[0,2,3,4,6,8,9,10,12,13,15,16],"alloc":9,"allow":[4,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,9,10],"alongsid":10,"alpin":4,"alreadi":[0,9,10],"also":[0,2,3,7,9,10,16],"altern":[0,10],"alwai":[2,4,5,6,7,10,16],"an":[0,2,3,4,5,6,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,15],"annual":[7,10],"answer":[10,16],"anyon":6,"anyth":7,"anywher":[4,10],"api":[2,3,4,5,6,7,8,10,13,15,16],"api_kei":11,"api_v1":12,"apispec":2,"app":[0,2,3,4,5,6,7,8,12,13,14,15,16],"appar":0,"apparent_encod":0,"appear":[0,10],"appendchild":16,"appli":[0,13],"applic":[0,2,3,4,5,7,9,10,11,13,14,15],"approach":[5,10,11,12,13],"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],"ask":[6,10,16],"assert":[9,16],"asset":[0,4,6,10],"assign":14,"associ":0,"astral":4,"async":[0,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":[4,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,10,11,13,14,15],"auto":[0,2,8,10,16],"auto_escap":0,"autobuild":8,"autoincr":15,"automat":[0,2,3,4,5,6,7,9,10,11,12,13,14,15],"avail":[0,2,7,10],"avoid":[9,10,13,16],"aw":4,"awai":16,"await":[0,2,7,9,10,11,12,13,14,15,16],"azur":[3,4],"b":[0,7,9,13,15,16],"back":[0,7,10,15,16],"background":[2,6,8],"backgroundqueu":0,"backlog":[2,6],"bad":[9,10,14],"balanc":4,"bandwidth":10,"bar":10,"bare":[2,16],"base":[0,2,6,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,1,2,4,6,7,11,13,15],"before_request":[0,1,2,9,10,11,12,13,16],"begin":15,"behav":0,"behavior":[5,13],"behind":[4,10],"being":[0,10],"best":[6,11],"better":6,"between":13,"bidirect":[10,16],"big":6,"biggest":12,"bin":[4,8],"binari":[7,10,16],"bind":[0,3,4,5,7],"blob":3,"block":[0,7,9,10,12,16],"blocklist":11,"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,"boundari":10,"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,16],"bugfix":2,"build":[2,4,6,7,8,10,11,15,16],"builder":15,"built":[1,2,4,6,7,9,10,16],"bump":2,"bypass":[4,13],"byte":[0,2,6,7,13,16],"c":[5,16],"cach":[7,9,10],"caddi":[2,4],"caddyfil":4,"call":[2,3,7,9,10,13,14,16],"call_next":13,"callabl":[0,13],"came":7,"can":[0,2,3,4,5,7,9,10,11,12,13,14,15,16],"carri":7,"case":[0,6,7,13],"cat":10,"catalog":14,"catch":[10,11,13,16],"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,2,6,9,10,11,13,16],"check_api_kei":11,"check_auth":0,"check_exist":[0,10,14,15],"checker":15,"checklist":[2,6],"choic":[7,10],"choos":[6,10],"chunk":[0,10],"chunk_siz":0,"ci":2,"circuit":[0,1,2,10],"class":[2,6,7,8,9,11,13,14,15],"claud":2,"clean":[6,10,14],"cleaner":[10,11,15],"cleanli":5,"cleanup":[2,10],"clear":[11,16],"cli":[2,8,11],"click":6,"client":[0,2,6,7,9,10,11,14],"client_ip":10,"clone":8,"close":[9,10,15,16],"close_database_connection_pool":0,"closur":16,"cloud":[3,5,6,7],"cmd":4,"code":[2,3,4,5,6,7,9,10,11,14,15,16],"codebas":2,"coercion":10,"collabor":[10,16],"colon":3,"column":15,"com":[0,3,4,5,7,8,10],"combin":7,"come":[7,10,12],"command":[2,4,6],"commit":[5,15],"common":[0,3,4,5,7,10,11,12,13,14,16],"commonli":7,"commun":[7,10,11],"compact":10,"compat":[0,2],"complement":10,"complet":[7,10,14,16],"complex":[13,15],"compon":13,"compos":[2,6,15],"comprehens":2,"compress":[0,2,6,7,13],"compromis":5,"comput":7,"concept":[2,10,12],"concern":[7,13],"concurr":[0,4],"condit":[9,10],"config":[4,5,8,15],"configur":[0,2,4,6,7,9,10,13],"confirm":4,"conflict":2,"confus":9,"conn":15,"connect":[0,4,6,7,9,10,13,15],"consid":[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,8,9,13,14],"content_typ":[0,9,10],"context":[1,2,6,9,10,15,16],"contextlib":[10,15],"contextvar":2,"continu":7,"contract":9,"control":[0,4,5,6,7,10,13,15],"conveni":[0,5,15],"convent":[3,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,8],"cpu":[0,4,7],"crash":2,"creat":[0,6,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":[13,15],"credenti":11,"cross":[10,13],"crud":[6,7,14],"css":10,"csv":[0,10],"curl":[3,4,7,10,11,14],"curly_brac":12,"current":10,"custom":[0,2,6,7,9,14,16],"cut":13,"cycl":7,"d":[7,9,10,14],"dashboard":[5,10,11,16],"data":[0,2,4,5,6,7,9,10,11,12,14,15],"databas":[4,5,6,7,9,10,11,14],"database_url":[4,5,15],"datadog":10,"date":0,"datetim":[2,11],"db":[4,5,10,15],"dead":16,"debug":[0,2,4,6,10,12],"decim":7,"declar":[2,7],"declarativebas":15,"decod":[2,10,11],"decor":[0,2,7,10],"deep":6,"def":[0,4,6,7,9,10,11,12,13,14,15,16],"def456":11,"default":[0,2,3,4,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,"deni":13,"denpend":2,"dep":2,"depend":[1,2,4,8,9,13],"depends_on":4,"deploi":[4,6],"deploy":[2,6,7],"depth":10,"describ":10,"descript":[0,10],"design":[7,10,14],"detail":[4,5,10,14],"detect":[0,6,10],"dev":[2,4,5],"develop":[3,4,5,10,15],"devic":10,"dict":[6,7,10,11,14,15],"dictionari":0,"differ":[0,1,3,5,6,9,10,11,15],"digit":7,"direct":[0,2,10,13],"directli":[3,6,7,9,10,14,15],"directori":[0,7,10],"disabl":[4,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":[0,2,8,9,10,11,14],"docker":[2,5,6,7],"dockerfil":4,"docs_rout":[0,10,14],"docstr":[2,10],"doctyp":16,"document":[0,2,4,6,14,16],"doe":15,"doesn":[0,10,14,15],"domain":[0,4,5,10],"don":[4,5,7,9,10,11,12,15],"done":4,"dot":3,"dotenv":5,"doubl":14,"down":[10,15],"download":10,"downsid":11,"dramat":2,"driver":15,"drop":[2,16],"dump":2,"dune":14,"duplex":10,"duplic":10,"durat":13,"dure":[3,4,9,10,11,15],"duti":14,"dynam":7,"e":[0,10,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,11],"emit":10,"empti":[0,14],"enabl":[0,2,4,10,13,14],"enable_async":7,"enable_hst":[0,10,13],"enable_log":[0,2,10],"encod":[0,2,11],"encrypt":11,"end":[7,14],"endpoint":[0,1,2,6,9,10,11,12,14],"enforc":10,"engin":[7,15],"enough":[4,13],"enrich":2,"ensur":[10,14,15,16],"enter":[9,16],"entir":[0,4,10,11,13,14],"entiti":10,"entri":[8,14],"env":[4,6],"environ":[0,4,6,7],"eol":2,"equival":12,"error":[0,2,5,6,15,16],"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,2,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,4,5,7,8,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":[4,9,10,16],"exp":11,"expand":2,"expect":7,"expens":4,"expir":[0,10,11],"expire_on_commit":15,"explain":10,"explan":0,"explicit":[7,10,12],"explicitli":[10,12],"explor":[7,10],"export":[0,5,10],"expos":[4,5],"expose_head":0,"express":[6,7],"ext":[0,2,8,9,10,15],"extens":[2,7,8],"extern":7,"extra":[2,4,10,13],"extract":0,"extrem":7,"f":[0,4,6,7,9,10,11,13,14,16],"factori":[11,15],"fail":[9,10,15],"failur":[2,8,9],"falcon":[6,10],"fall":0,"fals":[0,4,5,9,10,14,15],"familiar":[6,12],"fast":[4,6,7,9],"fastapi":6,"faster":[4,10,13],"featur":[0,2,6,7],"feed":10,"feel":6,"fetch":[3,10],"few":12,"fido":10,"field":[0,2,9,10,14],"figur":7,"file":[0,2,4,6,7,8,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,13,15],"fire":[0,9],"first":[0,8,9,10,11,13,14,15],"fit":6,"fix":8,"fixtur":6,"flag":[4,10,15],"flask":[2,6,7,9,10],"flask_app":[9,10,12],"flatten":2,"float":[0,7,9,10],"flow":[11,13],"fly":[3,4],"fmt":2,"follow":7,"font":10,"forg":[5,10],"forget":0,"form":[0,7,11,12],"format":[0,2,6,7,10,11],"formatt":10,"formerli":10,"forward":[2,4,10],"found":[2,7,14,15],"foundat":10,"fragment":3,"frame":13,"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,8,10],"full_url":[0,7,10],"fulli":[7,16],"fun":6,"func":0,"function":[0,7,10,12,13],"futur":[0,2,6],"g":[0,10],"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_client_ip":10,"get_list":0,"get_logg":[2,10],"get_m":11,"get_request_id":10,"get_us":[0,10,12],"getattr":11,"getelementbyid":16,"getenv":5,"getlist":0,"ghcr":4,"git":[5,8],"github":[2,3,8],"gitignor":5,"give":[0,9,10,13,15],"given":[0,9],"global":[12,14],"gmt":0,"go":[4,7,12,16],"goe":[10,12],"good":[4,6,10,11],"googl":[3,4],"got":16,"grace":4,"grade":7,"gradual":[6,10],"graduat":13,"grain":15,"graphen":[0,2,6,10],"graphiql":[2,6,10],"graphql":[0,2,6,8],"great":[3,6,10],"greet":[6,7,10],"greet_world":6,"greetingresourc":10,"group":[2,6],"grow":10,"guard":11,"guid":[2,5,7,11,12,15],"guido":7,"gzip":[0,2,6,7],"gzipmiddlewar":13,"h":[7,10,11,14],"h1":[0,7,11],"ha":[7,9,12,14,16],"half":7,"halv":10,"hand":0,"handl":[0,2,4,5,6,7,11,13,16],"handle_auth_error":11,"handle_value_error":[0,10,14],"handler":[0,1,6,9,10,11,13,14,16],"handshak":16,"happen":[6,7,10],"hard":9,"hasn":0,"have":[0,2,3,7,9,11,12,13,14],"hdf":3,"head":3,"header":[0,2,4,5,6,7,10,11,12,13,16],"health":[2,6,11],"healthcheck":4,"healthi":4,"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,10,11],"herbert":14,"here":[4,5,7,10,12,16],"heroku":[3,4],"high":[4,10],"hold":[0,6,7],"home":6,"homepag":2,"honor":[4,7],"hood":10,"hook":[0,2,6,7,11],"host":[0,2,4,6,7,9,13],"hostnam":10,"hour":[10,11],"how":[3,5,6,7,10,11,12,14,15],"hs256":11,"hst":6,"html":[0,2,6,7,8,10,11,12],"http":[0,2,3,4,5,6,7,8,9,10,11,13,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":[2,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,9,10,11,14],"incom":[0,7,10,14],"incredibli":10,"independ":4,"index":[0,7,8,10,16],"individu":10,"industri":10,"info":[0,2,10],"inform":[0,14],"infrastructur":[4,6],"inherit":[0,10],"initi":[0,9,16],"inject":[1,2,3,10,13],"innermost":13,"input":[2,9,10,14,16],"insensit":[0,6,7],"insid":13,"inspect":[0,2],"instal":[0,2,3,4,5,8,9,10,11,16],"instanc":[0,4,6,7,9,10],"instant":7,"instantli":4,"instead":[0,2,7,9,10,13,14,15,16],"instruct":4,"insuffici":11,"int":[0,2,7,10,11,12,14,15],"integ":[0,7,14],"integr":[10,13,14,15],"intens":7,"intent":[6,16],"intention":10,"interact":[2,10,14],"interfac":[2,4,6,7,12],"intern":[9,10,11,13],"interv":4,"invalid":[5,9,10,11],"invalidtokenerror":11,"involv":0,"io":[3,4],"iot":10,"ip":[0,2,7,10],"is_100":0,"is_200":0,"is_300":0,"is_400":0,"is_500":0,"is_class_bas":2,"is_http":0,"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,10],"itemout":[0,10],"items_list":0,"iter":16,"its":[0,2,4,14,15],"itself":[10,11],"j":10,"jan":0,"javascript":[0,3,10],"jinja2":[0,7,12],"jpeg":10,"jpg":10,"json":[0,3,6,7,8,10,11,14,16],"jsonifi":12,"jump":7,"just":[4,9,10,13,15,16],"jwt":11,"k":8,"keep":[2,4,5,7,9,10,13,15,16],"kei":[0,4,6,7,9,10,12,15,16],"kennethreitz":[3,8],"keypress":16,"keyword":[0,7,12,13],"know":[5,7],"known":[0,11],"kubernet":4,"kwarg":0,"languag":10,"larg":[0,2,10],"larger":[5,9,13],"last":[0,13],"later":[7,9],"latest":4,"launch":[4,6],"layer":13,"layout":2,"lazi":2,"lazili":0,"lead":9,"learn":10,"legaci":12,"less":10,"let":[3,4,7,10,14,15],"level":[4,13],"lib":4,"librari":[2,9,10,16],"licens":0,"lifecycl":[6,11],"lifespan":[0,2,6,14],"lift":7,"lightn":4,"lightweight":[4,7],"like":[0,3,4,7,9,10,11,13,14,16],"limit":[1,2,4,6,8,13,15,16],"line":[6,7],"liner":2,"lingua":7,"link":2,"lint":8,"list":[0,6,7,9,10,13,15],"list_all_us":11,"list_book":[14,15],"list_item":10,"list_pet":10,"list_us":[0,10,12],"list_users_v2":10,"listen":3,"live":[4,8,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":[4,5,7,9,10,11,14,15,16],"locat":[0,7,11,12],"lock":[2,4],"log":[1,2,4,6,11,13],"log_error":0,"log_level":2,"log_request":13,"log_respons":10,"logger":[2,10],"logic":[6,7,10],"login":[10,11],"logout":11,"long":7,"look":[3,4,6,7],"loop":[7,12,16],"lose":[2,15,16],"lower":[0,5],"lowercas":7,"machin":10,"made":[0,6],"magic":12,"mai":4,"main":[3,8],"make":[4,5,7,8,9,10,11,12,16],"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],"mapped_column":[2,15],"mapper":15,"marimo":[2,10],"mark":[2,10],"marker":2,"marshmallow":[0,2,10],"match":[0,5,7,8,10,14],"matter":10,"max_ag":[0,10],"maximum":[0,13],"md":2,"me":[0,11],"mean":[4,7,10,12],"mechan":10,"media":[0,2,4,6,7,9,10,11,12,14,15],"memori":[0,2,6,7,10],"messag":[0,7,10,11,13,16],"messagepack":[2,6],"metadata":[0,7,8,15],"method":[0,2,6,7,9,11,12,13,14,15,16],"microservic":10,"middelwar":0,"middlewar":[0,2,6,7,10],"middleware_cl":0,"middleware_config":0,"might":7,"migrat":[2,6,7,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,"mobil":11,"mode":[0,4,6],"model":[0,2,6,8,9,10],"model_dump":15,"model_valid":15,"modern":[2,4,10,11,12],"modifi":[0,10,13,14,15],"modul":[0,2,6,7,10],"monitor":4,"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,8,10],"much":[7,10],"multi":0,"multipart":[2,7],"multipl":[0,2,4,10,14],"multiplay":[10,16],"must":[0,7,10,11,14,16],"mutabl":6,"mutat":[0,7,12],"my":0,"my_templ":7,"myapi":4,"myapp":[3,4,10],"mydb":15,"mypi":8,"mysql":15,"n":[0,7],"name":[0,4,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,2,6,7,8,9],"nervou":7,"network":[9,16],"never":[4,5,10,11,14],"new":[0,7,9,10,12,14,16],"new_endpoint":12,"next":[6,13,16],"next_id":14,"nginx":4,"non":7,"none":[0,2,11,14,15],"nonexist":16,"normal":[0,10,16],"nosniff":13,"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,2,7],"o":[0,3,5,7,12],"object":[0,2,7,10,12,13,15,16],"objecttyp":[0,10],"obviou":9,"octet":0,"off":[5,7],"offload":4,"offset":15,"often":[3,7,10],"ok":[0,7,9,14],"old":12,"older":15,"omit":4,"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":[8,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,16],"open_database_connection_pool":0,"openapi":[0,1,2,6,8,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,"orchestr":4,"order":[0,6],"order_bi":15,"organ":[0,5,9,10,12],"origin":[10,13],"orm":15,"other":[0,2,3,4,6,7,15],"otherwis":[0,10,16],"our":14,"out":[5,6,7,13],"outermost":13,"outgo":[7,10],"output":14,"outsid":13,"over":[0,6,7,10,12,15],"overal":2,"overhead":[9,13],"overrid":[0,10],"overwhelm":10,"own":[4,10,15],"p":[4,11,16],"pace":10,"packag":[2,3,4,8],"page":[0,2,5,7,10,11,16],"pagin":7,"painless":9,"pair":0,"param":[0,2,6,7,12],"paramet":[0,2,6,9,10,14],"parameter":0,"pars":[0,2,7,9,10],"parser":2,"part":[2,6,7,10],"parti":6,"pass":[0,3,4,7,9,10,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":[0,4,6,7,8,10,11,12,13,14,15],"payload":11,"pdf":[0,7,9,10],"pep":2,"per":[0,1,2,4,6,9,10],"perfect":10,"perfectli":13,"perform":13,"period":[0,2,9,10],"perman":7,"permiss":11,"permit":10,"persist":[0,10,16],"person":6,"pet":[0,10],"petin":10,"petout":10,"petschema":[0,10],"pgdata":4,"photo":10,"piec":10,"pin":[2,4],"pip":[2,3,4,5,6,8,11,15,16],"pipe":4,"place":[5,10],"placehold":[7,16],"plain":[0,7,10,13,16],"platform":[2,3,5,6,7],"pleasant":6,"plot":10,"plu":15,"plugin":2,"poethepoet":2,"point":[3,4,8,14],"polici":[10,13,16],"poll":4,"pool":[0,6,7,10,12,15],"popular":[7,10,15],"port":[0,3,4,5,7,9],"portion":0,"possibl":7,"post":[0,5,7,9,10,11,12,14,15],"postgr":4,"postgres_db":4,"postgres_password":4,"postgres_us":4,"postgresql":[4,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,10],"primari":0,"primary_kei":15,"print":[0,5,10,13,15,16],"privat":10,"proce":16,"process":[0,4,6,7,9,10,13],"process_data":7,"procfil":[2,4],"prod":5,"produc":[0,7],"product":[2,3,5,6,7,9,10,11,15],"profil":10,"programmat":10,"progress":10,"project":[2,3],"propag":9,"proper":[7,11,15],"properli":[2,5,9,15,16],"properti":[0,2,7,9],"prose":2,"protect":[4,11],"proto":4,"protocol":[3,7,9,10,13,16],"prototyp":[2,3,6],"provid":0,"proxi":6,"public":[0,6,10],"public_path":11,"pure":[2,6],"push":[2,4,6,10],"put":[6,10,14,15],"py":[2,3,4,5,7,8,9,10,14,15],"pydant":[0,2,6,9,14,15],"pyjwt":11,"pypi":2,"pyproject":[2,8],"pytest":[6,7,8,9,16],"python":[0,2,3,4,5,6,7,10,14,15,16],"pythonpath":3,"q":[0,7,12],"queri":[2,4,6,7,10,15,16],"query_str":0,"querydict":0,"queue":[6,7,8],"quick":[0,3,6],"quickstart":2,"r":[7,9],"race":9,"railwai":[3,4],"rais":[0,2,9,10,11,16],"raise_server_except":9,"random":[0,5],"rang":[0,7,9,10],"rapidoc":[0,10],"rare":7,"rate":[1,2,4,6,8,13],"rate_limit":0,"ratelimit":[0,2,6,9,10,13],"rather":[9,16],"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,3,5,6,10,11,12,14,15],"readabl":10,"readi":[4,5,6,7],"real":[2,5,6,7,10,11,14,15,16],"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,"record":2,"recv":16,"redirect":[0,2,7,11,12],"redoc":[0,10],"reduc":2,"ref":3,"refactor":[2,9],"refer":[2,6,9],"referr":13,"refresh":15,"refus":10,"regist":[0,9,10,11],"register_blueprint":12,"reject":[1,9,10,16],"relat":[0,10,15],"releas":[2,8],"reliabl":9,"reload":8,"remain":[0,9,10],"rememb":11,"remov":[10,12,14,16],"renam":9,"render":[0,4,6,10],"render_async":7,"render_templ":12,"replac":[2,7,10,14],"repo":8,"report":[7,9,10],"repres":0,"represent":0,"reproduc":4,"req":[0,2,4,6,7,9,10,11,12,13,14,15,16],"request":[1,2,3,4,6,8,11,12,13,14,15],"request_id":[0,2,10,13],"request_model":[0,2,9,10,14,15],"requestcontext":[2,10],"requestcontextfilt":2,"requir":[0,2,4,9,10],"require_rol":11,"research":6,"resolv":[2,10],"resolve_hello":[0,10],"resourc":[7,10,14],"resp":[0,2,4,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,8,9,10,12,13,14,15,16],"response_model":[0,2,10,14,15],"rest":[2,4,6,7,10],"restrict":[4,10,11],"result":[0,2,7,10,15],"resum":2,"resume_incomplet":2,"retri":[0,10],"retriev":[0,10,14],"return":[0,2,4,6,7,9,10,11,12,13,14,15],"reusabl":11,"revers":[0,6],"reverse_proxi":4,"revok":11,"rework":2,"rewrit":2,"rewrot":2,"rfc3986":2,"right":[6,7,10,12,13],"role":[2,6],"roll":15,"room":6,"root":[2,10],"rotat":5,"rout":[1,2,4,6,8,9,13,14,15,16],"routegroup":0,"router":[2,8],"rst":2,"ruff":[2,8],"rule":5,"run":[0,2,3,6,9,10,12,13,16],"run_sync":15,"runnabl":8,"runner":[2,4],"runtim":3,"runtimeerror":0,"s3":3,"safe":[2,14],"sai":7,"said":4,"same":[3,4,6,7,10,12,13,14,15],"sandbox":[2,6],"save":[7,16],"scalar":15,"scale":[6,11],"schema":[0,2,6,10,11,14,15],"scope":[0,10,13],"scratch":[6,14],"script":16,"search":[0,2,7,10],"searchabl":10,"second":0,"secret":[4,6,7,10,11],"secret_kei":[0,3,4,5,10,11],"section":[2,10],"secur":[0,10,13],"securityheadersmiddlewar":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,13,14,16],"send_byt":[10,16],"send_email":0,"send_json":[10,16],"send_text":[9,10,16],"send_with_head":13,"sensit":11,"sent":[0,2,6,7,13],"sentri":10,"separ":[7,9,14],"sequenti":2,"serial":[0,2,6,7,10,16],"serializ":7,"serv":[0,2,3,4,5,6,7,9,14,16],"server":[0,2,3,4,5,6,8,9,11,13,14,15],"servererrormiddlewar":13,"servestat":2,"servic":[0,3,4,6,9,10,11,14],"session":[0,2,5,6,7,9,12,13,15],"session_id":10,"sessionmiddlewar":13,"set":[0,2,3,4,5,6,7,9,10,11,15,16],"set_cooki":[0,2,10],"set_text":0,"setattr":15,"setup":[2,5,6,9],"sever":[10,13,16],"sftp":3,"sh":4,"shape":10,"share":[0,3,7,9,10,15],"shell":5,"short":[0,1,2,10],"shorthand":0,"should":[4,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],"sidebar":2,"sign":[0,5,6,7,10,11,13],"signatur":[7,10,12],"significantli":4,"signup":11,"simpl":[3,4,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,8,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,11,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],"spa":11,"spawn":4,"spec":[7,10],"special":[6,10],"specif":[0,2,5,9,10,11,13,14,16],"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,11,13,14,15],"startswith":11,"startup":[0,2,6,9,10],"state":[0,2,9,10,11,16],"stateless":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,4,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":[8,10],"storag":[3,6],"store":[0,5,10,11,14],"str":[0,7,9,10,11,14,15],"straightforward":10,"stranger":[0,10],"strategi":[2,6],"stream":[0,2,6,10,13],"stream_data":0,"stream_fil":[0,2,10],"strict":[10,13],"string":[0,6,7,10,15,16],"strip":[2,10,11],"structur":[1,2,6],"style":[10,15],"stylesheet":10,"sub":11,"subclass":0,"subcommand":3,"subject":0,"submiss":0,"submit":0,"subrout":[6,9,10,12],"subsequ":[10,11],"subtl":2,"succe":9,"success":[0,7,14],"successfulli":14,"successor":4,"suit":[8,9],"supersed":10,"suppli":2,"support":[0,1,2,3,4,6,7,12,15,16],"swagger":[0,6,10,14],"swagger_ui":[0,10],"swallow":16,"switch":[2,15,16],"sync":[2,6,7,12],"synchron":[0,12],"syntax":[2,6,7,12,15],"synthet":9,"syslog":10,"system":[3,4,7,10],"t":[0,4,5,7,9,10,11,12,13,14,15],"tab":16,"tabl":15,"tag":0,"take":[6,7],"tamper":[10,11],"target":2,"task":[0,2,6,8],"teach":6,"tear":10,"tell":[7,10,14,15],"templat":[0,2,6],"template_str":[0,7],"templates_dir":0,"termin":[3,4,16],"terms_of_servic":0,"test":[0,2,3,5,6,7,14],"test_500":[2,9],"test_api":9,"test_create_item":9,"test_custom_error":9,"test_echo":16,"test_flask_mount":9,"test_head":9,"test_hello":9,"test_hook":9,"test_json":9,"test_mount":8,"test_rate_limit":9,"test_respond":8,"test_upload":9,"test_valid":9,"test_websocket":9,"test_websocket_404":16,"test_with_lifespan":9,"testclient":[0,2,9,16],"text":[0,2,6,7,9,10,12,16],"textcont":16,"than":[4,9,10,11,12,13,14,15,16],"thei":[0,5,7,9,10,11,12,13,14,16],"them":[3,4,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,10,13],"think":7,"third":[6,9],"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,"ti":4,"time":[0,2,6,7,9,10,12,13,14,15,16],"time_start":0,"timedelta":11,"timeout":4,"timezon":11,"timingmiddlewar":13,"tip":[2,6],"titl":[0,2,7,10,14,15],"tl":4,"togeth":[4,6,10],"token":[0,6,7,10,16],"token_hex":5,"toml":[2,8],"too":[0,3,4,9,10],"tool":[4,8,11,13],"toolbelt":2,"toolkit":15,"top":[0,5],"total":10,"tour":[0,2,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,9],"trustedhostmiddlewar":[4,13],"try":[6,7,11,16],"tupl":[0,7,9],"tutori":[2,7,14],"two":[7,9,10,13],"type":[0,2,6,10,12,13,14,15,16],"typic":[7,10],"typo":[2,10],"ui":[0,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,11],"unlik":10,"unmaintain":2,"unmatch":10,"unpin":2,"unprocess":10,"unrecogn":10,"until":7,"up":[0,2,4,7,10],"updat":[2,6,7,10,15,16],"update_book":[14,15],"upgrad":[2,8,10,16],"upload":[0,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,4,5,7,10,11,12,15],"user_id":[7,10,11,12],"user_rol":11,"usernam":[10,11],"usr":4,"usual":9,"utc":11,"utcnow":2,"utf":0,"uuid":[0,2,7,10],"uuid4":0,"uv":[2,3,4,5,6,8,11,15],"uvicorn":[0,2,6,7,13],"uvloop":4,"v":6,"v1":[0,10],"v2":10,"valid":[0,2,6,7,11,13,14,15],"valu":[0,6,7,9,10,11,12,13,14,15,16],"valueerror":[0,9,10,12,14],"var":4,"variabl":[0,4,6,7],"ve":[6,9,12],"venv":8,"verb":10,"veri":[0,7,15],"verif":11,"verifi":[4,9,11],"verify_token":11,"version":[0,2,6,9,10,14],"via":[0,2,4,5,10,12],"view":[0,2,6,7,9,12],"violat":16,"virtual":[3,4],"visit":[10,14],"volum":4,"vue":10,"w":[9,10,16],"wa":[0,2,7,14],"wai":[3,4,6,7,10,11,12,13,15],"wait":[4,12],"walk":[7,10,14],"walkthrough":10,"want":[0,3,4,6,7,9,10,13,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,7,13],"websocket_connect":[9,16],"websocketdisconnect":[2,16],"websocketrout":8,"welcom":[6,7,11],"well":[6,11],"went":6,"werkzeug":[2,9],"what":[0,7,9,10,16],"whatev":[7,10],"when":[0,2,3,4,5,6,7,9,10,12,14,15,16],"where":[0,4,7,10,11,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,11,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],"wrapper":8,"write":[6,7,10,12],"wrong":10,"ws_auth":16,"wsgi":[0,2,4,6,9,10,12],"www":5,"x":[0,2,4,6,7,9,10,11,12,13,14],"x00":16,"x01":16,"x02":16,"x89png":7,"xml":0,"xss":10,"xv":8,"yaml":[0,2,6,7,8,9,10],"year":[14,15],"yield":[0,10,15],"yml":[0,4,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,16],"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],"access":11,"ad":[2,13],"after":[9,10],"all":[5,7,14],"allow":5,"an":11,"api":[0,9,11,12,14],"app":[9,10,11],"asgi":13,"asset":3,"auth":11,"authent":11,"background":[0,7],"backlog":1,"base":[10,11],"bearer":11,"befor":[9,10,16],"big":12,"blueprint":12,"book":14,"build":[3,14],"built":13,"chang":2,"changelog":2,"chat":16,"check":[4,8],"checklist":4,"choos":11,"class":[0,5,10],"client":16,"cloud":4,"code":[0,8],"command":3,"compos":4,"configur":5,"connect":16,"content":10,"control":11,"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":[8,10],"echo":16,"endpoint":[4,15],"env":5,"environ":[3,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":[8,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,"health":4,"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,"layout":8,"lifecycl":16,"lifespan":[9,10,15],"limit":[0,9,10],"line":3,"list":14,"local":4,"log":10,"memori":14,"messagepack":10,"method":10,"middlewar":13,"migrat":12,"mode":5,"model":[14,15],"modul":3,"mount":[9,10],"name":3,"negoti":10,"next":14,"openapi":10,"order":13,"other":10,"out":14,"paramet":[7,12],"parti":13,"pattern":5,"platform":4,"postgresql":15,"product":4,"project":[6,8,14],"proxi":4,"public":11,"pure":13,"put":[5,7],"pydant":10,"queri":0,"queue":0,"quick":[7,12],"rate":[0,9,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,"role":11,"room":16,"rout":[0,7,10,11,12],"run":[4,7,8,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,"strategi":11,"structur":10,"support":10,"task":7,"templat":[7,12],"test":[8,9,16],"third":13,"tip":[9,15],"togeth":[5,7],"token":11,"tour":10,"trust":10,"try":14,"tutori":[6,16],"type":[7,8],"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,10],"variabl":[3,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 f364794..6b1c7f2 100644 --- a/testing.html +++ b/testing.html @@ -5,13 +5,13 @@ - Testing — responder 3.6.0 documentation + Testing — responder 3.6.1 documentation - + @@ -376,7 +376,7 @@ the Host Responder — a familiar HTTP service framework for Python.
                                                                              - v3.6.0 + v3.6.1

                                                                              Useful Links

                                                                                diff --git a/tour.html b/tour.html index 3f733f6..0141447 100644 --- a/tour.html +++ b/tour.html @@ -5,13 +5,13 @@ - Feature Tour — responder 3.6.0 documentation + Feature Tour — responder 3.6.1 documentation - + @@ -732,7 +732,7 @@ bodies by passing &

                                                                                Responder — a familiar HTTP service framework for Python.
                                                                                - v3.6.0 + v3.6.1

                                                                                Useful Links

                                                                                  diff --git a/tutorial-auth.html b/tutorial-auth.html index db5d36c..6456af4 100644 --- a/tutorial-auth.html +++ b/tutorial-auth.html @@ -5,13 +5,13 @@ - Authentication — responder 3.6.0 documentation + Authentication — responder 3.6.1 documentation - + @@ -289,7 +289,7 @@ sessions for web apps with login pages.

                                                                                  Responder — a familiar HTTP service framework for Python.
                                                                                  - v3.6.0 + v3.6.1

                                                                                  Useful Links

                                                                                    diff --git a/tutorial-flask.html b/tutorial-flask.html index 9ac6200..6f20f05 100644 --- a/tutorial-flask.html +++ b/tutorial-flask.html @@ -5,13 +5,13 @@ - Migrating from Flask — responder 3.6.0 documentation + Migrating from Flask — responder 3.6.1 documentation - + @@ -253,7 +253,7 @@ Responder. When you’ve moved everything over, remove the mount.

                                                                                    Responder — a familiar HTTP service framework for Python.
                                                                                    - v3.6.0 + v3.6.1

                                                                                    Useful Links

                                                                                      diff --git a/tutorial-middleware.html b/tutorial-middleware.html index dd8d812..7353fdc 100644 --- a/tutorial-middleware.html +++ b/tutorial-middleware.html @@ -5,13 +5,13 @@ - Writing Middleware — responder 3.6.0 documentation + Writing Middleware — responder 3.6.1 documentation - + @@ -210,7 +210,7 @@ middleware when hooks aren’t enough.

                                                                                      Responder — a familiar HTTP service framework for Python.
                                                                                      - v3.6.0 + v3.6.1

                                                                                      Useful Links

                                                                                        diff --git a/tutorial-rest.html b/tutorial-rest.html index e144961..18c003f 100644 --- a/tutorial-rest.html +++ b/tutorial-rest.html @@ -5,13 +5,13 @@ - Building a REST API — responder 3.6.0 documentation + Building a REST API — responder 3.6.1 documentation - + @@ -255,7 +255,7 @@ with Responder using the lifespan pattern.

                                                                                        Responder — a familiar HTTP service framework for Python.
                                                                                        - v3.6.0 + v3.6.1

                                                                                        Useful Links

                                                                                          diff --git a/tutorial-sqlalchemy.html b/tutorial-sqlalchemy.html index c0771a8..a1f2a6c 100644 --- a/tutorial-sqlalchemy.html +++ b/tutorial-sqlalchemy.html @@ -5,13 +5,13 @@ - Using SQLAlchemy — responder 3.6.0 documentation + Using SQLAlchemy — responder 3.6.1 documentation - + @@ -291,7 +291,7 @@ your database without losing data.

                                                                                          Responder — a familiar HTTP service framework for Python.
                                                                                          - v3.6.0 + v3.6.1

                                                                                          Useful Links

                                                                                            diff --git a/tutorial-websockets.html b/tutorial-websockets.html index 97c2eb3..d83a240 100644 --- a/tutorial-websockets.html +++ b/tutorial-websockets.html @@ -5,13 +5,13 @@ - WebSocket Tutorial — responder 3.6.0 documentation + WebSocket Tutorial — responder 3.6.1 documentation - + @@ -256,7 +256,7 @@ lifecycle — it connects on enter and disconnects on exit.

                                                                                            Responder — a familiar HTTP service framework for Python.
                                                                                            - v3.6.0 + v3.6.1

                                                                                            Useful Links

oM1WC7ywyw=jPBw~%%dUpdWlo`H^%yIA$Cx=$ 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 BCddE) diff --git a/.doctrees/changes.doctree b/.doctrees/changes.doctree index 582c3842d04aa2b8a8fc502ef68925e6b5a52973..3ed61b7aae743ef2131853d20b0a9ae69c1efe58 100644 GIT binary patch literal 110565 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�`xI4^WEL%X`#q}LwjI)GG0+lHY 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 TzGM*=dNm=&Q5f literal 108894 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 diff --git a/.doctrees/environment.pickle b/.doctrees/environment.pickle index faf7f4b195dd1eee1a4a582d2042d313aa6ad4d4..19f6ecc6db31eca0128595eca43c04e248069cbe 100644 GIT binary patch literal 245057 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 La=5p5v-N)fQPF%& literal 243848 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