fastapi 0.116.2__tar.gz → 0.117.1__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.

Files changed (1160) hide show
  1. {fastapi-0.116.2 → fastapi-0.117.1}/PKG-INFO +26 -26
  2. {fastapi-0.116.2 → fastapi-0.117.1}/README.md +22 -22
  3. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/__init__.py +1 -1
  4. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/_compat.py +2 -1
  5. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/applications.py +28 -0
  6. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/dependencies/utils.py +20 -9
  7. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/encoders.py +2 -1
  8. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/openapi/models.py +8 -2
  9. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/openapi/utils.py +3 -0
  10. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/routing.py +8 -2
  11. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/security/api_key.py +3 -3
  12. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/utils.py +1 -0
  13. {fastapi-0.116.2 → fastapi-0.117.1}/pyproject.toml +7 -4
  14. {fastapi-0.116.2 → fastapi-0.117.1}/requirements-docs-tests.txt +1 -1
  15. {fastapi-0.116.2 → fastapi-0.117.1}/requirements-github-actions.txt +1 -1
  16. {fastapi-0.116.2 → fastapi-0.117.1}/requirements-tests.txt +1 -1
  17. {fastapi-0.116.2 → fastapi-0.117.1}/scripts/docs.py +14 -0
  18. fastapi-0.117.1/scripts/translate.py +981 -0
  19. {fastapi-0.116.2 → fastapi-0.117.1}/tests/main.py +6 -1
  20. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_application.py +4 -0
  21. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_compat.py +45 -0
  22. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_custom_schema_fields.py +17 -2
  23. fastapi-0.117.1/tests/test_file_and_form_order_issue_9116.py +90 -0
  24. fastapi-0.117.1/tests/test_get_model_definitions_formfeed_escape.py +180 -0
  25. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_jsonable_encoder.py +5 -2
  26. fastapi-0.117.1/tests/test_openapi_schema_type.py +26 -0
  27. fastapi-0.117.1/tests/test_response_model_default_factory.py +47 -0
  28. fastapi-0.117.1/tests/test_return_none_stringified_annotations.py +17 -0
  29. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_header_params/test_tutorial003.py +6 -2
  30. fastapi-0.116.2/tests/test_tutorial/test_response_model/test_tutorial003_py310.py → fastapi-0.117.1/tests/test_tutorial/test_response_model/test_tutorial003.py +12 -6
  31. fastapi-0.117.1/tests/test_tutorial/test_response_model/test_tutorial003_04.py +18 -0
  32. fastapi-0.116.2/scripts/translate.py +0 -370
  33. fastapi-0.116.2/tests/test_tutorial/test_response_model/test_tutorial003.py +0 -151
  34. fastapi-0.116.2/tests/test_tutorial/test_response_model/test_tutorial003_04.py +0 -9
  35. fastapi-0.116.2/tests/test_tutorial/test_response_model/test_tutorial003_04_py310.py +0 -12
  36. {fastapi-0.116.2 → fastapi-0.117.1}/LICENSE +0 -0
  37. {fastapi-0.116.2 → fastapi-0.117.1}/docs/en/docs/img/favicon.png +0 -0
  38. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/additional_responses/tutorial001.py +0 -0
  39. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/additional_responses/tutorial002.py +0 -0
  40. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/additional_responses/tutorial003.py +0 -0
  41. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/additional_responses/tutorial004.py +0 -0
  42. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/additional_status_codes/tutorial001.py +0 -0
  43. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/additional_status_codes/tutorial001_an.py +0 -0
  44. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/additional_status_codes/tutorial001_an_py310.py +0 -0
  45. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/additional_status_codes/tutorial001_an_py39.py +0 -0
  46. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/additional_status_codes/tutorial001_py310.py +0 -0
  47. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/advanced_middleware/tutorial001.py +0 -0
  48. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/advanced_middleware/tutorial002.py +0 -0
  49. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/advanced_middleware/tutorial003.py +0 -0
  50. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/app_testing/__init__.py +0 -0
  51. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/app_testing/app_b/__init__.py +0 -0
  52. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/app_testing/app_b/main.py +0 -0
  53. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/app_testing/app_b/test_main.py +0 -0
  54. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/app_testing/app_b_an/__init__.py +0 -0
  55. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/app_testing/app_b_an/main.py +0 -0
  56. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/app_testing/app_b_an/test_main.py +0 -0
  57. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/app_testing/app_b_an_py310/__init__.py +0 -0
  58. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/app_testing/app_b_an_py310/main.py +0 -0
  59. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/app_testing/app_b_an_py310/test_main.py +0 -0
  60. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/app_testing/app_b_an_py39/__init__.py +0 -0
  61. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/app_testing/app_b_an_py39/main.py +0 -0
  62. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/app_testing/app_b_an_py39/test_main.py +0 -0
  63. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/app_testing/app_b_py310/__init__.py +0 -0
  64. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/app_testing/app_b_py310/main.py +0 -0
  65. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/app_testing/app_b_py310/test_main.py +0 -0
  66. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/app_testing/main.py +0 -0
  67. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/app_testing/test_main.py +0 -0
  68. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/app_testing/tutorial001.py +0 -0
  69. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/app_testing/tutorial002.py +0 -0
  70. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/app_testing/tutorial003.py +0 -0
  71. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/app_testing/tutorial004.py +0 -0
  72. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/async_tests/__init__.py +0 -0
  73. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/async_tests/main.py +0 -0
  74. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/async_tests/test_main.py +0 -0
  75. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/background_tasks/tutorial001.py +0 -0
  76. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/background_tasks/tutorial002.py +0 -0
  77. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/background_tasks/tutorial002_an.py +0 -0
  78. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/background_tasks/tutorial002_an_py310.py +0 -0
  79. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/background_tasks/tutorial002_an_py39.py +0 -0
  80. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/background_tasks/tutorial002_py310.py +0 -0
  81. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/behind_a_proxy/tutorial001.py +0 -0
  82. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/behind_a_proxy/tutorial001_01.py +0 -0
  83. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/behind_a_proxy/tutorial002.py +0 -0
  84. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/behind_a_proxy/tutorial003.py +0 -0
  85. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/behind_a_proxy/tutorial004.py +0 -0
  86. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/bigger_applications/__init__.py +0 -0
  87. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/bigger_applications/app/__init__.py +0 -0
  88. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/bigger_applications/app/dependencies.py +0 -0
  89. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/bigger_applications/app/internal/__init__.py +0 -0
  90. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/bigger_applications/app/internal/admin.py +0 -0
  91. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/bigger_applications/app/main.py +0 -0
  92. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/bigger_applications/app/routers/__init__.py +0 -0
  93. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/bigger_applications/app/routers/items.py +0 -0
  94. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/bigger_applications/app/routers/users.py +0 -0
  95. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/bigger_applications/app_an/__init__.py +0 -0
  96. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/bigger_applications/app_an/dependencies.py +0 -0
  97. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/bigger_applications/app_an/internal/__init__.py +0 -0
  98. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/bigger_applications/app_an/internal/admin.py +0 -0
  99. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/bigger_applications/app_an/main.py +0 -0
  100. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/bigger_applications/app_an/routers/__init__.py +0 -0
  101. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/bigger_applications/app_an/routers/items.py +0 -0
  102. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/bigger_applications/app_an/routers/users.py +0 -0
  103. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/bigger_applications/app_an_py39/__init__.py +0 -0
  104. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/bigger_applications/app_an_py39/dependencies.py +0 -0
  105. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/bigger_applications/app_an_py39/internal/__init__.py +0 -0
  106. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/bigger_applications/app_an_py39/internal/admin.py +0 -0
  107. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/bigger_applications/app_an_py39/main.py +0 -0
  108. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/bigger_applications/app_an_py39/routers/__init__.py +0 -0
  109. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/bigger_applications/app_an_py39/routers/items.py +0 -0
  110. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/bigger_applications/app_an_py39/routers/users.py +0 -0
  111. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body/tutorial001.py +0 -0
  112. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body/tutorial001_py310.py +0 -0
  113. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body/tutorial002.py +0 -0
  114. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body/tutorial002_py310.py +0 -0
  115. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body/tutorial003.py +0 -0
  116. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body/tutorial003_py310.py +0 -0
  117. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body/tutorial004.py +0 -0
  118. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body/tutorial004_py310.py +0 -0
  119. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_fields/tutorial001.py +0 -0
  120. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_fields/tutorial001_an.py +0 -0
  121. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_fields/tutorial001_an_py310.py +0 -0
  122. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_fields/tutorial001_an_py39.py +0 -0
  123. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_fields/tutorial001_py310.py +0 -0
  124. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_multiple_params/tutorial001.py +0 -0
  125. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_multiple_params/tutorial001_an.py +0 -0
  126. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_multiple_params/tutorial001_an_py310.py +0 -0
  127. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_multiple_params/tutorial001_an_py39.py +0 -0
  128. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_multiple_params/tutorial001_py310.py +0 -0
  129. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_multiple_params/tutorial002.py +0 -0
  130. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_multiple_params/tutorial002_py310.py +0 -0
  131. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_multiple_params/tutorial003.py +0 -0
  132. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_multiple_params/tutorial003_an.py +0 -0
  133. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_multiple_params/tutorial003_an_py310.py +0 -0
  134. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_multiple_params/tutorial003_an_py39.py +0 -0
  135. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_multiple_params/tutorial003_py310.py +0 -0
  136. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_multiple_params/tutorial004.py +0 -0
  137. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_multiple_params/tutorial004_an.py +0 -0
  138. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_multiple_params/tutorial004_an_py310.py +0 -0
  139. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_multiple_params/tutorial004_an_py39.py +0 -0
  140. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_multiple_params/tutorial004_py310.py +0 -0
  141. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_multiple_params/tutorial005.py +0 -0
  142. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_multiple_params/tutorial005_an.py +0 -0
  143. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_multiple_params/tutorial005_an_py310.py +0 -0
  144. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_multiple_params/tutorial005_an_py39.py +0 -0
  145. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_multiple_params/tutorial005_py310.py +0 -0
  146. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_nested_models/tutorial001.py +0 -0
  147. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_nested_models/tutorial001_py310.py +0 -0
  148. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_nested_models/tutorial002.py +0 -0
  149. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_nested_models/tutorial002_py310.py +0 -0
  150. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_nested_models/tutorial002_py39.py +0 -0
  151. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_nested_models/tutorial003.py +0 -0
  152. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_nested_models/tutorial003_py310.py +0 -0
  153. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_nested_models/tutorial003_py39.py +0 -0
  154. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_nested_models/tutorial004.py +0 -0
  155. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_nested_models/tutorial004_py310.py +0 -0
  156. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_nested_models/tutorial004_py39.py +0 -0
  157. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_nested_models/tutorial005.py +0 -0
  158. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_nested_models/tutorial005_py310.py +0 -0
  159. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_nested_models/tutorial005_py39.py +0 -0
  160. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_nested_models/tutorial006.py +0 -0
  161. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_nested_models/tutorial006_py310.py +0 -0
  162. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_nested_models/tutorial006_py39.py +0 -0
  163. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_nested_models/tutorial007.py +0 -0
  164. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_nested_models/tutorial007_py310.py +0 -0
  165. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_nested_models/tutorial007_py39.py +0 -0
  166. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_nested_models/tutorial008.py +0 -0
  167. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_nested_models/tutorial008_py39.py +0 -0
  168. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_nested_models/tutorial009.py +0 -0
  169. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_nested_models/tutorial009_py39.py +0 -0
  170. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_updates/tutorial001.py +0 -0
  171. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_updates/tutorial001_py310.py +0 -0
  172. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_updates/tutorial001_py39.py +0 -0
  173. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_updates/tutorial002.py +0 -0
  174. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_updates/tutorial002_py310.py +0 -0
  175. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/body_updates/tutorial002_py39.py +0 -0
  176. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/conditional_openapi/tutorial001.py +0 -0
  177. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/configure_swagger_ui/tutorial001.py +0 -0
  178. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/configure_swagger_ui/tutorial002.py +0 -0
  179. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/configure_swagger_ui/tutorial003.py +0 -0
  180. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/cookie_param_models/tutorial001.py +0 -0
  181. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/cookie_param_models/tutorial001_an.py +0 -0
  182. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/cookie_param_models/tutorial001_an_py310.py +0 -0
  183. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/cookie_param_models/tutorial001_an_py39.py +0 -0
  184. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/cookie_param_models/tutorial001_py310.py +0 -0
  185. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/cookie_param_models/tutorial002.py +0 -0
  186. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/cookie_param_models/tutorial002_an.py +0 -0
  187. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/cookie_param_models/tutorial002_an_py310.py +0 -0
  188. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/cookie_param_models/tutorial002_an_py39.py +0 -0
  189. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/cookie_param_models/tutorial002_pv1.py +0 -0
  190. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/cookie_param_models/tutorial002_pv1_an.py +0 -0
  191. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/cookie_param_models/tutorial002_pv1_an_py310.py +0 -0
  192. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/cookie_param_models/tutorial002_pv1_an_py39.py +0 -0
  193. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/cookie_param_models/tutorial002_pv1_py310.py +0 -0
  194. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/cookie_param_models/tutorial002_py310.py +0 -0
  195. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/cookie_params/tutorial001.py +0 -0
  196. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/cookie_params/tutorial001_an.py +0 -0
  197. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/cookie_params/tutorial001_an_py310.py +0 -0
  198. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/cookie_params/tutorial001_an_py39.py +0 -0
  199. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/cookie_params/tutorial001_py310.py +0 -0
  200. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/cors/tutorial001.py +0 -0
  201. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/custom_docs_ui/tutorial001.py +0 -0
  202. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/custom_docs_ui/tutorial002.py +0 -0
  203. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/custom_request_and_route/tutorial001.py +0 -0
  204. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/custom_request_and_route/tutorial002.py +0 -0
  205. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/custom_request_and_route/tutorial003.py +0 -0
  206. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/custom_response/tutorial001.py +0 -0
  207. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/custom_response/tutorial001b.py +0 -0
  208. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/custom_response/tutorial002.py +0 -0
  209. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/custom_response/tutorial003.py +0 -0
  210. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/custom_response/tutorial004.py +0 -0
  211. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/custom_response/tutorial005.py +0 -0
  212. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/custom_response/tutorial006.py +0 -0
  213. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/custom_response/tutorial006b.py +0 -0
  214. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/custom_response/tutorial006c.py +0 -0
  215. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/custom_response/tutorial007.py +0 -0
  216. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/custom_response/tutorial008.py +0 -0
  217. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/custom_response/tutorial009.py +0 -0
  218. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/custom_response/tutorial009b.py +0 -0
  219. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/custom_response/tutorial009c.py +0 -0
  220. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/custom_response/tutorial010.py +0 -0
  221. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dataclasses/tutorial001.py +0 -0
  222. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dataclasses/tutorial002.py +0 -0
  223. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dataclasses/tutorial003.py +0 -0
  224. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/debugging/tutorial001.py +0 -0
  225. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial001.py +0 -0
  226. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial001_02_an.py +0 -0
  227. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial001_02_an_py310.py +0 -0
  228. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial001_02_an_py39.py +0 -0
  229. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial001_an.py +0 -0
  230. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial001_an_py310.py +0 -0
  231. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial001_an_py39.py +0 -0
  232. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial001_py310.py +0 -0
  233. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial002.py +0 -0
  234. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial002_an.py +0 -0
  235. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial002_an_py310.py +0 -0
  236. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial002_an_py39.py +0 -0
  237. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial002_py310.py +0 -0
  238. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial003.py +0 -0
  239. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial003_an.py +0 -0
  240. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial003_an_py310.py +0 -0
  241. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial003_an_py39.py +0 -0
  242. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial003_py310.py +0 -0
  243. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial004.py +0 -0
  244. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial004_an.py +0 -0
  245. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial004_an_py310.py +0 -0
  246. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial004_an_py39.py +0 -0
  247. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial004_py310.py +0 -0
  248. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial005.py +0 -0
  249. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial005_an.py +0 -0
  250. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial005_an_py310.py +0 -0
  251. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial005_an_py39.py +0 -0
  252. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial005_py310.py +0 -0
  253. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial006.py +0 -0
  254. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial006_an.py +0 -0
  255. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial006_an_py39.py +0 -0
  256. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial007.py +0 -0
  257. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial008.py +0 -0
  258. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial008_an.py +0 -0
  259. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial008_an_py39.py +0 -0
  260. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial008b.py +0 -0
  261. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial008b_an.py +0 -0
  262. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial008b_an_py39.py +0 -0
  263. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial008c.py +0 -0
  264. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial008c_an.py +0 -0
  265. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial008c_an_py39.py +0 -0
  266. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial008d.py +0 -0
  267. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial008d_an.py +0 -0
  268. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial008d_an_py39.py +0 -0
  269. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial009.py +0 -0
  270. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial010.py +0 -0
  271. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial011.py +0 -0
  272. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial011_an.py +0 -0
  273. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial011_an_py39.py +0 -0
  274. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial012.py +0 -0
  275. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial012_an.py +0 -0
  276. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependencies/tutorial012_an_py39.py +0 -0
  277. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependency_testing/tutorial001.py +0 -0
  278. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependency_testing/tutorial001_an.py +0 -0
  279. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependency_testing/tutorial001_an_py310.py +0 -0
  280. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependency_testing/tutorial001_an_py39.py +0 -0
  281. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/dependency_testing/tutorial001_py310.py +0 -0
  282. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/encoder/tutorial001.py +0 -0
  283. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/encoder/tutorial001_py310.py +0 -0
  284. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/events/tutorial001.py +0 -0
  285. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/events/tutorial002.py +0 -0
  286. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/events/tutorial003.py +0 -0
  287. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/extending_openapi/tutorial001.py +0 -0
  288. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/extra_data_types/tutorial001.py +0 -0
  289. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/extra_data_types/tutorial001_an.py +0 -0
  290. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/extra_data_types/tutorial001_an_py310.py +0 -0
  291. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/extra_data_types/tutorial001_an_py39.py +0 -0
  292. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/extra_data_types/tutorial001_py310.py +0 -0
  293. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/extra_models/tutorial001.py +0 -0
  294. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/extra_models/tutorial001_py310.py +0 -0
  295. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/extra_models/tutorial002.py +0 -0
  296. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/extra_models/tutorial002_py310.py +0 -0
  297. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/extra_models/tutorial003.py +0 -0
  298. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/extra_models/tutorial003_py310.py +0 -0
  299. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/extra_models/tutorial004.py +0 -0
  300. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/extra_models/tutorial004_py39.py +0 -0
  301. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/extra_models/tutorial005.py +0 -0
  302. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/extra_models/tutorial005_py39.py +0 -0
  303. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/first_steps/tutorial001.py +0 -0
  304. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/first_steps/tutorial002.py +0 -0
  305. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/first_steps/tutorial003.py +0 -0
  306. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/generate_clients/tutorial001.py +0 -0
  307. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/generate_clients/tutorial001_py39.py +0 -0
  308. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/generate_clients/tutorial002.py +0 -0
  309. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/generate_clients/tutorial002_py39.py +0 -0
  310. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/generate_clients/tutorial003.py +0 -0
  311. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/generate_clients/tutorial003_py39.py +0 -0
  312. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/generate_clients/tutorial004.js +0 -0
  313. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/generate_clients/tutorial004.py +0 -0
  314. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/graphql/tutorial001.py +0 -0
  315. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/handling_errors/tutorial001.py +0 -0
  316. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/handling_errors/tutorial002.py +0 -0
  317. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/handling_errors/tutorial003.py +0 -0
  318. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/handling_errors/tutorial004.py +0 -0
  319. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/handling_errors/tutorial005.py +0 -0
  320. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/handling_errors/tutorial006.py +0 -0
  321. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/header_param_models/tutorial001.py +0 -0
  322. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/header_param_models/tutorial001_an.py +0 -0
  323. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/header_param_models/tutorial001_an_py310.py +0 -0
  324. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/header_param_models/tutorial001_an_py39.py +0 -0
  325. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/header_param_models/tutorial001_py310.py +0 -0
  326. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/header_param_models/tutorial001_py39.py +0 -0
  327. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/header_param_models/tutorial002.py +0 -0
  328. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/header_param_models/tutorial002_an.py +0 -0
  329. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/header_param_models/tutorial002_an_py310.py +0 -0
  330. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/header_param_models/tutorial002_an_py39.py +0 -0
  331. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/header_param_models/tutorial002_pv1.py +0 -0
  332. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/header_param_models/tutorial002_pv1_an.py +0 -0
  333. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/header_param_models/tutorial002_pv1_an_py310.py +0 -0
  334. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/header_param_models/tutorial002_pv1_an_py39.py +0 -0
  335. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/header_param_models/tutorial002_pv1_py310.py +0 -0
  336. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/header_param_models/tutorial002_pv1_py39.py +0 -0
  337. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/header_param_models/tutorial002_py310.py +0 -0
  338. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/header_param_models/tutorial002_py39.py +0 -0
  339. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/header_param_models/tutorial003.py +0 -0
  340. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/header_param_models/tutorial003_an.py +0 -0
  341. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/header_param_models/tutorial003_an_py310.py +0 -0
  342. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/header_param_models/tutorial003_an_py39.py +0 -0
  343. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/header_param_models/tutorial003_py310.py +0 -0
  344. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/header_param_models/tutorial003_py39.py +0 -0
  345. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/header_params/tutorial001.py +0 -0
  346. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/header_params/tutorial001_an.py +0 -0
  347. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/header_params/tutorial001_an_py310.py +0 -0
  348. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/header_params/tutorial001_an_py39.py +0 -0
  349. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/header_params/tutorial001_py310.py +0 -0
  350. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/header_params/tutorial002.py +0 -0
  351. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/header_params/tutorial002_an.py +0 -0
  352. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/header_params/tutorial002_an_py310.py +0 -0
  353. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/header_params/tutorial002_an_py39.py +0 -0
  354. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/header_params/tutorial002_py310.py +0 -0
  355. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/header_params/tutorial003.py +0 -0
  356. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/header_params/tutorial003_an.py +0 -0
  357. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/header_params/tutorial003_an_py310.py +0 -0
  358. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/header_params/tutorial003_an_py39.py +0 -0
  359. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/header_params/tutorial003_py310.py +0 -0
  360. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/header_params/tutorial003_py39.py +0 -0
  361. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/metadata/tutorial001.py +0 -0
  362. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/metadata/tutorial001_1.py +0 -0
  363. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/metadata/tutorial002.py +0 -0
  364. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/metadata/tutorial003.py +0 -0
  365. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/metadata/tutorial004.py +0 -0
  366. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/middleware/tutorial001.py +0 -0
  367. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/openapi_callbacks/tutorial001.py +0 -0
  368. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/openapi_webhooks/tutorial001.py +0 -0
  369. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_operation_advanced_configuration/tutorial001.py +0 -0
  370. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_operation_advanced_configuration/tutorial002.py +0 -0
  371. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_operation_advanced_configuration/tutorial003.py +0 -0
  372. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_operation_advanced_configuration/tutorial004.py +0 -0
  373. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_operation_advanced_configuration/tutorial005.py +0 -0
  374. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_operation_advanced_configuration/tutorial006.py +0 -0
  375. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_operation_advanced_configuration/tutorial007.py +0 -0
  376. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_operation_advanced_configuration/tutorial007_pv1.py +0 -0
  377. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_operation_configuration/tutorial001.py +0 -0
  378. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_operation_configuration/tutorial001_py310.py +0 -0
  379. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_operation_configuration/tutorial001_py39.py +0 -0
  380. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_operation_configuration/tutorial002.py +0 -0
  381. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_operation_configuration/tutorial002_py310.py +0 -0
  382. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_operation_configuration/tutorial002_py39.py +0 -0
  383. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_operation_configuration/tutorial002b.py +0 -0
  384. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_operation_configuration/tutorial003.py +0 -0
  385. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_operation_configuration/tutorial003_py310.py +0 -0
  386. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_operation_configuration/tutorial003_py39.py +0 -0
  387. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_operation_configuration/tutorial004.py +0 -0
  388. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_operation_configuration/tutorial004_py310.py +0 -0
  389. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_operation_configuration/tutorial004_py39.py +0 -0
  390. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_operation_configuration/tutorial005.py +0 -0
  391. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_operation_configuration/tutorial005_py310.py +0 -0
  392. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_operation_configuration/tutorial005_py39.py +0 -0
  393. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_operation_configuration/tutorial006.py +0 -0
  394. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_params/tutorial001.py +0 -0
  395. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_params/tutorial002.py +0 -0
  396. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_params/tutorial003.py +0 -0
  397. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_params/tutorial003b.py +0 -0
  398. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_params/tutorial004.py +0 -0
  399. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_params/tutorial005.py +0 -0
  400. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_params_numeric_validations/tutorial001.py +0 -0
  401. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_params_numeric_validations/tutorial001_an.py +0 -0
  402. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_params_numeric_validations/tutorial001_an_py310.py +0 -0
  403. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_params_numeric_validations/tutorial001_an_py39.py +0 -0
  404. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_params_numeric_validations/tutorial001_py310.py +0 -0
  405. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_params_numeric_validations/tutorial002.py +0 -0
  406. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_params_numeric_validations/tutorial002_an.py +0 -0
  407. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_params_numeric_validations/tutorial002_an_py39.py +0 -0
  408. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_params_numeric_validations/tutorial003.py +0 -0
  409. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_params_numeric_validations/tutorial003_an.py +0 -0
  410. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_params_numeric_validations/tutorial003_an_py39.py +0 -0
  411. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_params_numeric_validations/tutorial004.py +0 -0
  412. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_params_numeric_validations/tutorial004_an.py +0 -0
  413. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_params_numeric_validations/tutorial004_an_py39.py +0 -0
  414. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_params_numeric_validations/tutorial005.py +0 -0
  415. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_params_numeric_validations/tutorial005_an.py +0 -0
  416. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_params_numeric_validations/tutorial005_an_py39.py +0 -0
  417. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_params_numeric_validations/tutorial006.py +0 -0
  418. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_params_numeric_validations/tutorial006_an.py +0 -0
  419. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/path_params_numeric_validations/tutorial006_an_py39.py +0 -0
  420. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/python_types/tutorial001.py +0 -0
  421. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/python_types/tutorial002.py +0 -0
  422. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/python_types/tutorial003.py +0 -0
  423. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/python_types/tutorial004.py +0 -0
  424. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/python_types/tutorial005.py +0 -0
  425. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/python_types/tutorial006.py +0 -0
  426. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/python_types/tutorial006_py39.py +0 -0
  427. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/python_types/tutorial007.py +0 -0
  428. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/python_types/tutorial007_py39.py +0 -0
  429. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/python_types/tutorial008.py +0 -0
  430. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/python_types/tutorial008_py39.py +0 -0
  431. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/python_types/tutorial008b.py +0 -0
  432. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/python_types/tutorial008b_py310.py +0 -0
  433. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/python_types/tutorial009.py +0 -0
  434. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/python_types/tutorial009_py310.py +0 -0
  435. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/python_types/tutorial009b.py +0 -0
  436. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/python_types/tutorial009c.py +0 -0
  437. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/python_types/tutorial009c_py310.py +0 -0
  438. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/python_types/tutorial010.py +0 -0
  439. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/python_types/tutorial011.py +0 -0
  440. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/python_types/tutorial011_py310.py +0 -0
  441. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/python_types/tutorial011_py39.py +0 -0
  442. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/python_types/tutorial012.py +0 -0
  443. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/python_types/tutorial013.py +0 -0
  444. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/python_types/tutorial013_py39.py +0 -0
  445. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_param_models/tutorial001.py +0 -0
  446. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_param_models/tutorial001_an.py +0 -0
  447. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_param_models/tutorial001_an_py310.py +0 -0
  448. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_param_models/tutorial001_an_py39.py +0 -0
  449. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_param_models/tutorial001_py310.py +0 -0
  450. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_param_models/tutorial001_py39.py +0 -0
  451. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_param_models/tutorial002.py +0 -0
  452. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_param_models/tutorial002_an.py +0 -0
  453. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_param_models/tutorial002_an_py310.py +0 -0
  454. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_param_models/tutorial002_an_py39.py +0 -0
  455. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_param_models/tutorial002_pv1.py +0 -0
  456. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_param_models/tutorial002_pv1_an.py +0 -0
  457. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_param_models/tutorial002_pv1_an_py310.py +0 -0
  458. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_param_models/tutorial002_pv1_an_py39.py +0 -0
  459. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_param_models/tutorial002_pv1_py310.py +0 -0
  460. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_param_models/tutorial002_pv1_py39.py +0 -0
  461. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_param_models/tutorial002_py310.py +0 -0
  462. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_param_models/tutorial002_py39.py +0 -0
  463. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params/tutorial001.py +0 -0
  464. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params/tutorial002.py +0 -0
  465. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params/tutorial002_py310.py +0 -0
  466. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params/tutorial003.py +0 -0
  467. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params/tutorial003_py310.py +0 -0
  468. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params/tutorial004.py +0 -0
  469. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params/tutorial004_py310.py +0 -0
  470. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params/tutorial005.py +0 -0
  471. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params/tutorial006.py +0 -0
  472. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params/tutorial006_py310.py +0 -0
  473. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params/tutorial006b.py +0 -0
  474. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial001.py +0 -0
  475. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial001_py310.py +0 -0
  476. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial002.py +0 -0
  477. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial002_an.py +0 -0
  478. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial002_an_py310.py +0 -0
  479. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial002_py310.py +0 -0
  480. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial003.py +0 -0
  481. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial003_an.py +0 -0
  482. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial003_an_py310.py +0 -0
  483. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial003_an_py39.py +0 -0
  484. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial003_py310.py +0 -0
  485. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial004.py +0 -0
  486. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial004_an.py +0 -0
  487. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial004_an_py310.py +0 -0
  488. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial004_an_py39.py +0 -0
  489. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial004_py310.py +0 -0
  490. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial004_regex_an_py310.py +0 -0
  491. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial005.py +0 -0
  492. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial005_an.py +0 -0
  493. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial005_an_py39.py +0 -0
  494. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial006.py +0 -0
  495. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial006_an.py +0 -0
  496. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial006_an_py39.py +0 -0
  497. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial006c.py +0 -0
  498. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial006c_an.py +0 -0
  499. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial006c_an_py310.py +0 -0
  500. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial006c_an_py39.py +0 -0
  501. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial006c_py310.py +0 -0
  502. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial007.py +0 -0
  503. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial007_an.py +0 -0
  504. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial007_an_py310.py +0 -0
  505. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial007_an_py39.py +0 -0
  506. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial007_py310.py +0 -0
  507. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial008.py +0 -0
  508. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial008_an.py +0 -0
  509. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial008_an_py310.py +0 -0
  510. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial008_an_py39.py +0 -0
  511. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial008_py310.py +0 -0
  512. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial009.py +0 -0
  513. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial009_an.py +0 -0
  514. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial009_an_py310.py +0 -0
  515. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial009_an_py39.py +0 -0
  516. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial009_py310.py +0 -0
  517. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial010.py +0 -0
  518. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial010_an.py +0 -0
  519. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial010_an_py310.py +0 -0
  520. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial010_an_py39.py +0 -0
  521. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial010_py310.py +0 -0
  522. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial011.py +0 -0
  523. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial011_an.py +0 -0
  524. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial011_an_py310.py +0 -0
  525. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial011_an_py39.py +0 -0
  526. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial011_py310.py +0 -0
  527. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial011_py39.py +0 -0
  528. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial012.py +0 -0
  529. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial012_an.py +0 -0
  530. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial012_an_py39.py +0 -0
  531. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial012_py39.py +0 -0
  532. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial013.py +0 -0
  533. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial013_an.py +0 -0
  534. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial013_an_py39.py +0 -0
  535. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial014.py +0 -0
  536. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial014_an.py +0 -0
  537. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial014_an_py310.py +0 -0
  538. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial014_an_py39.py +0 -0
  539. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial014_py310.py +0 -0
  540. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial015_an.py +0 -0
  541. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial015_an_py310.py +0 -0
  542. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/query_params_str_validations/tutorial015_an_py39.py +0 -0
  543. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/request_files/tutorial001.py +0 -0
  544. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/request_files/tutorial001_02.py +0 -0
  545. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/request_files/tutorial001_02_an.py +0 -0
  546. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/request_files/tutorial001_02_an_py310.py +0 -0
  547. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/request_files/tutorial001_02_an_py39.py +0 -0
  548. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/request_files/tutorial001_02_py310.py +0 -0
  549. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/request_files/tutorial001_03.py +0 -0
  550. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/request_files/tutorial001_03_an.py +0 -0
  551. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/request_files/tutorial001_03_an_py39.py +0 -0
  552. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/request_files/tutorial001_an.py +0 -0
  553. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/request_files/tutorial001_an_py39.py +0 -0
  554. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/request_files/tutorial002.py +0 -0
  555. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/request_files/tutorial002_an.py +0 -0
  556. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/request_files/tutorial002_an_py39.py +0 -0
  557. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/request_files/tutorial002_py39.py +0 -0
  558. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/request_files/tutorial003.py +0 -0
  559. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/request_files/tutorial003_an.py +0 -0
  560. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/request_files/tutorial003_an_py39.py +0 -0
  561. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/request_files/tutorial003_py39.py +0 -0
  562. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/request_form_models/tutorial001.py +0 -0
  563. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/request_form_models/tutorial001_an.py +0 -0
  564. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/request_form_models/tutorial001_an_py39.py +0 -0
  565. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/request_form_models/tutorial002.py +0 -0
  566. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/request_form_models/tutorial002_an.py +0 -0
  567. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/request_form_models/tutorial002_an_py39.py +0 -0
  568. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/request_form_models/tutorial002_pv1.py +0 -0
  569. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/request_form_models/tutorial002_pv1_an.py +0 -0
  570. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/request_form_models/tutorial002_pv1_an_py39.py +0 -0
  571. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/request_forms/tutorial001.py +0 -0
  572. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/request_forms/tutorial001_an.py +0 -0
  573. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/request_forms/tutorial001_an_py39.py +0 -0
  574. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/request_forms_and_files/tutorial001.py +0 -0
  575. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/request_forms_and_files/tutorial001_an.py +0 -0
  576. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/request_forms_and_files/tutorial001_an_py39.py +0 -0
  577. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/response_change_status_code/tutorial001.py +0 -0
  578. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/response_cookies/tutorial001.py +0 -0
  579. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/response_cookies/tutorial002.py +0 -0
  580. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/response_directly/tutorial001.py +0 -0
  581. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/response_directly/tutorial002.py +0 -0
  582. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/response_headers/tutorial001.py +0 -0
  583. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/response_headers/tutorial002.py +0 -0
  584. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/response_model/tutorial001.py +0 -0
  585. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/response_model/tutorial001_01.py +0 -0
  586. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/response_model/tutorial001_01_py310.py +0 -0
  587. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/response_model/tutorial001_01_py39.py +0 -0
  588. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/response_model/tutorial001_py310.py +0 -0
  589. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/response_model/tutorial001_py39.py +0 -0
  590. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/response_model/tutorial002.py +0 -0
  591. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/response_model/tutorial002_py310.py +0 -0
  592. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/response_model/tutorial003.py +0 -0
  593. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/response_model/tutorial003_01.py +0 -0
  594. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/response_model/tutorial003_01_py310.py +0 -0
  595. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/response_model/tutorial003_02.py +0 -0
  596. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/response_model/tutorial003_03.py +0 -0
  597. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/response_model/tutorial003_04.py +0 -0
  598. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/response_model/tutorial003_04_py310.py +0 -0
  599. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/response_model/tutorial003_05.py +0 -0
  600. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/response_model/tutorial003_05_py310.py +0 -0
  601. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/response_model/tutorial003_py310.py +0 -0
  602. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/response_model/tutorial004.py +0 -0
  603. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/response_model/tutorial004_py310.py +0 -0
  604. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/response_model/tutorial004_py39.py +0 -0
  605. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/response_model/tutorial005.py +0 -0
  606. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/response_model/tutorial005_py310.py +0 -0
  607. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/response_model/tutorial006.py +0 -0
  608. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/response_model/tutorial006_py310.py +0 -0
  609. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/response_status_code/tutorial001.py +0 -0
  610. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/response_status_code/tutorial002.py +0 -0
  611. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/schema_extra_example/tutorial001.py +0 -0
  612. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/schema_extra_example/tutorial001_pv1.py +0 -0
  613. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/schema_extra_example/tutorial001_pv1_py310.py +0 -0
  614. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/schema_extra_example/tutorial001_py310.py +0 -0
  615. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/schema_extra_example/tutorial002.py +0 -0
  616. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/schema_extra_example/tutorial002_py310.py +0 -0
  617. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/schema_extra_example/tutorial003.py +0 -0
  618. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/schema_extra_example/tutorial003_an.py +0 -0
  619. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/schema_extra_example/tutorial003_an_py310.py +0 -0
  620. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/schema_extra_example/tutorial003_an_py39.py +0 -0
  621. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/schema_extra_example/tutorial003_py310.py +0 -0
  622. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/schema_extra_example/tutorial004.py +0 -0
  623. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/schema_extra_example/tutorial004_an.py +0 -0
  624. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/schema_extra_example/tutorial004_an_py310.py +0 -0
  625. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/schema_extra_example/tutorial004_an_py39.py +0 -0
  626. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/schema_extra_example/tutorial004_py310.py +0 -0
  627. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/schema_extra_example/tutorial005.py +0 -0
  628. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/schema_extra_example/tutorial005_an.py +0 -0
  629. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/schema_extra_example/tutorial005_an_py310.py +0 -0
  630. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/schema_extra_example/tutorial005_an_py39.py +0 -0
  631. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/schema_extra_example/tutorial005_py310.py +0 -0
  632. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/security/tutorial001.py +0 -0
  633. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/security/tutorial001_an.py +0 -0
  634. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/security/tutorial001_an_py39.py +0 -0
  635. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/security/tutorial002.py +0 -0
  636. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/security/tutorial002_an.py +0 -0
  637. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/security/tutorial002_an_py310.py +0 -0
  638. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/security/tutorial002_an_py39.py +0 -0
  639. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/security/tutorial002_py310.py +0 -0
  640. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/security/tutorial003.py +0 -0
  641. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/security/tutorial003_an.py +0 -0
  642. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/security/tutorial003_an_py310.py +0 -0
  643. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/security/tutorial003_an_py39.py +0 -0
  644. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/security/tutorial003_py310.py +0 -0
  645. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/security/tutorial004.py +0 -0
  646. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/security/tutorial004_an.py +0 -0
  647. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/security/tutorial004_an_py310.py +0 -0
  648. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/security/tutorial004_an_py39.py +0 -0
  649. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/security/tutorial004_py310.py +0 -0
  650. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/security/tutorial005.py +0 -0
  651. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/security/tutorial005_an.py +0 -0
  652. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/security/tutorial005_an_py310.py +0 -0
  653. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/security/tutorial005_an_py39.py +0 -0
  654. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/security/tutorial005_py310.py +0 -0
  655. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/security/tutorial005_py39.py +0 -0
  656. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/security/tutorial006.py +0 -0
  657. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/security/tutorial006_an.py +0 -0
  658. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/security/tutorial006_an_py39.py +0 -0
  659. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/security/tutorial007.py +0 -0
  660. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/security/tutorial007_an.py +0 -0
  661. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/security/tutorial007_an_py39.py +0 -0
  662. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/separate_openapi_schemas/tutorial001.py +0 -0
  663. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/separate_openapi_schemas/tutorial001_py310.py +0 -0
  664. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/separate_openapi_schemas/tutorial001_py39.py +0 -0
  665. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/separate_openapi_schemas/tutorial002.py +0 -0
  666. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/separate_openapi_schemas/tutorial002_py310.py +0 -0
  667. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/separate_openapi_schemas/tutorial002_py39.py +0 -0
  668. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/settings/app01/__init__.py +0 -0
  669. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/settings/app01/config.py +0 -0
  670. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/settings/app01/main.py +0 -0
  671. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/settings/app02/__init__.py +0 -0
  672. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/settings/app02/config.py +0 -0
  673. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/settings/app02/main.py +0 -0
  674. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/settings/app02/test_main.py +0 -0
  675. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/settings/app02_an/__init__.py +0 -0
  676. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/settings/app02_an/config.py +0 -0
  677. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/settings/app02_an/main.py +0 -0
  678. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/settings/app02_an/test_main.py +0 -0
  679. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/settings/app02_an_py39/__init__.py +0 -0
  680. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/settings/app02_an_py39/config.py +0 -0
  681. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/settings/app02_an_py39/main.py +0 -0
  682. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/settings/app02_an_py39/test_main.py +0 -0
  683. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/settings/app03/__init__.py +0 -0
  684. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/settings/app03/config.py +0 -0
  685. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/settings/app03/main.py +0 -0
  686. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/settings/app03_an/__init__.py +0 -0
  687. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/settings/app03_an/config.py +0 -0
  688. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/settings/app03_an/config_pv1.py +0 -0
  689. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/settings/app03_an/main.py +0 -0
  690. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/settings/app03_an_py39/__init__.py +0 -0
  691. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/settings/app03_an_py39/config.py +0 -0
  692. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/settings/app03_an_py39/main.py +0 -0
  693. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/settings/tutorial001.py +0 -0
  694. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/settings/tutorial001_pv1.py +0 -0
  695. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/sql_databases/__init__.py +0 -0
  696. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/sql_databases/tutorial001.py +0 -0
  697. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/sql_databases/tutorial001_an.py +0 -0
  698. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/sql_databases/tutorial001_an_py310.py +0 -0
  699. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/sql_databases/tutorial001_an_py39.py +0 -0
  700. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/sql_databases/tutorial001_py310.py +0 -0
  701. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/sql_databases/tutorial001_py39.py +0 -0
  702. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/sql_databases/tutorial002.py +0 -0
  703. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/sql_databases/tutorial002_an.py +0 -0
  704. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/sql_databases/tutorial002_an_py310.py +0 -0
  705. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/sql_databases/tutorial002_an_py39.py +0 -0
  706. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/sql_databases/tutorial002_py310.py +0 -0
  707. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/sql_databases/tutorial002_py39.py +0 -0
  708. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/static_files/tutorial001.py +0 -0
  709. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/sub_applications/tutorial001.py +0 -0
  710. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/templates/static/styles.css +0 -0
  711. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/templates/templates/item.html +0 -0
  712. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/templates/tutorial001.py +0 -0
  713. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/using_request_directly/tutorial001.py +0 -0
  714. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/websockets/__init__.py +0 -0
  715. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/websockets/tutorial001.py +0 -0
  716. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/websockets/tutorial002.py +0 -0
  717. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/websockets/tutorial002_an.py +0 -0
  718. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/websockets/tutorial002_an_py310.py +0 -0
  719. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/websockets/tutorial002_an_py39.py +0 -0
  720. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/websockets/tutorial002_py310.py +0 -0
  721. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/websockets/tutorial003.py +0 -0
  722. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/websockets/tutorial003_py39.py +0 -0
  723. {fastapi-0.116.2 → fastapi-0.117.1}/docs_src/wsgi/tutorial001.py +0 -0
  724. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/__main__.py +0 -0
  725. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/background.py +0 -0
  726. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/cli.py +0 -0
  727. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/concurrency.py +0 -0
  728. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/datastructures.py +0 -0
  729. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/dependencies/__init__.py +0 -0
  730. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/dependencies/models.py +0 -0
  731. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/exception_handlers.py +0 -0
  732. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/exceptions.py +0 -0
  733. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/logger.py +0 -0
  734. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/middleware/__init__.py +0 -0
  735. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/middleware/cors.py +0 -0
  736. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/middleware/gzip.py +0 -0
  737. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/middleware/httpsredirect.py +0 -0
  738. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/middleware/trustedhost.py +0 -0
  739. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/middleware/wsgi.py +0 -0
  740. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/openapi/__init__.py +0 -0
  741. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/openapi/constants.py +0 -0
  742. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/openapi/docs.py +0 -0
  743. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/param_functions.py +0 -0
  744. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/params.py +0 -0
  745. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/py.typed +0 -0
  746. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/requests.py +0 -0
  747. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/responses.py +0 -0
  748. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/security/__init__.py +0 -0
  749. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/security/base.py +0 -0
  750. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/security/http.py +0 -0
  751. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/security/oauth2.py +0 -0
  752. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/security/open_id_connect_url.py +0 -0
  753. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/security/utils.py +0 -0
  754. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/staticfiles.py +0 -0
  755. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/templating.py +0 -0
  756. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/testclient.py +0 -0
  757. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/types.py +0 -0
  758. {fastapi-0.116.2 → fastapi-0.117.1}/fastapi/websockets.py +0 -0
  759. {fastapi-0.116.2 → fastapi-0.117.1}/pdm_build.py +0 -0
  760. {fastapi-0.116.2 → fastapi-0.117.1}/requirements-docs-insiders.txt +0 -0
  761. {fastapi-0.116.2 → fastapi-0.117.1}/requirements-docs.txt +0 -0
  762. {fastapi-0.116.2 → fastapi-0.117.1}/requirements-translations.txt +0 -0
  763. {fastapi-0.116.2 → fastapi-0.117.1}/requirements.txt +0 -0
  764. {fastapi-0.116.2 → fastapi-0.117.1}/scripts/contributors.py +0 -0
  765. {fastapi-0.116.2 → fastapi-0.117.1}/scripts/deploy_docs_status.py +0 -0
  766. {fastapi-0.116.2 → fastapi-0.117.1}/scripts/format.sh +0 -0
  767. {fastapi-0.116.2 → fastapi-0.117.1}/scripts/label_approved.py +0 -0
  768. {fastapi-0.116.2 → fastapi-0.117.1}/scripts/lint.sh +0 -0
  769. {fastapi-0.116.2 → fastapi-0.117.1}/scripts/mkdocs_hooks.py +0 -0
  770. {fastapi-0.116.2 → fastapi-0.117.1}/scripts/notify_translations.py +0 -0
  771. {fastapi-0.116.2 → fastapi-0.117.1}/scripts/people.py +0 -0
  772. {fastapi-0.116.2 → fastapi-0.117.1}/scripts/playwright/cookie_param_models/image01.py +0 -0
  773. {fastapi-0.116.2 → fastapi-0.117.1}/scripts/playwright/header_param_models/image01.py +0 -0
  774. {fastapi-0.116.2 → fastapi-0.117.1}/scripts/playwright/query_param_models/image01.py +0 -0
  775. {fastapi-0.116.2 → fastapi-0.117.1}/scripts/playwright/request_form_models/image01.py +0 -0
  776. {fastapi-0.116.2 → fastapi-0.117.1}/scripts/playwright/separate_openapi_schemas/image01.py +0 -0
  777. {fastapi-0.116.2 → fastapi-0.117.1}/scripts/playwright/separate_openapi_schemas/image02.py +0 -0
  778. {fastapi-0.116.2 → fastapi-0.117.1}/scripts/playwright/separate_openapi_schemas/image03.py +0 -0
  779. {fastapi-0.116.2 → fastapi-0.117.1}/scripts/playwright/separate_openapi_schemas/image04.py +0 -0
  780. {fastapi-0.116.2 → fastapi-0.117.1}/scripts/playwright/separate_openapi_schemas/image05.py +0 -0
  781. {fastapi-0.116.2 → fastapi-0.117.1}/scripts/playwright/sql_databases/image01.py +0 -0
  782. {fastapi-0.116.2 → fastapi-0.117.1}/scripts/playwright/sql_databases/image02.py +0 -0
  783. {fastapi-0.116.2 → fastapi-0.117.1}/scripts/sponsors.py +0 -0
  784. {fastapi-0.116.2 → fastapi-0.117.1}/scripts/test-cov-html.sh +0 -0
  785. {fastapi-0.116.2 → fastapi-0.117.1}/scripts/test.sh +0 -0
  786. {fastapi-0.116.2 → fastapi-0.117.1}/scripts/topic_repos.py +0 -0
  787. {fastapi-0.116.2 → fastapi-0.117.1}/tests/__init__.py +0 -0
  788. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_additional_properties.py +0 -0
  789. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_additional_properties_bool.py +0 -0
  790. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_additional_response_extra.py +0 -0
  791. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_additional_responses_bad.py +0 -0
  792. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_additional_responses_custom_model_in_callback.py +0 -0
  793. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_additional_responses_custom_validationerror.py +0 -0
  794. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_additional_responses_default_validationerror.py +0 -0
  795. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_additional_responses_response_class.py +0 -0
  796. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_additional_responses_router.py +0 -0
  797. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_allow_inf_nan_in_enforcing.py +0 -0
  798. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_ambiguous_params.py +0 -0
  799. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_annotated.py +0 -0
  800. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_callable_endpoint.py +0 -0
  801. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_computed_fields.py +0 -0
  802. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_custom_middleware_exception.py +0 -0
  803. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_custom_route_class.py +0 -0
  804. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_custom_swagger_ui_redirect.py +0 -0
  805. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_datastructures.py +0 -0
  806. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_datetime_custom_encoder.py +0 -0
  807. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_default_response_class.py +0 -0
  808. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_default_response_class_router.py +0 -0
  809. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_dependency_cache.py +0 -0
  810. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_dependency_class.py +0 -0
  811. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_dependency_contextmanager.py +0 -0
  812. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_dependency_contextvars.py +0 -0
  813. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_dependency_duplicates.py +0 -0
  814. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_dependency_normal_exceptions.py +0 -0
  815. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_dependency_overrides.py +0 -0
  816. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_dependency_security_overrides.py +0 -0
  817. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_deprecated_openapi_prefix.py +0 -0
  818. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_duplicate_models_openapi.py +0 -0
  819. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_empty_router.py +0 -0
  820. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_enforce_once_required_parameter.py +0 -0
  821. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_exception_handlers.py +0 -0
  822. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_extra_routes.py +0 -0
  823. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_fastapi_cli.py +0 -0
  824. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_filter_pydantic_sub_model/__init__.py +0 -0
  825. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_filter_pydantic_sub_model/app_pv1.py +0 -0
  826. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_filter_pydantic_sub_model/test_filter_pydantic_sub_model_pv1.py +0 -0
  827. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_filter_pydantic_sub_model_pv2.py +0 -0
  828. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_forms_from_non_typing_sequences.py +0 -0
  829. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_forms_single_model.py +0 -0
  830. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_forms_single_param.py +0 -0
  831. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_generate_unique_id_function.py +0 -0
  832. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_generic_parameterless_depends.py +0 -0
  833. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_get_request_body.py +0 -0
  834. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_http_connection_injection.py +0 -0
  835. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_include_route.py +0 -0
  836. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_include_router_defaults_overrides.py +0 -0
  837. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_infer_param_optionality.py +0 -0
  838. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_inherited_custom_class.py +0 -0
  839. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_invalid_path_param.py +0 -0
  840. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_invalid_sequence_param.py +0 -0
  841. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_local_docs.py +0 -0
  842. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_modules_same_name_body/__init__.py +0 -0
  843. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_modules_same_name_body/app/__init__.py +0 -0
  844. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_modules_same_name_body/app/a.py +0 -0
  845. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_modules_same_name_body/app/b.py +0 -0
  846. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_modules_same_name_body/app/main.py +0 -0
  847. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_modules_same_name_body/test_main.py +0 -0
  848. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_multi_body_errors.py +0 -0
  849. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_multi_query_errors.py +0 -0
  850. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_multipart_installation.py +0 -0
  851. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_no_swagger_ui_redirect.py +0 -0
  852. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_openapi_examples.py +0 -0
  853. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_openapi_model_description_trim_on_formfeed.py +0 -0
  854. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_openapi_query_parameter_extension.py +0 -0
  855. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_openapi_route_extensions.py +0 -0
  856. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_openapi_separate_input_output_schemas.py +0 -0
  857. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_openapi_servers.py +0 -0
  858. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_operations_signatures.py +0 -0
  859. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_orjson_response_class.py +0 -0
  860. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_param_class.py +0 -0
  861. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_param_in_path_and_dependency.py +0 -0
  862. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_param_include_in_schema.py +0 -0
  863. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_params_repr.py +0 -0
  864. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_path.py +0 -0
  865. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_put_no_body.py +0 -0
  866. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_query.py +0 -0
  867. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_read_with_orm_mode.py +0 -0
  868. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_regex_deprecated_body.py +0 -0
  869. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_regex_deprecated_params.py +0 -0
  870. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_repeated_cookie_headers.py +0 -0
  871. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_repeated_dependency_schema.py +0 -0
  872. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_repeated_parameter_alias.py +0 -0
  873. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_reponse_set_reponse_code_empty.py +0 -0
  874. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_request_body_parameters_media_type.py +0 -0
  875. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_required_noneable.py +0 -0
  876. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_response_by_alias.py +0 -0
  877. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_response_change_status_code.py +0 -0
  878. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_response_class_no_mediatype.py +0 -0
  879. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_response_code_no_body.py +0 -0
  880. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_response_model_as_return_annotation.py +0 -0
  881. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_response_model_data_filter.py +0 -0
  882. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_response_model_data_filter_no_inheritance.py +0 -0
  883. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_response_model_include_exclude.py +0 -0
  884. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_response_model_invalid.py +0 -0
  885. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_response_model_sub_types.py +0 -0
  886. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_route_scope.py +0 -0
  887. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_router_events.py +0 -0
  888. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_router_prefix_with_template.py +0 -0
  889. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_router_redirect_slashes.py +0 -0
  890. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_schema_extra_examples.py +0 -0
  891. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_security_api_key_cookie.py +0 -0
  892. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_security_api_key_cookie_description.py +0 -0
  893. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_security_api_key_cookie_optional.py +0 -0
  894. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_security_api_key_header.py +0 -0
  895. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_security_api_key_header_description.py +0 -0
  896. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_security_api_key_header_optional.py +0 -0
  897. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_security_api_key_query.py +0 -0
  898. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_security_api_key_query_description.py +0 -0
  899. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_security_api_key_query_optional.py +0 -0
  900. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_security_http_base.py +0 -0
  901. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_security_http_base_description.py +0 -0
  902. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_security_http_base_optional.py +0 -0
  903. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_security_http_basic_optional.py +0 -0
  904. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_security_http_basic_realm.py +0 -0
  905. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_security_http_basic_realm_description.py +0 -0
  906. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_security_http_bearer.py +0 -0
  907. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_security_http_bearer_description.py +0 -0
  908. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_security_http_bearer_optional.py +0 -0
  909. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_security_http_digest.py +0 -0
  910. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_security_http_digest_description.py +0 -0
  911. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_security_http_digest_optional.py +0 -0
  912. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_security_oauth2.py +0 -0
  913. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_security_oauth2_authorization_code_bearer.py +0 -0
  914. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_security_oauth2_authorization_code_bearer_description.py +0 -0
  915. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_security_oauth2_optional.py +0 -0
  916. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_security_oauth2_optional_description.py +0 -0
  917. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_security_oauth2_password_bearer_optional.py +0 -0
  918. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_security_oauth2_password_bearer_optional_description.py +0 -0
  919. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_security_openid_connect.py +0 -0
  920. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_security_openid_connect_description.py +0 -0
  921. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_security_openid_connect_optional.py +0 -0
  922. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_serialize_response.py +0 -0
  923. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_serialize_response_dataclass.py +0 -0
  924. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_serialize_response_model.py +0 -0
  925. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_skip_defaults.py +0 -0
  926. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_starlette_exception.py +0 -0
  927. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_starlette_urlconvertors.py +0 -0
  928. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_sub_callbacks.py +0 -0
  929. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_swagger_ui_init_oauth.py +0 -0
  930. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tuples.py +0 -0
  931. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/__init__.py +0 -0
  932. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_additional_responses/__init__.py +0 -0
  933. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_additional_responses/test_tutorial001.py +0 -0
  934. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_additional_responses/test_tutorial002.py +0 -0
  935. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_additional_responses/test_tutorial003.py +0 -0
  936. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_additional_responses/test_tutorial004.py +0 -0
  937. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_additional_status_codes/__init__.py +0 -0
  938. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_additional_status_codes/test_tutorial001.py +0 -0
  939. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_advanced_middleware/__init__.py +0 -0
  940. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_advanced_middleware/test_tutorial001.py +0 -0
  941. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_advanced_middleware/test_tutorial002.py +0 -0
  942. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_advanced_middleware/test_tutorial003.py +0 -0
  943. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_async_tests/__init__.py +0 -0
  944. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_async_tests/test_main.py +0 -0
  945. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_background_tasks/__init__.py +0 -0
  946. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_background_tasks/test_tutorial001.py +0 -0
  947. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_background_tasks/test_tutorial002.py +0 -0
  948. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_behind_a_proxy/__init__.py +0 -0
  949. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_behind_a_proxy/test_tutorial001.py +0 -0
  950. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_behind_a_proxy/test_tutorial001_01.py +0 -0
  951. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_behind_a_proxy/test_tutorial002.py +0 -0
  952. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_behind_a_proxy/test_tutorial003.py +0 -0
  953. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_behind_a_proxy/test_tutorial004.py +0 -0
  954. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_bigger_applications/__init__.py +0 -0
  955. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_bigger_applications/test_main.py +0 -0
  956. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_body/__init__.py +0 -0
  957. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_body/test_tutorial001.py +0 -0
  958. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_body_fields/__init__.py +0 -0
  959. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_body_fields/test_tutorial001.py +0 -0
  960. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_body_multiple_params/__init__.py +0 -0
  961. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_body_multiple_params/test_tutorial001.py +0 -0
  962. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_body_multiple_params/test_tutorial003.py +0 -0
  963. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_body_nested_models/__init__.py +0 -0
  964. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_body_nested_models/test_tutorial009.py +0 -0
  965. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_body_updates/__init__.py +0 -0
  966. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_body_updates/test_tutorial001.py +0 -0
  967. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_conditional_openapi/__init__.py +0 -0
  968. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_conditional_openapi/test_tutorial001.py +0 -0
  969. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_configure_swagger_ui/__init__.py +0 -0
  970. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_configure_swagger_ui/test_tutorial001.py +0 -0
  971. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_configure_swagger_ui/test_tutorial002.py +0 -0
  972. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_configure_swagger_ui/test_tutorial003.py +0 -0
  973. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_cookie_param_models/__init__.py +0 -0
  974. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_cookie_param_models/test_tutorial001.py +0 -0
  975. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_cookie_param_models/test_tutorial002.py +0 -0
  976. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_cookie_params/__init__.py +0 -0
  977. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_cookie_params/test_tutorial001.py +0 -0
  978. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_cors/__init__.py +0 -0
  979. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_cors/test_tutorial001.py +0 -0
  980. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_custom_docs_ui/__init__.py +0 -0
  981. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_custom_docs_ui/test_tutorial001.py +0 -0
  982. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_custom_docs_ui/test_tutorial002.py +0 -0
  983. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_custom_request_and_route/__init__.py +0 -0
  984. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_custom_request_and_route/test_tutorial001.py +0 -0
  985. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_custom_request_and_route/test_tutorial002.py +0 -0
  986. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_custom_request_and_route/test_tutorial003.py +0 -0
  987. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_custom_response/__init__.py +0 -0
  988. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_custom_response/test_tutorial001.py +0 -0
  989. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_custom_response/test_tutorial001b.py +0 -0
  990. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_custom_response/test_tutorial004.py +0 -0
  991. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_custom_response/test_tutorial005.py +0 -0
  992. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_custom_response/test_tutorial006.py +0 -0
  993. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_custom_response/test_tutorial006b.py +0 -0
  994. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_custom_response/test_tutorial006c.py +0 -0
  995. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_custom_response/test_tutorial007.py +0 -0
  996. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_custom_response/test_tutorial008.py +0 -0
  997. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_custom_response/test_tutorial009.py +0 -0
  998. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_custom_response/test_tutorial009b.py +0 -0
  999. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_custom_response/test_tutorial009c.py +0 -0
  1000. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_dataclasses/__init__.py +0 -0
  1001. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_dataclasses/test_tutorial001.py +0 -0
  1002. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_dataclasses/test_tutorial002.py +0 -0
  1003. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_dataclasses/test_tutorial003.py +0 -0
  1004. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_dependencies/__init__.py +0 -0
  1005. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_dependencies/test_tutorial001.py +0 -0
  1006. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_dependencies/test_tutorial004.py +0 -0
  1007. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_dependencies/test_tutorial006.py +0 -0
  1008. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_dependencies/test_tutorial008b.py +0 -0
  1009. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_dependencies/test_tutorial008c.py +0 -0
  1010. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_dependencies/test_tutorial008d.py +0 -0
  1011. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_dependencies/test_tutorial012.py +0 -0
  1012. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_events/__init__.py +0 -0
  1013. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_events/test_tutorial001.py +0 -0
  1014. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_events/test_tutorial002.py +0 -0
  1015. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_events/test_tutorial003.py +0 -0
  1016. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_extending_openapi/__init__.py +0 -0
  1017. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_extending_openapi/test_tutorial001.py +0 -0
  1018. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_extra_data_types/__init__.py +0 -0
  1019. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_extra_data_types/test_tutorial001.py +0 -0
  1020. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_extra_models/__init__.py +0 -0
  1021. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_extra_models/test_tutorial003.py +0 -0
  1022. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_extra_models/test_tutorial004.py +0 -0
  1023. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_extra_models/test_tutorial005.py +0 -0
  1024. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_first_steps/__init__.py +0 -0
  1025. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_first_steps/test_tutorial001.py +0 -0
  1026. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_generate_clients/__init__.py +0 -0
  1027. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_generate_clients/test_tutorial003.py +0 -0
  1028. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_handling_errors/__init__.py +0 -0
  1029. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_handling_errors/test_tutorial001.py +0 -0
  1030. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_handling_errors/test_tutorial002.py +0 -0
  1031. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_handling_errors/test_tutorial003.py +0 -0
  1032. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_handling_errors/test_tutorial004.py +0 -0
  1033. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_handling_errors/test_tutorial005.py +0 -0
  1034. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_handling_errors/test_tutorial006.py +0 -0
  1035. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_header_param_models/__init__.py +0 -0
  1036. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_header_param_models/test_tutorial001.py +0 -0
  1037. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_header_param_models/test_tutorial002.py +0 -0
  1038. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_header_param_models/test_tutorial003.py +0 -0
  1039. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_header_params/__init__.py +0 -0
  1040. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_header_params/test_tutorial001.py +0 -0
  1041. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_header_params/test_tutorial002.py +0 -0
  1042. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_metadata/__init__.py +0 -0
  1043. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_metadata/test_tutorial001.py +0 -0
  1044. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_metadata/test_tutorial001_1.py +0 -0
  1045. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_metadata/test_tutorial004.py +0 -0
  1046. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_openapi_callbacks/__init__.py +0 -0
  1047. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_openapi_callbacks/test_tutorial001.py +0 -0
  1048. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_openapi_webhooks/__init__.py +0 -0
  1049. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_openapi_webhooks/test_tutorial001.py +0 -0
  1050. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_path_operation_advanced_configurations/__init__.py +0 -0
  1051. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_path_operation_advanced_configurations/test_tutorial001.py +0 -0
  1052. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_path_operation_advanced_configurations/test_tutorial002.py +0 -0
  1053. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_path_operation_advanced_configurations/test_tutorial003.py +0 -0
  1054. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_path_operation_advanced_configurations/test_tutorial004.py +0 -0
  1055. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_path_operation_advanced_configurations/test_tutorial005.py +0 -0
  1056. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_path_operation_advanced_configurations/test_tutorial006.py +0 -0
  1057. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_path_operation_advanced_configurations/test_tutorial007.py +0 -0
  1058. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_path_operation_advanced_configurations/test_tutorial007_pv1.py +0 -0
  1059. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_path_operation_configurations/__init__.py +0 -0
  1060. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_path_operation_configurations/test_tutorial002b.py +0 -0
  1061. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_path_operation_configurations/test_tutorial005.py +0 -0
  1062. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_path_operation_configurations/test_tutorial006.py +0 -0
  1063. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_path_params/__init__.py +0 -0
  1064. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_path_params/test_tutorial004.py +0 -0
  1065. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_path_params/test_tutorial005.py +0 -0
  1066. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_query_param_models/__init__.py +0 -0
  1067. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_query_param_models/test_tutorial001.py +0 -0
  1068. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_query_param_models/test_tutorial002.py +0 -0
  1069. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_query_params/__init__.py +0 -0
  1070. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_query_params/test_tutorial005.py +0 -0
  1071. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_query_params/test_tutorial006.py +0 -0
  1072. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_query_params_str_validations/__init__.py +0 -0
  1073. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_query_params_str_validations/test_tutorial010.py +0 -0
  1074. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_query_params_str_validations/test_tutorial011.py +0 -0
  1075. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_query_params_str_validations/test_tutorial012.py +0 -0
  1076. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_query_params_str_validations/test_tutorial013.py +0 -0
  1077. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_query_params_str_validations/test_tutorial014.py +0 -0
  1078. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_query_params_str_validations/test_tutorial015.py +0 -0
  1079. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_request_files/__init__.py +0 -0
  1080. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_request_files/test_tutorial001.py +0 -0
  1081. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_request_files/test_tutorial001_02.py +0 -0
  1082. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_request_files/test_tutorial001_03.py +0 -0
  1083. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_request_files/test_tutorial002.py +0 -0
  1084. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_request_files/test_tutorial003.py +0 -0
  1085. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_request_form_models/__init__.py +0 -0
  1086. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_request_form_models/test_tutorial001.py +0 -0
  1087. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_request_form_models/test_tutorial002.py +0 -0
  1088. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_request_form_models/test_tutorial002_pv1.py +0 -0
  1089. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_request_forms/__init__.py +0 -0
  1090. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_request_forms/test_tutorial001.py +0 -0
  1091. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_request_forms_and_files/__init__.py +0 -0
  1092. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_request_forms_and_files/test_tutorial001.py +0 -0
  1093. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_response_change_status_code/__init__.py +0 -0
  1094. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_response_change_status_code/test_tutorial001.py +0 -0
  1095. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_response_cookies/__init__.py +0 -0
  1096. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_response_cookies/test_tutorial001.py +0 -0
  1097. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_response_cookies/test_tutorial002.py +0 -0
  1098. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_response_headers/__init__.py +0 -0
  1099. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_response_headers/test_tutorial001.py +0 -0
  1100. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_response_headers/test_tutorial002.py +0 -0
  1101. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_response_model/__init__.py +0 -0
  1102. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_response_model/test_tutorial003_01.py +0 -0
  1103. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_response_model/test_tutorial003_02.py +0 -0
  1104. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_response_model/test_tutorial003_03.py +0 -0
  1105. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_response_model/test_tutorial003_05.py +0 -0
  1106. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_response_model/test_tutorial004.py +0 -0
  1107. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_response_model/test_tutorial005.py +0 -0
  1108. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_response_model/test_tutorial006.py +0 -0
  1109. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_schema_extra_example/__init__.py +0 -0
  1110. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_schema_extra_example/test_tutorial001.py +0 -0
  1111. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_schema_extra_example/test_tutorial001_pv1.py +0 -0
  1112. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_schema_extra_example/test_tutorial004.py +0 -0
  1113. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_schema_extra_example/test_tutorial005.py +0 -0
  1114. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_security/__init__.py +0 -0
  1115. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_security/test_tutorial001.py +0 -0
  1116. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_security/test_tutorial003.py +0 -0
  1117. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_security/test_tutorial005.py +0 -0
  1118. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_security/test_tutorial006.py +0 -0
  1119. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_separate_openapi_schemas/__init__.py +0 -0
  1120. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_separate_openapi_schemas/test_tutorial001.py +0 -0
  1121. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_separate_openapi_schemas/test_tutorial002.py +0 -0
  1122. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_settings/__init__.py +0 -0
  1123. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_settings/test_app02.py +0 -0
  1124. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_settings/test_tutorial001.py +0 -0
  1125. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_sql_databases/__init__.py +0 -0
  1126. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_sql_databases/test_tutorial001.py +0 -0
  1127. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_sql_databases/test_tutorial002.py +0 -0
  1128. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_sub_applications/__init__.py +0 -0
  1129. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_sub_applications/test_tutorial001.py +0 -0
  1130. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_templates/__init__.py +0 -0
  1131. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_templates/test_tutorial001.py +0 -0
  1132. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_testing/__init__.py +0 -0
  1133. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_testing/test_main.py +0 -0
  1134. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_testing/test_main_b.py +0 -0
  1135. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_testing/test_tutorial001.py +0 -0
  1136. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_testing/test_tutorial002.py +0 -0
  1137. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_testing/test_tutorial003.py +0 -0
  1138. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_testing/test_tutorial004.py +0 -0
  1139. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_testing_dependencies/__init__.py +0 -0
  1140. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_testing_dependencies/test_tutorial001.py +0 -0
  1141. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_websockets/__init__.py +0 -0
  1142. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_websockets/test_tutorial001.py +0 -0
  1143. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_websockets/test_tutorial002.py +0 -0
  1144. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_websockets/test_tutorial003.py +0 -0
  1145. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_websockets/test_tutorial003_py39.py +0 -0
  1146. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_wsgi/__init__.py +0 -0
  1147. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_tutorial/test_wsgi/test_tutorial001.py +0 -0
  1148. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_typing_python39.py +0 -0
  1149. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_union_body.py +0 -0
  1150. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_union_forms.py +0 -0
  1151. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_union_inherited_body.py +0 -0
  1152. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_validate_response.py +0 -0
  1153. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_validate_response_dataclass.py +0 -0
  1154. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_validate_response_recursive/__init__.py +0 -0
  1155. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_validate_response_recursive/app.py +0 -0
  1156. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_validate_response_recursive/test_validate_response_recursive.py +0 -0
  1157. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_webhooks_security.py +0 -0
  1158. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_ws_dependencies.py +0 -0
  1159. {fastapi-0.116.2 → fastapi-0.117.1}/tests/test_ws_router.py +0 -0
  1160. {fastapi-0.116.2 → fastapi-0.117.1}/tests/utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: fastapi
3
- Version: 0.116.2
3
+ Version: 0.117.1
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
@@ -43,21 +43,21 @@ Requires-Dist: pydantic!=1.8,!=1.8.1,!=2.0.0,!=2.0.1,!=2.1.0,<3.0.0,>=1.7.4
43
43
  Requires-Dist: typing-extensions>=4.8.0
44
44
  Provides-Extra: standard
45
45
  Requires-Dist: fastapi-cli[standard]>=0.0.8; extra == "standard"
46
- Requires-Dist: httpx>=0.23.0; extra == "standard"
46
+ Requires-Dist: httpx<1.0.0,>=0.23.0; extra == "standard"
47
47
  Requires-Dist: jinja2>=3.1.5; extra == "standard"
48
48
  Requires-Dist: python-multipart>=0.0.18; extra == "standard"
49
49
  Requires-Dist: email-validator>=2.0.0; extra == "standard"
50
50
  Requires-Dist: uvicorn[standard]>=0.12.0; extra == "standard"
51
51
  Provides-Extra: standard-no-fastapi-cloud-cli
52
52
  Requires-Dist: fastapi-cli[standard-no-fastapi-cloud-cli]>=0.0.8; extra == "standard-no-fastapi-cloud-cli"
53
- Requires-Dist: httpx>=0.23.0; extra == "standard-no-fastapi-cloud-cli"
53
+ Requires-Dist: httpx<1.0.0,>=0.23.0; extra == "standard-no-fastapi-cloud-cli"
54
54
  Requires-Dist: jinja2>=3.1.5; extra == "standard-no-fastapi-cloud-cli"
55
55
  Requires-Dist: python-multipart>=0.0.18; extra == "standard-no-fastapi-cloud-cli"
56
56
  Requires-Dist: email-validator>=2.0.0; extra == "standard-no-fastapi-cloud-cli"
57
57
  Requires-Dist: uvicorn[standard]>=0.12.0; extra == "standard-no-fastapi-cloud-cli"
58
58
  Provides-Extra: all
59
59
  Requires-Dist: fastapi-cli[standard]>=0.0.8; extra == "all"
60
- Requires-Dist: httpx>=0.23.0; extra == "all"
60
+ Requires-Dist: httpx<1.0.0,>=0.23.0; extra == "all"
61
61
  Requires-Dist: jinja2>=3.1.5; extra == "all"
62
62
  Requires-Dist: python-multipart>=0.0.18; extra == "all"
63
63
  Requires-Dist: itsdangerous>=1.1.0; extra == "all"
@@ -114,7 +114,7 @@ The key features are:
114
114
 
115
115
  <small>* estimation based on tests on an internal development team, building production applications.</small>
116
116
 
117
- ## Sponsors { #sponsors }
117
+ ## Sponsors
118
118
 
119
119
  <!-- sponsors -->
120
120
 
@@ -139,7 +139,7 @@ The key features are:
139
139
 
140
140
  <a href="https://fastapi.tiangolo.com/fastapi-people/#sponsors" class="external-link" target="_blank">Other sponsors</a>
141
141
 
142
- ## Opinions { #opinions }
142
+ ## Opinions
143
143
 
144
144
  "_[...] I'm using **FastAPI** a ton these days. [...] I'm actually planning to use it for all of my team's **ML services at Microsoft**. Some of them are getting integrated into the core **Windows** product and some **Office** products._"
145
145
 
@@ -185,7 +185,7 @@ The key features are:
185
185
 
186
186
  ---
187
187
 
188
- ## **Typer**, the FastAPI of CLIs { #typer-the-fastapi-of-clis }
188
+ ## **Typer**, the FastAPI of CLIs
189
189
 
190
190
  <a href="https://typer.tiangolo.com" target="_blank"><img src="https://typer.tiangolo.com/img/logo-margin/logo-margin-vector.svg" style="width: 20%;"></a>
191
191
 
@@ -193,14 +193,14 @@ If you are building a <abbr title="Command Line Interface">CLI</abbr> app to be
193
193
 
194
194
  **Typer** is FastAPI's little sibling. And it's intended to be the **FastAPI of CLIs**. ⌨️ 🚀
195
195
 
196
- ## Requirements { #requirements }
196
+ ## Requirements
197
197
 
198
198
  FastAPI stands on the shoulders of giants:
199
199
 
200
200
  * <a href="https://www.starlette.io/" class="external-link" target="_blank">Starlette</a> for the web parts.
201
201
  * <a href="https://docs.pydantic.dev/" class="external-link" target="_blank">Pydantic</a> for the data parts.
202
202
 
203
- ## Installation { #installation }
203
+ ## Installation
204
204
 
205
205
  Create and activate a <a href="https://fastapi.tiangolo.com/virtual-environments/" class="external-link" target="_blank">virtual environment</a> and then install FastAPI:
206
206
 
@@ -216,9 +216,9 @@ $ pip install "fastapi[standard]"
216
216
 
217
217
  **Note**: Make sure you put `"fastapi[standard]"` in quotes to ensure it works in all terminals.
218
218
 
219
- ## Example { #example }
219
+ ## Example
220
220
 
221
- ### Create it { #create-it }
221
+ ### Create it
222
222
 
223
223
  Create a file `main.py` with:
224
224
 
@@ -269,7 +269,7 @@ If you don't know, check the _"In a hurry?"_ section about <a href="https://fast
269
269
 
270
270
  </details>
271
271
 
272
- ### Run it { #run-it }
272
+ ### Run it
273
273
 
274
274
  Run the server with:
275
275
 
@@ -311,7 +311,7 @@ You can read more about it in the <a href="https://fastapi.tiangolo.com/fastapi-
311
311
 
312
312
  </details>
313
313
 
314
- ### Check it { #check-it }
314
+ ### Check it
315
315
 
316
316
  Open your browser at <a href="http://127.0.0.1:8000/items/5?q=somequery" class="external-link" target="_blank">http://127.0.0.1:8000/items/5?q=somequery</a>.
317
317
 
@@ -328,7 +328,7 @@ You already created an API that:
328
328
  * The _path_ `/items/{item_id}` has a _path parameter_ `item_id` that should be an `int`.
329
329
  * The _path_ `/items/{item_id}` has an optional `str` _query parameter_ `q`.
330
330
 
331
- ### Interactive API docs { #interactive-api-docs }
331
+ ### Interactive API docs
332
332
 
333
333
  Now go to <a href="http://127.0.0.1:8000/docs" class="external-link" target="_blank">http://127.0.0.1:8000/docs</a>.
334
334
 
@@ -336,7 +336,7 @@ You will see the automatic interactive API documentation (provided by <a href="h
336
336
 
337
337
  ![Swagger UI](https://fastapi.tiangolo.com/img/index/index-01-swagger-ui-simple.png)
338
338
 
339
- ### Alternative API docs { #alternative-api-docs }
339
+ ### Alternative API docs
340
340
 
341
341
  And now, go to <a href="http://127.0.0.1:8000/redoc" class="external-link" target="_blank">http://127.0.0.1:8000/redoc</a>.
342
342
 
@@ -344,7 +344,7 @@ You will see the alternative automatic documentation (provided by <a href="https
344
344
 
345
345
  ![ReDoc](https://fastapi.tiangolo.com/img/index/index-02-redoc-simple.png)
346
346
 
347
- ## Example upgrade { #example-upgrade }
347
+ ## Example upgrade
348
348
 
349
349
  Now modify the file `main.py` to receive a body from a `PUT` request.
350
350
 
@@ -382,7 +382,7 @@ def update_item(item_id: int, item: Item):
382
382
 
383
383
  The `fastapi dev` server should reload automatically.
384
384
 
385
- ### Interactive API docs upgrade { #interactive-api-docs-upgrade }
385
+ ### Interactive API docs upgrade
386
386
 
387
387
  Now go to <a href="http://127.0.0.1:8000/docs" class="external-link" target="_blank">http://127.0.0.1:8000/docs</a>.
388
388
 
@@ -398,7 +398,7 @@ Now go to <a href="http://127.0.0.1:8000/docs" class="external-link" target="_bl
398
398
 
399
399
  ![Swagger UI interaction](https://fastapi.tiangolo.com/img/index/index-05-swagger-04.png)
400
400
 
401
- ### Alternative API docs upgrade { #alternative-api-docs-upgrade }
401
+ ### Alternative API docs upgrade
402
402
 
403
403
  And now, go to <a href="http://127.0.0.1:8000/redoc" class="external-link" target="_blank">http://127.0.0.1:8000/redoc</a>.
404
404
 
@@ -406,7 +406,7 @@ And now, go to <a href="http://127.0.0.1:8000/redoc" class="external-link" targe
406
406
 
407
407
  ![ReDoc](https://fastapi.tiangolo.com/img/index/index-06-redoc-02.png)
408
408
 
409
- ### Recap { #recap }
409
+ ### Recap
410
410
 
411
411
  In summary, you declare **once** the types of parameters, body, etc. as function parameters.
412
412
 
@@ -518,17 +518,17 @@ For a more complete example including more features, see the <a href="https://fa
518
518
  * **Cookie Sessions**
519
519
  * ...and more.
520
520
 
521
- ## Performance { #performance }
521
+ ## Performance
522
522
 
523
523
  Independent TechEmpower benchmarks show **FastAPI** applications running under Uvicorn as <a href="https://www.techempower.com/benchmarks/#section=test&runid=7464e520-0dc2-473d-bd34-dbdfd7e85911&hw=ph&test=query&l=zijzen-7" class="external-link" target="_blank">one of the fastest Python frameworks available</a>, only below Starlette and Uvicorn themselves (used internally by FastAPI). (*)
524
524
 
525
525
  To understand more about it, see the section <a href="https://fastapi.tiangolo.com/benchmarks/" class="internal-link" target="_blank">Benchmarks</a>.
526
526
 
527
- ## Dependencies { #dependencies }
527
+ ## Dependencies
528
528
 
529
529
  FastAPI depends on Pydantic and Starlette.
530
530
 
531
- ### `standard` Dependencies { #standard-dependencies }
531
+ ### `standard` Dependencies
532
532
 
533
533
  When you install FastAPI with `pip install "fastapi[standard]"` it comes with the `standard` group of optional dependencies:
534
534
 
@@ -548,15 +548,15 @@ Used by FastAPI:
548
548
  * `fastapi-cli[standard]` - to provide the `fastapi` command.
549
549
  * This includes `fastapi-cloud-cli`, which allows you to deploy your FastAPI application to <a href="https://fastapicloud.com" class="external-link" target="_blank">FastAPI Cloud</a>.
550
550
 
551
- ### Without `standard` Dependencies { #without-standard-dependencies }
551
+ ### Without `standard` Dependencies
552
552
 
553
553
  If you don't want to include the `standard` optional dependencies, you can install with `pip install fastapi` instead of `pip install "fastapi[standard]"`.
554
554
 
555
- ### Without `fastapi-cloud-cli` { #without-fastapi-cloud-cli }
555
+ ### Without `fastapi-cloud-cli`
556
556
 
557
557
  If you want to install FastAPI with the standard dependencies but without the `fastapi-cloud-cli`, you can install with `pip install "fastapi[standard-no-fastapi-cloud-cli]"`.
558
558
 
559
- ### Additional Optional Dependencies { #additional-optional-dependencies }
559
+ ### Additional Optional Dependencies
560
560
 
561
561
  There are some additional dependencies you might want to install.
562
562
 
@@ -570,6 +570,6 @@ Additional optional FastAPI dependencies:
570
570
  * <a href="https://github.com/ijl/orjson" target="_blank"><code>orjson</code></a> - Required if you want to use `ORJSONResponse`.
571
571
  * <a href="https://github.com/esnme/ultrajson" target="_blank"><code>ujson</code></a> - Required if you want to use `UJSONResponse`.
572
572
 
573
- ## License { #license }
573
+ ## License
574
574
 
575
575
  This project is licensed under the terms of the MIT license.
@@ -42,7 +42,7 @@ The key features are:
42
42
 
43
43
  <small>* estimation based on tests on an internal development team, building production applications.</small>
44
44
 
45
- ## Sponsors { #sponsors }
45
+ ## Sponsors
46
46
 
47
47
  <!-- sponsors -->
48
48
 
@@ -67,7 +67,7 @@ The key features are:
67
67
 
68
68
  <a href="https://fastapi.tiangolo.com/fastapi-people/#sponsors" class="external-link" target="_blank">Other sponsors</a>
69
69
 
70
- ## Opinions { #opinions }
70
+ ## Opinions
71
71
 
72
72
  "_[...] I'm using **FastAPI** a ton these days. [...] I'm actually planning to use it for all of my team's **ML services at Microsoft**. Some of them are getting integrated into the core **Windows** product and some **Office** products._"
73
73
 
@@ -113,7 +113,7 @@ The key features are:
113
113
 
114
114
  ---
115
115
 
116
- ## **Typer**, the FastAPI of CLIs { #typer-the-fastapi-of-clis }
116
+ ## **Typer**, the FastAPI of CLIs
117
117
 
118
118
  <a href="https://typer.tiangolo.com" target="_blank"><img src="https://typer.tiangolo.com/img/logo-margin/logo-margin-vector.svg" style="width: 20%;"></a>
119
119
 
@@ -121,14 +121,14 @@ If you are building a <abbr title="Command Line Interface">CLI</abbr> app to be
121
121
 
122
122
  **Typer** is FastAPI's little sibling. And it's intended to be the **FastAPI of CLIs**. ⌨️ 🚀
123
123
 
124
- ## Requirements { #requirements }
124
+ ## Requirements
125
125
 
126
126
  FastAPI stands on the shoulders of giants:
127
127
 
128
128
  * <a href="https://www.starlette.io/" class="external-link" target="_blank">Starlette</a> for the web parts.
129
129
  * <a href="https://docs.pydantic.dev/" class="external-link" target="_blank">Pydantic</a> for the data parts.
130
130
 
131
- ## Installation { #installation }
131
+ ## Installation
132
132
 
133
133
  Create and activate a <a href="https://fastapi.tiangolo.com/virtual-environments/" class="external-link" target="_blank">virtual environment</a> and then install FastAPI:
134
134
 
@@ -144,9 +144,9 @@ $ pip install "fastapi[standard]"
144
144
 
145
145
  **Note**: Make sure you put `"fastapi[standard]"` in quotes to ensure it works in all terminals.
146
146
 
147
- ## Example { #example }
147
+ ## Example
148
148
 
149
- ### Create it { #create-it }
149
+ ### Create it
150
150
 
151
151
  Create a file `main.py` with:
152
152
 
@@ -197,7 +197,7 @@ If you don't know, check the _"In a hurry?"_ section about <a href="https://fast
197
197
 
198
198
  </details>
199
199
 
200
- ### Run it { #run-it }
200
+ ### Run it
201
201
 
202
202
  Run the server with:
203
203
 
@@ -239,7 +239,7 @@ You can read more about it in the <a href="https://fastapi.tiangolo.com/fastapi-
239
239
 
240
240
  </details>
241
241
 
242
- ### Check it { #check-it }
242
+ ### Check it
243
243
 
244
244
  Open your browser at <a href="http://127.0.0.1:8000/items/5?q=somequery" class="external-link" target="_blank">http://127.0.0.1:8000/items/5?q=somequery</a>.
245
245
 
@@ -256,7 +256,7 @@ You already created an API that:
256
256
  * The _path_ `/items/{item_id}` has a _path parameter_ `item_id` that should be an `int`.
257
257
  * The _path_ `/items/{item_id}` has an optional `str` _query parameter_ `q`.
258
258
 
259
- ### Interactive API docs { #interactive-api-docs }
259
+ ### Interactive API docs
260
260
 
261
261
  Now go to <a href="http://127.0.0.1:8000/docs" class="external-link" target="_blank">http://127.0.0.1:8000/docs</a>.
262
262
 
@@ -264,7 +264,7 @@ You will see the automatic interactive API documentation (provided by <a href="h
264
264
 
265
265
  ![Swagger UI](https://fastapi.tiangolo.com/img/index/index-01-swagger-ui-simple.png)
266
266
 
267
- ### Alternative API docs { #alternative-api-docs }
267
+ ### Alternative API docs
268
268
 
269
269
  And now, go to <a href="http://127.0.0.1:8000/redoc" class="external-link" target="_blank">http://127.0.0.1:8000/redoc</a>.
270
270
 
@@ -272,7 +272,7 @@ You will see the alternative automatic documentation (provided by <a href="https
272
272
 
273
273
  ![ReDoc](https://fastapi.tiangolo.com/img/index/index-02-redoc-simple.png)
274
274
 
275
- ## Example upgrade { #example-upgrade }
275
+ ## Example upgrade
276
276
 
277
277
  Now modify the file `main.py` to receive a body from a `PUT` request.
278
278
 
@@ -310,7 +310,7 @@ def update_item(item_id: int, item: Item):
310
310
 
311
311
  The `fastapi dev` server should reload automatically.
312
312
 
313
- ### Interactive API docs upgrade { #interactive-api-docs-upgrade }
313
+ ### Interactive API docs upgrade
314
314
 
315
315
  Now go to <a href="http://127.0.0.1:8000/docs" class="external-link" target="_blank">http://127.0.0.1:8000/docs</a>.
316
316
 
@@ -326,7 +326,7 @@ Now go to <a href="http://127.0.0.1:8000/docs" class="external-link" target="_bl
326
326
 
327
327
  ![Swagger UI interaction](https://fastapi.tiangolo.com/img/index/index-05-swagger-04.png)
328
328
 
329
- ### Alternative API docs upgrade { #alternative-api-docs-upgrade }
329
+ ### Alternative API docs upgrade
330
330
 
331
331
  And now, go to <a href="http://127.0.0.1:8000/redoc" class="external-link" target="_blank">http://127.0.0.1:8000/redoc</a>.
332
332
 
@@ -334,7 +334,7 @@ And now, go to <a href="http://127.0.0.1:8000/redoc" class="external-link" targe
334
334
 
335
335
  ![ReDoc](https://fastapi.tiangolo.com/img/index/index-06-redoc-02.png)
336
336
 
337
- ### Recap { #recap }
337
+ ### Recap
338
338
 
339
339
  In summary, you declare **once** the types of parameters, body, etc. as function parameters.
340
340
 
@@ -446,17 +446,17 @@ For a more complete example including more features, see the <a href="https://fa
446
446
  * **Cookie Sessions**
447
447
  * ...and more.
448
448
 
449
- ## Performance { #performance }
449
+ ## Performance
450
450
 
451
451
  Independent TechEmpower benchmarks show **FastAPI** applications running under Uvicorn as <a href="https://www.techempower.com/benchmarks/#section=test&runid=7464e520-0dc2-473d-bd34-dbdfd7e85911&hw=ph&test=query&l=zijzen-7" class="external-link" target="_blank">one of the fastest Python frameworks available</a>, only below Starlette and Uvicorn themselves (used internally by FastAPI). (*)
452
452
 
453
453
  To understand more about it, see the section <a href="https://fastapi.tiangolo.com/benchmarks/" class="internal-link" target="_blank">Benchmarks</a>.
454
454
 
455
- ## Dependencies { #dependencies }
455
+ ## Dependencies
456
456
 
457
457
  FastAPI depends on Pydantic and Starlette.
458
458
 
459
- ### `standard` Dependencies { #standard-dependencies }
459
+ ### `standard` Dependencies
460
460
 
461
461
  When you install FastAPI with `pip install "fastapi[standard]"` it comes with the `standard` group of optional dependencies:
462
462
 
@@ -476,15 +476,15 @@ Used by FastAPI:
476
476
  * `fastapi-cli[standard]` - to provide the `fastapi` command.
477
477
  * This includes `fastapi-cloud-cli`, which allows you to deploy your FastAPI application to <a href="https://fastapicloud.com" class="external-link" target="_blank">FastAPI Cloud</a>.
478
478
 
479
- ### Without `standard` Dependencies { #without-standard-dependencies }
479
+ ### Without `standard` Dependencies
480
480
 
481
481
  If you don't want to include the `standard` optional dependencies, you can install with `pip install fastapi` instead of `pip install "fastapi[standard]"`.
482
482
 
483
- ### Without `fastapi-cloud-cli` { #without-fastapi-cloud-cli }
483
+ ### Without `fastapi-cloud-cli`
484
484
 
485
485
  If you want to install FastAPI with the standard dependencies but without the `fastapi-cloud-cli`, you can install with `pip install "fastapi[standard-no-fastapi-cloud-cli]"`.
486
486
 
487
- ### Additional Optional Dependencies { #additional-optional-dependencies }
487
+ ### Additional Optional Dependencies
488
488
 
489
489
  There are some additional dependencies you might want to install.
490
490
 
@@ -498,6 +498,6 @@ Additional optional FastAPI dependencies:
498
498
  * <a href="https://github.com/ijl/orjson" target="_blank"><code>orjson</code></a> - Required if you want to use `ORJSONResponse`.
499
499
  * <a href="https://github.com/esnme/ultrajson" target="_blank"><code>ujson</code></a> - Required if you want to use `UJSONResponse`.
500
500
 
501
- ## License { #license }
501
+ ## License
502
502
 
503
503
  This project is licensed under the terms of the MIT license.
@@ -1,6 +1,6 @@
1
1
  """FastAPI framework, high performance, easy to learn, fast to code, ready for production"""
2
2
 
3
- __version__ = "0.116.2"
3
+ __version__ = "0.117.1"
4
4
 
5
5
  from starlette import status as status
6
6
 
@@ -393,9 +393,10 @@ else:
393
393
  )
394
394
  definitions.update(m_definitions)
395
395
  model_name = model_name_map[model]
396
+ definitions[model_name] = m_schema
397
+ for m_schema in definitions.values():
396
398
  if "description" in m_schema:
397
399
  m_schema["description"] = m_schema["description"].split("\f")[0]
398
- definitions[model_name] = m_schema
399
400
  return definitions
400
401
 
401
402
  def is_pv1_scalar_field(field: ModelField) -> bool:
@@ -810,6 +810,32 @@ class FastAPI(Starlette):
810
810
  """
811
811
  ),
812
812
  ] = True,
813
+ openapi_external_docs: Annotated[
814
+ Optional[Dict[str, Any]],
815
+ Doc(
816
+ """
817
+ This field allows you to provide additional external documentation links.
818
+ If provided, it must be a dictionary containing:
819
+
820
+ * `description`: A brief description of the external documentation.
821
+ * `url`: The URL pointing to the external documentation. The value **MUST**
822
+ be a valid URL format.
823
+
824
+ **Example**:
825
+
826
+ ```python
827
+ from fastapi import FastAPI
828
+
829
+ external_docs = {
830
+ "description": "Detailed API Reference",
831
+ "url": "https://example.com/api-docs",
832
+ }
833
+
834
+ app = FastAPI(openapi_external_docs=external_docs)
835
+ ```
836
+ """
837
+ ),
838
+ ] = None,
813
839
  **extra: Annotated[
814
840
  Any,
815
841
  Doc(
@@ -838,6 +864,7 @@ class FastAPI(Starlette):
838
864
  self.swagger_ui_parameters = swagger_ui_parameters
839
865
  self.servers = servers or []
840
866
  self.separate_input_output_schemas = separate_input_output_schemas
867
+ self.openapi_external_docs = openapi_external_docs
841
868
  self.extra = extra
842
869
  self.openapi_version: Annotated[
843
870
  str,
@@ -992,6 +1019,7 @@ class FastAPI(Starlette):
992
1019
  tags=self.openapi_tags,
993
1020
  servers=self.servers,
994
1021
  separate_input_output_schemas=self.separate_input_output_schemas,
1022
+ external_docs=self.openapi_external_docs,
995
1023
  )
996
1024
  return self.openapi_schema
997
1025
 
@@ -1,4 +1,5 @@
1
1
  import inspect
2
+ import sys
2
3
  from contextlib import AsyncExitStack, contextmanager
3
4
  from copy import copy, deepcopy
4
5
  from dataclasses import dataclass
@@ -73,6 +74,11 @@ from starlette.responses import Response
73
74
  from starlette.websockets import WebSocket
74
75
  from typing_extensions import Annotated, get_args, get_origin
75
76
 
77
+ if sys.version_info >= (3, 13): # pragma: no cover
78
+ from inspect import iscoroutinefunction
79
+ else: # pragma: no cover
80
+ from asyncio import iscoroutinefunction
81
+
76
82
  multipart_not_installed_error = (
77
83
  'Form data requires "python-multipart" to be installed. \n'
78
84
  'You can install "python-multipart" with: \n\n'
@@ -248,6 +254,8 @@ def get_typed_annotation(annotation: Any, globalns: Dict[str, Any]) -> Any:
248
254
  if isinstance(annotation, str):
249
255
  annotation = ForwardRef(annotation)
250
256
  annotation = evaluate_forwardref(annotation, globalns, globalns)
257
+ if annotation is type(None):
258
+ return None
251
259
  return annotation
252
260
 
253
261
 
@@ -529,11 +537,11 @@ def add_param_to_fields(*, field: ModelField, dependant: Dependant) -> None:
529
537
 
530
538
  def is_coroutine_callable(call: Callable[..., Any]) -> bool:
531
539
  if inspect.isroutine(call):
532
- return inspect.iscoroutinefunction(call)
540
+ return iscoroutinefunction(call)
533
541
  if inspect.isclass(call):
534
542
  return False
535
543
  dunder_call = getattr(call, "__call__", None) # noqa: B004
536
- return inspect.iscoroutinefunction(dunder_call)
544
+ return iscoroutinefunction(dunder_call)
537
545
 
538
546
 
539
547
  def is_async_gen_callable(call: Callable[..., Any]) -> bool:
@@ -587,7 +595,8 @@ async def solve_dependencies(
587
595
  response = Response()
588
596
  del response.headers["content-length"]
589
597
  response.status_code = None # type: ignore
590
- dependency_cache = dependency_cache or {}
598
+ if dependency_cache is None:
599
+ dependency_cache = {}
591
600
  sub_dependant: Dependant
592
601
  for sub_dependant in dependant.dependencies:
593
602
  sub_dependant.call = cast(Callable[..., Any], sub_dependant.call)
@@ -624,7 +633,6 @@ async def solve_dependencies(
624
633
  embed_body_fields=embed_body_fields,
625
634
  )
626
635
  background_tasks = solved_result.background_tasks
627
- dependency_cache.update(solved_result.dependency_cache)
628
636
  if solved_result.errors:
629
637
  errors.extend(solved_result.errors)
630
638
  continue
@@ -864,20 +872,19 @@ async def _extract_form_body(
864
872
  received_body: FormData,
865
873
  ) -> Dict[str, Any]:
866
874
  values = {}
867
- first_field = body_fields[0]
868
- first_field_info = first_field.field_info
869
875
 
870
876
  for field in body_fields:
871
877
  value = _get_multidict_value(field, received_body)
878
+ field_info = field.field_info
872
879
  if (
873
- isinstance(first_field_info, params.File)
880
+ isinstance(field_info, params.File)
874
881
  and is_bytes_field(field)
875
882
  and isinstance(value, UploadFile)
876
883
  ):
877
884
  value = await value.read()
878
885
  elif (
879
886
  is_bytes_sequence_field(field)
880
- and isinstance(first_field_info, params.File)
887
+ and isinstance(field_info, params.File)
881
888
  and value_is_sequence(value)
882
889
  ):
883
890
  # For types
@@ -916,7 +923,11 @@ async def request_body_to_args(
916
923
 
917
924
  fields_to_extract: List[ModelField] = body_fields
918
925
 
919
- if single_not_embedded_field and lenient_issubclass(first_field.type_, BaseModel):
926
+ if (
927
+ single_not_embedded_field
928
+ and lenient_issubclass(first_field.type_, BaseModel)
929
+ and isinstance(received_body, FormData)
930
+ ):
920
931
  fields_to_extract = get_cached_model_fields(first_field.type_)
921
932
 
922
933
  if isinstance(received_body, FormData):
@@ -219,7 +219,7 @@ def jsonable_encoder(
219
219
  if not PYDANTIC_V2:
220
220
  encoders = getattr(obj.__config__, "json_encoders", {}) # type: ignore[attr-defined]
221
221
  if custom_encoder:
222
- encoders.update(custom_encoder)
222
+ encoders = {**encoders, **custom_encoder}
223
223
  obj_dict = _model_dump(
224
224
  obj,
225
225
  mode="json",
@@ -241,6 +241,7 @@ def jsonable_encoder(
241
241
  sqlalchemy_safe=sqlalchemy_safe,
242
242
  )
243
243
  if dataclasses.is_dataclass(obj):
244
+ assert not isinstance(obj, type)
244
245
  obj_dict = dataclasses.asdict(obj)
245
246
  return jsonable_encoder(
246
247
  obj_dict,
@@ -121,6 +121,12 @@ class ExternalDocumentation(BaseModelWithConfig):
121
121
  url: AnyUrl
122
122
 
123
123
 
124
+ # Ref JSON Schema 2020-12: https://json-schema.org/draft/2020-12/json-schema-validation#name-type
125
+ SchemaType = Literal[
126
+ "array", "boolean", "integer", "null", "number", "object", "string"
127
+ ]
128
+
129
+
124
130
  class Schema(BaseModelWithConfig):
125
131
  # Ref: JSON Schema 2020-12: https://json-schema.org/draft/2020-12/json-schema-core.html#name-the-json-schema-core-vocabu
126
132
  # Core Vocabulary
@@ -145,7 +151,7 @@ class Schema(BaseModelWithConfig):
145
151
  dependentSchemas: Optional[Dict[str, "SchemaOrBool"]] = None
146
152
  prefixItems: Optional[List["SchemaOrBool"]] = None
147
153
  # TODO: uncomment and remove below when deprecating Pydantic v1
148
- # It generales a list of schemas for tuples, before prefixItems was available
154
+ # It generates a list of schemas for tuples, before prefixItems was available
149
155
  # items: Optional["SchemaOrBool"] = None
150
156
  items: Optional[Union["SchemaOrBool", List["SchemaOrBool"]]] = None
151
157
  contains: Optional["SchemaOrBool"] = None
@@ -157,7 +163,7 @@ class Schema(BaseModelWithConfig):
157
163
  unevaluatedProperties: Optional["SchemaOrBool"] = None
158
164
  # Ref: JSON Schema Validation 2020-12: https://json-schema.org/draft/2020-12/json-schema-validation.html#name-a-vocabulary-for-structural
159
165
  # A Vocabulary for Structural Validation
160
- type: Optional[str] = None
166
+ type: Optional[Union[SchemaType, List[SchemaType]]] = None
161
167
  enum: Optional[List[Any]] = None
162
168
  const: Optional[Any] = None
163
169
  multipleOf: Optional[float] = Field(default=None, gt=0)
@@ -488,6 +488,7 @@ def get_openapi(
488
488
  contact: Optional[Dict[str, Union[str, Any]]] = None,
489
489
  license_info: Optional[Dict[str, Union[str, Any]]] = None,
490
490
  separate_input_output_schemas: bool = True,
491
+ external_docs: Optional[Dict[str, Any]] = None,
491
492
  ) -> Dict[str, Any]:
492
493
  info: Dict[str, Any] = {"title": title, "version": version}
493
494
  if summary:
@@ -565,4 +566,6 @@ def get_openapi(
565
566
  output["webhooks"] = webhook_paths
566
567
  if tags:
567
568
  output["tags"] = tags
569
+ if external_docs:
570
+ output["externalDocs"] = external_docs
568
571
  return jsonable_encoder(OpenAPI(**output), by_alias=True, exclude_none=True) # type: ignore
@@ -1,8 +1,8 @@
1
- import asyncio
2
1
  import dataclasses
3
2
  import email.message
4
3
  import inspect
5
4
  import json
5
+ import sys
6
6
  from contextlib import AsyncExitStack, asynccontextmanager
7
7
  from enum import Enum, IntEnum
8
8
  from typing import (
@@ -76,6 +76,11 @@ from starlette.types import AppType, ASGIApp, Lifespan, Scope
76
76
  from starlette.websockets import WebSocket
77
77
  from typing_extensions import Annotated, Doc, deprecated
78
78
 
79
+ if sys.version_info >= (3, 13): # pragma: no cover
80
+ from inspect import iscoroutinefunction
81
+ else: # pragma: no cover
82
+ from asyncio import iscoroutinefunction
83
+
79
84
 
80
85
  def _prepare_response_content(
81
86
  res: Any,
@@ -120,6 +125,7 @@ def _prepare_response_content(
120
125
  for k, v in res.items()
121
126
  }
122
127
  elif dataclasses.is_dataclass(res):
128
+ assert not isinstance(res, type)
123
129
  return dataclasses.asdict(res)
124
130
  return res
125
131
 
@@ -231,7 +237,7 @@ def get_request_handler(
231
237
  embed_body_fields: bool = False,
232
238
  ) -> Callable[[Request], Coroutine[Any, Any, Response]]:
233
239
  assert dependant.call is not None, "dependant.call must be a function"
234
- is_coroutine = asyncio.iscoroutinefunction(dependant.call)
240
+ is_coroutine = iscoroutinefunction(dependant.call)
235
241
  is_body_form = body_field and isinstance(body_field.field_info, params.Form)
236
242
  if isinstance(response_class, DefaultPlaceholder):
237
243
  actual_response_class: Type[Response] = response_class.value
@@ -100,7 +100,7 @@ class APIKeyQuery(APIKeyBase):
100
100
  ] = True,
101
101
  ):
102
102
  self.model: APIKey = APIKey(
103
- **{"in": APIKeyIn.query}, # type: ignore[arg-type]
103
+ **{"in": APIKeyIn.query},
104
104
  name=name,
105
105
  description=description,
106
106
  )
@@ -188,7 +188,7 @@ class APIKeyHeader(APIKeyBase):
188
188
  ] = True,
189
189
  ):
190
190
  self.model: APIKey = APIKey(
191
- **{"in": APIKeyIn.header}, # type: ignore[arg-type]
191
+ **{"in": APIKeyIn.header},
192
192
  name=name,
193
193
  description=description,
194
194
  )
@@ -276,7 +276,7 @@ class APIKeyCookie(APIKeyBase):
276
276
  ] = True,
277
277
  ):
278
278
  self.model: APIKey = APIKey(
279
- **{"in": APIKeyIn.cookie}, # type: ignore[arg-type]
279
+ **{"in": APIKeyIn.cookie},
280
280
  name=name,
281
281
  description=description,
282
282
  )