clear-skies 1.22.22__tar.gz → 1.22.23__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 clear-skies might be problematic. Click here for more details.

Files changed (214) hide show
  1. {clear_skies-1.22.22 → clear_skies-1.22.23}/PKG-INFO +1 -1
  2. {clear_skies-1.22.22 → clear_skies-1.22.23}/pyproject.toml +1 -1
  3. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/authentication/__init__.py +5 -3
  4. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/authentication/authorization_pass_through.py +2 -2
  5. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/authentication/jwks_jwcrypto.py +3 -3
  6. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/authentication/public.py +12 -0
  7. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/authentication/secret_bearer.py +11 -0
  8. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/backends/api_backend.py +30 -17
  9. {clear_skies-1.22.22 → clear_skies-1.22.23}/LICENSE +0 -0
  10. {clear_skies-1.22.22 → clear_skies-1.22.23}/README.md +0 -0
  11. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/__init__.py +0 -0
  12. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/application.py +0 -0
  13. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/authentication/auth0_jwks.py +0 -0
  14. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/authentication/auth_exception.py +0 -0
  15. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/authentication/authorization.py +0 -0
  16. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/authentication/jwks.py +0 -0
  17. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/autodoc/__init__.py +0 -0
  18. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/autodoc/formats/__init__.py +0 -0
  19. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/autodoc/formats/oai3_json/__init__.py +0 -0
  20. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/autodoc/formats/oai3_json/oai3_json.py +0 -0
  21. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/autodoc/formats/oai3_json/oai3_schema_resolver.py +0 -0
  22. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/autodoc/formats/oai3_json/parameter.py +0 -0
  23. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/autodoc/formats/oai3_json/request.py +0 -0
  24. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/autodoc/formats/oai3_json/response.py +0 -0
  25. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/autodoc/formats/oai3_json/schema/__init__.py +0 -0
  26. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/autodoc/formats/oai3_json/schema/array.py +0 -0
  27. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/autodoc/formats/oai3_json/schema/default.py +0 -0
  28. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/autodoc/formats/oai3_json/schema/enum.py +0 -0
  29. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/autodoc/formats/oai3_json/schema/object.py +0 -0
  30. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/autodoc/formats/oai3_json/test.json +0 -0
  31. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/autodoc/request/__init__.py +0 -0
  32. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/autodoc/request/header.py +0 -0
  33. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/autodoc/request/json_body.py +0 -0
  34. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/autodoc/request/request.py +0 -0
  35. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/autodoc/request/url_parameter.py +0 -0
  36. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/autodoc/request/url_path.py +0 -0
  37. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/autodoc/response/__init__.py +0 -0
  38. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/autodoc/response/response.py +0 -0
  39. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/autodoc/schema/__init__.py +0 -0
  40. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/autodoc/schema/array.py +0 -0
  41. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/autodoc/schema/base64.py +0 -0
  42. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/autodoc/schema/boolean.py +0 -0
  43. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/autodoc/schema/date.py +0 -0
  44. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/autodoc/schema/datetime.py +0 -0
  45. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/autodoc/schema/double.py +0 -0
  46. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/autodoc/schema/enum.py +0 -0
  47. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/autodoc/schema/integer.py +0 -0
  48. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/autodoc/schema/long.py +0 -0
  49. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/autodoc/schema/number.py +0 -0
  50. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/autodoc/schema/object.py +0 -0
  51. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/autodoc/schema/password.py +0 -0
  52. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/autodoc/schema/string.py +0 -0
  53. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/backends/__init__.py +0 -0
  54. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/backends/api_get_only_backend.py +0 -0
  55. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/backends/backend.py +0 -0
  56. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/backends/cursor_backend.py +0 -0
  57. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/backends/example_backend.py +0 -0
  58. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/backends/file_backend.py +0 -0
  59. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/backends/json_backend.py +0 -0
  60. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/backends/memory_backend.py +0 -0
  61. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/backends/restful_api_advanced_search_backend.py +0 -0
  62. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/backends/secrets_backend.py +0 -0
  63. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/binding_config.py +0 -0
  64. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/column_types/__init__.py +0 -0
  65. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/column_types/audit.py +0 -0
  66. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/column_types/belongs_to.py +0 -0
  67. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/column_types/boolean.py +0 -0
  68. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/column_types/category_tree.py +0 -0
  69. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/column_types/column.py +0 -0
  70. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/column_types/created.py +0 -0
  71. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/column_types/created_by_authorization_data.py +0 -0
  72. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/column_types/created_by_header.py +0 -0
  73. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/column_types/created_by_ip.py +0 -0
  74. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/column_types/created_by_routing_data.py +0 -0
  75. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/column_types/created_by_user_agent.py +0 -0
  76. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/column_types/created_micro.py +0 -0
  77. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/column_types/datetime.py +0 -0
  78. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/column_types/datetime_micro.py +0 -0
  79. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/column_types/email.py +0 -0
  80. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/column_types/float.py +0 -0
  81. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/column_types/has_many.py +0 -0
  82. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/column_types/has_one.py +0 -0
  83. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/column_types/integer.py +0 -0
  84. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/column_types/json.py +0 -0
  85. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/column_types/many_to_many.py +0 -0
  86. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/column_types/many_to_many_with_data.py +0 -0
  87. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/column_types/phone.py +0 -0
  88. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/column_types/select.py +0 -0
  89. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/column_types/string.py +0 -0
  90. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/column_types/timestamp.py +0 -0
  91. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/column_types/updated.py +0 -0
  92. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/column_types/updated_micro.py +0 -0
  93. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/column_types/uuid.py +0 -0
  94. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/columns.py +0 -0
  95. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/condition_parser.py +0 -0
  96. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/contexts/__init__.py +0 -0
  97. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/contexts/bash.py +0 -0
  98. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/contexts/build_context.py +0 -0
  99. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/contexts/cli.py +0 -0
  100. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/contexts/context.py +0 -0
  101. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/contexts/convert_to_application.py +0 -0
  102. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/contexts/extract_handler.py +0 -0
  103. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/contexts/test.py +0 -0
  104. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/contexts/wsgi.py +0 -0
  105. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/decorators/__init__.py +0 -0
  106. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/decorators/allow_non_json_bodies.py +0 -0
  107. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/decorators/auth0_jwks.py +0 -0
  108. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/decorators/authorization.py +0 -0
  109. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/decorators/binding_classes.py +0 -0
  110. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/decorators/binding_modules.py +0 -0
  111. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/decorators/bindings.py +0 -0
  112. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/decorators/create.py +0 -0
  113. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/decorators/delete.py +0 -0
  114. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/decorators/docs.py +0 -0
  115. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/decorators/get.py +0 -0
  116. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/decorators/jwks.py +0 -0
  117. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/decorators/merge.py +0 -0
  118. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/decorators/patch.py +0 -0
  119. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/decorators/post.py +0 -0
  120. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/decorators/public.py +0 -0
  121. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/decorators/response_headers.py +0 -0
  122. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/decorators/return_raw_response.py +0 -0
  123. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/decorators/schema.py +0 -0
  124. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/decorators/secret_bearer.py +0 -0
  125. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/decorators/security_headers.py +0 -0
  126. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/di/__init__.py +0 -0
  127. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/di/additional_config.py +0 -0
  128. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/di/additional_config_auto_import.py +0 -0
  129. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/di/di.py +0 -0
  130. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/di/standard_dependencies.py +0 -0
  131. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/di/test_module/__init__.py +0 -0
  132. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/di/test_module/another_module/__init__.py +0 -0
  133. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/di/test_module/module_class.py +0 -0
  134. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/environment.py +0 -0
  135. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/functional/__init__.py +0 -0
  136. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/functional/string.py +0 -0
  137. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/functional/validations.py +0 -0
  138. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/handlers/__init__.py +0 -0
  139. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/handlers/advanced_search.py +0 -0
  140. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/handlers/base.py +0 -0
  141. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/handlers/callable.py +0 -0
  142. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/handlers/create.py +0 -0
  143. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/handlers/crud_by_method.py +0 -0
  144. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/handlers/database_connector.py +0 -0
  145. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/handlers/delete.py +0 -0
  146. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/handlers/exceptions/__init__.py +0 -0
  147. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/handlers/exceptions/authentication.py +0 -0
  148. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/handlers/exceptions/authorization.py +0 -0
  149. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/handlers/exceptions/client_error.py +0 -0
  150. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/handlers/exceptions/input_error.py +0 -0
  151. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/handlers/exceptions/not_found.py +0 -0
  152. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/handlers/get.py +0 -0
  153. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/handlers/health_check.py +0 -0
  154. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/handlers/input_processing.py +0 -0
  155. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/handlers/list.py +0 -0
  156. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/handlers/mygrations.py +0 -0
  157. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/handlers/request_method_routing.py +0 -0
  158. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/handlers/restful_api.py +0 -0
  159. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/handlers/routing.py +0 -0
  160. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/handlers/schema_helper.py +0 -0
  161. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/handlers/simple_routing.py +0 -0
  162. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/handlers/simple_routing_route.py +0 -0
  163. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/handlers/simple_search.py +0 -0
  164. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/handlers/update.py +0 -0
  165. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/handlers/write.py +0 -0
  166. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/input_outputs/__init__.py +0 -0
  167. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/input_outputs/cli.py +0 -0
  168. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/input_outputs/exceptions/__init__.py +0 -0
  169. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/input_outputs/exceptions/cli_input_error.py +0 -0
  170. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/input_outputs/exceptions/cli_not_found.py +0 -0
  171. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/input_outputs/input_output.py +0 -0
  172. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/input_outputs/wsgi.py +0 -0
  173. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/input_requirements/__init__.py +0 -0
  174. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/input_requirements/after.py +0 -0
  175. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/input_requirements/before.py +0 -0
  176. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/input_requirements/in_the_future_at_least.py +0 -0
  177. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/input_requirements/in_the_future_at_most.py +0 -0
  178. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/input_requirements/in_the_past_at_least.py +0 -0
  179. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/input_requirements/in_the_past_at_most.py +0 -0
  180. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/input_requirements/maximum_length.py +0 -0
  181. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/input_requirements/maximum_value.py +0 -0
  182. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/input_requirements/minimum_length.py +0 -0
  183. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/input_requirements/minimum_value.py +0 -0
  184. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/input_requirements/required.py +0 -0
  185. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/input_requirements/requirement.py +0 -0
  186. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/input_requirements/time_delta.py +0 -0
  187. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/input_requirements/unique.py +0 -0
  188. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/mocks/__init__.py +0 -0
  189. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/mocks/input_output.py +0 -0
  190. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/mocks/models.py +0 -0
  191. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/model.py +0 -0
  192. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/models.py +0 -0
  193. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/secrets/__init__.py +0 -0
  194. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/secrets/additional_configs/__init__.py +0 -0
  195. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/secrets/additional_configs/mysql_connection_dynamic_producer.py +0 -0
  196. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/secrets/additional_configs/mysql_connection_dynamic_producer_via_ssh_cert_bastion.py +0 -0
  197. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/secrets/akeyless.py +0 -0
  198. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/secrets/exceptions/__init__.py +0 -0
  199. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/secrets/exceptions/not_found.py +0 -0
  200. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/secrets/secrets.py +0 -0
  201. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/security_headers/__init__.py +0 -0
  202. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/security_headers/base.py +0 -0
  203. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/security_headers/cache_control.py +0 -0
  204. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/security_headers/cors.py +0 -0
  205. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/security_headers/csp.py +0 -0
  206. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/security_headers/hsts.py +0 -0
  207. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/security_headers/x_content_type_options.py +0 -0
  208. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/security_headers/x_frame_options.py +0 -0
  209. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/tests/__init__.py +0 -0
  210. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/tests/simple_api/__init__.py +0 -0
  211. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/tests/simple_api/models/__init__.py +0 -0
  212. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/tests/simple_api/models/status.py +0 -0
  213. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/tests/simple_api/models/user.py +0 -0
  214. {clear_skies-1.22.22 → clear_skies-1.22.23}/src/clearskies/tests/simple_api/users_api.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: clear-skies
3
- Version: 1.22.22
3
+ Version: 1.22.23
4
4
  Summary: A framework for building backends in the cloud
5
5
  Home-page: https://github.com/cmancone/clearskies
6
6
  License: MIT
@@ -2,7 +2,7 @@
2
2
 
3
3
  [tool.poetry]
4
4
  name = "clear-skies"
5
- version = "1.22.22"
5
+ version = "1.22.23"
6
6
  description = "A framework for building backends in the cloud"
7
7
  authors = [
8
8
  "Conor Mancone <cmancone@gmail.com>",
@@ -1,11 +1,11 @@
1
1
  from ..binding_config import BindingConfig
2
- from .secret_bearer import SecretBearer
3
- from .public import Public
4
2
  from .auth0_jwks import Auth0JWKS
5
3
  from .authorization import Authorization
4
+ from .authorization_pass_through import AuthorizationPassThrough
6
5
  from .jwks import JWKS
7
6
  from .jwks_jwcrypto import JWKSJwCrypto
8
- from .authorization_pass_through import AuthorizationPassThrough
7
+ from .public import Public, PublicAuth
8
+ from .secret_bearer import SecretBearer, SecretBearerAuth
9
9
 
10
10
 
11
11
  def public():
@@ -34,8 +34,10 @@ __all__ = [
34
34
  "BindingConfig",
35
35
  "public",
36
36
  "Public",
37
+ "PublicAuth",
37
38
  "secret_bearer",
38
39
  "SecretBearer",
40
+ "SecretBearerAuth",
39
41
  "auth0_jwks",
40
42
  "Auth0JWKS",
41
43
  "authorization",
@@ -1,7 +1,7 @@
1
- from clearskies.authentication import JWKSJwCrypto
1
+ from clearskies.authentication import jwks_jwcrypto
2
2
 
3
3
 
4
- class AuthorizationPassThrough(JWKSJwCrypto):
4
+ class AuthorizationPassThrough(jwks_jwcrypto.JWKSJwCrypto):
5
5
  """
6
6
  This authentication class takes the authentication header from the incoming request and reflects
7
7
  it on outgoing requests.
@@ -1,18 +1,18 @@
1
1
  import datetime
2
2
  import json
3
3
 
4
- from clearskies.authentication import JWKS
4
+ from clearskies.authentication import jwks
5
5
  from clearskies.handlers.exceptions import ClientError
6
6
 
7
7
 
8
- class JWKSJwCrypto(JWKS):
8
+ class JWKSJwCrypto(jwks.JWKS):
9
9
  def __init__(self, environment, requests):
10
10
  # the third parameter is supposed to be jose_jwt, but we're going to override all
11
11
  # the functions that use it
12
12
  super().__init__(environment, requests, {})
13
13
 
14
14
  def validate_jwt(self, raw_jwt):
15
- from jwcrypto import jws, jwk, jwt
15
+ from jwcrypto import jwk, jws, jwt
16
16
  from jwcrypto.common import JWException
17
17
 
18
18
  keys = jwk.JWKSet()
@@ -1,3 +1,7 @@
1
+ from requests.auth import AuthBase
2
+ from requests.models import PreparedRequest
3
+
4
+
1
5
  class Public:
2
6
  is_public = True
3
7
  can_authorize = False
@@ -26,3 +30,11 @@ class Public:
26
30
 
27
31
  def documentation_security_scheme_name(self):
28
32
  return ""
33
+
34
+
35
+ class PublicAuth(AuthBase, Public):
36
+ """Wrapper around SecretBearer to allow for the use of the SecretBearer class as an AuthBase class"""
37
+
38
+ def __call__(self, r: PreparedRequest) -> PreparedRequest:
39
+ r.headers = {**r.headers, **self.headers()}
40
+ return super().__call__(r)
@@ -1,3 +1,6 @@
1
+ from requests.auth import AuthBase
2
+ from requests.models import PreparedRequest
3
+
1
4
  from .. import autodoc
2
5
 
3
6
 
@@ -78,3 +81,11 @@ class SecretBearer:
78
81
 
79
82
  def documentation_security_scheme_name(self):
80
83
  return self._documentation_security_name if self._documentation_security_name is not None else "ApiKey"
84
+
85
+
86
+ class SecretBearerAuth(AuthBase, SecretBearer):
87
+ """Wrapper around SecretBearer to allow for the use of the SecretBearer class as an AuthBase class"""
88
+
89
+ def __call__(self, r: PreparedRequest) -> PreparedRequest:
90
+ r.headers = {**r.headers, **self.headers()}
91
+ return super().__call__(r)
@@ -1,10 +1,30 @@
1
- from .backend import Backend
1
+ import re
2
2
  from typing import Any, Callable, Dict, List, Tuple
3
- from ..autodoc.schema import Integer as AutoDocInteger
3
+
4
+ from requests import Session
5
+ from requests.auth import AuthBase
6
+
4
7
  from .. import model
8
+ from ..autodoc.schema import Integer as AutoDocInteger
5
9
  from ..column_types import JSON, DateTime
6
- import re
7
- from requests import Session
10
+ from .backend import Backend
11
+
12
+
13
+ class NullAuth(AuthBase):
14
+ """force requests to ignore the ``.netrc``
15
+
16
+ Some sites do not support regular authentication, but we still
17
+ want to store credentials in the ``.netrc`` file and submit them
18
+ as form elements. Without this, requests would otherwise use the
19
+ .netrc which leads, on some sites, to a 401 error.
20
+
21
+ Use with::
22
+
23
+ requests.get(url, auth=NullAuth())
24
+ """
25
+
26
+ def __call__(self, r):
27
+ return r
8
28
 
9
29
 
10
30
  class ApiBackend(Backend):
@@ -152,28 +172,21 @@ class ApiBackend(Backend):
152
172
  raise ValueError("Unexpected response from records request")
153
173
  return json["data"]
154
174
 
155
- def _execute_request(self, url: str, method: str, json: dict[str,Any]= {}, headers: dict[str,Any]= {}, is_retry: bool = False):
156
- if self._auth:
157
- headers = {**headers, **self._auth.headers(retry_auth=is_retry)}
175
+ def _execute_request(
176
+ self, url: str, method: str, json: dict[str, Any] = {}, headers: dict[str, Any] = {}, is_retry: bool = False
177
+ ):
158
178
  # the requests library seems to build a slightly different request if you specify the json parameter,
159
179
  # even if it is null, and this causes trouble for some picky servers
160
180
  if not json:
161
- response = self._requests.request(
162
- method,
163
- url,
164
- headers=headers,
165
- )
181
+ response = self._requests.request(method, url, headers=headers, auth=self._auth if self._auth else NullAuth())
166
182
  else:
167
183
  response = self._requests.request(
168
- method,
169
- url,
170
- headers=headers,
171
- json=json,
184
+ method, url, headers=headers, json=json, auth=self._auth if self._auth else NullAuth()
172
185
  )
173
186
 
174
187
  if not response.ok:
175
188
  if self._auth and self._auth.has_dynamic_credentials and not is_retry:
176
- return self._execute_request(url, method, json=json, headers=headers, is_retry=True)
189
+ return self._execute_request(url, method, json=json, headers=headers, auth=self._auth, is_retry=True)
177
190
  if not response.ok:
178
191
  raise ValueError(f"Failed request. Status code: {response.status_code}, message: {response.content!r}")
179
192
 
File without changes
File without changes