fastapi 0.112.2__tar.gz → 0.112.3__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 (1239) hide show
  1. {fastapi-0.112.2 → fastapi-0.112.3}/PKG-INFO +3 -4
  2. {fastapi-0.112.2 → fastapi-0.112.3}/README.md +2 -3
  3. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/async_tests/test_main.py +4 -2
  4. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/middleware/tutorial001.py +2 -2
  5. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_params_numeric_validations/tutorial006.py +2 -0
  6. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_params_numeric_validations/tutorial006_an.py +2 -0
  7. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_params_numeric_validations/tutorial006_an_py39.py +2 -0
  8. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/__init__.py +1 -1
  9. fastapi-0.112.3/fastapi/dependencies/models.py +37 -0
  10. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/dependencies/utils.py +74 -56
  11. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/routing.py +24 -15
  12. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/utils.py +3 -6
  13. {fastapi-0.112.2 → fastapi-0.112.3}/pyproject.toml +1 -1
  14. {fastapi-0.112.2 → fastapi-0.112.3}/requirements-docs.txt +1 -1
  15. {fastapi-0.112.2 → fastapi-0.112.3}/requirements-tests.txt +1 -1
  16. fastapi-0.112.2/fastapi/dependencies/models.py +0 -58
  17. {fastapi-0.112.2 → fastapi-0.112.3}/LICENSE +0 -0
  18. {fastapi-0.112.2 → fastapi-0.112.3}/docs/en/docs/img/favicon.png +0 -0
  19. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/additional_responses/tutorial001.py +0 -0
  20. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/additional_responses/tutorial002.py +0 -0
  21. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/additional_responses/tutorial003.py +0 -0
  22. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/additional_responses/tutorial004.py +0 -0
  23. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/additional_status_codes/tutorial001.py +0 -0
  24. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/additional_status_codes/tutorial001_an.py +0 -0
  25. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/additional_status_codes/tutorial001_an_py310.py +0 -0
  26. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/additional_status_codes/tutorial001_an_py39.py +0 -0
  27. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/additional_status_codes/tutorial001_py310.py +0 -0
  28. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/advanced_middleware/tutorial001.py +0 -0
  29. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/advanced_middleware/tutorial002.py +0 -0
  30. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/advanced_middleware/tutorial003.py +0 -0
  31. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/app_testing/__init__.py +0 -0
  32. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/app_testing/app_b/__init__.py +0 -0
  33. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/app_testing/app_b/main.py +0 -0
  34. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/app_testing/app_b/test_main.py +0 -0
  35. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/app_testing/app_b_an/__init__.py +0 -0
  36. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/app_testing/app_b_an/main.py +0 -0
  37. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/app_testing/app_b_an/test_main.py +0 -0
  38. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/app_testing/app_b_an_py310/__init__.py +0 -0
  39. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/app_testing/app_b_an_py310/main.py +0 -0
  40. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/app_testing/app_b_an_py310/test_main.py +0 -0
  41. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/app_testing/app_b_an_py39/__init__.py +0 -0
  42. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/app_testing/app_b_an_py39/main.py +0 -0
  43. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/app_testing/app_b_an_py39/test_main.py +0 -0
  44. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/app_testing/app_b_py310/__init__.py +0 -0
  45. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/app_testing/app_b_py310/main.py +0 -0
  46. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/app_testing/app_b_py310/test_main.py +0 -0
  47. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/app_testing/main.py +0 -0
  48. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/app_testing/test_main.py +0 -0
  49. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/app_testing/tutorial001.py +0 -0
  50. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/app_testing/tutorial002.py +0 -0
  51. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/app_testing/tutorial003.py +0 -0
  52. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/async_sql_databases/tutorial001.py +0 -0
  53. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/async_tests/__init__.py +0 -0
  54. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/async_tests/main.py +0 -0
  55. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/background_tasks/tutorial001.py +0 -0
  56. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/background_tasks/tutorial002.py +0 -0
  57. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/background_tasks/tutorial002_an.py +0 -0
  58. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/background_tasks/tutorial002_an_py310.py +0 -0
  59. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/background_tasks/tutorial002_an_py39.py +0 -0
  60. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/background_tasks/tutorial002_py310.py +0 -0
  61. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/behind_a_proxy/tutorial001.py +0 -0
  62. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/behind_a_proxy/tutorial002.py +0 -0
  63. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/behind_a_proxy/tutorial003.py +0 -0
  64. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/behind_a_proxy/tutorial004.py +0 -0
  65. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/bigger_applications/__init__.py +0 -0
  66. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/bigger_applications/app/__init__.py +0 -0
  67. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/bigger_applications/app/dependencies.py +0 -0
  68. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/bigger_applications/app/internal/__init__.py +0 -0
  69. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/bigger_applications/app/internal/admin.py +0 -0
  70. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/bigger_applications/app/main.py +0 -0
  71. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/bigger_applications/app/routers/__init__.py +0 -0
  72. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/bigger_applications/app/routers/items.py +0 -0
  73. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/bigger_applications/app/routers/users.py +0 -0
  74. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/bigger_applications/app_an/__init__.py +0 -0
  75. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/bigger_applications/app_an/dependencies.py +0 -0
  76. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/bigger_applications/app_an/internal/__init__.py +0 -0
  77. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/bigger_applications/app_an/internal/admin.py +0 -0
  78. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/bigger_applications/app_an/main.py +0 -0
  79. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/bigger_applications/app_an/routers/__init__.py +0 -0
  80. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/bigger_applications/app_an/routers/items.py +0 -0
  81. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/bigger_applications/app_an/routers/users.py +0 -0
  82. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/bigger_applications/app_an_py39/__init__.py +0 -0
  83. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/bigger_applications/app_an_py39/dependencies.py +0 -0
  84. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/bigger_applications/app_an_py39/internal/__init__.py +0 -0
  85. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/bigger_applications/app_an_py39/internal/admin.py +0 -0
  86. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/bigger_applications/app_an_py39/main.py +0 -0
  87. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/bigger_applications/app_an_py39/routers/__init__.py +0 -0
  88. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/bigger_applications/app_an_py39/routers/items.py +0 -0
  89. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/bigger_applications/app_an_py39/routers/users.py +0 -0
  90. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body/tutorial001.py +0 -0
  91. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body/tutorial001_py310.py +0 -0
  92. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body/tutorial002.py +0 -0
  93. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body/tutorial002_py310.py +0 -0
  94. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body/tutorial003.py +0 -0
  95. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body/tutorial003_py310.py +0 -0
  96. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body/tutorial004.py +0 -0
  97. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body/tutorial004_py310.py +0 -0
  98. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_fields/tutorial001.py +0 -0
  99. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_fields/tutorial001_an.py +0 -0
  100. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_fields/tutorial001_an_py310.py +0 -0
  101. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_fields/tutorial001_an_py39.py +0 -0
  102. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_fields/tutorial001_py310.py +0 -0
  103. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_multiple_params/tutorial001.py +0 -0
  104. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_multiple_params/tutorial001_an.py +0 -0
  105. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_multiple_params/tutorial001_an_py310.py +0 -0
  106. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_multiple_params/tutorial001_an_py39.py +0 -0
  107. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_multiple_params/tutorial001_py310.py +0 -0
  108. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_multiple_params/tutorial002.py +0 -0
  109. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_multiple_params/tutorial002_py310.py +0 -0
  110. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_multiple_params/tutorial003.py +0 -0
  111. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_multiple_params/tutorial003_an.py +0 -0
  112. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_multiple_params/tutorial003_an_py310.py +0 -0
  113. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_multiple_params/tutorial003_an_py39.py +0 -0
  114. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_multiple_params/tutorial003_py310.py +0 -0
  115. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_multiple_params/tutorial004.py +0 -0
  116. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_multiple_params/tutorial004_an.py +0 -0
  117. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_multiple_params/tutorial004_an_py310.py +0 -0
  118. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_multiple_params/tutorial004_an_py39.py +0 -0
  119. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_multiple_params/tutorial004_py310.py +0 -0
  120. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_multiple_params/tutorial005.py +0 -0
  121. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_multiple_params/tutorial005_an.py +0 -0
  122. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_multiple_params/tutorial005_an_py310.py +0 -0
  123. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_multiple_params/tutorial005_an_py39.py +0 -0
  124. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_multiple_params/tutorial005_py310.py +0 -0
  125. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_nested_models/tutorial001.py +0 -0
  126. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_nested_models/tutorial001_py310.py +0 -0
  127. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_nested_models/tutorial002.py +0 -0
  128. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_nested_models/tutorial002_py310.py +0 -0
  129. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_nested_models/tutorial002_py39.py +0 -0
  130. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_nested_models/tutorial003.py +0 -0
  131. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_nested_models/tutorial003_py310.py +0 -0
  132. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_nested_models/tutorial003_py39.py +0 -0
  133. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_nested_models/tutorial004.py +0 -0
  134. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_nested_models/tutorial004_py310.py +0 -0
  135. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_nested_models/tutorial004_py39.py +0 -0
  136. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_nested_models/tutorial005.py +0 -0
  137. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_nested_models/tutorial005_py310.py +0 -0
  138. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_nested_models/tutorial005_py39.py +0 -0
  139. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_nested_models/tutorial006.py +0 -0
  140. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_nested_models/tutorial006_py310.py +0 -0
  141. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_nested_models/tutorial006_py39.py +0 -0
  142. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_nested_models/tutorial007.py +0 -0
  143. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_nested_models/tutorial007_py310.py +0 -0
  144. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_nested_models/tutorial007_py39.py +0 -0
  145. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_nested_models/tutorial008.py +0 -0
  146. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_nested_models/tutorial008_py39.py +0 -0
  147. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_nested_models/tutorial009.py +0 -0
  148. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_nested_models/tutorial009_py39.py +0 -0
  149. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_updates/tutorial001.py +0 -0
  150. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_updates/tutorial001_py310.py +0 -0
  151. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_updates/tutorial001_py39.py +0 -0
  152. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_updates/tutorial002.py +0 -0
  153. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_updates/tutorial002_py310.py +0 -0
  154. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/body_updates/tutorial002_py39.py +0 -0
  155. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/conditional_openapi/tutorial001.py +0 -0
  156. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/configure_swagger_ui/tutorial001.py +0 -0
  157. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/configure_swagger_ui/tutorial002.py +0 -0
  158. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/configure_swagger_ui/tutorial003.py +0 -0
  159. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/cookie_params/tutorial001.py +0 -0
  160. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/cookie_params/tutorial001_an.py +0 -0
  161. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/cookie_params/tutorial001_an_py310.py +0 -0
  162. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/cookie_params/tutorial001_an_py39.py +0 -0
  163. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/cookie_params/tutorial001_py310.py +0 -0
  164. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/cors/tutorial001.py +0 -0
  165. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/custom_docs_ui/tutorial001.py +0 -0
  166. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/custom_docs_ui/tutorial002.py +0 -0
  167. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/custom_request_and_route/tutorial001.py +0 -0
  168. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/custom_request_and_route/tutorial002.py +0 -0
  169. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/custom_request_and_route/tutorial003.py +0 -0
  170. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/custom_response/tutorial001.py +0 -0
  171. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/custom_response/tutorial001b.py +0 -0
  172. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/custom_response/tutorial002.py +0 -0
  173. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/custom_response/tutorial003.py +0 -0
  174. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/custom_response/tutorial004.py +0 -0
  175. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/custom_response/tutorial005.py +0 -0
  176. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/custom_response/tutorial006.py +0 -0
  177. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/custom_response/tutorial006b.py +0 -0
  178. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/custom_response/tutorial006c.py +0 -0
  179. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/custom_response/tutorial007.py +0 -0
  180. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/custom_response/tutorial008.py +0 -0
  181. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/custom_response/tutorial009.py +0 -0
  182. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/custom_response/tutorial009b.py +0 -0
  183. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/custom_response/tutorial009c.py +0 -0
  184. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/custom_response/tutorial010.py +0 -0
  185. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dataclasses/tutorial001.py +0 -0
  186. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dataclasses/tutorial002.py +0 -0
  187. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dataclasses/tutorial003.py +0 -0
  188. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/debugging/tutorial001.py +0 -0
  189. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial001.py +0 -0
  190. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial001_02_an.py +0 -0
  191. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial001_02_an_py310.py +0 -0
  192. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial001_02_an_py39.py +0 -0
  193. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial001_an.py +0 -0
  194. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial001_an_py310.py +0 -0
  195. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial001_an_py39.py +0 -0
  196. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial001_py310.py +0 -0
  197. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial002.py +0 -0
  198. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial002_an.py +0 -0
  199. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial002_an_py310.py +0 -0
  200. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial002_an_py39.py +0 -0
  201. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial002_py310.py +0 -0
  202. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial003.py +0 -0
  203. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial003_an.py +0 -0
  204. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial003_an_py310.py +0 -0
  205. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial003_an_py39.py +0 -0
  206. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial003_py310.py +0 -0
  207. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial004.py +0 -0
  208. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial004_an.py +0 -0
  209. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial004_an_py310.py +0 -0
  210. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial004_an_py39.py +0 -0
  211. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial004_py310.py +0 -0
  212. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial005.py +0 -0
  213. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial005_an.py +0 -0
  214. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial005_an_py310.py +0 -0
  215. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial005_an_py39.py +0 -0
  216. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial005_py310.py +0 -0
  217. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial006.py +0 -0
  218. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial006_an.py +0 -0
  219. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial006_an_py39.py +0 -0
  220. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial007.py +0 -0
  221. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial008.py +0 -0
  222. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial008_an.py +0 -0
  223. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial008_an_py39.py +0 -0
  224. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial008b.py +0 -0
  225. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial008b_an.py +0 -0
  226. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial008b_an_py39.py +0 -0
  227. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial008c.py +0 -0
  228. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial008c_an.py +0 -0
  229. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial008c_an_py39.py +0 -0
  230. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial008d.py +0 -0
  231. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial008d_an.py +0 -0
  232. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial008d_an_py39.py +0 -0
  233. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial009.py +0 -0
  234. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial010.py +0 -0
  235. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial011.py +0 -0
  236. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial011_an.py +0 -0
  237. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial011_an_py39.py +0 -0
  238. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial012.py +0 -0
  239. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial012_an.py +0 -0
  240. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependencies/tutorial012_an_py39.py +0 -0
  241. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependency_testing/tutorial001.py +0 -0
  242. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependency_testing/tutorial001_an.py +0 -0
  243. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependency_testing/tutorial001_an_py310.py +0 -0
  244. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependency_testing/tutorial001_an_py39.py +0 -0
  245. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/dependency_testing/tutorial001_py310.py +0 -0
  246. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/encoder/tutorial001.py +0 -0
  247. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/encoder/tutorial001_py310.py +0 -0
  248. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/events/tutorial001.py +0 -0
  249. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/events/tutorial002.py +0 -0
  250. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/events/tutorial003.py +0 -0
  251. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/extending_openapi/tutorial001.py +0 -0
  252. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/extra_data_types/tutorial001.py +0 -0
  253. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/extra_data_types/tutorial001_an.py +0 -0
  254. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/extra_data_types/tutorial001_an_py310.py +0 -0
  255. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/extra_data_types/tutorial001_an_py39.py +0 -0
  256. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/extra_data_types/tutorial001_py310.py +0 -0
  257. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/extra_models/tutorial001.py +0 -0
  258. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/extra_models/tutorial001_py310.py +0 -0
  259. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/extra_models/tutorial002.py +0 -0
  260. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/extra_models/tutorial002_py310.py +0 -0
  261. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/extra_models/tutorial003.py +0 -0
  262. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/extra_models/tutorial003_py310.py +0 -0
  263. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/extra_models/tutorial004.py +0 -0
  264. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/extra_models/tutorial004_py39.py +0 -0
  265. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/extra_models/tutorial005.py +0 -0
  266. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/extra_models/tutorial005_py39.py +0 -0
  267. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/first_steps/tutorial001.py +0 -0
  268. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/first_steps/tutorial002.py +0 -0
  269. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/first_steps/tutorial003.py +0 -0
  270. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/generate_clients/tutorial001.py +0 -0
  271. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/generate_clients/tutorial001_py39.py +0 -0
  272. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/generate_clients/tutorial002.py +0 -0
  273. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/generate_clients/tutorial002_py39.py +0 -0
  274. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/generate_clients/tutorial003.py +0 -0
  275. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/generate_clients/tutorial003_py39.py +0 -0
  276. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/generate_clients/tutorial004.js +0 -0
  277. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/generate_clients/tutorial004.py +0 -0
  278. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/graphql/tutorial001.py +0 -0
  279. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/handling_errors/tutorial001.py +0 -0
  280. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/handling_errors/tutorial002.py +0 -0
  281. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/handling_errors/tutorial003.py +0 -0
  282. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/handling_errors/tutorial004.py +0 -0
  283. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/handling_errors/tutorial005.py +0 -0
  284. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/handling_errors/tutorial006.py +0 -0
  285. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/header_params/tutorial001.py +0 -0
  286. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/header_params/tutorial001_an.py +0 -0
  287. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/header_params/tutorial001_an_py310.py +0 -0
  288. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/header_params/tutorial001_an_py39.py +0 -0
  289. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/header_params/tutorial001_py310.py +0 -0
  290. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/header_params/tutorial002.py +0 -0
  291. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/header_params/tutorial002_an.py +0 -0
  292. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/header_params/tutorial002_an_py310.py +0 -0
  293. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/header_params/tutorial002_an_py39.py +0 -0
  294. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/header_params/tutorial002_py310.py +0 -0
  295. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/header_params/tutorial003.py +0 -0
  296. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/header_params/tutorial003_an.py +0 -0
  297. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/header_params/tutorial003_an_py310.py +0 -0
  298. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/header_params/tutorial003_an_py39.py +0 -0
  299. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/header_params/tutorial003_py310.py +0 -0
  300. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/header_params/tutorial003_py39.py +0 -0
  301. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/metadata/tutorial001.py +0 -0
  302. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/metadata/tutorial001_1.py +0 -0
  303. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/metadata/tutorial002.py +0 -0
  304. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/metadata/tutorial003.py +0 -0
  305. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/metadata/tutorial004.py +0 -0
  306. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/nosql_databases/tutorial001.py +0 -0
  307. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/openapi_callbacks/tutorial001.py +0 -0
  308. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/openapi_webhooks/tutorial001.py +0 -0
  309. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_operation_advanced_configuration/tutorial001.py +0 -0
  310. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_operation_advanced_configuration/tutorial002.py +0 -0
  311. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_operation_advanced_configuration/tutorial003.py +0 -0
  312. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_operation_advanced_configuration/tutorial004.py +0 -0
  313. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_operation_advanced_configuration/tutorial005.py +0 -0
  314. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_operation_advanced_configuration/tutorial006.py +0 -0
  315. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_operation_advanced_configuration/tutorial007.py +0 -0
  316. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_operation_advanced_configuration/tutorial007_pv1.py +0 -0
  317. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_operation_configuration/tutorial001.py +0 -0
  318. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_operation_configuration/tutorial001_py310.py +0 -0
  319. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_operation_configuration/tutorial001_py39.py +0 -0
  320. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_operation_configuration/tutorial002.py +0 -0
  321. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_operation_configuration/tutorial002_py310.py +0 -0
  322. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_operation_configuration/tutorial002_py39.py +0 -0
  323. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_operation_configuration/tutorial002b.py +0 -0
  324. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_operation_configuration/tutorial003.py +0 -0
  325. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_operation_configuration/tutorial003_py310.py +0 -0
  326. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_operation_configuration/tutorial003_py39.py +0 -0
  327. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_operation_configuration/tutorial004.py +0 -0
  328. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_operation_configuration/tutorial004_py310.py +0 -0
  329. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_operation_configuration/tutorial004_py39.py +0 -0
  330. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_operation_configuration/tutorial005.py +0 -0
  331. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_operation_configuration/tutorial005_py310.py +0 -0
  332. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_operation_configuration/tutorial005_py39.py +0 -0
  333. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_operation_configuration/tutorial006.py +0 -0
  334. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_params/tutorial001.py +0 -0
  335. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_params/tutorial002.py +0 -0
  336. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_params/tutorial003.py +0 -0
  337. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_params/tutorial003b.py +0 -0
  338. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_params/tutorial004.py +0 -0
  339. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_params/tutorial005.py +0 -0
  340. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_params_numeric_validations/tutorial001.py +0 -0
  341. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_params_numeric_validations/tutorial001_an.py +0 -0
  342. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_params_numeric_validations/tutorial001_an_py310.py +0 -0
  343. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_params_numeric_validations/tutorial001_an_py39.py +0 -0
  344. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_params_numeric_validations/tutorial001_py310.py +0 -0
  345. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_params_numeric_validations/tutorial002.py +0 -0
  346. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_params_numeric_validations/tutorial002_an.py +0 -0
  347. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_params_numeric_validations/tutorial002_an_py39.py +0 -0
  348. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_params_numeric_validations/tutorial003.py +0 -0
  349. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_params_numeric_validations/tutorial003_an.py +0 -0
  350. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_params_numeric_validations/tutorial003_an_py39.py +0 -0
  351. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_params_numeric_validations/tutorial004.py +0 -0
  352. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_params_numeric_validations/tutorial004_an.py +0 -0
  353. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_params_numeric_validations/tutorial004_an_py39.py +0 -0
  354. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_params_numeric_validations/tutorial005.py +0 -0
  355. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_params_numeric_validations/tutorial005_an.py +0 -0
  356. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/path_params_numeric_validations/tutorial005_an_py39.py +0 -0
  357. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/python_types/tutorial001.py +0 -0
  358. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/python_types/tutorial002.py +0 -0
  359. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/python_types/tutorial003.py +0 -0
  360. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/python_types/tutorial004.py +0 -0
  361. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/python_types/tutorial005.py +0 -0
  362. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/python_types/tutorial006.py +0 -0
  363. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/python_types/tutorial006_py39.py +0 -0
  364. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/python_types/tutorial007.py +0 -0
  365. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/python_types/tutorial007_py39.py +0 -0
  366. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/python_types/tutorial008.py +0 -0
  367. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/python_types/tutorial008_py39.py +0 -0
  368. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/python_types/tutorial008b.py +0 -0
  369. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/python_types/tutorial008b_py310.py +0 -0
  370. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/python_types/tutorial009.py +0 -0
  371. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/python_types/tutorial009_py310.py +0 -0
  372. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/python_types/tutorial009b.py +0 -0
  373. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/python_types/tutorial009c.py +0 -0
  374. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/python_types/tutorial009c_py310.py +0 -0
  375. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/python_types/tutorial010.py +0 -0
  376. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/python_types/tutorial011.py +0 -0
  377. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/python_types/tutorial011_py310.py +0 -0
  378. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/python_types/tutorial011_py39.py +0 -0
  379. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/python_types/tutorial012.py +0 -0
  380. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/python_types/tutorial013.py +0 -0
  381. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/python_types/tutorial013_py39.py +0 -0
  382. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params/tutorial001.py +0 -0
  383. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params/tutorial002.py +0 -0
  384. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params/tutorial002_py310.py +0 -0
  385. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params/tutorial003.py +0 -0
  386. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params/tutorial003_py310.py +0 -0
  387. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params/tutorial004.py +0 -0
  388. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params/tutorial004_py310.py +0 -0
  389. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params/tutorial005.py +0 -0
  390. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params/tutorial006.py +0 -0
  391. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params/tutorial006_py310.py +0 -0
  392. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params/tutorial006b.py +0 -0
  393. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial001.py +0 -0
  394. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial001_py310.py +0 -0
  395. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial002.py +0 -0
  396. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial002_an.py +0 -0
  397. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial002_an_py310.py +0 -0
  398. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial002_py310.py +0 -0
  399. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial003.py +0 -0
  400. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial003_an.py +0 -0
  401. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial003_an_py310.py +0 -0
  402. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial003_an_py39.py +0 -0
  403. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial003_py310.py +0 -0
  404. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial004.py +0 -0
  405. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial004_an.py +0 -0
  406. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial004_an_py310.py +0 -0
  407. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial004_an_py310_regex.py +0 -0
  408. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial004_an_py39.py +0 -0
  409. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial004_py310.py +0 -0
  410. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial005.py +0 -0
  411. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial005_an.py +0 -0
  412. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial005_an_py39.py +0 -0
  413. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial006.py +0 -0
  414. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial006_an.py +0 -0
  415. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial006_an_py39.py +0 -0
  416. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial006b.py +0 -0
  417. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial006b_an.py +0 -0
  418. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial006b_an_py39.py +0 -0
  419. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial006c.py +0 -0
  420. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial006c_an.py +0 -0
  421. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial006c_an_py310.py +0 -0
  422. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial006c_an_py39.py +0 -0
  423. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial006c_py310.py +0 -0
  424. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial006d.py +0 -0
  425. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial006d_an.py +0 -0
  426. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial006d_an_py39.py +0 -0
  427. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial007.py +0 -0
  428. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial007_an.py +0 -0
  429. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial007_an_py310.py +0 -0
  430. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial007_an_py39.py +0 -0
  431. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial007_py310.py +0 -0
  432. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial008.py +0 -0
  433. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial008_an.py +0 -0
  434. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial008_an_py310.py +0 -0
  435. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial008_an_py39.py +0 -0
  436. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial008_py310.py +0 -0
  437. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial009.py +0 -0
  438. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial009_an.py +0 -0
  439. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial009_an_py310.py +0 -0
  440. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial009_an_py39.py +0 -0
  441. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial009_py310.py +0 -0
  442. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial010.py +0 -0
  443. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial010_an.py +0 -0
  444. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial010_an_py310.py +0 -0
  445. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial010_an_py39.py +0 -0
  446. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial010_py310.py +0 -0
  447. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial011.py +0 -0
  448. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial011_an.py +0 -0
  449. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial011_an_py310.py +0 -0
  450. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial011_an_py39.py +0 -0
  451. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial011_py310.py +0 -0
  452. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial011_py39.py +0 -0
  453. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial012.py +0 -0
  454. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial012_an.py +0 -0
  455. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial012_an_py39.py +0 -0
  456. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial012_py39.py +0 -0
  457. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial013.py +0 -0
  458. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial013_an.py +0 -0
  459. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial013_an_py39.py +0 -0
  460. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial014.py +0 -0
  461. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial014_an.py +0 -0
  462. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial014_an_py310.py +0 -0
  463. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial014_an_py39.py +0 -0
  464. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/query_params_str_validations/tutorial014_py310.py +0 -0
  465. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/request_files/tutorial001.py +0 -0
  466. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/request_files/tutorial001_02.py +0 -0
  467. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/request_files/tutorial001_02_an.py +0 -0
  468. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/request_files/tutorial001_02_an_py310.py +0 -0
  469. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/request_files/tutorial001_02_an_py39.py +0 -0
  470. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/request_files/tutorial001_02_py310.py +0 -0
  471. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/request_files/tutorial001_03.py +0 -0
  472. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/request_files/tutorial001_03_an.py +0 -0
  473. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/request_files/tutorial001_03_an_py39.py +0 -0
  474. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/request_files/tutorial001_an.py +0 -0
  475. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/request_files/tutorial001_an_py39.py +0 -0
  476. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/request_files/tutorial002.py +0 -0
  477. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/request_files/tutorial002_an.py +0 -0
  478. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/request_files/tutorial002_an_py39.py +0 -0
  479. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/request_files/tutorial002_py39.py +0 -0
  480. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/request_files/tutorial003.py +0 -0
  481. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/request_files/tutorial003_an.py +0 -0
  482. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/request_files/tutorial003_an_py39.py +0 -0
  483. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/request_files/tutorial003_py39.py +0 -0
  484. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/request_forms/tutorial001.py +0 -0
  485. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/request_forms/tutorial001_an.py +0 -0
  486. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/request_forms/tutorial001_an_py39.py +0 -0
  487. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/request_forms_and_files/tutorial001.py +0 -0
  488. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/request_forms_and_files/tutorial001_an.py +0 -0
  489. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/request_forms_and_files/tutorial001_an_py39.py +0 -0
  490. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/response_change_status_code/tutorial001.py +0 -0
  491. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/response_cookies/tutorial001.py +0 -0
  492. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/response_cookies/tutorial002.py +0 -0
  493. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/response_directly/tutorial001.py +0 -0
  494. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/response_directly/tutorial002.py +0 -0
  495. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/response_headers/tutorial001.py +0 -0
  496. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/response_headers/tutorial002.py +0 -0
  497. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/response_model/tutorial001.py +0 -0
  498. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/response_model/tutorial001_01.py +0 -0
  499. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/response_model/tutorial001_01_py310.py +0 -0
  500. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/response_model/tutorial001_01_py39.py +0 -0
  501. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/response_model/tutorial001_py310.py +0 -0
  502. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/response_model/tutorial001_py39.py +0 -0
  503. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/response_model/tutorial002.py +0 -0
  504. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/response_model/tutorial002_py310.py +0 -0
  505. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/response_model/tutorial003.py +0 -0
  506. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/response_model/tutorial003_01.py +0 -0
  507. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/response_model/tutorial003_01_py310.py +0 -0
  508. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/response_model/tutorial003_02.py +0 -0
  509. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/response_model/tutorial003_03.py +0 -0
  510. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/response_model/tutorial003_04.py +0 -0
  511. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/response_model/tutorial003_04_py310.py +0 -0
  512. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/response_model/tutorial003_05.py +0 -0
  513. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/response_model/tutorial003_05_py310.py +0 -0
  514. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/response_model/tutorial003_py310.py +0 -0
  515. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/response_model/tutorial004.py +0 -0
  516. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/response_model/tutorial004_py310.py +0 -0
  517. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/response_model/tutorial004_py39.py +0 -0
  518. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/response_model/tutorial005.py +0 -0
  519. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/response_model/tutorial005_py310.py +0 -0
  520. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/response_model/tutorial006.py +0 -0
  521. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/response_model/tutorial006_py310.py +0 -0
  522. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/response_status_code/tutorial001.py +0 -0
  523. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/response_status_code/tutorial002.py +0 -0
  524. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/schema_extra_example/tutorial001.py +0 -0
  525. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/schema_extra_example/tutorial001_pv1.py +0 -0
  526. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/schema_extra_example/tutorial001_py310.py +0 -0
  527. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/schema_extra_example/tutorial001_py310_pv1.py +0 -0
  528. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/schema_extra_example/tutorial002.py +0 -0
  529. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/schema_extra_example/tutorial002_py310.py +0 -0
  530. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/schema_extra_example/tutorial003.py +0 -0
  531. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/schema_extra_example/tutorial003_an.py +0 -0
  532. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/schema_extra_example/tutorial003_an_py310.py +0 -0
  533. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/schema_extra_example/tutorial003_an_py39.py +0 -0
  534. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/schema_extra_example/tutorial003_py310.py +0 -0
  535. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/schema_extra_example/tutorial004.py +0 -0
  536. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/schema_extra_example/tutorial004_an.py +0 -0
  537. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/schema_extra_example/tutorial004_an_py310.py +0 -0
  538. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/schema_extra_example/tutorial004_an_py39.py +0 -0
  539. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/schema_extra_example/tutorial004_py310.py +0 -0
  540. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/schema_extra_example/tutorial005.py +0 -0
  541. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/schema_extra_example/tutorial005_an.py +0 -0
  542. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/schema_extra_example/tutorial005_an_py310.py +0 -0
  543. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/schema_extra_example/tutorial005_an_py39.py +0 -0
  544. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/schema_extra_example/tutorial005_py310.py +0 -0
  545. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/security/tutorial001.py +0 -0
  546. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/security/tutorial001_an.py +0 -0
  547. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/security/tutorial001_an_py39.py +0 -0
  548. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/security/tutorial002.py +0 -0
  549. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/security/tutorial002_an.py +0 -0
  550. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/security/tutorial002_an_py310.py +0 -0
  551. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/security/tutorial002_an_py39.py +0 -0
  552. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/security/tutorial002_py310.py +0 -0
  553. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/security/tutorial003.py +0 -0
  554. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/security/tutorial003_an.py +0 -0
  555. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/security/tutorial003_an_py310.py +0 -0
  556. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/security/tutorial003_an_py39.py +0 -0
  557. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/security/tutorial003_py310.py +0 -0
  558. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/security/tutorial004.py +0 -0
  559. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/security/tutorial004_an.py +0 -0
  560. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/security/tutorial004_an_py310.py +0 -0
  561. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/security/tutorial004_an_py39.py +0 -0
  562. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/security/tutorial004_py310.py +0 -0
  563. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/security/tutorial005.py +0 -0
  564. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/security/tutorial005_an.py +0 -0
  565. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/security/tutorial005_an_py310.py +0 -0
  566. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/security/tutorial005_an_py39.py +0 -0
  567. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/security/tutorial005_py310.py +0 -0
  568. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/security/tutorial005_py39.py +0 -0
  569. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/security/tutorial006.py +0 -0
  570. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/security/tutorial006_an.py +0 -0
  571. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/security/tutorial006_an_py39.py +0 -0
  572. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/security/tutorial007.py +0 -0
  573. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/security/tutorial007_an.py +0 -0
  574. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/security/tutorial007_an_py39.py +0 -0
  575. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/separate_openapi_schemas/tutorial001.py +0 -0
  576. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/separate_openapi_schemas/tutorial001_py310.py +0 -0
  577. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/separate_openapi_schemas/tutorial001_py39.py +0 -0
  578. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/separate_openapi_schemas/tutorial002.py +0 -0
  579. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/separate_openapi_schemas/tutorial002_py310.py +0 -0
  580. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/separate_openapi_schemas/tutorial002_py39.py +0 -0
  581. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/settings/app01/__init__.py +0 -0
  582. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/settings/app01/config.py +0 -0
  583. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/settings/app01/main.py +0 -0
  584. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/settings/app02/__init__.py +0 -0
  585. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/settings/app02/config.py +0 -0
  586. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/settings/app02/main.py +0 -0
  587. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/settings/app02/test_main.py +0 -0
  588. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/settings/app02_an/__init__.py +0 -0
  589. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/settings/app02_an/config.py +0 -0
  590. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/settings/app02_an/main.py +0 -0
  591. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/settings/app02_an/test_main.py +0 -0
  592. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/settings/app02_an_py39/__init__.py +0 -0
  593. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/settings/app02_an_py39/config.py +0 -0
  594. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/settings/app02_an_py39/main.py +0 -0
  595. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/settings/app02_an_py39/test_main.py +0 -0
  596. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/settings/app03/__init__.py +0 -0
  597. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/settings/app03/config.py +0 -0
  598. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/settings/app03/main.py +0 -0
  599. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/settings/app03_an/__init__.py +0 -0
  600. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/settings/app03_an/config.py +0 -0
  601. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/settings/app03_an/config_pv1.py +0 -0
  602. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/settings/app03_an/main.py +0 -0
  603. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/settings/app03_an_py39/__init__.py +0 -0
  604. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/settings/app03_an_py39/config.py +0 -0
  605. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/settings/app03_an_py39/main.py +0 -0
  606. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/settings/tutorial001.py +0 -0
  607. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/settings/tutorial001_pv1.py +0 -0
  608. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/sql_databases/__init__.py +0 -0
  609. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/sql_databases/sql_app/__init__.py +0 -0
  610. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/sql_databases/sql_app/alt_main.py +0 -0
  611. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/sql_databases/sql_app/crud.py +0 -0
  612. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/sql_databases/sql_app/database.py +0 -0
  613. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/sql_databases/sql_app/main.py +0 -0
  614. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/sql_databases/sql_app/models.py +0 -0
  615. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/sql_databases/sql_app/schemas.py +0 -0
  616. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/sql_databases/sql_app/tests/__init__.py +0 -0
  617. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/sql_databases/sql_app/tests/test_sql_app.py +0 -0
  618. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/sql_databases/sql_app_py310/__init__.py +0 -0
  619. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/sql_databases/sql_app_py310/alt_main.py +0 -0
  620. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/sql_databases/sql_app_py310/crud.py +0 -0
  621. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/sql_databases/sql_app_py310/database.py +0 -0
  622. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/sql_databases/sql_app_py310/main.py +0 -0
  623. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/sql_databases/sql_app_py310/models.py +0 -0
  624. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/sql_databases/sql_app_py310/schemas.py +0 -0
  625. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/sql_databases/sql_app_py310/tests/__init__.py +0 -0
  626. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/sql_databases/sql_app_py310/tests/test_sql_app.py +0 -0
  627. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/sql_databases/sql_app_py39/__init__.py +0 -0
  628. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/sql_databases/sql_app_py39/alt_main.py +0 -0
  629. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/sql_databases/sql_app_py39/crud.py +0 -0
  630. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/sql_databases/sql_app_py39/database.py +0 -0
  631. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/sql_databases/sql_app_py39/main.py +0 -0
  632. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/sql_databases/sql_app_py39/models.py +0 -0
  633. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/sql_databases/sql_app_py39/schemas.py +0 -0
  634. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/sql_databases/sql_app_py39/tests/__init__.py +0 -0
  635. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/sql_databases/sql_app_py39/tests/test_sql_app.py +0 -0
  636. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/sql_databases_peewee/sql_app/__init__.py +0 -0
  637. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/sql_databases_peewee/sql_app/crud.py +0 -0
  638. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/sql_databases_peewee/sql_app/database.py +0 -0
  639. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/sql_databases_peewee/sql_app/main.py +0 -0
  640. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/sql_databases_peewee/sql_app/models.py +0 -0
  641. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/sql_databases_peewee/sql_app/schemas.py +0 -0
  642. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/static_files/tutorial001.py +0 -0
  643. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/sub_applications/tutorial001.py +0 -0
  644. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/templates/static/styles.css +0 -0
  645. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/templates/templates/item.html +0 -0
  646. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/templates/tutorial001.py +0 -0
  647. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/using_request_directly/tutorial001.py +0 -0
  648. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/websockets/__init__.py +0 -0
  649. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/websockets/tutorial001.py +0 -0
  650. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/websockets/tutorial002.py +0 -0
  651. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/websockets/tutorial002_an.py +0 -0
  652. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/websockets/tutorial002_an_py310.py +0 -0
  653. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/websockets/tutorial002_an_py39.py +0 -0
  654. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/websockets/tutorial002_py310.py +0 -0
  655. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/websockets/tutorial003.py +0 -0
  656. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/websockets/tutorial003_py39.py +0 -0
  657. {fastapi-0.112.2 → fastapi-0.112.3}/docs_src/wsgi/tutorial001.py +0 -0
  658. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/__main__.py +0 -0
  659. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/_compat.py +0 -0
  660. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/applications.py +0 -0
  661. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/background.py +0 -0
  662. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/cli.py +0 -0
  663. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/concurrency.py +0 -0
  664. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/datastructures.py +0 -0
  665. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/dependencies/__init__.py +0 -0
  666. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/encoders.py +0 -0
  667. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/exception_handlers.py +0 -0
  668. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/exceptions.py +0 -0
  669. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/logger.py +0 -0
  670. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/middleware/__init__.py +0 -0
  671. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/middleware/cors.py +0 -0
  672. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/middleware/gzip.py +0 -0
  673. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/middleware/httpsredirect.py +0 -0
  674. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/middleware/trustedhost.py +0 -0
  675. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/middleware/wsgi.py +0 -0
  676. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/openapi/__init__.py +0 -0
  677. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/openapi/constants.py +0 -0
  678. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/openapi/docs.py +0 -0
  679. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/openapi/models.py +0 -0
  680. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/openapi/utils.py +0 -0
  681. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/param_functions.py +0 -0
  682. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/params.py +0 -0
  683. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/py.typed +0 -0
  684. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/requests.py +0 -0
  685. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/responses.py +0 -0
  686. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/security/__init__.py +0 -0
  687. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/security/api_key.py +0 -0
  688. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/security/base.py +0 -0
  689. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/security/http.py +0 -0
  690. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/security/oauth2.py +0 -0
  691. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/security/open_id_connect_url.py +0 -0
  692. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/security/utils.py +0 -0
  693. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/staticfiles.py +0 -0
  694. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/templating.py +0 -0
  695. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/testclient.py +0 -0
  696. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/types.py +0 -0
  697. {fastapi-0.112.2 → fastapi-0.112.3}/fastapi/websockets.py +0 -0
  698. {fastapi-0.112.2 → fastapi-0.112.3}/pdm_build.py +0 -0
  699. {fastapi-0.112.2 → fastapi-0.112.3}/requirements-docs-insiders.txt +0 -0
  700. {fastapi-0.112.2 → fastapi-0.112.3}/requirements-docs-tests.txt +0 -0
  701. {fastapi-0.112.2 → fastapi-0.112.3}/requirements-github-actions.txt +0 -0
  702. {fastapi-0.112.2 → fastapi-0.112.3}/requirements.txt +0 -0
  703. {fastapi-0.112.2 → fastapi-0.112.3}/scripts/deploy_docs_status.py +0 -0
  704. {fastapi-0.112.2 → fastapi-0.112.3}/scripts/docs.py +0 -0
  705. {fastapi-0.112.2 → fastapi-0.112.3}/scripts/format.sh +0 -0
  706. {fastapi-0.112.2 → fastapi-0.112.3}/scripts/lint.sh +0 -0
  707. {fastapi-0.112.2 → fastapi-0.112.3}/scripts/mkdocs_hooks.py +0 -0
  708. {fastapi-0.112.2 → fastapi-0.112.3}/scripts/playwright/separate_openapi_schemas/image01.py +0 -0
  709. {fastapi-0.112.2 → fastapi-0.112.3}/scripts/playwright/separate_openapi_schemas/image02.py +0 -0
  710. {fastapi-0.112.2 → fastapi-0.112.3}/scripts/playwright/separate_openapi_schemas/image03.py +0 -0
  711. {fastapi-0.112.2 → fastapi-0.112.3}/scripts/playwright/separate_openapi_schemas/image04.py +0 -0
  712. {fastapi-0.112.2 → fastapi-0.112.3}/scripts/playwright/separate_openapi_schemas/image05.py +0 -0
  713. {fastapi-0.112.2 → fastapi-0.112.3}/scripts/test-cov-html.sh +0 -0
  714. {fastapi-0.112.2 → fastapi-0.112.3}/scripts/test.sh +0 -0
  715. {fastapi-0.112.2 → fastapi-0.112.3}/tests/__init__.py +0 -0
  716. {fastapi-0.112.2 → fastapi-0.112.3}/tests/main.py +0 -0
  717. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_additional_properties.py +0 -0
  718. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_additional_properties_bool.py +0 -0
  719. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_additional_response_extra.py +0 -0
  720. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_additional_responses_bad.py +0 -0
  721. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_additional_responses_custom_model_in_callback.py +0 -0
  722. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_additional_responses_custom_validationerror.py +0 -0
  723. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_additional_responses_default_validationerror.py +0 -0
  724. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_additional_responses_response_class.py +0 -0
  725. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_additional_responses_router.py +0 -0
  726. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_allow_inf_nan_in_enforcing.py +0 -0
  727. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_ambiguous_params.py +0 -0
  728. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_annotated.py +0 -0
  729. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_application.py +0 -0
  730. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_callable_endpoint.py +0 -0
  731. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_compat.py +0 -0
  732. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_computed_fields.py +0 -0
  733. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_custom_middleware_exception.py +0 -0
  734. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_custom_route_class.py +0 -0
  735. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_custom_schema_fields.py +0 -0
  736. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_custom_swagger_ui_redirect.py +0 -0
  737. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_datastructures.py +0 -0
  738. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_datetime_custom_encoder.py +0 -0
  739. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_default_response_class.py +0 -0
  740. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_default_response_class_router.py +0 -0
  741. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_dependency_cache.py +0 -0
  742. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_dependency_class.py +0 -0
  743. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_dependency_contextmanager.py +0 -0
  744. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_dependency_contextvars.py +0 -0
  745. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_dependency_duplicates.py +0 -0
  746. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_dependency_normal_exceptions.py +0 -0
  747. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_dependency_overrides.py +0 -0
  748. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_dependency_security_overrides.py +0 -0
  749. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_deprecated_openapi_prefix.py +0 -0
  750. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_duplicate_models_openapi.py +0 -0
  751. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_empty_router.py +0 -0
  752. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_enforce_once_required_parameter.py +0 -0
  753. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_exception_handlers.py +0 -0
  754. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_extra_routes.py +0 -0
  755. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_fastapi_cli.py +0 -0
  756. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_filter_pydantic_sub_model/__init__.py +0 -0
  757. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_filter_pydantic_sub_model/app_pv1.py +0 -0
  758. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_filter_pydantic_sub_model/test_filter_pydantic_sub_model_pv1.py +0 -0
  759. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_filter_pydantic_sub_model_pv2.py +0 -0
  760. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_forms_from_non_typing_sequences.py +0 -0
  761. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_generate_unique_id_function.py +0 -0
  762. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_generic_parameterless_depends.py +0 -0
  763. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_get_request_body.py +0 -0
  764. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_http_connection_injection.py +0 -0
  765. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_include_route.py +0 -0
  766. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_include_router_defaults_overrides.py +0 -0
  767. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_infer_param_optionality.py +0 -0
  768. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_inherited_custom_class.py +0 -0
  769. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_invalid_path_param.py +0 -0
  770. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_invalid_sequence_param.py +0 -0
  771. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_jsonable_encoder.py +0 -0
  772. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_local_docs.py +0 -0
  773. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_modules_same_name_body/__init__.py +0 -0
  774. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_modules_same_name_body/app/__init__.py +0 -0
  775. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_modules_same_name_body/app/a.py +0 -0
  776. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_modules_same_name_body/app/b.py +0 -0
  777. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_modules_same_name_body/app/main.py +0 -0
  778. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_modules_same_name_body/test_main.py +0 -0
  779. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_multi_body_errors.py +0 -0
  780. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_multi_query_errors.py +0 -0
  781. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_multipart_installation.py +0 -0
  782. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_no_swagger_ui_redirect.py +0 -0
  783. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_openapi_examples.py +0 -0
  784. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_openapi_query_parameter_extension.py +0 -0
  785. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_openapi_route_extensions.py +0 -0
  786. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_openapi_separate_input_output_schemas.py +0 -0
  787. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_openapi_servers.py +0 -0
  788. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_operations_signatures.py +0 -0
  789. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_orjson_response_class.py +0 -0
  790. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_param_class.py +0 -0
  791. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_param_in_path_and_dependency.py +0 -0
  792. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_param_include_in_schema.py +0 -0
  793. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_params_repr.py +0 -0
  794. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_path.py +0 -0
  795. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_put_no_body.py +0 -0
  796. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_query.py +0 -0
  797. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_read_with_orm_mode.py +0 -0
  798. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_regex_deprecated_body.py +0 -0
  799. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_regex_deprecated_params.py +0 -0
  800. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_repeated_cookie_headers.py +0 -0
  801. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_repeated_dependency_schema.py +0 -0
  802. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_repeated_parameter_alias.py +0 -0
  803. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_reponse_set_reponse_code_empty.py +0 -0
  804. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_request_body_parameters_media_type.py +0 -0
  805. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_required_noneable.py +0 -0
  806. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_response_by_alias.py +0 -0
  807. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_response_change_status_code.py +0 -0
  808. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_response_class_no_mediatype.py +0 -0
  809. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_response_code_no_body.py +0 -0
  810. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_response_model_as_return_annotation.py +0 -0
  811. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_response_model_data_filter.py +0 -0
  812. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_response_model_data_filter_no_inheritance.py +0 -0
  813. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_response_model_include_exclude.py +0 -0
  814. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_response_model_invalid.py +0 -0
  815. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_response_model_sub_types.py +0 -0
  816. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_route_scope.py +0 -0
  817. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_router_events.py +0 -0
  818. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_router_prefix_with_template.py +0 -0
  819. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_router_redirect_slashes.py +0 -0
  820. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_schema_extra_examples.py +0 -0
  821. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_security_api_key_cookie.py +0 -0
  822. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_security_api_key_cookie_description.py +0 -0
  823. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_security_api_key_cookie_optional.py +0 -0
  824. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_security_api_key_header.py +0 -0
  825. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_security_api_key_header_description.py +0 -0
  826. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_security_api_key_header_optional.py +0 -0
  827. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_security_api_key_query.py +0 -0
  828. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_security_api_key_query_description.py +0 -0
  829. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_security_api_key_query_optional.py +0 -0
  830. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_security_http_base.py +0 -0
  831. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_security_http_base_description.py +0 -0
  832. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_security_http_base_optional.py +0 -0
  833. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_security_http_basic_optional.py +0 -0
  834. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_security_http_basic_realm.py +0 -0
  835. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_security_http_basic_realm_description.py +0 -0
  836. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_security_http_bearer.py +0 -0
  837. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_security_http_bearer_description.py +0 -0
  838. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_security_http_bearer_optional.py +0 -0
  839. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_security_http_digest.py +0 -0
  840. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_security_http_digest_description.py +0 -0
  841. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_security_http_digest_optional.py +0 -0
  842. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_security_oauth2.py +0 -0
  843. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_security_oauth2_authorization_code_bearer.py +0 -0
  844. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_security_oauth2_authorization_code_bearer_description.py +0 -0
  845. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_security_oauth2_optional.py +0 -0
  846. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_security_oauth2_optional_description.py +0 -0
  847. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_security_oauth2_password_bearer_optional.py +0 -0
  848. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_security_oauth2_password_bearer_optional_description.py +0 -0
  849. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_security_openid_connect.py +0 -0
  850. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_security_openid_connect_description.py +0 -0
  851. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_security_openid_connect_optional.py +0 -0
  852. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_serialize_response.py +0 -0
  853. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_serialize_response_dataclass.py +0 -0
  854. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_serialize_response_model.py +0 -0
  855. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_skip_defaults.py +0 -0
  856. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_starlette_exception.py +0 -0
  857. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_starlette_urlconvertors.py +0 -0
  858. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_sub_callbacks.py +0 -0
  859. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_swagger_ui_init_oauth.py +0 -0
  860. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tuples.py +0 -0
  861. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/__init__.py +0 -0
  862. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_additional_responses/__init__.py +0 -0
  863. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_additional_responses/test_tutorial001.py +0 -0
  864. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_additional_responses/test_tutorial002.py +0 -0
  865. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_additional_responses/test_tutorial003.py +0 -0
  866. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_additional_responses/test_tutorial004.py +0 -0
  867. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_additional_status_codes/__init__.py +0 -0
  868. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_additional_status_codes/test_tutorial001.py +0 -0
  869. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_additional_status_codes/test_tutorial001_an.py +0 -0
  870. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_additional_status_codes/test_tutorial001_an_py310.py +0 -0
  871. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_additional_status_codes/test_tutorial001_an_py39.py +0 -0
  872. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_additional_status_codes/test_tutorial001_py310.py +0 -0
  873. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_advanced_middleware/__init__.py +0 -0
  874. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_advanced_middleware/test_tutorial001.py +0 -0
  875. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_advanced_middleware/test_tutorial002.py +0 -0
  876. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_advanced_middleware/test_tutorial003.py +0 -0
  877. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_async_sql_databases/__init__.py +0 -0
  878. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_async_sql_databases/test_tutorial001.py +0 -0
  879. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_async_tests/__init__.py +0 -0
  880. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_async_tests/test_main.py +0 -0
  881. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_background_tasks/__init__.py +0 -0
  882. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_background_tasks/test_tutorial001.py +0 -0
  883. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_background_tasks/test_tutorial002.py +0 -0
  884. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_background_tasks/test_tutorial002_an.py +0 -0
  885. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_background_tasks/test_tutorial002_an_py310.py +0 -0
  886. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_background_tasks/test_tutorial002_an_py39.py +0 -0
  887. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_background_tasks/test_tutorial002_py310.py +0 -0
  888. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_behind_a_proxy/__init__.py +0 -0
  889. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_behind_a_proxy/test_tutorial001.py +0 -0
  890. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_behind_a_proxy/test_tutorial002.py +0 -0
  891. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_behind_a_proxy/test_tutorial003.py +0 -0
  892. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_behind_a_proxy/test_tutorial004.py +0 -0
  893. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_bigger_applications/__init__.py +0 -0
  894. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_bigger_applications/test_main.py +0 -0
  895. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_bigger_applications/test_main_an.py +0 -0
  896. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_bigger_applications/test_main_an_py39.py +0 -0
  897. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_body/__init__.py +0 -0
  898. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_body/test_tutorial001.py +0 -0
  899. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_body/test_tutorial001_py310.py +0 -0
  900. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_body_fields/__init__.py +0 -0
  901. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_body_fields/test_tutorial001.py +0 -0
  902. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_body_fields/test_tutorial001_an.py +0 -0
  903. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_body_fields/test_tutorial001_an_py310.py +0 -0
  904. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_body_fields/test_tutorial001_an_py39.py +0 -0
  905. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_body_fields/test_tutorial001_py310.py +0 -0
  906. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_body_multiple_params/__init__.py +0 -0
  907. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_body_multiple_params/test_tutorial001.py +0 -0
  908. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_body_multiple_params/test_tutorial001_an.py +0 -0
  909. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_body_multiple_params/test_tutorial001_an_py310.py +0 -0
  910. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_body_multiple_params/test_tutorial001_an_py39.py +0 -0
  911. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_body_multiple_params/test_tutorial001_py310.py +0 -0
  912. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_body_multiple_params/test_tutorial003.py +0 -0
  913. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_body_multiple_params/test_tutorial003_an.py +0 -0
  914. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_body_multiple_params/test_tutorial003_an_py310.py +0 -0
  915. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_body_multiple_params/test_tutorial003_an_py39.py +0 -0
  916. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_body_multiple_params/test_tutorial003_py310.py +0 -0
  917. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_body_nested_models/__init__.py +0 -0
  918. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_body_nested_models/test_tutorial009.py +0 -0
  919. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_body_nested_models/test_tutorial009_py39.py +0 -0
  920. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_body_updates/__init__.py +0 -0
  921. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_body_updates/test_tutorial001.py +0 -0
  922. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_body_updates/test_tutorial001_py310.py +0 -0
  923. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_body_updates/test_tutorial001_py39.py +0 -0
  924. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_conditional_openapi/__init__.py +0 -0
  925. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_conditional_openapi/test_tutorial001.py +0 -0
  926. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_configure_swagger_ui/__init__.py +0 -0
  927. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_configure_swagger_ui/test_tutorial001.py +0 -0
  928. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_configure_swagger_ui/test_tutorial002.py +0 -0
  929. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_configure_swagger_ui/test_tutorial003.py +0 -0
  930. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_cookie_params/__init__.py +0 -0
  931. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_cookie_params/test_tutorial001.py +0 -0
  932. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_cookie_params/test_tutorial001_an.py +0 -0
  933. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_cookie_params/test_tutorial001_an_py310.py +0 -0
  934. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_cookie_params/test_tutorial001_an_py39.py +0 -0
  935. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_cookie_params/test_tutorial001_py310.py +0 -0
  936. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_cors/__init__.py +0 -0
  937. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_cors/test_tutorial001.py +0 -0
  938. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_custom_docs_ui/__init__.py +0 -0
  939. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_custom_docs_ui/test_tutorial001.py +0 -0
  940. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_custom_docs_ui/test_tutorial002.py +0 -0
  941. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_custom_request_and_route/__init__.py +0 -0
  942. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_custom_request_and_route/test_tutorial001.py +0 -0
  943. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_custom_request_and_route/test_tutorial002.py +0 -0
  944. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_custom_request_and_route/test_tutorial003.py +0 -0
  945. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_custom_response/__init__.py +0 -0
  946. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_custom_response/test_tutorial001.py +0 -0
  947. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_custom_response/test_tutorial001b.py +0 -0
  948. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_custom_response/test_tutorial004.py +0 -0
  949. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_custom_response/test_tutorial005.py +0 -0
  950. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_custom_response/test_tutorial006.py +0 -0
  951. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_custom_response/test_tutorial006b.py +0 -0
  952. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_custom_response/test_tutorial006c.py +0 -0
  953. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_custom_response/test_tutorial007.py +0 -0
  954. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_custom_response/test_tutorial008.py +0 -0
  955. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_custom_response/test_tutorial009.py +0 -0
  956. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_custom_response/test_tutorial009b.py +0 -0
  957. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_custom_response/test_tutorial009c.py +0 -0
  958. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_dataclasses/__init__.py +0 -0
  959. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_dataclasses/test_tutorial001.py +0 -0
  960. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_dataclasses/test_tutorial002.py +0 -0
  961. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_dataclasses/test_tutorial003.py +0 -0
  962. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_dependencies/__init__.py +0 -0
  963. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_dependencies/test_tutorial001.py +0 -0
  964. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_dependencies/test_tutorial001_an.py +0 -0
  965. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_dependencies/test_tutorial001_an_py310.py +0 -0
  966. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_dependencies/test_tutorial001_an_py39.py +0 -0
  967. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_dependencies/test_tutorial001_py310.py +0 -0
  968. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_dependencies/test_tutorial004.py +0 -0
  969. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_dependencies/test_tutorial004_an.py +0 -0
  970. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_dependencies/test_tutorial004_an_py310.py +0 -0
  971. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_dependencies/test_tutorial004_an_py39.py +0 -0
  972. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_dependencies/test_tutorial004_py310.py +0 -0
  973. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_dependencies/test_tutorial006.py +0 -0
  974. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_dependencies/test_tutorial006_an.py +0 -0
  975. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_dependencies/test_tutorial006_an_py39.py +0 -0
  976. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_dependencies/test_tutorial008b.py +0 -0
  977. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_dependencies/test_tutorial008b_an.py +0 -0
  978. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_dependencies/test_tutorial008b_an_py39.py +0 -0
  979. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_dependencies/test_tutorial008c.py +0 -0
  980. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_dependencies/test_tutorial008c_an.py +0 -0
  981. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_dependencies/test_tutorial008c_an_py39.py +0 -0
  982. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_dependencies/test_tutorial008d.py +0 -0
  983. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_dependencies/test_tutorial008d_an.py +0 -0
  984. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_dependencies/test_tutorial008d_an_py39.py +0 -0
  985. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_dependencies/test_tutorial012.py +0 -0
  986. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_dependencies/test_tutorial012_an.py +0 -0
  987. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_dependencies/test_tutorial012_an_py39.py +0 -0
  988. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_events/__init__.py +0 -0
  989. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_events/test_tutorial001.py +0 -0
  990. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_events/test_tutorial002.py +0 -0
  991. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_events/test_tutorial003.py +0 -0
  992. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_extending_openapi/__init__.py +0 -0
  993. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_extending_openapi/test_tutorial001.py +0 -0
  994. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_extra_data_types/__init__.py +0 -0
  995. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_extra_data_types/test_tutorial001.py +0 -0
  996. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_extra_data_types/test_tutorial001_an.py +0 -0
  997. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_extra_data_types/test_tutorial001_an_py310.py +0 -0
  998. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_extra_data_types/test_tutorial001_an_py39.py +0 -0
  999. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_extra_data_types/test_tutorial001_py310.py +0 -0
  1000. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_extra_models/__init__.py +0 -0
  1001. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_extra_models/test_tutorial003.py +0 -0
  1002. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_extra_models/test_tutorial003_py310.py +0 -0
  1003. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_extra_models/test_tutorial004.py +0 -0
  1004. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_extra_models/test_tutorial004_py39.py +0 -0
  1005. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_extra_models/test_tutorial005.py +0 -0
  1006. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_extra_models/test_tutorial005_py39.py +0 -0
  1007. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_first_steps/__init__.py +0 -0
  1008. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_first_steps/test_tutorial001.py +0 -0
  1009. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_generate_clients/__init__.py +0 -0
  1010. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_generate_clients/test_tutorial003.py +0 -0
  1011. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_handling_errors/__init__.py +0 -0
  1012. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_handling_errors/test_tutorial001.py +0 -0
  1013. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_handling_errors/test_tutorial002.py +0 -0
  1014. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_handling_errors/test_tutorial003.py +0 -0
  1015. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_handling_errors/test_tutorial004.py +0 -0
  1016. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_handling_errors/test_tutorial005.py +0 -0
  1017. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_handling_errors/test_tutorial006.py +0 -0
  1018. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_header_params/__init__.py +0 -0
  1019. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_header_params/test_tutorial001.py +0 -0
  1020. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_header_params/test_tutorial001_an.py +0 -0
  1021. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_header_params/test_tutorial001_an_py310.py +0 -0
  1022. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_header_params/test_tutorial001_py310.py +0 -0
  1023. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_header_params/test_tutorial002.py +0 -0
  1024. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_header_params/test_tutorial002_an.py +0 -0
  1025. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_header_params/test_tutorial002_an_py310.py +0 -0
  1026. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_header_params/test_tutorial002_an_py39.py +0 -0
  1027. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_header_params/test_tutorial002_py310.py +0 -0
  1028. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_header_params/test_tutorial003.py +0 -0
  1029. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_header_params/test_tutorial003_an.py +0 -0
  1030. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_header_params/test_tutorial003_an_py310.py +0 -0
  1031. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_header_params/test_tutorial003_an_py39.py +0 -0
  1032. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_header_params/test_tutorial003_py310.py +0 -0
  1033. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_metadata/__init__.py +0 -0
  1034. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_metadata/test_tutorial001.py +0 -0
  1035. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_metadata/test_tutorial001_1.py +0 -0
  1036. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_metadata/test_tutorial004.py +0 -0
  1037. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_openapi_callbacks/__init__.py +0 -0
  1038. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_openapi_callbacks/test_tutorial001.py +0 -0
  1039. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_openapi_webhooks/__init__.py +0 -0
  1040. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_openapi_webhooks/test_tutorial001.py +0 -0
  1041. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_path_operation_advanced_configurations/__init__.py +0 -0
  1042. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_path_operation_advanced_configurations/test_tutorial001.py +0 -0
  1043. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_path_operation_advanced_configurations/test_tutorial002.py +0 -0
  1044. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_path_operation_advanced_configurations/test_tutorial003.py +0 -0
  1045. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_path_operation_advanced_configurations/test_tutorial004.py +0 -0
  1046. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_path_operation_advanced_configurations/test_tutorial005.py +0 -0
  1047. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_path_operation_advanced_configurations/test_tutorial006.py +0 -0
  1048. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_path_operation_advanced_configurations/test_tutorial007.py +0 -0
  1049. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_path_operation_advanced_configurations/test_tutorial007_pv1.py +0 -0
  1050. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_path_operation_configurations/__init__.py +0 -0
  1051. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_path_operation_configurations/test_tutorial002b.py +0 -0
  1052. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_path_operation_configurations/test_tutorial005.py +0 -0
  1053. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_path_operation_configurations/test_tutorial005_py310.py +0 -0
  1054. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_path_operation_configurations/test_tutorial005_py39.py +0 -0
  1055. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_path_operation_configurations/test_tutorial006.py +0 -0
  1056. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_path_params/__init__.py +0 -0
  1057. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_path_params/test_tutorial004.py +0 -0
  1058. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_path_params/test_tutorial005.py +0 -0
  1059. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_query_params/__init__.py +0 -0
  1060. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_query_params/test_tutorial005.py +0 -0
  1061. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_query_params/test_tutorial006.py +0 -0
  1062. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_query_params/test_tutorial006_py310.py +0 -0
  1063. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_query_params_str_validations/__init__.py +0 -0
  1064. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_query_params_str_validations/test_tutorial010.py +0 -0
  1065. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_query_params_str_validations/test_tutorial010_an.py +0 -0
  1066. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_query_params_str_validations/test_tutorial010_an_py310.py +0 -0
  1067. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_query_params_str_validations/test_tutorial010_an_py39.py +0 -0
  1068. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_query_params_str_validations/test_tutorial010_py310.py +0 -0
  1069. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_query_params_str_validations/test_tutorial011.py +0 -0
  1070. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_query_params_str_validations/test_tutorial011_an.py +0 -0
  1071. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_query_params_str_validations/test_tutorial011_an_py310.py +0 -0
  1072. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_query_params_str_validations/test_tutorial011_an_py39.py +0 -0
  1073. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_query_params_str_validations/test_tutorial011_py310.py +0 -0
  1074. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_query_params_str_validations/test_tutorial011_py39.py +0 -0
  1075. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_query_params_str_validations/test_tutorial012.py +0 -0
  1076. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_query_params_str_validations/test_tutorial012_an.py +0 -0
  1077. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_query_params_str_validations/test_tutorial012_an_py39.py +0 -0
  1078. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_query_params_str_validations/test_tutorial012_py39.py +0 -0
  1079. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_query_params_str_validations/test_tutorial013.py +0 -0
  1080. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_query_params_str_validations/test_tutorial013_an.py +0 -0
  1081. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_query_params_str_validations/test_tutorial013_an_py39.py +0 -0
  1082. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_query_params_str_validations/test_tutorial014.py +0 -0
  1083. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_query_params_str_validations/test_tutorial014_an.py +0 -0
  1084. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_query_params_str_validations/test_tutorial014_an_py310.py +0 -0
  1085. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_query_params_str_validations/test_tutorial014_an_py39.py +0 -0
  1086. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_query_params_str_validations/test_tutorial014_py310.py +0 -0
  1087. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_request_files/__init__.py +0 -0
  1088. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_request_files/test_tutorial001.py +0 -0
  1089. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_request_files/test_tutorial001_02.py +0 -0
  1090. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_request_files/test_tutorial001_02_an.py +0 -0
  1091. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_request_files/test_tutorial001_02_an_py310.py +0 -0
  1092. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_request_files/test_tutorial001_02_an_py39.py +0 -0
  1093. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_request_files/test_tutorial001_02_py310.py +0 -0
  1094. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_request_files/test_tutorial001_03.py +0 -0
  1095. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_request_files/test_tutorial001_03_an.py +0 -0
  1096. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_request_files/test_tutorial001_03_an_py39.py +0 -0
  1097. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_request_files/test_tutorial001_an.py +0 -0
  1098. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_request_files/test_tutorial001_an_py39.py +0 -0
  1099. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_request_files/test_tutorial002.py +0 -0
  1100. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_request_files/test_tutorial002_an.py +0 -0
  1101. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_request_files/test_tutorial002_an_py39.py +0 -0
  1102. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_request_files/test_tutorial002_py39.py +0 -0
  1103. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_request_files/test_tutorial003.py +0 -0
  1104. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_request_files/test_tutorial003_an.py +0 -0
  1105. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_request_files/test_tutorial003_an_py39.py +0 -0
  1106. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_request_files/test_tutorial003_py39.py +0 -0
  1107. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_request_forms/__init__.py +0 -0
  1108. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_request_forms/test_tutorial001.py +0 -0
  1109. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_request_forms/test_tutorial001_an.py +0 -0
  1110. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_request_forms/test_tutorial001_an_py39.py +0 -0
  1111. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_request_forms_and_files/__init__.py +0 -0
  1112. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_request_forms_and_files/test_tutorial001.py +0 -0
  1113. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_request_forms_and_files/test_tutorial001_an.py +0 -0
  1114. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_request_forms_and_files/test_tutorial001_an_py39.py +0 -0
  1115. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_response_change_status_code/__init__.py +0 -0
  1116. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_response_change_status_code/test_tutorial001.py +0 -0
  1117. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_response_cookies/__init__.py +0 -0
  1118. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_response_cookies/test_tutorial001.py +0 -0
  1119. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_response_cookies/test_tutorial002.py +0 -0
  1120. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_response_headers/__init__.py +0 -0
  1121. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_response_headers/test_tutorial001.py +0 -0
  1122. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_response_headers/test_tutorial002.py +0 -0
  1123. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_response_model/__init__.py +0 -0
  1124. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_response_model/test_tutorial003.py +0 -0
  1125. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_response_model/test_tutorial003_01.py +0 -0
  1126. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_response_model/test_tutorial003_01_py310.py +0 -0
  1127. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_response_model/test_tutorial003_02.py +0 -0
  1128. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_response_model/test_tutorial003_03.py +0 -0
  1129. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_response_model/test_tutorial003_04.py +0 -0
  1130. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_response_model/test_tutorial003_04_py310.py +0 -0
  1131. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_response_model/test_tutorial003_05.py +0 -0
  1132. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_response_model/test_tutorial003_05_py310.py +0 -0
  1133. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_response_model/test_tutorial003_py310.py +0 -0
  1134. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_response_model/test_tutorial004.py +0 -0
  1135. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_response_model/test_tutorial004_py310.py +0 -0
  1136. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_response_model/test_tutorial004_py39.py +0 -0
  1137. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_response_model/test_tutorial005.py +0 -0
  1138. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_response_model/test_tutorial005_py310.py +0 -0
  1139. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_response_model/test_tutorial006.py +0 -0
  1140. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_response_model/test_tutorial006_py310.py +0 -0
  1141. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_schema_extra_example/__init__.py +0 -0
  1142. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_schema_extra_example/test_tutorial001.py +0 -0
  1143. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_schema_extra_example/test_tutorial001_pv1.py +0 -0
  1144. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_schema_extra_example/test_tutorial001_py310.py +0 -0
  1145. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_schema_extra_example/test_tutorial001_py310_pv1.py +0 -0
  1146. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_schema_extra_example/test_tutorial004.py +0 -0
  1147. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_schema_extra_example/test_tutorial004_an.py +0 -0
  1148. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_schema_extra_example/test_tutorial004_an_py310.py +0 -0
  1149. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_schema_extra_example/test_tutorial004_an_py39.py +0 -0
  1150. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_schema_extra_example/test_tutorial004_py310.py +0 -0
  1151. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_schema_extra_example/test_tutorial005.py +0 -0
  1152. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_schema_extra_example/test_tutorial005_an.py +0 -0
  1153. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_schema_extra_example/test_tutorial005_an_py310.py +0 -0
  1154. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_schema_extra_example/test_tutorial005_an_py39.py +0 -0
  1155. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_schema_extra_example/test_tutorial005_py310.py +0 -0
  1156. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_security/__init__.py +0 -0
  1157. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_security/test_tutorial001.py +0 -0
  1158. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_security/test_tutorial001_an.py +0 -0
  1159. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_security/test_tutorial001_an_py39.py +0 -0
  1160. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_security/test_tutorial003.py +0 -0
  1161. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_security/test_tutorial003_an.py +0 -0
  1162. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_security/test_tutorial003_an_py310.py +0 -0
  1163. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_security/test_tutorial003_an_py39.py +0 -0
  1164. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_security/test_tutorial003_py310.py +0 -0
  1165. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_security/test_tutorial005.py +0 -0
  1166. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_security/test_tutorial005_an.py +0 -0
  1167. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_security/test_tutorial005_an_py310.py +0 -0
  1168. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_security/test_tutorial005_an_py39.py +0 -0
  1169. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_security/test_tutorial005_py310.py +0 -0
  1170. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_security/test_tutorial005_py39.py +0 -0
  1171. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_security/test_tutorial006.py +0 -0
  1172. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_security/test_tutorial006_an.py +0 -0
  1173. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_security/test_tutorial006_an_py39.py +0 -0
  1174. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_separate_openapi_schemas/__init__.py +0 -0
  1175. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_separate_openapi_schemas/test_tutorial001.py +0 -0
  1176. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_separate_openapi_schemas/test_tutorial001_py310.py +0 -0
  1177. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_separate_openapi_schemas/test_tutorial001_py39.py +0 -0
  1178. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_separate_openapi_schemas/test_tutorial002.py +0 -0
  1179. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_separate_openapi_schemas/test_tutorial002_py310.py +0 -0
  1180. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_separate_openapi_schemas/test_tutorial002_py39.py +0 -0
  1181. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_settings/__init__.py +0 -0
  1182. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_settings/test_app02.py +0 -0
  1183. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_settings/test_tutorial001.py +0 -0
  1184. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_settings/test_tutorial001_pv1.py +0 -0
  1185. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_sql_databases/__init__.py +0 -0
  1186. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_sql_databases/test_sql_databases.py +0 -0
  1187. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_sql_databases/test_sql_databases_middleware.py +0 -0
  1188. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_sql_databases/test_sql_databases_middleware_py310.py +0 -0
  1189. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_sql_databases/test_sql_databases_middleware_py39.py +0 -0
  1190. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_sql_databases/test_sql_databases_py310.py +0 -0
  1191. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_sql_databases/test_sql_databases_py39.py +0 -0
  1192. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_sql_databases/test_testing_databases.py +0 -0
  1193. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_sql_databases/test_testing_databases_py310.py +0 -0
  1194. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_sql_databases/test_testing_databases_py39.py +0 -0
  1195. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_sub_applications/__init__.py +0 -0
  1196. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_sub_applications/test_tutorial001.py +0 -0
  1197. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_templates/__init__.py +0 -0
  1198. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_templates/test_tutorial001.py +0 -0
  1199. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_testing/__init__.py +0 -0
  1200. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_testing/test_main.py +0 -0
  1201. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_testing/test_main_b.py +0 -0
  1202. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_testing/test_main_b_an.py +0 -0
  1203. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_testing/test_main_b_an_py310.py +0 -0
  1204. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_testing/test_main_b_an_py39.py +0 -0
  1205. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_testing/test_main_b_py310.py +0 -0
  1206. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_testing/test_tutorial001.py +0 -0
  1207. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_testing/test_tutorial002.py +0 -0
  1208. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_testing/test_tutorial003.py +0 -0
  1209. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_testing_dependencies/__init__.py +0 -0
  1210. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_testing_dependencies/test_tutorial001.py +0 -0
  1211. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_testing_dependencies/test_tutorial001_an.py +0 -0
  1212. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_testing_dependencies/test_tutorial001_an_py310.py +0 -0
  1213. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_testing_dependencies/test_tutorial001_an_py39.py +0 -0
  1214. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_testing_dependencies/test_tutorial001_py310.py +0 -0
  1215. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_websockets/__init__.py +0 -0
  1216. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_websockets/test_tutorial001.py +0 -0
  1217. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_websockets/test_tutorial002.py +0 -0
  1218. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_websockets/test_tutorial002_an.py +0 -0
  1219. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_websockets/test_tutorial002_an_py310.py +0 -0
  1220. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_websockets/test_tutorial002_an_py39.py +0 -0
  1221. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_websockets/test_tutorial002_py310.py +0 -0
  1222. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_websockets/test_tutorial003.py +0 -0
  1223. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_websockets/test_tutorial003_py39.py +0 -0
  1224. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_wsgi/__init__.py +0 -0
  1225. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_tutorial/test_wsgi/test_tutorial001.py +0 -0
  1226. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_typing_python39.py +0 -0
  1227. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_union_body.py +0 -0
  1228. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_union_inherited_body.py +0 -0
  1229. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_validate_response.py +0 -0
  1230. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_validate_response_dataclass.py +0 -0
  1231. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_validate_response_recursive/__init__.py +0 -0
  1232. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_validate_response_recursive/app_pv1.py +0 -0
  1233. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_validate_response_recursive/app_pv2.py +0 -0
  1234. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_validate_response_recursive/test_validate_response_recursive_pv1.py +0 -0
  1235. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_validate_response_recursive/test_validate_response_recursive_pv2.py +0 -0
  1236. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_webhooks_security.py +0 -0
  1237. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_ws_dependencies.py +0 -0
  1238. {fastapi-0.112.2 → fastapi-0.112.3}/tests/test_ws_router.py +0 -0
  1239. {fastapi-0.112.2 → fastapi-0.112.3}/tests/utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: fastapi
3
- Version: 0.112.2
3
+ Version: 0.112.3
4
4
  Summary: FastAPI framework, high performance, easy to learn, fast to code, ready for production
5
5
  Author-Email: =?utf-8?q?Sebasti=C3=A1n_Ram=C3=ADrez?= <tiangolo@gmail.com>
6
6
  Classifier: Intended Audience :: Information Technology
@@ -115,9 +115,8 @@ The key features are:
115
115
  <a href="https://bump.sh/fastapi?utm_source=fastapi&utm_medium=referral&utm_campaign=sponsor" target="_blank" title="Automate FastAPI documentation generation with Bump.sh"><img src="https://fastapi.tiangolo.com/img/sponsors/bump-sh.svg"></a>
116
116
  <a href="https://github.com/scalar/scalar/?utm_source=fastapi&utm_medium=website&utm_campaign=main-badge" target="_blank" title="Scalar: Beautiful Open-Source API References from Swagger/OpenAPI files"><img src="https://fastapi.tiangolo.com/img/sponsors/scalar.svg"></a>
117
117
  <a href="https://www.propelauth.com/?utm_source=fastapi&utm_campaign=1223&utm_medium=mainbadge" target="_blank" title="Auth, user management and more for your B2B product"><img src="https://fastapi.tiangolo.com/img/sponsors/propelauth.png"></a>
118
- <a href="https://docs.withcoherence.com/configuration/frameworks/?utm_medium=advertising&utm_source=fastapi&utm_campaign=docs#fastapi-example" target="_blank" title="Coherence"><img src="https://fastapi.tiangolo.com/img/sponsors/coherence.png"></a>
118
+ <a href="https://docs.withcoherence.com/coherence-templates/full-stack-template/#fastapi?utm_medium=advertising&utm_source=fastapi&utm_campaign=docs" target="_blank" title="Coherence"><img src="https://fastapi.tiangolo.com/img/sponsors/coherence.png"></a>
119
119
  <a href="https://www.mongodb.com/developer/languages/python/python-quickstart-fastapi/?utm_campaign=fastapi_framework&utm_source=fastapi_sponsorship&utm_medium=web_referral" target="_blank" title="Simplify Full Stack Development with FastAPI & MongoDB"><img src="https://fastapi.tiangolo.com/img/sponsors/mongodb.png"></a>
120
- <a href="https://konghq.com/products/kong-konnect?utm_medium=referral&utm_source=github&utm_campaign=platform&utm_content=fast-api" target="_blank" title="Kong Konnect - API management platform"><img src="https://fastapi.tiangolo.com/img/sponsors/kong.png"></a>
121
120
  <a href="https://zuplo.link/fastapi-gh" target="_blank" title="Zuplo: Scale, Protect, Document, and Monetize your FastAPI"><img src="https://fastapi.tiangolo.com/img/sponsors/zuplo.png"></a>
122
121
  <a href="https://fine.dev?ref=fastapibadge" target="_blank" title="Fine's AI FastAPI Workflow: Effortlessly Deploy and Integrate FastAPI into Your Project"><img src="https://fastapi.tiangolo.com/img/sponsors/fine.png"></a>
123
122
  <a href="https://liblab.com?utm_source=fastapi" target="_blank" title="liblab - Generate SDKs from FastAPI"><img src="https://fastapi.tiangolo.com/img/sponsors/liblab.png"></a>
@@ -457,7 +456,7 @@ Coming back to the previous code example, **FastAPI** will:
457
456
  * Check if there is an optional query parameter named `q` (as in `http://127.0.0.1:8000/items/foo?q=somequery`) for `GET` requests.
458
457
  * As the `q` parameter is declared with `= None`, it is optional.
459
458
  * Without the `None` it would be required (as is the body in the case with `PUT`).
460
- * For `PUT` requests to `/items/{item_id}`, Read the body as JSON:
459
+ * For `PUT` requests to `/items/{item_id}`, read the body as JSON:
461
460
  * Check that it has a required attribute `name` that should be a `str`.
462
461
  * Check that it has a required attribute `price` that has to be a `float`.
463
462
  * Check that it has an optional attribute `is_offer`, that should be a `bool`, if present.
@@ -52,9 +52,8 @@ The key features are:
52
52
  <a href="https://bump.sh/fastapi?utm_source=fastapi&utm_medium=referral&utm_campaign=sponsor" target="_blank" title="Automate FastAPI documentation generation with Bump.sh"><img src="https://fastapi.tiangolo.com/img/sponsors/bump-sh.svg"></a>
53
53
  <a href="https://github.com/scalar/scalar/?utm_source=fastapi&utm_medium=website&utm_campaign=main-badge" target="_blank" title="Scalar: Beautiful Open-Source API References from Swagger/OpenAPI files"><img src="https://fastapi.tiangolo.com/img/sponsors/scalar.svg"></a>
54
54
  <a href="https://www.propelauth.com/?utm_source=fastapi&utm_campaign=1223&utm_medium=mainbadge" target="_blank" title="Auth, user management and more for your B2B product"><img src="https://fastapi.tiangolo.com/img/sponsors/propelauth.png"></a>
55
- <a href="https://docs.withcoherence.com/configuration/frameworks/?utm_medium=advertising&utm_source=fastapi&utm_campaign=docs#fastapi-example" target="_blank" title="Coherence"><img src="https://fastapi.tiangolo.com/img/sponsors/coherence.png"></a>
55
+ <a href="https://docs.withcoherence.com/coherence-templates/full-stack-template/#fastapi?utm_medium=advertising&utm_source=fastapi&utm_campaign=docs" target="_blank" title="Coherence"><img src="https://fastapi.tiangolo.com/img/sponsors/coherence.png"></a>
56
56
  <a href="https://www.mongodb.com/developer/languages/python/python-quickstart-fastapi/?utm_campaign=fastapi_framework&utm_source=fastapi_sponsorship&utm_medium=web_referral" target="_blank" title="Simplify Full Stack Development with FastAPI & MongoDB"><img src="https://fastapi.tiangolo.com/img/sponsors/mongodb.png"></a>
57
- <a href="https://konghq.com/products/kong-konnect?utm_medium=referral&utm_source=github&utm_campaign=platform&utm_content=fast-api" target="_blank" title="Kong Konnect - API management platform"><img src="https://fastapi.tiangolo.com/img/sponsors/kong.png"></a>
58
57
  <a href="https://zuplo.link/fastapi-gh" target="_blank" title="Zuplo: Scale, Protect, Document, and Monetize your FastAPI"><img src="https://fastapi.tiangolo.com/img/sponsors/zuplo.png"></a>
59
58
  <a href="https://fine.dev?ref=fastapibadge" target="_blank" title="Fine's AI FastAPI Workflow: Effortlessly Deploy and Integrate FastAPI into Your Project"><img src="https://fastapi.tiangolo.com/img/sponsors/fine.png"></a>
60
59
  <a href="https://liblab.com?utm_source=fastapi" target="_blank" title="liblab - Generate SDKs from FastAPI"><img src="https://fastapi.tiangolo.com/img/sponsors/liblab.png"></a>
@@ -394,7 +393,7 @@ Coming back to the previous code example, **FastAPI** will:
394
393
  * Check if there is an optional query parameter named `q` (as in `http://127.0.0.1:8000/items/foo?q=somequery`) for `GET` requests.
395
394
  * As the `q` parameter is declared with `= None`, it is optional.
396
395
  * Without the `None` it would be required (as is the body in the case with `PUT`).
397
- * For `PUT` requests to `/items/{item_id}`, Read the body as JSON:
396
+ * For `PUT` requests to `/items/{item_id}`, read the body as JSON:
398
397
  * Check that it has a required attribute `name` that should be a `str`.
399
398
  * Check that it has a required attribute `price` that has to be a `float`.
400
399
  * Check that it has an optional attribute `is_offer`, that should be a `bool`, if present.
@@ -1,12 +1,14 @@
1
1
  import pytest
2
- from httpx import AsyncClient
2
+ from httpx import ASGITransport, AsyncClient
3
3
 
4
4
  from .main import app
5
5
 
6
6
 
7
7
  @pytest.mark.anyio
8
8
  async def test_root():
9
- async with AsyncClient(app=app, base_url="http://test") as ac:
9
+ async with AsyncClient(
10
+ transport=ASGITransport(app=app), base_url="http://test"
11
+ ) as ac:
10
12
  response = await ac.get("/")
11
13
  assert response.status_code == 200
12
14
  assert response.json() == {"message": "Tomato"}
@@ -7,8 +7,8 @@ app = FastAPI()
7
7
 
8
8
  @app.middleware("http")
9
9
  async def add_process_time_header(request: Request, call_next):
10
- start_time = time.time()
10
+ start_time = time.perf_counter()
11
11
  response = await call_next(request)
12
- process_time = time.time() - start_time
12
+ process_time = time.perf_counter() - start_time
13
13
  response.headers["X-Process-Time"] = str(process_time)
14
14
  return response
@@ -13,4 +13,6 @@ async def read_items(
13
13
  results = {"item_id": item_id}
14
14
  if q:
15
15
  results.update({"q": q})
16
+ if size:
17
+ results.update({"size": size})
16
18
  return results
@@ -14,4 +14,6 @@ async def read_items(
14
14
  results = {"item_id": item_id}
15
15
  if q:
16
16
  results.update({"q": q})
17
+ if size:
18
+ results.update({"size": size})
17
19
  return results
@@ -15,4 +15,6 @@ async def read_items(
15
15
  results = {"item_id": item_id}
16
16
  if q:
17
17
  results.update({"q": q})
18
+ if size:
19
+ results.update({"size": size})
18
20
  return results
@@ -1,6 +1,6 @@
1
1
  """FastAPI framework, high performance, easy to learn, fast to code, ready for production"""
2
2
 
3
- __version__ = "0.112.2"
3
+ __version__ = "0.112.3"
4
4
 
5
5
  from starlette import status as status
6
6
 
@@ -0,0 +1,37 @@
1
+ from dataclasses import dataclass, field
2
+ from typing import Any, Callable, List, Optional, Sequence, Tuple
3
+
4
+ from fastapi._compat import ModelField
5
+ from fastapi.security.base import SecurityBase
6
+
7
+
8
+ @dataclass
9
+ class SecurityRequirement:
10
+ security_scheme: SecurityBase
11
+ scopes: Optional[Sequence[str]] = None
12
+
13
+
14
+ @dataclass
15
+ class Dependant:
16
+ path_params: List[ModelField] = field(default_factory=list)
17
+ query_params: List[ModelField] = field(default_factory=list)
18
+ header_params: List[ModelField] = field(default_factory=list)
19
+ cookie_params: List[ModelField] = field(default_factory=list)
20
+ body_params: List[ModelField] = field(default_factory=list)
21
+ dependencies: List["Dependant"] = field(default_factory=list)
22
+ security_requirements: List[SecurityRequirement] = field(default_factory=list)
23
+ name: Optional[str] = None
24
+ call: Optional[Callable[..., Any]] = None
25
+ request_param_name: Optional[str] = None
26
+ websocket_param_name: Optional[str] = None
27
+ http_connection_param_name: Optional[str] = None
28
+ response_param_name: Optional[str] = None
29
+ background_tasks_param_name: Optional[str] = None
30
+ security_scopes_param_name: Optional[str] = None
31
+ security_scopes: Optional[List[str]] = None
32
+ use_cache: bool = True
33
+ path: Optional[str] = None
34
+ cache_key: Tuple[Optional[Callable[..., Any]], Tuple[str, ...]] = field(init=False)
35
+
36
+ def __post_init__(self) -> None:
37
+ self.cache_key = (self.call, tuple(sorted(set(self.security_scopes or []))))
@@ -1,6 +1,7 @@
1
1
  import inspect
2
2
  from contextlib import AsyncExitStack, contextmanager
3
3
  from copy import copy, deepcopy
4
+ from dataclasses import dataclass
4
5
  from typing import (
5
6
  Any,
6
7
  Callable,
@@ -54,7 +55,7 @@ from fastapi.logger import logger
54
55
  from fastapi.security.base import SecurityBase
55
56
  from fastapi.security.oauth2 import OAuth2, SecurityScopes
56
57
  from fastapi.security.open_id_connect_url import OpenIdConnect
57
- from fastapi.utils import create_response_field, get_path_param_names
58
+ from fastapi.utils import create_model_field, get_path_param_names
58
59
  from pydantic.fields import FieldInfo
59
60
  from starlette.background import BackgroundTasks as StarletteBackgroundTasks
60
61
  from starlette.concurrency import run_in_threadpool
@@ -79,25 +80,23 @@ multipart_incorrect_install_error = (
79
80
  )
80
81
 
81
82
 
82
- def check_file_field(field: ModelField) -> None:
83
- field_info = field.field_info
84
- if isinstance(field_info, params.Form):
83
+ def ensure_multipart_is_installed() -> None:
84
+ try:
85
+ # __version__ is available in both multiparts, and can be mocked
86
+ from multipart import __version__ # type: ignore
87
+
88
+ assert __version__
85
89
  try:
86
- # __version__ is available in both multiparts, and can be mocked
87
- from multipart import __version__ # type: ignore
88
-
89
- assert __version__
90
- try:
91
- # parse_options_header is only available in the right multipart
92
- from multipart.multipart import parse_options_header # type: ignore
93
-
94
- assert parse_options_header
95
- except ImportError:
96
- logger.error(multipart_incorrect_install_error)
97
- raise RuntimeError(multipart_incorrect_install_error) from None
90
+ # parse_options_header is only available in the right multipart
91
+ from multipart.multipart import parse_options_header # type: ignore
92
+
93
+ assert parse_options_header
98
94
  except ImportError:
99
- logger.error(multipart_not_installed_error)
100
- raise RuntimeError(multipart_not_installed_error) from None
95
+ logger.error(multipart_incorrect_install_error)
96
+ raise RuntimeError(multipart_incorrect_install_error) from None
97
+ except ImportError:
98
+ logger.error(multipart_not_installed_error)
99
+ raise RuntimeError(multipart_not_installed_error) from None
101
100
 
102
101
 
103
102
  def get_param_sub_dependant(
@@ -175,7 +174,7 @@ def get_flat_dependant(
175
174
  header_params=dependant.header_params.copy(),
176
175
  cookie_params=dependant.cookie_params.copy(),
177
176
  body_params=dependant.body_params.copy(),
178
- security_schemes=dependant.security_requirements.copy(),
177
+ security_requirements=dependant.security_requirements.copy(),
179
178
  use_cache=dependant.use_cache,
180
179
  path=dependant.path,
181
180
  )
@@ -258,16 +257,16 @@ def get_dependant(
258
257
  )
259
258
  for param_name, param in signature_params.items():
260
259
  is_path_param = param_name in path_param_names
261
- type_annotation, depends, param_field = analyze_param(
260
+ param_details = analyze_param(
262
261
  param_name=param_name,
263
262
  annotation=param.annotation,
264
263
  value=param.default,
265
264
  is_path_param=is_path_param,
266
265
  )
267
- if depends is not None:
266
+ if param_details.depends is not None:
268
267
  sub_dependant = get_param_sub_dependant(
269
268
  param_name=param_name,
270
- depends=depends,
269
+ depends=param_details.depends,
271
270
  path=path,
272
271
  security_scopes=security_scopes,
273
272
  )
@@ -275,18 +274,18 @@ def get_dependant(
275
274
  continue
276
275
  if add_non_field_param_to_dependency(
277
276
  param_name=param_name,
278
- type_annotation=type_annotation,
277
+ type_annotation=param_details.type_annotation,
279
278
  dependant=dependant,
280
279
  ):
281
280
  assert (
282
- param_field is None
281
+ param_details.field is None
283
282
  ), f"Cannot specify multiple FastAPI annotations for {param_name!r}"
284
283
  continue
285
- assert param_field is not None
286
- if is_body_param(param_field=param_field, is_path_param=is_path_param):
287
- dependant.body_params.append(param_field)
284
+ assert param_details.field is not None
285
+ if is_body_param(param_field=param_details.field, is_path_param=is_path_param):
286
+ dependant.body_params.append(param_details.field)
288
287
  else:
289
- add_param_to_fields(field=param_field, dependant=dependant)
288
+ add_param_to_fields(field=param_details.field, dependant=dependant)
290
289
  return dependant
291
290
 
292
291
 
@@ -314,13 +313,20 @@ def add_non_field_param_to_dependency(
314
313
  return None
315
314
 
316
315
 
316
+ @dataclass
317
+ class ParamDetails:
318
+ type_annotation: Any
319
+ depends: Optional[params.Depends]
320
+ field: Optional[ModelField]
321
+
322
+
317
323
  def analyze_param(
318
324
  *,
319
325
  param_name: str,
320
326
  annotation: Any,
321
327
  value: Any,
322
328
  is_path_param: bool,
323
- ) -> Tuple[Any, Optional[params.Depends], Optional[ModelField]]:
329
+ ) -> ParamDetails:
324
330
  field_info = None
325
331
  depends = None
326
332
  type_annotation: Any = Any
@@ -328,6 +334,7 @@ def analyze_param(
328
334
  if annotation is not inspect.Signature.empty:
329
335
  use_annotation = annotation
330
336
  type_annotation = annotation
337
+ # Extract Annotated info
331
338
  if get_origin(use_annotation) is Annotated:
332
339
  annotated_args = get_args(annotation)
333
340
  type_annotation = annotated_args[0]
@@ -347,6 +354,7 @@ def analyze_param(
347
354
  )
348
355
  else:
349
356
  fastapi_annotation = None
357
+ # Set default for Annotated FieldInfo
350
358
  if isinstance(fastapi_annotation, FieldInfo):
351
359
  # Copy `field_info` because we mutate `field_info.default` below.
352
360
  field_info = copy_field_info(
@@ -361,9 +369,10 @@ def analyze_param(
361
369
  field_info.default = value
362
370
  else:
363
371
  field_info.default = Required
372
+ # Get Annotated Depends
364
373
  elif isinstance(fastapi_annotation, params.Depends):
365
374
  depends = fastapi_annotation
366
-
375
+ # Get Depends from default value
367
376
  if isinstance(value, params.Depends):
368
377
  assert depends is None, (
369
378
  "Cannot specify `Depends` in `Annotated` and default value"
@@ -374,6 +383,7 @@ def analyze_param(
374
383
  f" default value together for {param_name!r}"
375
384
  )
376
385
  depends = value
386
+ # Get FieldInfo from default value
377
387
  elif isinstance(value, FieldInfo):
378
388
  assert field_info is None, (
379
389
  "Cannot specify FastAPI annotations in `Annotated` and default value"
@@ -383,11 +393,13 @@ def analyze_param(
383
393
  if PYDANTIC_V2:
384
394
  field_info.annotation = type_annotation
385
395
 
396
+ # Get Depends from type annotation
386
397
  if depends is not None and depends.dependency is None:
387
398
  # Copy `depends` before mutating it
388
399
  depends = copy(depends)
389
400
  depends.dependency = type_annotation
390
401
 
402
+ # Handle non-param type annotations like Request
391
403
  if lenient_issubclass(
392
404
  type_annotation,
393
405
  (
@@ -403,6 +415,7 @@ def analyze_param(
403
415
  assert (
404
416
  field_info is None
405
417
  ), f"Cannot specify FastAPI annotation for type {type_annotation!r}"
418
+ # Handle default assignations, neither field_info nor depends was not found in Annotated nor default value
406
419
  elif field_info is None and depends is None:
407
420
  default_value = value if value is not inspect.Signature.empty else Required
408
421
  if is_path_param:
@@ -420,7 +433,9 @@ def analyze_param(
420
433
  field_info = params.Query(annotation=use_annotation, default=default_value)
421
434
 
422
435
  field = None
436
+ # It's a field_info, not a dependency
423
437
  if field_info is not None:
438
+ # Handle field_info.in_
424
439
  if is_path_param:
425
440
  assert isinstance(field_info, params.Path), (
426
441
  f"Cannot use `{field_info.__class__.__name__}` for path param"
@@ -436,12 +451,14 @@ def analyze_param(
436
451
  field_info,
437
452
  param_name,
438
453
  )
454
+ if isinstance(field_info, params.Form):
455
+ ensure_multipart_is_installed()
439
456
  if not field_info.alias and getattr(field_info, "convert_underscores", None):
440
457
  alias = param_name.replace("_", "-")
441
458
  else:
442
459
  alias = field_info.alias or param_name
443
460
  field_info.alias = alias
444
- field = create_response_field(
461
+ field = create_model_field(
445
462
  name=param_name,
446
463
  type_=use_annotation_from_field_info,
447
464
  default=field_info.default,
@@ -450,7 +467,7 @@ def analyze_param(
450
467
  field_info=field_info,
451
468
  )
452
469
 
453
- return type_annotation, depends, field
470
+ return ParamDetails(type_annotation=type_annotation, depends=depends, field=field)
454
471
 
455
472
 
456
473
  def is_body_param(*, param_field: ModelField, is_path_param: bool) -> bool:
@@ -521,6 +538,15 @@ async def solve_generator(
521
538
  return await stack.enter_async_context(cm)
522
539
 
523
540
 
541
+ @dataclass
542
+ class SolvedDependency:
543
+ values: Dict[str, Any]
544
+ errors: List[Any]
545
+ background_tasks: Optional[StarletteBackgroundTasks]
546
+ response: Response
547
+ dependency_cache: Dict[Tuple[Callable[..., Any], Tuple[str]], Any]
548
+
549
+
524
550
  async def solve_dependencies(
525
551
  *,
526
552
  request: Union[Request, WebSocket],
@@ -531,13 +557,7 @@ async def solve_dependencies(
531
557
  dependency_overrides_provider: Optional[Any] = None,
532
558
  dependency_cache: Optional[Dict[Tuple[Callable[..., Any], Tuple[str]], Any]] = None,
533
559
  async_exit_stack: AsyncExitStack,
534
- ) -> Tuple[
535
- Dict[str, Any],
536
- List[Any],
537
- Optional[StarletteBackgroundTasks],
538
- Response,
539
- Dict[Tuple[Callable[..., Any], Tuple[str]], Any],
540
- ]:
560
+ ) -> SolvedDependency:
541
561
  values: Dict[str, Any] = {}
542
562
  errors: List[Any] = []
543
563
  if response is None:
@@ -579,27 +599,21 @@ async def solve_dependencies(
579
599
  dependency_cache=dependency_cache,
580
600
  async_exit_stack=async_exit_stack,
581
601
  )
582
- (
583
- sub_values,
584
- sub_errors,
585
- background_tasks,
586
- _, # the subdependency returns the same response we have
587
- sub_dependency_cache,
588
- ) = solved_result
589
- dependency_cache.update(sub_dependency_cache)
590
- if sub_errors:
591
- errors.extend(sub_errors)
602
+ background_tasks = solved_result.background_tasks
603
+ dependency_cache.update(solved_result.dependency_cache)
604
+ if solved_result.errors:
605
+ errors.extend(solved_result.errors)
592
606
  continue
593
607
  if sub_dependant.use_cache and sub_dependant.cache_key in dependency_cache:
594
608
  solved = dependency_cache[sub_dependant.cache_key]
595
609
  elif is_gen_callable(call) or is_async_gen_callable(call):
596
610
  solved = await solve_generator(
597
- call=call, stack=async_exit_stack, sub_values=sub_values
611
+ call=call, stack=async_exit_stack, sub_values=solved_result.values
598
612
  )
599
613
  elif is_coroutine_callable(call):
600
- solved = await call(**sub_values)
614
+ solved = await call(**solved_result.values)
601
615
  else:
602
- solved = await run_in_threadpool(call, **sub_values)
616
+ solved = await run_in_threadpool(call, **solved_result.values)
603
617
  if sub_dependant.name is not None:
604
618
  values[sub_dependant.name] = solved
605
619
  if sub_dependant.cache_key not in dependency_cache:
@@ -646,7 +660,13 @@ async def solve_dependencies(
646
660
  values[dependant.security_scopes_param_name] = SecurityScopes(
647
661
  scopes=dependant.security_scopes
648
662
  )
649
- return values, errors, background_tasks, response, dependency_cache
663
+ return SolvedDependency(
664
+ values=values,
665
+ errors=errors,
666
+ background_tasks=background_tasks,
667
+ response=response,
668
+ dependency_cache=dependency_cache,
669
+ )
650
670
 
651
671
 
652
672
  def request_params_to_args(
@@ -775,7 +795,6 @@ def get_body_field(*, dependant: Dependant, name: str) -> Optional[ModelField]:
775
795
  embed = getattr(field_info, "embed", None)
776
796
  body_param_names_set = {param.name for param in flat_dependant.body_params}
777
797
  if len(body_param_names_set) == 1 and not embed:
778
- check_file_field(first_param)
779
798
  return first_param
780
799
  # If one field requires to embed, all have to be embedded
781
800
  # in case a sub-dependency is evaluated with a single unique body field
@@ -807,12 +826,11 @@ def get_body_field(*, dependant: Dependant, name: str) -> Optional[ModelField]:
807
826
  ]
808
827
  if len(set(body_param_media_types)) == 1:
809
828
  BodyFieldInfo_kwargs["media_type"] = body_param_media_types[0]
810
- final_field = create_response_field(
829
+ final_field = create_model_field(
811
830
  name="body",
812
831
  type_=BodyModel,
813
832
  required=required,
814
833
  alias="body",
815
834
  field_info=BodyFieldInfo(**BodyFieldInfo_kwargs),
816
835
  )
817
- check_file_field(final_field)
818
836
  return final_field
@@ -49,7 +49,7 @@ from fastapi.exceptions import (
49
49
  from fastapi.types import DecoratedCallable, IncEx
50
50
  from fastapi.utils import (
51
51
  create_cloned_field,
52
- create_response_field,
52
+ create_model_field,
53
53
  generate_unique_id,
54
54
  get_value_or_default,
55
55
  is_body_allowed_for_status_code,
@@ -292,26 +292,34 @@ def get_request_handler(
292
292
  dependency_overrides_provider=dependency_overrides_provider,
293
293
  async_exit_stack=async_exit_stack,
294
294
  )
295
- values, errors, background_tasks, sub_response, _ = solved_result
295
+ errors = solved_result.errors
296
296
  if not errors:
297
297
  raw_response = await run_endpoint_function(
298
- dependant=dependant, values=values, is_coroutine=is_coroutine
298
+ dependant=dependant,
299
+ values=solved_result.values,
300
+ is_coroutine=is_coroutine,
299
301
  )
300
302
  if isinstance(raw_response, Response):
301
303
  if raw_response.background is None:
302
- raw_response.background = background_tasks
304
+ raw_response.background = solved_result.background_tasks
303
305
  response = raw_response
304
306
  else:
305
- response_args: Dict[str, Any] = {"background": background_tasks}
307
+ response_args: Dict[str, Any] = {
308
+ "background": solved_result.background_tasks
309
+ }
306
310
  # If status_code was set, use it, otherwise use the default from the
307
311
  # response class, in the case of redirect it's 307
308
312
  current_status_code = (
309
- status_code if status_code else sub_response.status_code
313
+ status_code
314
+ if status_code
315
+ else solved_result.response.status_code
310
316
  )
311
317
  if current_status_code is not None:
312
318
  response_args["status_code"] = current_status_code
313
- if sub_response.status_code:
314
- response_args["status_code"] = sub_response.status_code
319
+ if solved_result.response.status_code:
320
+ response_args["status_code"] = (
321
+ solved_result.response.status_code
322
+ )
315
323
  content = await serialize_response(
316
324
  field=response_field,
317
325
  response_content=raw_response,
@@ -326,7 +334,7 @@ def get_request_handler(
326
334
  response = actual_response_class(content, **response_args)
327
335
  if not is_body_allowed_for_status_code(response.status_code):
328
336
  response.body = b""
329
- response.headers.raw.extend(sub_response.headers.raw)
337
+ response.headers.raw.extend(solved_result.response.headers.raw)
330
338
  if errors:
331
339
  validation_error = RequestValidationError(
332
340
  _normalize_errors(errors), body=body
@@ -360,11 +368,12 @@ def get_websocket_app(
360
368
  dependency_overrides_provider=dependency_overrides_provider,
361
369
  async_exit_stack=async_exit_stack,
362
370
  )
363
- values, errors, _, _2, _3 = solved_result
364
- if errors:
365
- raise WebSocketRequestValidationError(_normalize_errors(errors))
371
+ if solved_result.errors:
372
+ raise WebSocketRequestValidationError(
373
+ _normalize_errors(solved_result.errors)
374
+ )
366
375
  assert dependant.call is not None, "dependant.call must be a function"
367
- await dependant.call(**values)
376
+ await dependant.call(**solved_result.values)
368
377
 
369
378
  return app
370
379
 
@@ -488,7 +497,7 @@ class APIRoute(routing.Route):
488
497
  status_code
489
498
  ), f"Status code {status_code} must not have a response body"
490
499
  response_name = "Response_" + self.unique_id
491
- self.response_field = create_response_field(
500
+ self.response_field = create_model_field(
492
501
  name=response_name,
493
502
  type_=self.response_model,
494
503
  mode="serialization",
@@ -521,7 +530,7 @@ class APIRoute(routing.Route):
521
530
  additional_status_code
522
531
  ), f"Status code {additional_status_code} must not have a response body"
523
532
  response_name = f"Response_{additional_status_code}_{self.unique_id}"
524
- response_field = create_response_field(name=response_name, type_=model)
533
+ response_field = create_model_field(name=response_name, type_=model)
525
534
  response_fields[additional_status_code] = response_field
526
535
  if response_fields:
527
536
  self.response_fields: Dict[Union[int, str], ModelField] = response_fields
@@ -60,9 +60,9 @@ def get_path_param_names(path: str) -> Set[str]:
60
60
  return set(re.findall("{(.*?)}", path))
61
61
 
62
62
 
63
- def create_response_field(
63
+ def create_model_field(
64
64
  name: str,
65
- type_: Type[Any],
65
+ type_: Any,
66
66
  class_validators: Optional[Dict[str, Validator]] = None,
67
67
  default: Optional[Any] = Undefined,
68
68
  required: Union[bool, UndefinedType] = Undefined,
@@ -71,9 +71,6 @@ def create_response_field(
71
71
  alias: Optional[str] = None,
72
72
  mode: Literal["validation", "serialization"] = "validation",
73
73
  ) -> ModelField:
74
- """
75
- Create a new response field. Raises if type_ is invalid.
76
- """
77
74
  class_validators = class_validators or {}
78
75
  if PYDANTIC_V2:
79
76
  field_info = field_info or FieldInfo(
@@ -135,7 +132,7 @@ def create_cloned_field(
135
132
  use_type.__fields__[f.name] = create_cloned_field(
136
133
  f, cloned_types=cloned_types
137
134
  )
138
- new_field = create_response_field(name=field.name, type_=use_type)
135
+ new_field = create_model_field(name=field.name, type_=use_type)
139
136
  new_field.has_alias = field.has_alias # type: ignore[attr-defined]
140
137
  new_field.alias = field.alias # type: ignore[misc]
141
138
  new_field.class_validators = field.class_validators # type: ignore[attr-defined]
@@ -47,7 +47,7 @@ dependencies = [
47
47
  "pydantic>=1.7.4,!=1.8,!=1.8.1,!=2.0.0,!=2.0.1,!=2.1.0,<3.0.0",
48
48
  "typing-extensions>=4.8.0",
49
49
  ]
50
- version = "0.112.2"
50
+ version = "0.112.3"
51
51
 
52
52
  [project.urls]
53
53
  Homepage = "https://github.com/fastapi/fastapi"
@@ -8,7 +8,7 @@ pyyaml >=5.3.1,<7.0.0
8
8
  # For Material for MkDocs, Chinese search
9
9
  jieba==0.42.1
10
10
  # For image processing by Material for MkDocs
11
- pillow==10.3.0
11
+ pillow==10.4.0
12
12
  # For image processing by Material for MkDocs
13
13
  cairosvg==2.7.1
14
14
  mkdocstrings[python]==0.25.1
@@ -3,7 +3,7 @@
3
3
  pytest >=7.1.3,<8.0.0
4
4
  coverage[toml] >= 6.5.0,< 8.0
5
5
  mypy ==1.8.0
6
- ruff ==0.6.1
6
+ ruff ==0.6.3
7
7
  dirty-equals ==0.6.0
8
8
  # TODO: once removing databases from tutorial, upgrade SQLAlchemy
9
9
  # probably when including SQLModel