fastapi 0.112.3__tar.gz → 0.113.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of fastapi might be problematic. Click here for more details.
- {fastapi-0.112.3 → fastapi-0.113.0}/PKG-INFO +2 -2
- {fastapi-0.112.3 → fastapi-0.113.0}/README.md +1 -1
- fastapi-0.113.0/docs_src/request_form_models/tutorial001.py +14 -0
- fastapi-0.113.0/docs_src/request_form_models/tutorial001_an.py +15 -0
- fastapi-0.113.0/docs_src/request_form_models/tutorial001_an_py39.py +16 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/__init__.py +1 -1
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/_compat.py +15 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/dependencies/utils.py +183 -128
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/param_functions.py +2 -2
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/params.py +1 -2
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/routing.py +23 -3
- {fastapi-0.112.3 → fastapi-0.113.0}/pyproject.toml +1 -1
- fastapi-0.113.0/scripts/playwright/request_form_models/image01.py +36 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_compat.py +12 -1
- fastapi-0.113.0/tests/test_forms_single_model.py +129 -0
- fastapi-0.113.0/tests/test_forms_single_param.py +99 -0
- fastapi-0.113.0/tests/test_tutorial/test_request_form_models/test_tutorial001.py +232 -0
- fastapi-0.113.0/tests/test_tutorial/test_request_form_models/test_tutorial001_an.py +232 -0
- fastapi-0.113.0/tests/test_tutorial/test_request_form_models/test_tutorial001_an_py39.py +240 -0
- fastapi-0.113.0/tests/test_validate_response_recursive/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/LICENSE +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs/en/docs/img/favicon.png +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/additional_responses/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/additional_responses/tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/additional_responses/tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/additional_responses/tutorial004.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/additional_status_codes/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/additional_status_codes/tutorial001_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/additional_status_codes/tutorial001_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/additional_status_codes/tutorial001_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/additional_status_codes/tutorial001_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/advanced_middleware/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/advanced_middleware/tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/advanced_middleware/tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/app_testing/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/app_testing/app_b/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/app_testing/app_b/main.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/app_testing/app_b/test_main.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/app_testing/app_b_an/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/app_testing/app_b_an/main.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/app_testing/app_b_an/test_main.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/app_testing/app_b_an_py310/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/app_testing/app_b_an_py310/main.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/app_testing/app_b_an_py310/test_main.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/app_testing/app_b_an_py39/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/app_testing/app_b_an_py39/main.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/app_testing/app_b_an_py39/test_main.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/app_testing/app_b_py310/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/app_testing/app_b_py310/main.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/app_testing/app_b_py310/test_main.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/app_testing/main.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/app_testing/test_main.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/app_testing/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/app_testing/tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/app_testing/tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/async_sql_databases/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/async_tests/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/async_tests/main.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/async_tests/test_main.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/background_tasks/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/background_tasks/tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/background_tasks/tutorial002_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/background_tasks/tutorial002_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/background_tasks/tutorial002_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/background_tasks/tutorial002_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/behind_a_proxy/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/behind_a_proxy/tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/behind_a_proxy/tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/behind_a_proxy/tutorial004.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/bigger_applications/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/bigger_applications/app/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/bigger_applications/app/dependencies.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/bigger_applications/app/internal/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/bigger_applications/app/internal/admin.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/bigger_applications/app/main.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/bigger_applications/app/routers/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/bigger_applications/app/routers/items.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/bigger_applications/app/routers/users.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/bigger_applications/app_an/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/bigger_applications/app_an/dependencies.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/bigger_applications/app_an/internal/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/bigger_applications/app_an/internal/admin.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/bigger_applications/app_an/main.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/bigger_applications/app_an/routers/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/bigger_applications/app_an/routers/items.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/bigger_applications/app_an/routers/users.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/bigger_applications/app_an_py39/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/bigger_applications/app_an_py39/dependencies.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/bigger_applications/app_an_py39/internal/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/bigger_applications/app_an_py39/internal/admin.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/bigger_applications/app_an_py39/main.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/bigger_applications/app_an_py39/routers/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/bigger_applications/app_an_py39/routers/items.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/bigger_applications/app_an_py39/routers/users.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body/tutorial001_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body/tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body/tutorial002_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body/tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body/tutorial003_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body/tutorial004.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body/tutorial004_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_fields/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_fields/tutorial001_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_fields/tutorial001_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_fields/tutorial001_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_fields/tutorial001_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_multiple_params/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_multiple_params/tutorial001_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_multiple_params/tutorial001_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_multiple_params/tutorial001_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_multiple_params/tutorial001_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_multiple_params/tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_multiple_params/tutorial002_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_multiple_params/tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_multiple_params/tutorial003_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_multiple_params/tutorial003_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_multiple_params/tutorial003_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_multiple_params/tutorial003_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_multiple_params/tutorial004.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_multiple_params/tutorial004_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_multiple_params/tutorial004_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_multiple_params/tutorial004_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_multiple_params/tutorial004_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_multiple_params/tutorial005.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_multiple_params/tutorial005_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_multiple_params/tutorial005_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_multiple_params/tutorial005_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_multiple_params/tutorial005_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_nested_models/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_nested_models/tutorial001_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_nested_models/tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_nested_models/tutorial002_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_nested_models/tutorial002_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_nested_models/tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_nested_models/tutorial003_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_nested_models/tutorial003_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_nested_models/tutorial004.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_nested_models/tutorial004_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_nested_models/tutorial004_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_nested_models/tutorial005.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_nested_models/tutorial005_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_nested_models/tutorial005_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_nested_models/tutorial006.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_nested_models/tutorial006_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_nested_models/tutorial006_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_nested_models/tutorial007.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_nested_models/tutorial007_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_nested_models/tutorial007_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_nested_models/tutorial008.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_nested_models/tutorial008_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_nested_models/tutorial009.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_nested_models/tutorial009_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_updates/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_updates/tutorial001_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_updates/tutorial001_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_updates/tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_updates/tutorial002_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/body_updates/tutorial002_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/conditional_openapi/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/configure_swagger_ui/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/configure_swagger_ui/tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/configure_swagger_ui/tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/cookie_params/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/cookie_params/tutorial001_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/cookie_params/tutorial001_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/cookie_params/tutorial001_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/cookie_params/tutorial001_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/cors/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/custom_docs_ui/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/custom_docs_ui/tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/custom_request_and_route/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/custom_request_and_route/tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/custom_request_and_route/tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/custom_response/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/custom_response/tutorial001b.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/custom_response/tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/custom_response/tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/custom_response/tutorial004.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/custom_response/tutorial005.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/custom_response/tutorial006.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/custom_response/tutorial006b.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/custom_response/tutorial006c.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/custom_response/tutorial007.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/custom_response/tutorial008.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/custom_response/tutorial009.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/custom_response/tutorial009b.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/custom_response/tutorial009c.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/custom_response/tutorial010.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dataclasses/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dataclasses/tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dataclasses/tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/debugging/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial001_02_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial001_02_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial001_02_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial001_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial001_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial001_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial001_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial002_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial002_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial002_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial002_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial003_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial003_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial003_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial003_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial004.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial004_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial004_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial004_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial004_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial005.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial005_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial005_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial005_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial005_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial006.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial006_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial006_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial007.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial008.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial008_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial008_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial008b.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial008b_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial008b_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial008c.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial008c_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial008c_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial008d.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial008d_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial008d_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial009.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial010.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial011.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial011_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial011_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial012.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial012_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependencies/tutorial012_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependency_testing/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependency_testing/tutorial001_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependency_testing/tutorial001_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependency_testing/tutorial001_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/dependency_testing/tutorial001_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/encoder/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/encoder/tutorial001_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/events/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/events/tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/events/tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/extending_openapi/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/extra_data_types/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/extra_data_types/tutorial001_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/extra_data_types/tutorial001_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/extra_data_types/tutorial001_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/extra_data_types/tutorial001_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/extra_models/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/extra_models/tutorial001_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/extra_models/tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/extra_models/tutorial002_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/extra_models/tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/extra_models/tutorial003_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/extra_models/tutorial004.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/extra_models/tutorial004_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/extra_models/tutorial005.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/extra_models/tutorial005_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/first_steps/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/first_steps/tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/first_steps/tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/generate_clients/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/generate_clients/tutorial001_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/generate_clients/tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/generate_clients/tutorial002_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/generate_clients/tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/generate_clients/tutorial003_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/generate_clients/tutorial004.js +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/generate_clients/tutorial004.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/graphql/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/handling_errors/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/handling_errors/tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/handling_errors/tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/handling_errors/tutorial004.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/handling_errors/tutorial005.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/handling_errors/tutorial006.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/header_params/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/header_params/tutorial001_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/header_params/tutorial001_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/header_params/tutorial001_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/header_params/tutorial001_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/header_params/tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/header_params/tutorial002_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/header_params/tutorial002_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/header_params/tutorial002_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/header_params/tutorial002_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/header_params/tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/header_params/tutorial003_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/header_params/tutorial003_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/header_params/tutorial003_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/header_params/tutorial003_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/header_params/tutorial003_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/metadata/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/metadata/tutorial001_1.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/metadata/tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/metadata/tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/metadata/tutorial004.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/middleware/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/nosql_databases/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/openapi_callbacks/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/openapi_webhooks/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_operation_advanced_configuration/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_operation_advanced_configuration/tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_operation_advanced_configuration/tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_operation_advanced_configuration/tutorial004.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_operation_advanced_configuration/tutorial005.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_operation_advanced_configuration/tutorial006.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_operation_advanced_configuration/tutorial007.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_operation_advanced_configuration/tutorial007_pv1.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_operation_configuration/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_operation_configuration/tutorial001_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_operation_configuration/tutorial001_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_operation_configuration/tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_operation_configuration/tutorial002_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_operation_configuration/tutorial002_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_operation_configuration/tutorial002b.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_operation_configuration/tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_operation_configuration/tutorial003_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_operation_configuration/tutorial003_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_operation_configuration/tutorial004.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_operation_configuration/tutorial004_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_operation_configuration/tutorial004_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_operation_configuration/tutorial005.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_operation_configuration/tutorial005_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_operation_configuration/tutorial005_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_operation_configuration/tutorial006.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_params/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_params/tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_params/tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_params/tutorial003b.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_params/tutorial004.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_params/tutorial005.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_params_numeric_validations/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_params_numeric_validations/tutorial001_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_params_numeric_validations/tutorial001_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_params_numeric_validations/tutorial001_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_params_numeric_validations/tutorial001_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_params_numeric_validations/tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_params_numeric_validations/tutorial002_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_params_numeric_validations/tutorial002_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_params_numeric_validations/tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_params_numeric_validations/tutorial003_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_params_numeric_validations/tutorial003_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_params_numeric_validations/tutorial004.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_params_numeric_validations/tutorial004_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_params_numeric_validations/tutorial004_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_params_numeric_validations/tutorial005.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_params_numeric_validations/tutorial005_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_params_numeric_validations/tutorial005_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_params_numeric_validations/tutorial006.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_params_numeric_validations/tutorial006_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/path_params_numeric_validations/tutorial006_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/python_types/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/python_types/tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/python_types/tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/python_types/tutorial004.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/python_types/tutorial005.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/python_types/tutorial006.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/python_types/tutorial006_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/python_types/tutorial007.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/python_types/tutorial007_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/python_types/tutorial008.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/python_types/tutorial008_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/python_types/tutorial008b.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/python_types/tutorial008b_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/python_types/tutorial009.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/python_types/tutorial009_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/python_types/tutorial009b.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/python_types/tutorial009c.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/python_types/tutorial009c_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/python_types/tutorial010.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/python_types/tutorial011.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/python_types/tutorial011_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/python_types/tutorial011_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/python_types/tutorial012.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/python_types/tutorial013.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/python_types/tutorial013_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params/tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params/tutorial002_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params/tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params/tutorial003_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params/tutorial004.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params/tutorial004_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params/tutorial005.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params/tutorial006.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params/tutorial006_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params/tutorial006b.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial001_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial002_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial002_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial002_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial003_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial003_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial003_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial003_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial004.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial004_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial004_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial004_an_py310_regex.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial004_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial004_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial005.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial005_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial005_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial006.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial006_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial006_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial006b.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial006b_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial006b_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial006c.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial006c_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial006c_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial006c_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial006c_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial006d.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial006d_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial006d_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial007.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial007_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial007_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial007_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial007_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial008.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial008_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial008_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial008_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial008_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial009.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial009_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial009_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial009_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial009_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial010.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial010_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial010_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial010_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial010_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial011.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial011_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial011_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial011_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial011_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial011_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial012.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial012_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial012_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial012_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial013.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial013_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial013_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial014.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial014_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial014_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial014_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/query_params_str_validations/tutorial014_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/request_files/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/request_files/tutorial001_02.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/request_files/tutorial001_02_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/request_files/tutorial001_02_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/request_files/tutorial001_02_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/request_files/tutorial001_02_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/request_files/tutorial001_03.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/request_files/tutorial001_03_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/request_files/tutorial001_03_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/request_files/tutorial001_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/request_files/tutorial001_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/request_files/tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/request_files/tutorial002_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/request_files/tutorial002_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/request_files/tutorial002_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/request_files/tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/request_files/tutorial003_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/request_files/tutorial003_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/request_files/tutorial003_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/request_forms/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/request_forms/tutorial001_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/request_forms/tutorial001_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/request_forms_and_files/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/request_forms_and_files/tutorial001_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/request_forms_and_files/tutorial001_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/response_change_status_code/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/response_cookies/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/response_cookies/tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/response_directly/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/response_directly/tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/response_headers/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/response_headers/tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/response_model/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/response_model/tutorial001_01.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/response_model/tutorial001_01_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/response_model/tutorial001_01_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/response_model/tutorial001_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/response_model/tutorial001_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/response_model/tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/response_model/tutorial002_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/response_model/tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/response_model/tutorial003_01.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/response_model/tutorial003_01_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/response_model/tutorial003_02.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/response_model/tutorial003_03.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/response_model/tutorial003_04.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/response_model/tutorial003_04_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/response_model/tutorial003_05.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/response_model/tutorial003_05_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/response_model/tutorial003_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/response_model/tutorial004.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/response_model/tutorial004_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/response_model/tutorial004_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/response_model/tutorial005.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/response_model/tutorial005_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/response_model/tutorial006.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/response_model/tutorial006_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/response_status_code/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/response_status_code/tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/schema_extra_example/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/schema_extra_example/tutorial001_pv1.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/schema_extra_example/tutorial001_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/schema_extra_example/tutorial001_py310_pv1.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/schema_extra_example/tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/schema_extra_example/tutorial002_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/schema_extra_example/tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/schema_extra_example/tutorial003_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/schema_extra_example/tutorial003_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/schema_extra_example/tutorial003_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/schema_extra_example/tutorial003_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/schema_extra_example/tutorial004.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/schema_extra_example/tutorial004_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/schema_extra_example/tutorial004_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/schema_extra_example/tutorial004_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/schema_extra_example/tutorial004_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/schema_extra_example/tutorial005.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/schema_extra_example/tutorial005_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/schema_extra_example/tutorial005_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/schema_extra_example/tutorial005_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/schema_extra_example/tutorial005_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/security/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/security/tutorial001_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/security/tutorial001_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/security/tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/security/tutorial002_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/security/tutorial002_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/security/tutorial002_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/security/tutorial002_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/security/tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/security/tutorial003_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/security/tutorial003_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/security/tutorial003_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/security/tutorial003_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/security/tutorial004.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/security/tutorial004_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/security/tutorial004_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/security/tutorial004_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/security/tutorial004_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/security/tutorial005.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/security/tutorial005_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/security/tutorial005_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/security/tutorial005_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/security/tutorial005_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/security/tutorial005_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/security/tutorial006.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/security/tutorial006_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/security/tutorial006_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/security/tutorial007.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/security/tutorial007_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/security/tutorial007_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/separate_openapi_schemas/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/separate_openapi_schemas/tutorial001_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/separate_openapi_schemas/tutorial001_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/separate_openapi_schemas/tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/separate_openapi_schemas/tutorial002_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/separate_openapi_schemas/tutorial002_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/settings/app01/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/settings/app01/config.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/settings/app01/main.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/settings/app02/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/settings/app02/config.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/settings/app02/main.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/settings/app02/test_main.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/settings/app02_an/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/settings/app02_an/config.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/settings/app02_an/main.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/settings/app02_an/test_main.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/settings/app02_an_py39/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/settings/app02_an_py39/config.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/settings/app02_an_py39/main.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/settings/app02_an_py39/test_main.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/settings/app03/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/settings/app03/config.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/settings/app03/main.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/settings/app03_an/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/settings/app03_an/config.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/settings/app03_an/config_pv1.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/settings/app03_an/main.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/settings/app03_an_py39/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/settings/app03_an_py39/config.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/settings/app03_an_py39/main.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/settings/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/settings/tutorial001_pv1.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/sql_databases/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/sql_databases/sql_app/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/sql_databases/sql_app/alt_main.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/sql_databases/sql_app/crud.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/sql_databases/sql_app/database.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/sql_databases/sql_app/main.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/sql_databases/sql_app/models.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/sql_databases/sql_app/schemas.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/sql_databases/sql_app/tests/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/sql_databases/sql_app/tests/test_sql_app.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/sql_databases/sql_app_py310/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/sql_databases/sql_app_py310/alt_main.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/sql_databases/sql_app_py310/crud.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/sql_databases/sql_app_py310/database.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/sql_databases/sql_app_py310/main.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/sql_databases/sql_app_py310/models.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/sql_databases/sql_app_py310/schemas.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/sql_databases/sql_app_py310/tests/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/sql_databases/sql_app_py310/tests/test_sql_app.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/sql_databases/sql_app_py39/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/sql_databases/sql_app_py39/alt_main.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/sql_databases/sql_app_py39/crud.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/sql_databases/sql_app_py39/database.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/sql_databases/sql_app_py39/main.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/sql_databases/sql_app_py39/models.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/sql_databases/sql_app_py39/schemas.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/sql_databases/sql_app_py39/tests/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/sql_databases/sql_app_py39/tests/test_sql_app.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/sql_databases_peewee/sql_app/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/sql_databases_peewee/sql_app/crud.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/sql_databases_peewee/sql_app/database.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/sql_databases_peewee/sql_app/main.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/sql_databases_peewee/sql_app/models.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/sql_databases_peewee/sql_app/schemas.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/static_files/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/sub_applications/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/templates/static/styles.css +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/templates/templates/item.html +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/templates/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/using_request_directly/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/websockets/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/websockets/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/websockets/tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/websockets/tutorial002_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/websockets/tutorial002_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/websockets/tutorial002_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/websockets/tutorial002_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/websockets/tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/websockets/tutorial003_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/docs_src/wsgi/tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/__main__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/applications.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/background.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/cli.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/concurrency.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/datastructures.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/dependencies/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/dependencies/models.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/encoders.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/exception_handlers.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/exceptions.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/logger.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/middleware/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/middleware/cors.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/middleware/gzip.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/middleware/httpsredirect.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/middleware/trustedhost.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/middleware/wsgi.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/openapi/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/openapi/constants.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/openapi/docs.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/openapi/models.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/openapi/utils.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/py.typed +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/requests.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/responses.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/security/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/security/api_key.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/security/base.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/security/http.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/security/oauth2.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/security/open_id_connect_url.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/security/utils.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/staticfiles.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/templating.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/testclient.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/types.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/utils.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/fastapi/websockets.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/pdm_build.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/requirements-docs-insiders.txt +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/requirements-docs-tests.txt +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/requirements-docs.txt +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/requirements-github-actions.txt +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/requirements-tests.txt +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/requirements.txt +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/scripts/deploy_docs_status.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/scripts/docs.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/scripts/format.sh +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/scripts/lint.sh +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/scripts/mkdocs_hooks.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/scripts/playwright/separate_openapi_schemas/image01.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/scripts/playwright/separate_openapi_schemas/image02.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/scripts/playwright/separate_openapi_schemas/image03.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/scripts/playwright/separate_openapi_schemas/image04.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/scripts/playwright/separate_openapi_schemas/image05.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/scripts/test-cov-html.sh +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/scripts/test.sh +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/main.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_additional_properties.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_additional_properties_bool.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_additional_response_extra.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_additional_responses_bad.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_additional_responses_custom_model_in_callback.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_additional_responses_custom_validationerror.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_additional_responses_default_validationerror.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_additional_responses_response_class.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_additional_responses_router.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_allow_inf_nan_in_enforcing.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_ambiguous_params.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_annotated.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_application.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_callable_endpoint.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_computed_fields.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_custom_middleware_exception.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_custom_route_class.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_custom_schema_fields.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_custom_swagger_ui_redirect.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_datastructures.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_datetime_custom_encoder.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_default_response_class.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_default_response_class_router.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_dependency_cache.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_dependency_class.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_dependency_contextmanager.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_dependency_contextvars.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_dependency_duplicates.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_dependency_normal_exceptions.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_dependency_overrides.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_dependency_security_overrides.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_deprecated_openapi_prefix.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_duplicate_models_openapi.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_empty_router.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_enforce_once_required_parameter.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_exception_handlers.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_extra_routes.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_fastapi_cli.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_filter_pydantic_sub_model/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_filter_pydantic_sub_model/app_pv1.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_filter_pydantic_sub_model/test_filter_pydantic_sub_model_pv1.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_filter_pydantic_sub_model_pv2.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_forms_from_non_typing_sequences.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_generate_unique_id_function.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_generic_parameterless_depends.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_get_request_body.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_http_connection_injection.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_include_route.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_include_router_defaults_overrides.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_infer_param_optionality.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_inherited_custom_class.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_invalid_path_param.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_invalid_sequence_param.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_jsonable_encoder.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_local_docs.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_modules_same_name_body/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_modules_same_name_body/app/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_modules_same_name_body/app/a.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_modules_same_name_body/app/b.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_modules_same_name_body/app/main.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_modules_same_name_body/test_main.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_multi_body_errors.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_multi_query_errors.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_multipart_installation.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_no_swagger_ui_redirect.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_openapi_examples.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_openapi_query_parameter_extension.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_openapi_route_extensions.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_openapi_separate_input_output_schemas.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_openapi_servers.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_operations_signatures.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_orjson_response_class.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_param_class.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_param_in_path_and_dependency.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_param_include_in_schema.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_params_repr.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_path.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_put_no_body.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_query.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_read_with_orm_mode.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_regex_deprecated_body.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_regex_deprecated_params.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_repeated_cookie_headers.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_repeated_dependency_schema.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_repeated_parameter_alias.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_reponse_set_reponse_code_empty.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_request_body_parameters_media_type.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_required_noneable.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_response_by_alias.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_response_change_status_code.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_response_class_no_mediatype.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_response_code_no_body.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_response_model_as_return_annotation.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_response_model_data_filter.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_response_model_data_filter_no_inheritance.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_response_model_include_exclude.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_response_model_invalid.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_response_model_sub_types.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_route_scope.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_router_events.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_router_prefix_with_template.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_router_redirect_slashes.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_schema_extra_examples.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_security_api_key_cookie.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_security_api_key_cookie_description.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_security_api_key_cookie_optional.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_security_api_key_header.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_security_api_key_header_description.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_security_api_key_header_optional.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_security_api_key_query.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_security_api_key_query_description.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_security_api_key_query_optional.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_security_http_base.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_security_http_base_description.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_security_http_base_optional.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_security_http_basic_optional.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_security_http_basic_realm.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_security_http_basic_realm_description.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_security_http_bearer.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_security_http_bearer_description.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_security_http_bearer_optional.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_security_http_digest.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_security_http_digest_description.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_security_http_digest_optional.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_security_oauth2.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_security_oauth2_authorization_code_bearer.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_security_oauth2_authorization_code_bearer_description.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_security_oauth2_optional.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_security_oauth2_optional_description.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_security_oauth2_password_bearer_optional.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_security_oauth2_password_bearer_optional_description.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_security_openid_connect.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_security_openid_connect_description.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_security_openid_connect_optional.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_serialize_response.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_serialize_response_dataclass.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_serialize_response_model.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_skip_defaults.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_starlette_exception.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_starlette_urlconvertors.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_sub_callbacks.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_swagger_ui_init_oauth.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tuples.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_additional_responses/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_additional_responses/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_additional_responses/test_tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_additional_responses/test_tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_additional_responses/test_tutorial004.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_additional_status_codes/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_additional_status_codes/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_additional_status_codes/test_tutorial001_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_additional_status_codes/test_tutorial001_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_additional_status_codes/test_tutorial001_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_additional_status_codes/test_tutorial001_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_advanced_middleware/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_advanced_middleware/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_advanced_middleware/test_tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_advanced_middleware/test_tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_async_sql_databases/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_async_sql_databases/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_async_tests/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_async_tests/test_main.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_background_tasks/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_background_tasks/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_background_tasks/test_tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_background_tasks/test_tutorial002_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_background_tasks/test_tutorial002_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_background_tasks/test_tutorial002_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_background_tasks/test_tutorial002_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_behind_a_proxy/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_behind_a_proxy/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_behind_a_proxy/test_tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_behind_a_proxy/test_tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_behind_a_proxy/test_tutorial004.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_bigger_applications/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_bigger_applications/test_main.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_bigger_applications/test_main_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_bigger_applications/test_main_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_body/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_body/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_body/test_tutorial001_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_body_fields/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_body_fields/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_body_fields/test_tutorial001_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_body_fields/test_tutorial001_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_body_fields/test_tutorial001_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_body_fields/test_tutorial001_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_body_multiple_params/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_body_multiple_params/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_body_multiple_params/test_tutorial001_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_body_multiple_params/test_tutorial001_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_body_multiple_params/test_tutorial001_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_body_multiple_params/test_tutorial001_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_body_multiple_params/test_tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_body_multiple_params/test_tutorial003_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_body_multiple_params/test_tutorial003_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_body_multiple_params/test_tutorial003_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_body_multiple_params/test_tutorial003_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_body_nested_models/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_body_nested_models/test_tutorial009.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_body_nested_models/test_tutorial009_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_body_updates/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_body_updates/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_body_updates/test_tutorial001_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_body_updates/test_tutorial001_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_conditional_openapi/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_conditional_openapi/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_configure_swagger_ui/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_configure_swagger_ui/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_configure_swagger_ui/test_tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_configure_swagger_ui/test_tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_cookie_params/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_cookie_params/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_cookie_params/test_tutorial001_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_cookie_params/test_tutorial001_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_cookie_params/test_tutorial001_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_cookie_params/test_tutorial001_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_cors/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_cors/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_custom_docs_ui/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_custom_docs_ui/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_custom_docs_ui/test_tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_custom_request_and_route/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_custom_request_and_route/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_custom_request_and_route/test_tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_custom_request_and_route/test_tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_custom_response/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_custom_response/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_custom_response/test_tutorial001b.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_custom_response/test_tutorial004.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_custom_response/test_tutorial005.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_custom_response/test_tutorial006.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_custom_response/test_tutorial006b.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_custom_response/test_tutorial006c.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_custom_response/test_tutorial007.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_custom_response/test_tutorial008.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_custom_response/test_tutorial009.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_custom_response/test_tutorial009b.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_custom_response/test_tutorial009c.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_dataclasses/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_dataclasses/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_dataclasses/test_tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_dataclasses/test_tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_dependencies/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_dependencies/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_dependencies/test_tutorial001_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_dependencies/test_tutorial001_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_dependencies/test_tutorial001_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_dependencies/test_tutorial001_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_dependencies/test_tutorial004.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_dependencies/test_tutorial004_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_dependencies/test_tutorial004_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_dependencies/test_tutorial004_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_dependencies/test_tutorial004_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_dependencies/test_tutorial006.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_dependencies/test_tutorial006_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_dependencies/test_tutorial006_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_dependencies/test_tutorial008b.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_dependencies/test_tutorial008b_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_dependencies/test_tutorial008b_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_dependencies/test_tutorial008c.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_dependencies/test_tutorial008c_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_dependencies/test_tutorial008c_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_dependencies/test_tutorial008d.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_dependencies/test_tutorial008d_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_dependencies/test_tutorial008d_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_dependencies/test_tutorial012.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_dependencies/test_tutorial012_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_dependencies/test_tutorial012_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_events/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_events/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_events/test_tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_events/test_tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_extending_openapi/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_extending_openapi/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_extra_data_types/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_extra_data_types/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_extra_data_types/test_tutorial001_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_extra_data_types/test_tutorial001_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_extra_data_types/test_tutorial001_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_extra_data_types/test_tutorial001_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_extra_models/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_extra_models/test_tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_extra_models/test_tutorial003_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_extra_models/test_tutorial004.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_extra_models/test_tutorial004_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_extra_models/test_tutorial005.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_extra_models/test_tutorial005_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_first_steps/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_first_steps/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_generate_clients/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_generate_clients/test_tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_handling_errors/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_handling_errors/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_handling_errors/test_tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_handling_errors/test_tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_handling_errors/test_tutorial004.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_handling_errors/test_tutorial005.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_handling_errors/test_tutorial006.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_header_params/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_header_params/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_header_params/test_tutorial001_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_header_params/test_tutorial001_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_header_params/test_tutorial001_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_header_params/test_tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_header_params/test_tutorial002_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_header_params/test_tutorial002_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_header_params/test_tutorial002_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_header_params/test_tutorial002_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_header_params/test_tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_header_params/test_tutorial003_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_header_params/test_tutorial003_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_header_params/test_tutorial003_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_header_params/test_tutorial003_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_metadata/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_metadata/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_metadata/test_tutorial001_1.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_metadata/test_tutorial004.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_openapi_callbacks/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_openapi_callbacks/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_openapi_webhooks/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_openapi_webhooks/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_path_operation_advanced_configurations/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_path_operation_advanced_configurations/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_path_operation_advanced_configurations/test_tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_path_operation_advanced_configurations/test_tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_path_operation_advanced_configurations/test_tutorial004.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_path_operation_advanced_configurations/test_tutorial005.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_path_operation_advanced_configurations/test_tutorial006.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_path_operation_advanced_configurations/test_tutorial007.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_path_operation_advanced_configurations/test_tutorial007_pv1.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_path_operation_configurations/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_path_operation_configurations/test_tutorial002b.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_path_operation_configurations/test_tutorial005.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_path_operation_configurations/test_tutorial005_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_path_operation_configurations/test_tutorial005_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_path_operation_configurations/test_tutorial006.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_path_params/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_path_params/test_tutorial004.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_path_params/test_tutorial005.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_query_params/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_query_params/test_tutorial005.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_query_params/test_tutorial006.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_query_params/test_tutorial006_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_query_params_str_validations/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_query_params_str_validations/test_tutorial010.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_query_params_str_validations/test_tutorial010_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_query_params_str_validations/test_tutorial010_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_query_params_str_validations/test_tutorial010_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_query_params_str_validations/test_tutorial010_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_query_params_str_validations/test_tutorial011.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_query_params_str_validations/test_tutorial011_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_query_params_str_validations/test_tutorial011_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_query_params_str_validations/test_tutorial011_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_query_params_str_validations/test_tutorial011_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_query_params_str_validations/test_tutorial011_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_query_params_str_validations/test_tutorial012.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_query_params_str_validations/test_tutorial012_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_query_params_str_validations/test_tutorial012_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_query_params_str_validations/test_tutorial012_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_query_params_str_validations/test_tutorial013.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_query_params_str_validations/test_tutorial013_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_query_params_str_validations/test_tutorial013_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_query_params_str_validations/test_tutorial014.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_query_params_str_validations/test_tutorial014_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_query_params_str_validations/test_tutorial014_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_query_params_str_validations/test_tutorial014_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_query_params_str_validations/test_tutorial014_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_request_files/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_request_files/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_request_files/test_tutorial001_02.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_request_files/test_tutorial001_02_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_request_files/test_tutorial001_02_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_request_files/test_tutorial001_02_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_request_files/test_tutorial001_02_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_request_files/test_tutorial001_03.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_request_files/test_tutorial001_03_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_request_files/test_tutorial001_03_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_request_files/test_tutorial001_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_request_files/test_tutorial001_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_request_files/test_tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_request_files/test_tutorial002_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_request_files/test_tutorial002_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_request_files/test_tutorial002_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_request_files/test_tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_request_files/test_tutorial003_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_request_files/test_tutorial003_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_request_files/test_tutorial003_py39.py +0 -0
- {fastapi-0.112.3/tests/test_tutorial/test_request_forms → fastapi-0.113.0/tests/test_tutorial/test_request_form_models}/__init__.py +0 -0
- {fastapi-0.112.3/tests/test_tutorial/test_request_forms_and_files → fastapi-0.113.0/tests/test_tutorial/test_request_forms}/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_request_forms/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_request_forms/test_tutorial001_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_request_forms/test_tutorial001_an_py39.py +0 -0
- {fastapi-0.112.3/tests/test_tutorial/test_response_change_status_code → fastapi-0.113.0/tests/test_tutorial/test_request_forms_and_files}/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_request_forms_and_files/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_request_forms_and_files/test_tutorial001_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_request_forms_and_files/test_tutorial001_an_py39.py +0 -0
- {fastapi-0.112.3/tests/test_tutorial/test_response_cookies → fastapi-0.113.0/tests/test_tutorial/test_response_change_status_code}/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_response_change_status_code/test_tutorial001.py +0 -0
- {fastapi-0.112.3/tests/test_tutorial/test_response_headers → fastapi-0.113.0/tests/test_tutorial/test_response_cookies}/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_response_cookies/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_response_cookies/test_tutorial002.py +0 -0
- {fastapi-0.112.3/tests/test_tutorial/test_response_model → fastapi-0.113.0/tests/test_tutorial/test_response_headers}/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_response_headers/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_response_headers/test_tutorial002.py +0 -0
- {fastapi-0.112.3/tests/test_tutorial/test_schema_extra_example → fastapi-0.113.0/tests/test_tutorial/test_response_model}/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_response_model/test_tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_response_model/test_tutorial003_01.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_response_model/test_tutorial003_01_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_response_model/test_tutorial003_02.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_response_model/test_tutorial003_03.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_response_model/test_tutorial003_04.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_response_model/test_tutorial003_04_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_response_model/test_tutorial003_05.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_response_model/test_tutorial003_05_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_response_model/test_tutorial003_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_response_model/test_tutorial004.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_response_model/test_tutorial004_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_response_model/test_tutorial004_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_response_model/test_tutorial005.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_response_model/test_tutorial005_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_response_model/test_tutorial006.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_response_model/test_tutorial006_py310.py +0 -0
- {fastapi-0.112.3/tests/test_tutorial/test_security → fastapi-0.113.0/tests/test_tutorial/test_schema_extra_example}/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_schema_extra_example/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_schema_extra_example/test_tutorial001_pv1.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_schema_extra_example/test_tutorial001_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_schema_extra_example/test_tutorial001_py310_pv1.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_schema_extra_example/test_tutorial004.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_schema_extra_example/test_tutorial004_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_schema_extra_example/test_tutorial004_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_schema_extra_example/test_tutorial004_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_schema_extra_example/test_tutorial004_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_schema_extra_example/test_tutorial005.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_schema_extra_example/test_tutorial005_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_schema_extra_example/test_tutorial005_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_schema_extra_example/test_tutorial005_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_schema_extra_example/test_tutorial005_py310.py +0 -0
- {fastapi-0.112.3/tests/test_tutorial/test_separate_openapi_schemas → fastapi-0.113.0/tests/test_tutorial/test_security}/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_security/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_security/test_tutorial001_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_security/test_tutorial001_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_security/test_tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_security/test_tutorial003_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_security/test_tutorial003_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_security/test_tutorial003_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_security/test_tutorial003_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_security/test_tutorial005.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_security/test_tutorial005_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_security/test_tutorial005_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_security/test_tutorial005_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_security/test_tutorial005_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_security/test_tutorial005_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_security/test_tutorial006.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_security/test_tutorial006_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_security/test_tutorial006_an_py39.py +0 -0
- {fastapi-0.112.3/tests/test_tutorial/test_settings → fastapi-0.113.0/tests/test_tutorial/test_separate_openapi_schemas}/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_separate_openapi_schemas/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_separate_openapi_schemas/test_tutorial001_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_separate_openapi_schemas/test_tutorial001_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_separate_openapi_schemas/test_tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_separate_openapi_schemas/test_tutorial002_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_separate_openapi_schemas/test_tutorial002_py39.py +0 -0
- {fastapi-0.112.3/tests/test_tutorial/test_sql_databases → fastapi-0.113.0/tests/test_tutorial/test_settings}/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_settings/test_app02.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_settings/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_settings/test_tutorial001_pv1.py +0 -0
- {fastapi-0.112.3/tests/test_tutorial/test_sub_applications → fastapi-0.113.0/tests/test_tutorial/test_sql_databases}/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_sql_databases/test_sql_databases.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_sql_databases/test_sql_databases_middleware.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_sql_databases/test_sql_databases_middleware_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_sql_databases/test_sql_databases_middleware_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_sql_databases/test_sql_databases_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_sql_databases/test_sql_databases_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_sql_databases/test_testing_databases.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_sql_databases/test_testing_databases_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_sql_databases/test_testing_databases_py39.py +0 -0
- {fastapi-0.112.3/tests/test_tutorial/test_templates → fastapi-0.113.0/tests/test_tutorial/test_sub_applications}/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_sub_applications/test_tutorial001.py +0 -0
- {fastapi-0.112.3/tests/test_tutorial/test_testing → fastapi-0.113.0/tests/test_tutorial/test_templates}/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_templates/test_tutorial001.py +0 -0
- {fastapi-0.112.3/tests/test_tutorial/test_testing_dependencies → fastapi-0.113.0/tests/test_tutorial/test_testing}/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_testing/test_main.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_testing/test_main_b.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_testing/test_main_b_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_testing/test_main_b_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_testing/test_main_b_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_testing/test_main_b_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_testing/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_testing/test_tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_testing/test_tutorial003.py +0 -0
- {fastapi-0.112.3/tests/test_tutorial/test_websockets → fastapi-0.113.0/tests/test_tutorial/test_testing_dependencies}/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_testing_dependencies/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_testing_dependencies/test_tutorial001_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_testing_dependencies/test_tutorial001_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_testing_dependencies/test_tutorial001_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_testing_dependencies/test_tutorial001_py310.py +0 -0
- {fastapi-0.112.3/tests/test_tutorial/test_wsgi → fastapi-0.113.0/tests/test_tutorial/test_websockets}/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_websockets/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_websockets/test_tutorial002.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_websockets/test_tutorial002_an.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_websockets/test_tutorial002_an_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_websockets/test_tutorial002_an_py39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_websockets/test_tutorial002_py310.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_websockets/test_tutorial003.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_websockets/test_tutorial003_py39.py +0 -0
- {fastapi-0.112.3/tests/test_validate_response_recursive → fastapi-0.113.0/tests/test_tutorial/test_wsgi}/__init__.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_tutorial/test_wsgi/test_tutorial001.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_typing_python39.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_union_body.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_union_inherited_body.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_validate_response.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_validate_response_dataclass.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_validate_response_recursive/app_pv1.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_validate_response_recursive/app_pv2.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_validate_response_recursive/test_validate_response_recursive_pv1.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_validate_response_recursive/test_validate_response_recursive_pv2.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_webhooks_security.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_ws_dependencies.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/test_ws_router.py +0 -0
- {fastapi-0.112.3 → fastapi-0.113.0}/tests/utils.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: fastapi
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.113.0
|
|
4
4
|
Summary: FastAPI framework, high performance, easy to learn, fast to code, ready for production
|
|
5
5
|
Author-Email: =?utf-8?q?Sebasti=C3=A1n_Ram=C3=ADrez?= <tiangolo@gmail.com>
|
|
6
6
|
Classifier: Intended Audience :: Information Technology
|
|
@@ -115,7 +115,7 @@ The key features are:
|
|
|
115
115
|
<a href="https://bump.sh/fastapi?utm_source=fastapi&utm_medium=referral&utm_campaign=sponsor" target="_blank" title="Automate FastAPI documentation generation with Bump.sh"><img src="https://fastapi.tiangolo.com/img/sponsors/bump-sh.svg"></a>
|
|
116
116
|
<a href="https://github.com/scalar/scalar/?utm_source=fastapi&utm_medium=website&utm_campaign=main-badge" target="_blank" title="Scalar: Beautiful Open-Source API References from Swagger/OpenAPI files"><img src="https://fastapi.tiangolo.com/img/sponsors/scalar.svg"></a>
|
|
117
117
|
<a href="https://www.propelauth.com/?utm_source=fastapi&utm_campaign=1223&utm_medium=mainbadge" target="_blank" title="Auth, user management and more for your B2B product"><img src="https://fastapi.tiangolo.com/img/sponsors/propelauth.png"></a>
|
|
118
|
-
<a href="https://
|
|
118
|
+
<a href="https://www.withcoherence.com/?utm_medium=advertising&utm_source=fastapi&utm_campaign=website" target="_blank" title="Coherence"><img src="https://fastapi.tiangolo.com/img/sponsors/coherence.png"></a>
|
|
119
119
|
<a href="https://www.mongodb.com/developer/languages/python/python-quickstart-fastapi/?utm_campaign=fastapi_framework&utm_source=fastapi_sponsorship&utm_medium=web_referral" target="_blank" title="Simplify Full Stack Development with FastAPI & MongoDB"><img src="https://fastapi.tiangolo.com/img/sponsors/mongodb.png"></a>
|
|
120
120
|
<a href="https://zuplo.link/fastapi-gh" target="_blank" title="Zuplo: Scale, Protect, Document, and Monetize your FastAPI"><img src="https://fastapi.tiangolo.com/img/sponsors/zuplo.png"></a>
|
|
121
121
|
<a href="https://fine.dev?ref=fastapibadge" target="_blank" title="Fine's AI FastAPI Workflow: Effortlessly Deploy and Integrate FastAPI into Your Project"><img src="https://fastapi.tiangolo.com/img/sponsors/fine.png"></a>
|
|
@@ -52,7 +52,7 @@ The key features are:
|
|
|
52
52
|
<a href="https://bump.sh/fastapi?utm_source=fastapi&utm_medium=referral&utm_campaign=sponsor" target="_blank" title="Automate FastAPI documentation generation with Bump.sh"><img src="https://fastapi.tiangolo.com/img/sponsors/bump-sh.svg"></a>
|
|
53
53
|
<a href="https://github.com/scalar/scalar/?utm_source=fastapi&utm_medium=website&utm_campaign=main-badge" target="_blank" title="Scalar: Beautiful Open-Source API References from Swagger/OpenAPI files"><img src="https://fastapi.tiangolo.com/img/sponsors/scalar.svg"></a>
|
|
54
54
|
<a href="https://www.propelauth.com/?utm_source=fastapi&utm_campaign=1223&utm_medium=mainbadge" target="_blank" title="Auth, user management and more for your B2B product"><img src="https://fastapi.tiangolo.com/img/sponsors/propelauth.png"></a>
|
|
55
|
-
<a href="https://
|
|
55
|
+
<a href="https://www.withcoherence.com/?utm_medium=advertising&utm_source=fastapi&utm_campaign=website" target="_blank" title="Coherence"><img src="https://fastapi.tiangolo.com/img/sponsors/coherence.png"></a>
|
|
56
56
|
<a href="https://www.mongodb.com/developer/languages/python/python-quickstart-fastapi/?utm_campaign=fastapi_framework&utm_source=fastapi_sponsorship&utm_medium=web_referral" target="_blank" title="Simplify Full Stack Development with FastAPI & MongoDB"><img src="https://fastapi.tiangolo.com/img/sponsors/mongodb.png"></a>
|
|
57
57
|
<a href="https://zuplo.link/fastapi-gh" target="_blank" title="Zuplo: Scale, Protect, Document, and Monetize your FastAPI"><img src="https://fastapi.tiangolo.com/img/sponsors/zuplo.png"></a>
|
|
58
58
|
<a href="https://fine.dev?ref=fastapibadge" target="_blank" title="Fine's AI FastAPI Workflow: Effortlessly Deploy and Integrate FastAPI into Your Project"><img src="https://fastapi.tiangolo.com/img/sponsors/fine.png"></a>
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
from fastapi import FastAPI, Form
|
|
2
|
+
from pydantic import BaseModel
|
|
3
|
+
from typing_extensions import Annotated
|
|
4
|
+
|
|
5
|
+
app = FastAPI()
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
class FormData(BaseModel):
|
|
9
|
+
username: str
|
|
10
|
+
password: str
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
@app.post("/login/")
|
|
14
|
+
async def login(data: Annotated[FormData, Form()]):
|
|
15
|
+
return data
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
from typing import Annotated
|
|
2
|
+
|
|
3
|
+
from fastapi import FastAPI, Form
|
|
4
|
+
from pydantic import BaseModel
|
|
5
|
+
|
|
6
|
+
app = FastAPI()
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
class FormData(BaseModel):
|
|
10
|
+
username: str
|
|
11
|
+
password: str
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
@app.post("/login/")
|
|
15
|
+
async def login(data: Annotated[FormData, Form()]):
|
|
16
|
+
return data
|
|
@@ -279,6 +279,12 @@ if PYDANTIC_V2:
|
|
|
279
279
|
BodyModel: Type[BaseModel] = create_model(model_name, **field_params) # type: ignore[call-overload]
|
|
280
280
|
return BodyModel
|
|
281
281
|
|
|
282
|
+
def get_model_fields(model: Type[BaseModel]) -> List[ModelField]:
|
|
283
|
+
return [
|
|
284
|
+
ModelField(field_info=field_info, name=name)
|
|
285
|
+
for name, field_info in model.model_fields.items()
|
|
286
|
+
]
|
|
287
|
+
|
|
282
288
|
else:
|
|
283
289
|
from fastapi.openapi.constants import REF_PREFIX as REF_PREFIX
|
|
284
290
|
from pydantic import AnyUrl as Url # noqa: F401
|
|
@@ -513,6 +519,9 @@ else:
|
|
|
513
519
|
BodyModel.__fields__[f.name] = f # type: ignore[index]
|
|
514
520
|
return BodyModel
|
|
515
521
|
|
|
522
|
+
def get_model_fields(model: Type[BaseModel]) -> List[ModelField]:
|
|
523
|
+
return list(model.__fields__.values()) # type: ignore[attr-defined]
|
|
524
|
+
|
|
516
525
|
|
|
517
526
|
def _regenerate_error_with_loc(
|
|
518
527
|
*, errors: Sequence[Any], loc_prefix: Tuple[Union[str, int], ...]
|
|
@@ -532,6 +541,12 @@ def _annotation_is_sequence(annotation: Union[Type[Any], None]) -> bool:
|
|
|
532
541
|
|
|
533
542
|
|
|
534
543
|
def field_annotation_is_sequence(annotation: Union[Type[Any], None]) -> bool:
|
|
544
|
+
origin = get_origin(annotation)
|
|
545
|
+
if origin is Union or origin is UnionType:
|
|
546
|
+
for arg in get_args(annotation):
|
|
547
|
+
if field_annotation_is_sequence(arg):
|
|
548
|
+
return True
|
|
549
|
+
return False
|
|
535
550
|
return _annotation_is_sequence(annotation) or _annotation_is_sequence(
|
|
536
551
|
get_origin(annotation)
|
|
537
552
|
)
|
|
@@ -33,6 +33,7 @@ from fastapi._compat import (
|
|
|
33
33
|
field_annotation_is_scalar,
|
|
34
34
|
get_annotation_from_field_info,
|
|
35
35
|
get_missing_field_error,
|
|
36
|
+
get_model_fields,
|
|
36
37
|
is_bytes_field,
|
|
37
38
|
is_bytes_sequence_field,
|
|
38
39
|
is_scalar_field,
|
|
@@ -56,10 +57,17 @@ from fastapi.security.base import SecurityBase
|
|
|
56
57
|
from fastapi.security.oauth2 import OAuth2, SecurityScopes
|
|
57
58
|
from fastapi.security.open_id_connect_url import OpenIdConnect
|
|
58
59
|
from fastapi.utils import create_model_field, get_path_param_names
|
|
60
|
+
from pydantic import BaseModel
|
|
59
61
|
from pydantic.fields import FieldInfo
|
|
60
62
|
from starlette.background import BackgroundTasks as StarletteBackgroundTasks
|
|
61
63
|
from starlette.concurrency import run_in_threadpool
|
|
62
|
-
from starlette.datastructures import
|
|
64
|
+
from starlette.datastructures import (
|
|
65
|
+
FormData,
|
|
66
|
+
Headers,
|
|
67
|
+
ImmutableMultiDict,
|
|
68
|
+
QueryParams,
|
|
69
|
+
UploadFile,
|
|
70
|
+
)
|
|
63
71
|
from starlette.requests import HTTPConnection, Request
|
|
64
72
|
from starlette.responses import Response
|
|
65
73
|
from starlette.websockets import WebSocket
|
|
@@ -282,7 +290,7 @@ def get_dependant(
|
|
|
282
290
|
), f"Cannot specify multiple FastAPI annotations for {param_name!r}"
|
|
283
291
|
continue
|
|
284
292
|
assert param_details.field is not None
|
|
285
|
-
if
|
|
293
|
+
if isinstance(param_details.field.field_info, params.Body):
|
|
286
294
|
dependant.body_params.append(param_details.field)
|
|
287
295
|
else:
|
|
288
296
|
add_param_to_fields(field=param_details.field, dependant=dependant)
|
|
@@ -466,29 +474,16 @@ def analyze_param(
|
|
|
466
474
|
required=field_info.default in (Required, Undefined),
|
|
467
475
|
field_info=field_info,
|
|
468
476
|
)
|
|
477
|
+
if is_path_param:
|
|
478
|
+
assert is_scalar_field(
|
|
479
|
+
field=field
|
|
480
|
+
), "Path params must be of one of the supported types"
|
|
481
|
+
elif isinstance(field_info, params.Query):
|
|
482
|
+
assert is_scalar_field(field) or is_scalar_sequence_field(field)
|
|
469
483
|
|
|
470
484
|
return ParamDetails(type_annotation=type_annotation, depends=depends, field=field)
|
|
471
485
|
|
|
472
486
|
|
|
473
|
-
def is_body_param(*, param_field: ModelField, is_path_param: bool) -> bool:
|
|
474
|
-
if is_path_param:
|
|
475
|
-
assert is_scalar_field(
|
|
476
|
-
field=param_field
|
|
477
|
-
), "Path params must be of one of the supported types"
|
|
478
|
-
return False
|
|
479
|
-
elif is_scalar_field(field=param_field):
|
|
480
|
-
return False
|
|
481
|
-
elif isinstance(
|
|
482
|
-
param_field.field_info, (params.Query, params.Header)
|
|
483
|
-
) and is_scalar_sequence_field(param_field):
|
|
484
|
-
return False
|
|
485
|
-
else:
|
|
486
|
-
assert isinstance(
|
|
487
|
-
param_field.field_info, params.Body
|
|
488
|
-
), f"Param: {param_field.name} can only be a request body, using Body()"
|
|
489
|
-
return True
|
|
490
|
-
|
|
491
|
-
|
|
492
487
|
def add_param_to_fields(*, field: ModelField, dependant: Dependant) -> None:
|
|
493
488
|
field_info = field.field_info
|
|
494
489
|
field_info_in = getattr(field_info, "in_", None)
|
|
@@ -557,6 +552,7 @@ async def solve_dependencies(
|
|
|
557
552
|
dependency_overrides_provider: Optional[Any] = None,
|
|
558
553
|
dependency_cache: Optional[Dict[Tuple[Callable[..., Any], Tuple[str]], Any]] = None,
|
|
559
554
|
async_exit_stack: AsyncExitStack,
|
|
555
|
+
embed_body_fields: bool,
|
|
560
556
|
) -> SolvedDependency:
|
|
561
557
|
values: Dict[str, Any] = {}
|
|
562
558
|
errors: List[Any] = []
|
|
@@ -598,6 +594,7 @@ async def solve_dependencies(
|
|
|
598
594
|
dependency_overrides_provider=dependency_overrides_provider,
|
|
599
595
|
dependency_cache=dependency_cache,
|
|
600
596
|
async_exit_stack=async_exit_stack,
|
|
597
|
+
embed_body_fields=embed_body_fields,
|
|
601
598
|
)
|
|
602
599
|
background_tasks = solved_result.background_tasks
|
|
603
600
|
dependency_cache.update(solved_result.dependency_cache)
|
|
@@ -640,7 +637,9 @@ async def solve_dependencies(
|
|
|
640
637
|
body_values,
|
|
641
638
|
body_errors,
|
|
642
639
|
) = await request_body_to_args( # body_params checked above
|
|
643
|
-
|
|
640
|
+
body_fields=dependant.body_params,
|
|
641
|
+
received_body=body,
|
|
642
|
+
embed_body_fields=embed_body_fields,
|
|
644
643
|
)
|
|
645
644
|
values.update(body_values)
|
|
646
645
|
errors.extend(body_errors)
|
|
@@ -669,138 +668,194 @@ async def solve_dependencies(
|
|
|
669
668
|
)
|
|
670
669
|
|
|
671
670
|
|
|
671
|
+
def _validate_value_with_model_field(
|
|
672
|
+
*, field: ModelField, value: Any, values: Dict[str, Any], loc: Tuple[str, ...]
|
|
673
|
+
) -> Tuple[Any, List[Any]]:
|
|
674
|
+
if value is None:
|
|
675
|
+
if field.required:
|
|
676
|
+
return None, [get_missing_field_error(loc=loc)]
|
|
677
|
+
else:
|
|
678
|
+
return deepcopy(field.default), []
|
|
679
|
+
v_, errors_ = field.validate(value, values, loc=loc)
|
|
680
|
+
if isinstance(errors_, ErrorWrapper):
|
|
681
|
+
return None, [errors_]
|
|
682
|
+
elif isinstance(errors_, list):
|
|
683
|
+
new_errors = _regenerate_error_with_loc(errors=errors_, loc_prefix=())
|
|
684
|
+
return None, new_errors
|
|
685
|
+
else:
|
|
686
|
+
return v_, []
|
|
687
|
+
|
|
688
|
+
|
|
689
|
+
def _get_multidict_value(field: ModelField, values: Mapping[str, Any]) -> Any:
|
|
690
|
+
if is_sequence_field(field) and isinstance(values, (ImmutableMultiDict, Headers)):
|
|
691
|
+
value = values.getlist(field.alias)
|
|
692
|
+
else:
|
|
693
|
+
value = values.get(field.alias, None)
|
|
694
|
+
if (
|
|
695
|
+
value is None
|
|
696
|
+
or (
|
|
697
|
+
isinstance(field.field_info, params.Form)
|
|
698
|
+
and isinstance(value, str) # For type checks
|
|
699
|
+
and value == ""
|
|
700
|
+
)
|
|
701
|
+
or (is_sequence_field(field) and len(value) == 0)
|
|
702
|
+
):
|
|
703
|
+
if field.required:
|
|
704
|
+
return
|
|
705
|
+
else:
|
|
706
|
+
return deepcopy(field.default)
|
|
707
|
+
return value
|
|
708
|
+
|
|
709
|
+
|
|
672
710
|
def request_params_to_args(
|
|
673
|
-
|
|
711
|
+
fields: Sequence[ModelField],
|
|
674
712
|
received_params: Union[Mapping[str, Any], QueryParams, Headers],
|
|
675
713
|
) -> Tuple[Dict[str, Any], List[Any]]:
|
|
676
|
-
values = {}
|
|
714
|
+
values: Dict[str, Any] = {}
|
|
677
715
|
errors = []
|
|
678
|
-
for field in
|
|
679
|
-
|
|
680
|
-
received_params, (QueryParams, Headers)
|
|
681
|
-
):
|
|
682
|
-
value = received_params.getlist(field.alias) or field.default
|
|
683
|
-
else:
|
|
684
|
-
value = received_params.get(field.alias)
|
|
716
|
+
for field in fields:
|
|
717
|
+
value = _get_multidict_value(field, received_params)
|
|
685
718
|
field_info = field.field_info
|
|
686
719
|
assert isinstance(
|
|
687
720
|
field_info, params.Param
|
|
688
721
|
), "Params must be subclasses of Param"
|
|
689
722
|
loc = (field_info.in_.value, field.alias)
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
continue
|
|
696
|
-
v_, errors_ = field.validate(value, values, loc=loc)
|
|
697
|
-
if isinstance(errors_, ErrorWrapper):
|
|
698
|
-
errors.append(errors_)
|
|
699
|
-
elif isinstance(errors_, list):
|
|
700
|
-
new_errors = _regenerate_error_with_loc(errors=errors_, loc_prefix=())
|
|
701
|
-
errors.extend(new_errors)
|
|
723
|
+
v_, errors_ = _validate_value_with_model_field(
|
|
724
|
+
field=field, value=value, values=values, loc=loc
|
|
725
|
+
)
|
|
726
|
+
if errors_:
|
|
727
|
+
errors.extend(errors_)
|
|
702
728
|
else:
|
|
703
729
|
values[field.name] = v_
|
|
704
730
|
return values, errors
|
|
705
731
|
|
|
706
732
|
|
|
733
|
+
def _should_embed_body_fields(fields: List[ModelField]) -> bool:
|
|
734
|
+
if not fields:
|
|
735
|
+
return False
|
|
736
|
+
# More than one dependency could have the same field, it would show up as multiple
|
|
737
|
+
# fields but it's the same one, so count them by name
|
|
738
|
+
body_param_names_set = {field.name for field in fields}
|
|
739
|
+
# A top level field has to be a single field, not multiple
|
|
740
|
+
if len(body_param_names_set) > 1:
|
|
741
|
+
return True
|
|
742
|
+
first_field = fields[0]
|
|
743
|
+
# If it explicitly specifies it is embedded, it has to be embedded
|
|
744
|
+
if getattr(first_field.field_info, "embed", None):
|
|
745
|
+
return True
|
|
746
|
+
# If it's a Form (or File) field, it has to be a BaseModel to be top level
|
|
747
|
+
# otherwise it has to be embedded, so that the key value pair can be extracted
|
|
748
|
+
if isinstance(first_field.field_info, params.Form) and not lenient_issubclass(
|
|
749
|
+
first_field.type_, BaseModel
|
|
750
|
+
):
|
|
751
|
+
return True
|
|
752
|
+
return False
|
|
753
|
+
|
|
754
|
+
|
|
755
|
+
async def _extract_form_body(
|
|
756
|
+
body_fields: List[ModelField],
|
|
757
|
+
received_body: FormData,
|
|
758
|
+
) -> Dict[str, Any]:
|
|
759
|
+
values = {}
|
|
760
|
+
first_field = body_fields[0]
|
|
761
|
+
first_field_info = first_field.field_info
|
|
762
|
+
|
|
763
|
+
for field in body_fields:
|
|
764
|
+
value = _get_multidict_value(field, received_body)
|
|
765
|
+
if (
|
|
766
|
+
isinstance(first_field_info, params.File)
|
|
767
|
+
and is_bytes_field(field)
|
|
768
|
+
and isinstance(value, UploadFile)
|
|
769
|
+
):
|
|
770
|
+
value = await value.read()
|
|
771
|
+
elif (
|
|
772
|
+
is_bytes_sequence_field(field)
|
|
773
|
+
and isinstance(first_field_info, params.File)
|
|
774
|
+
and value_is_sequence(value)
|
|
775
|
+
):
|
|
776
|
+
# For types
|
|
777
|
+
assert isinstance(value, sequence_types) # type: ignore[arg-type]
|
|
778
|
+
results: List[Union[bytes, str]] = []
|
|
779
|
+
|
|
780
|
+
async def process_fn(
|
|
781
|
+
fn: Callable[[], Coroutine[Any, Any, Any]],
|
|
782
|
+
) -> None:
|
|
783
|
+
result = await fn()
|
|
784
|
+
results.append(result) # noqa: B023
|
|
785
|
+
|
|
786
|
+
async with anyio.create_task_group() as tg:
|
|
787
|
+
for sub_value in value:
|
|
788
|
+
tg.start_soon(process_fn, sub_value.read)
|
|
789
|
+
value = serialize_sequence_value(field=field, value=results)
|
|
790
|
+
if value is not None:
|
|
791
|
+
values[field.name] = value
|
|
792
|
+
return values
|
|
793
|
+
|
|
794
|
+
|
|
707
795
|
async def request_body_to_args(
|
|
708
|
-
|
|
796
|
+
body_fields: List[ModelField],
|
|
709
797
|
received_body: Optional[Union[Dict[str, Any], FormData]],
|
|
798
|
+
embed_body_fields: bool,
|
|
710
799
|
) -> Tuple[Dict[str, Any], List[Dict[str, Any]]]:
|
|
711
|
-
values = {}
|
|
800
|
+
values: Dict[str, Any] = {}
|
|
712
801
|
errors: List[Dict[str, Any]] = []
|
|
713
|
-
|
|
714
|
-
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
|
|
735
|
-
|
|
736
|
-
|
|
737
|
-
|
|
738
|
-
|
|
739
|
-
|
|
740
|
-
|
|
741
|
-
or (
|
|
742
|
-
isinstance(field_info, params.Form)
|
|
743
|
-
and is_sequence_field(field)
|
|
744
|
-
and len(value) == 0
|
|
745
|
-
)
|
|
746
|
-
):
|
|
747
|
-
if field.required:
|
|
748
|
-
errors.append(get_missing_field_error(loc))
|
|
749
|
-
else:
|
|
750
|
-
values[field.name] = deepcopy(field.default)
|
|
802
|
+
assert body_fields, "request_body_to_args() should be called with fields"
|
|
803
|
+
single_not_embedded_field = len(body_fields) == 1 and not embed_body_fields
|
|
804
|
+
first_field = body_fields[0]
|
|
805
|
+
body_to_process = received_body
|
|
806
|
+
|
|
807
|
+
fields_to_extract: List[ModelField] = body_fields
|
|
808
|
+
|
|
809
|
+
if single_not_embedded_field and lenient_issubclass(first_field.type_, BaseModel):
|
|
810
|
+
fields_to_extract = get_model_fields(first_field.type_)
|
|
811
|
+
|
|
812
|
+
if isinstance(received_body, FormData):
|
|
813
|
+
body_to_process = await _extract_form_body(fields_to_extract, received_body)
|
|
814
|
+
|
|
815
|
+
if single_not_embedded_field:
|
|
816
|
+
loc: Tuple[str, ...] = ("body",)
|
|
817
|
+
v_, errors_ = _validate_value_with_model_field(
|
|
818
|
+
field=first_field, value=body_to_process, values=values, loc=loc
|
|
819
|
+
)
|
|
820
|
+
return {first_field.name: v_}, errors_
|
|
821
|
+
for field in body_fields:
|
|
822
|
+
loc = ("body", field.alias)
|
|
823
|
+
value: Optional[Any] = None
|
|
824
|
+
if body_to_process is not None:
|
|
825
|
+
try:
|
|
826
|
+
value = body_to_process.get(field.alias)
|
|
827
|
+
# If the received body is a list, not a dict
|
|
828
|
+
except AttributeError:
|
|
829
|
+
errors.append(get_missing_field_error(loc))
|
|
751
830
|
continue
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
)
|
|
757
|
-
|
|
758
|
-
|
|
759
|
-
is_bytes_sequence_field(field)
|
|
760
|
-
and isinstance(field_info, params.File)
|
|
761
|
-
and value_is_sequence(value)
|
|
762
|
-
):
|
|
763
|
-
# For types
|
|
764
|
-
assert isinstance(value, sequence_types) # type: ignore[arg-type]
|
|
765
|
-
results: List[Union[bytes, str]] = []
|
|
766
|
-
|
|
767
|
-
async def process_fn(
|
|
768
|
-
fn: Callable[[], Coroutine[Any, Any, Any]],
|
|
769
|
-
) -> None:
|
|
770
|
-
result = await fn()
|
|
771
|
-
results.append(result) # noqa: B023
|
|
772
|
-
|
|
773
|
-
async with anyio.create_task_group() as tg:
|
|
774
|
-
for sub_value in value:
|
|
775
|
-
tg.start_soon(process_fn, sub_value.read)
|
|
776
|
-
value = serialize_sequence_value(field=field, value=results)
|
|
777
|
-
|
|
778
|
-
v_, errors_ = field.validate(value, values, loc=loc)
|
|
779
|
-
|
|
780
|
-
if isinstance(errors_, list):
|
|
781
|
-
errors.extend(errors_)
|
|
782
|
-
elif errors_:
|
|
783
|
-
errors.append(errors_)
|
|
784
|
-
else:
|
|
785
|
-
values[field.name] = v_
|
|
831
|
+
v_, errors_ = _validate_value_with_model_field(
|
|
832
|
+
field=field, value=value, values=values, loc=loc
|
|
833
|
+
)
|
|
834
|
+
if errors_:
|
|
835
|
+
errors.extend(errors_)
|
|
836
|
+
else:
|
|
837
|
+
values[field.name] = v_
|
|
786
838
|
return values, errors
|
|
787
839
|
|
|
788
840
|
|
|
789
|
-
def get_body_field(
|
|
790
|
-
flat_dependant
|
|
841
|
+
def get_body_field(
|
|
842
|
+
*, flat_dependant: Dependant, name: str, embed_body_fields: bool
|
|
843
|
+
) -> Optional[ModelField]:
|
|
844
|
+
"""
|
|
845
|
+
Get a ModelField representing the request body for a path operation, combining
|
|
846
|
+
all body parameters into a single field if necessary.
|
|
847
|
+
|
|
848
|
+
Used to check if it's form data (with `isinstance(body_field, params.Form)`)
|
|
849
|
+
or JSON and to generate the JSON Schema for a request body.
|
|
850
|
+
|
|
851
|
+
This is **not** used to validate/parse the request body, that's done with each
|
|
852
|
+
individual body parameter.
|
|
853
|
+
"""
|
|
791
854
|
if not flat_dependant.body_params:
|
|
792
855
|
return None
|
|
793
856
|
first_param = flat_dependant.body_params[0]
|
|
794
|
-
|
|
795
|
-
embed = getattr(field_info, "embed", None)
|
|
796
|
-
body_param_names_set = {param.name for param in flat_dependant.body_params}
|
|
797
|
-
if len(body_param_names_set) == 1 and not embed:
|
|
857
|
+
if not embed_body_fields:
|
|
798
858
|
return first_param
|
|
799
|
-
# If one field requires to embed, all have to be embedded
|
|
800
|
-
# in case a sub-dependency is evaluated with a single unique body field
|
|
801
|
-
# That is combined (embedded) with other body fields
|
|
802
|
-
for param in flat_dependant.body_params:
|
|
803
|
-
setattr(param.field_info, "embed", True) # noqa: B010
|
|
804
859
|
model_name = "Body_" + name
|
|
805
860
|
BodyModel = create_body_model(
|
|
806
861
|
fields=flat_dependant.body_params, model_name=model_name
|
|
@@ -1282,7 +1282,7 @@ def Body( # noqa: N802
|
|
|
1282
1282
|
),
|
|
1283
1283
|
] = _Unset,
|
|
1284
1284
|
embed: Annotated[
|
|
1285
|
-
bool,
|
|
1285
|
+
Union[bool, None],
|
|
1286
1286
|
Doc(
|
|
1287
1287
|
"""
|
|
1288
1288
|
When `embed` is `True`, the parameter will be expected in a JSON body as a
|
|
@@ -1294,7 +1294,7 @@ def Body( # noqa: N802
|
|
|
1294
1294
|
[FastAPI docs for Body - Multiple Parameters](https://fastapi.tiangolo.com/tutorial/body-multiple-params/#embed-a-single-body-parameter).
|
|
1295
1295
|
"""
|
|
1296
1296
|
),
|
|
1297
|
-
] =
|
|
1297
|
+
] = None,
|
|
1298
1298
|
media_type: Annotated[
|
|
1299
1299
|
str,
|
|
1300
1300
|
Doc(
|
|
@@ -479,7 +479,7 @@ class Body(FieldInfo):
|
|
|
479
479
|
*,
|
|
480
480
|
default_factory: Union[Callable[[], Any], None] = _Unset,
|
|
481
481
|
annotation: Optional[Any] = None,
|
|
482
|
-
embed: bool =
|
|
482
|
+
embed: Union[bool, None] = None,
|
|
483
483
|
media_type: str = "application/json",
|
|
484
484
|
alias: Optional[str] = None,
|
|
485
485
|
alias_priority: Union[int, None] = _Unset,
|
|
@@ -642,7 +642,6 @@ class Form(Body):
|
|
|
642
642
|
default=default,
|
|
643
643
|
default_factory=default_factory,
|
|
644
644
|
annotation=annotation,
|
|
645
|
-
embed=True,
|
|
646
645
|
media_type=media_type,
|
|
647
646
|
alias=alias,
|
|
648
647
|
alias_priority=alias_priority,
|
|
@@ -33,8 +33,10 @@ from fastapi._compat import (
|
|
|
33
33
|
from fastapi.datastructures import Default, DefaultPlaceholder
|
|
34
34
|
from fastapi.dependencies.models import Dependant
|
|
35
35
|
from fastapi.dependencies.utils import (
|
|
36
|
+
_should_embed_body_fields,
|
|
36
37
|
get_body_field,
|
|
37
38
|
get_dependant,
|
|
39
|
+
get_flat_dependant,
|
|
38
40
|
get_parameterless_sub_dependant,
|
|
39
41
|
get_typed_return_annotation,
|
|
40
42
|
solve_dependencies,
|
|
@@ -225,6 +227,7 @@ def get_request_handler(
|
|
|
225
227
|
response_model_exclude_defaults: bool = False,
|
|
226
228
|
response_model_exclude_none: bool = False,
|
|
227
229
|
dependency_overrides_provider: Optional[Any] = None,
|
|
230
|
+
embed_body_fields: bool = False,
|
|
228
231
|
) -> Callable[[Request], Coroutine[Any, Any, Response]]:
|
|
229
232
|
assert dependant.call is not None, "dependant.call must be a function"
|
|
230
233
|
is_coroutine = asyncio.iscoroutinefunction(dependant.call)
|
|
@@ -291,6 +294,7 @@ def get_request_handler(
|
|
|
291
294
|
body=body,
|
|
292
295
|
dependency_overrides_provider=dependency_overrides_provider,
|
|
293
296
|
async_exit_stack=async_exit_stack,
|
|
297
|
+
embed_body_fields=embed_body_fields,
|
|
294
298
|
)
|
|
295
299
|
errors = solved_result.errors
|
|
296
300
|
if not errors:
|
|
@@ -354,7 +358,9 @@ def get_request_handler(
|
|
|
354
358
|
|
|
355
359
|
|
|
356
360
|
def get_websocket_app(
|
|
357
|
-
dependant: Dependant,
|
|
361
|
+
dependant: Dependant,
|
|
362
|
+
dependency_overrides_provider: Optional[Any] = None,
|
|
363
|
+
embed_body_fields: bool = False,
|
|
358
364
|
) -> Callable[[WebSocket], Coroutine[Any, Any, Any]]:
|
|
359
365
|
async def app(websocket: WebSocket) -> None:
|
|
360
366
|
async with AsyncExitStack() as async_exit_stack:
|
|
@@ -367,6 +373,7 @@ def get_websocket_app(
|
|
|
367
373
|
dependant=dependant,
|
|
368
374
|
dependency_overrides_provider=dependency_overrides_provider,
|
|
369
375
|
async_exit_stack=async_exit_stack,
|
|
376
|
+
embed_body_fields=embed_body_fields,
|
|
370
377
|
)
|
|
371
378
|
if solved_result.errors:
|
|
372
379
|
raise WebSocketRequestValidationError(
|
|
@@ -399,11 +406,15 @@ class APIWebSocketRoute(routing.WebSocketRoute):
|
|
|
399
406
|
0,
|
|
400
407
|
get_parameterless_sub_dependant(depends=depends, path=self.path_format),
|
|
401
408
|
)
|
|
402
|
-
|
|
409
|
+
self._flat_dependant = get_flat_dependant(self.dependant)
|
|
410
|
+
self._embed_body_fields = _should_embed_body_fields(
|
|
411
|
+
self._flat_dependant.body_params
|
|
412
|
+
)
|
|
403
413
|
self.app = websocket_session(
|
|
404
414
|
get_websocket_app(
|
|
405
415
|
dependant=self.dependant,
|
|
406
416
|
dependency_overrides_provider=dependency_overrides_provider,
|
|
417
|
+
embed_body_fields=self._embed_body_fields,
|
|
407
418
|
)
|
|
408
419
|
)
|
|
409
420
|
|
|
@@ -544,7 +555,15 @@ class APIRoute(routing.Route):
|
|
|
544
555
|
0,
|
|
545
556
|
get_parameterless_sub_dependant(depends=depends, path=self.path_format),
|
|
546
557
|
)
|
|
547
|
-
self.
|
|
558
|
+
self._flat_dependant = get_flat_dependant(self.dependant)
|
|
559
|
+
self._embed_body_fields = _should_embed_body_fields(
|
|
560
|
+
self._flat_dependant.body_params
|
|
561
|
+
)
|
|
562
|
+
self.body_field = get_body_field(
|
|
563
|
+
flat_dependant=self._flat_dependant,
|
|
564
|
+
name=self.unique_id,
|
|
565
|
+
embed_body_fields=self._embed_body_fields,
|
|
566
|
+
)
|
|
548
567
|
self.app = request_response(self.get_route_handler())
|
|
549
568
|
|
|
550
569
|
def get_route_handler(self) -> Callable[[Request], Coroutine[Any, Any, Response]]:
|
|
@@ -561,6 +580,7 @@ class APIRoute(routing.Route):
|
|
|
561
580
|
response_model_exclude_defaults=self.response_model_exclude_defaults,
|
|
562
581
|
response_model_exclude_none=self.response_model_exclude_none,
|
|
563
582
|
dependency_overrides_provider=self.dependency_overrides_provider,
|
|
583
|
+
embed_body_fields=self._embed_body_fields,
|
|
564
584
|
)
|
|
565
585
|
|
|
566
586
|
def matches(self, scope: Scope) -> Tuple[Match, Scope]:
|