tigrbl 0.3.6__tar.gz → 0.3.7.dev1__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.
Files changed (300) hide show
  1. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/PKG-INFO +1 -1
  2. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/pyproject.toml +1 -1
  3. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/response/stdapi.py +16 -0
  4. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/security/schemes/api_key.py +2 -2
  5. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/security/schemes/http_bearer.py +1 -1
  6. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/transport/request.py +16 -0
  7. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/LICENSE +0 -0
  8. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/README.md +0 -0
  9. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/README.md +0 -0
  10. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/__init__.py +0 -0
  11. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/api/__init__.py +0 -0
  12. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/api/_api.py +0 -0
  13. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/api/_route.py +0 -0
  14. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/api/_router.py +0 -0
  15. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/api/_routing.py +0 -0
  16. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/api/api_spec.py +0 -0
  17. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/api/mro_collect.py +0 -0
  18. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/api/resolve.py +0 -0
  19. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/api/shortcuts.py +0 -0
  20. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/api/tigrbl_api.py +0 -0
  21. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/app/__init__.py +0 -0
  22. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/app/_app.py +0 -0
  23. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/app/_model_registry.py +0 -0
  24. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/app/_routing_runtime.py +0 -0
  25. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/app/app_spec.py +0 -0
  26. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/app/mro_collect.py +0 -0
  27. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/app/shortcuts.py +0 -0
  28. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/app/tigrbl_app.py +0 -0
  29. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/__init__.py +0 -0
  30. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/api/__init__.py +0 -0
  31. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/api/common.py +0 -0
  32. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/api/include.py +0 -0
  33. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/api/resource_proxy.py +0 -0
  34. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/api/rpc.py +0 -0
  35. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/columns.py +0 -0
  36. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/handlers/__init__.py +0 -0
  37. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/handlers/builder.py +0 -0
  38. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/handlers/ctx.py +0 -0
  39. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/handlers/identifiers.py +0 -0
  40. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/handlers/namespaces.py +0 -0
  41. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/handlers/steps.py +0 -0
  42. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/hooks.py +0 -0
  43. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/model.py +0 -0
  44. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/model_helpers.py +0 -0
  45. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/model_registry.py +0 -0
  46. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/rest/__init__.py +0 -0
  47. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/rest/attach.py +0 -0
  48. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/rest/collection.py +0 -0
  49. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/rest/common.py +0 -0
  50. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/rest/fastapi.py +0 -0
  51. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/rest/helpers.py +0 -0
  52. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/rest/io.py +0 -0
  53. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/rest/io_headers.py +0 -0
  54. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/rest/member.py +0 -0
  55. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/rest/router.py +0 -0
  56. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/rest/routing.py +0 -0
  57. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/rpc.py +0 -0
  58. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/schemas/__init__.py +0 -0
  59. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/schemas/builder.py +0 -0
  60. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/schemas/defaults.py +0 -0
  61. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/schemas/utils.py +0 -0
  62. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/column/README.md +0 -0
  63. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/column/__init__.py +0 -0
  64. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/column/_column.py +0 -0
  65. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/column/column_spec.py +0 -0
  66. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/column/field_spec.py +0 -0
  67. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/column/infer/__init__.py +0 -0
  68. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/column/infer/core.py +0 -0
  69. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/column/infer/jsonhints.py +0 -0
  70. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/column/infer/planning.py +0 -0
  71. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/column/infer/types.py +0 -0
  72. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/column/infer/utils.py +0 -0
  73. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/column/io_spec.py +0 -0
  74. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/column/mro_collect.py +0 -0
  75. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/column/shortcuts.py +0 -0
  76. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/column/storage_spec.py +0 -0
  77. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/config/__init__.py +0 -0
  78. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/config/constants.py +0 -0
  79. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/config/defaults.py +0 -0
  80. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/config/resolver.py +0 -0
  81. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/core/__init__.py +0 -0
  82. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/core/crud/__init__.py +0 -0
  83. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/core/crud/bulk.py +0 -0
  84. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/core/crud/helpers/__init__.py +0 -0
  85. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/core/crud/helpers/db.py +0 -0
  86. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/core/crud/helpers/enum.py +0 -0
  87. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/core/crud/helpers/filters.py +0 -0
  88. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/core/crud/helpers/model.py +0 -0
  89. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/core/crud/helpers/normalize.py +0 -0
  90. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/core/crud/ops.py +0 -0
  91. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/core/crud/params.py +0 -0
  92. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/core/resolver.py +0 -0
  93. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/core/router_runtime.py +0 -0
  94. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/ddl/__init__.py +0 -0
  95. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/decorators.py +0 -0
  96. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/deps/__init__.py +0 -0
  97. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/deps/jinja.py +0 -0
  98. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/deps/pydantic.py +0 -0
  99. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/deps/sqlalchemy.py +0 -0
  100. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/docs/verbosity.md +0 -0
  101. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/engine/__init__.py +0 -0
  102. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/engine/_engine.py +0 -0
  103. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/engine/bind.py +0 -0
  104. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/engine/builders.py +0 -0
  105. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/engine/capabilities.py +0 -0
  106. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/engine/collect.py +0 -0
  107. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/engine/decorators.py +0 -0
  108. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/engine/docs/PLUGINS.md +0 -0
  109. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/engine/engine_spec.py +0 -0
  110. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/engine/plugins.py +0 -0
  111. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/engine/registry.py +0 -0
  112. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/engine/resolver.py +0 -0
  113. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/engine/shortcuts.py +0 -0
  114. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/hook/__init__.py +0 -0
  115. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/hook/_hook.py +0 -0
  116. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/hook/decorators.py +0 -0
  117. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/hook/exceptions.py +0 -0
  118. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/hook/hook_spec.py +0 -0
  119. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/hook/mro_collect.py +0 -0
  120. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/hook/shortcuts.py +0 -0
  121. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/hook/types.py +0 -0
  122. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/op/__init__.py +0 -0
  123. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/op/_op.py +0 -0
  124. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/op/canonical.py +0 -0
  125. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/op/collect.py +0 -0
  126. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/op/decorators.py +0 -0
  127. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/op/model_registry.py +0 -0
  128. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/op/mro_collect.py +0 -0
  129. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/op/resolver.py +0 -0
  130. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/op/types.py +0 -0
  131. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/__init__.py +0 -0
  132. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/mixins/_RowBound.py +0 -0
  133. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/mixins/__init__.py +0 -0
  134. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/mixins/bootstrappable.py +0 -0
  135. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/mixins/bound.py +0 -0
  136. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/mixins/edges.py +0 -0
  137. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/mixins/fields.py +0 -0
  138. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/mixins/hierarchy.py +0 -0
  139. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/mixins/key_digest.py +0 -0
  140. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/mixins/lifecycle.py +0 -0
  141. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/mixins/locks.py +0 -0
  142. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/mixins/markers.py +0 -0
  143. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/mixins/operations.py +0 -0
  144. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/mixins/ownable.py +0 -0
  145. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/mixins/principals.py +0 -0
  146. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/mixins/tenant_bound.py +0 -0
  147. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/mixins/upsertable.py +0 -0
  148. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/mixins/utils.py +0 -0
  149. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/tables/__init__.py +0 -0
  150. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/tables/_base.py +0 -0
  151. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/tables/audit.py +0 -0
  152. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/tables/client.py +0 -0
  153. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/tables/group.py +0 -0
  154. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/tables/org.py +0 -0
  155. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/tables/rbac.py +0 -0
  156. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/tables/status.py +0 -0
  157. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/tables/tenant.py +0 -0
  158. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/tables/user.py +0 -0
  159. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/response/README.md +0 -0
  160. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/response/__init__.py +0 -0
  161. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/response/bind.py +0 -0
  162. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/response/decorators.py +0 -0
  163. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/response/resolver.py +0 -0
  164. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/response/shortcuts.py +0 -0
  165. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/response/types.py +0 -0
  166. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/rest/__init__.py +0 -0
  167. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/README.md +0 -0
  168. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/__init__.py +0 -0
  169. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/__init__.py +0 -0
  170. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/emit/__init__.py +0 -0
  171. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/emit/paired_post.py +0 -0
  172. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/emit/paired_pre.py +0 -0
  173. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/emit/readtime_alias.py +0 -0
  174. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/out/__init__.py +0 -0
  175. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/out/masking.py +0 -0
  176. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/refresh/__init__.py +0 -0
  177. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/refresh/demand.py +0 -0
  178. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/resolve/__init__.py +0 -0
  179. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/resolve/assemble.py +0 -0
  180. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/resolve/paired_gen.py +0 -0
  181. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/response/__init__.py +0 -0
  182. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/response/headers_from_payload.py +0 -0
  183. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/response/negotiate.py +0 -0
  184. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/response/negotiation.py +0 -0
  185. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/response/render.py +0 -0
  186. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/response/renderer.py +0 -0
  187. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/response/template.py +0 -0
  188. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/response/templates.py +0 -0
  189. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/schema/__init__.py +0 -0
  190. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/schema/collect_in.py +0 -0
  191. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/schema/collect_out.py +0 -0
  192. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/storage/__init__.py +0 -0
  193. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/storage/to_stored.py +0 -0
  194. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/wire/__init__.py +0 -0
  195. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/wire/build_in.py +0 -0
  196. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/wire/build_out.py +0 -0
  197. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/wire/dump.py +0 -0
  198. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/wire/validate_in.py +0 -0
  199. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/context.py +0 -0
  200. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/events.py +0 -0
  201. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/executor/__init__.py +0 -0
  202. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/executor/guards.py +0 -0
  203. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/executor/helpers.py +0 -0
  204. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/executor/invoke.py +0 -0
  205. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/executor/types.py +0 -0
  206. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/kernel.py +0 -0
  207. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/labels.py +0 -0
  208. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/opview.py +0 -0
  209. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/ordering.py +0 -0
  210. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/status/__init__.py +0 -0
  211. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/status/converters.py +0 -0
  212. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/status/exceptions.py +0 -0
  213. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/status/mappings.py +0 -0
  214. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/status/utils.py +0 -0
  215. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/system.py +0 -0
  216. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/trace.py +0 -0
  217. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/schema/__init__.py +0 -0
  218. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/schema/_schema.py +0 -0
  219. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/schema/builder/__init__.py +0 -0
  220. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/schema/builder/build_schema.py +0 -0
  221. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/schema/builder/cache.py +0 -0
  222. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/schema/builder/compat.py +0 -0
  223. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/schema/builder/extras.py +0 -0
  224. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/schema/builder/helpers.py +0 -0
  225. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/schema/builder/list_params.py +0 -0
  226. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/schema/builder/strip_parent_fields.py +0 -0
  227. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/schema/collect.py +0 -0
  228. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/schema/decorators.py +0 -0
  229. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/schema/get_schema.py +0 -0
  230. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/schema/schema_spec.py +0 -0
  231. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/schema/shortcuts.py +0 -0
  232. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/schema/types.py +0 -0
  233. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/schema/utils.py +0 -0
  234. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/security/__init__.py +0 -0
  235. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/security/dependencies.py +0 -0
  236. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/security/schemes/__init__.py +0 -0
  237. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/security/schemes/_base.py +0 -0
  238. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/security/schemes/mutual_tls.py +0 -0
  239. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/security/schemes/oauth2.py +0 -0
  240. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/security/schemes/openid_connect.py +0 -0
  241. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/session/README.md +0 -0
  242. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/session/__init__.py +0 -0
  243. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/session/abc.py +0 -0
  244. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/session/base.py +0 -0
  245. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/session/decorators.py +0 -0
  246. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/session/default.py +0 -0
  247. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/session/shortcuts.py +0 -0
  248. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/session/spec.py +0 -0
  249. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/shortcuts.py +0 -0
  250. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/specs.py +0 -0
  251. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/__init__.py +0 -0
  252. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/diagnostics/__init__.py +0 -0
  253. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/diagnostics/compat.py +0 -0
  254. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/diagnostics/healthz.py +0 -0
  255. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/diagnostics/hookz.py +0 -0
  256. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/diagnostics/kernelz.py +0 -0
  257. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/diagnostics/methodz.py +0 -0
  258. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/diagnostics/router.py +0 -0
  259. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/diagnostics/utils.py +0 -0
  260. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/docs/__init__.py +0 -0
  261. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/docs/lens.py +0 -0
  262. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/docs/openapi/__init__.py +0 -0
  263. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/docs/openapi/helpers.py +0 -0
  264. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/docs/openapi/metadata.py +0 -0
  265. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/docs/openapi/mount.py +0 -0
  266. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/docs/openapi/schema.py +0 -0
  267. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/docs/openrpc.py +0 -0
  268. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/docs/swagger.py +0 -0
  269. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/favicon/__init__.py +0 -0
  270. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/favicon/assets/favicon.svg +0 -0
  271. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/uvicorn.py +0 -0
  272. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/table/__init__.py +0 -0
  273. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/table/_base.py +0 -0
  274. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/table/_table.py +0 -0
  275. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/table/mro_collect.py +0 -0
  276. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/table/shortcuts.py +0 -0
  277. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/table/table_spec.py +0 -0
  278. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/transport/__init__.py +0 -0
  279. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/transport/asgi_wsgi.py +0 -0
  280. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/transport/background.py +0 -0
  281. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/transport/httpx.py +0 -0
  282. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/transport/jsonrpc/__init__.py +0 -0
  283. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/transport/jsonrpc/dispatcher.py +0 -0
  284. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/transport/jsonrpc/helpers.py +0 -0
  285. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/transport/jsonrpc/models.py +0 -0
  286. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/transport/jsonrpc/openrpc.py +0 -0
  287. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/transport/rest/__init__.py +0 -0
  288. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/transport/rest/aggregator.py +0 -0
  289. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/transport/rest/decorators.py +0 -0
  290. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/types/__init__.py +0 -0
  291. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/types/allow_anon_provider.py +0 -0
  292. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/types/authn_abc.py +0 -0
  293. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/types/nested_path_provider.py +0 -0
  294. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/types/op.py +0 -0
  295. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/types/op_config_provider.py +0 -0
  296. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/types/op_verb_alias_provider.py +0 -0
  297. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/types/request_extras_provider.py +0 -0
  298. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/types/response_extras_provider.py +0 -0
  299. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/types/table_config_provider.py +0 -0
  300. {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/types/uuid.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: tigrbl
3
- Version: 0.3.6
3
+ Version: 0.3.7.dev1
4
4
  Summary: A modern pure ASGI/WSGI Python framework for building schema-first REST and JSON-RPC APIs with SQLAlchemy models, typed validation, lifecycle hooks, and engine extension support.
5
5
  License-Expression: Apache-2.0
6
6
  License-File: LICENSE
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "tigrbl"
3
- version = "0.3.6"
3
+ version = "0.3.7.dev1"
4
4
  description = "A modern pure ASGI/WSGI Python framework for building schema-first REST and JSON-RPC APIs with SQLAlchemy models, typed validation, lifecycle hooks, and engine extension support."
5
5
  license = "Apache-2.0"
6
6
  readme = "README.md"
@@ -24,6 +24,10 @@ class Headers(MutableMapping[str, str]):
24
24
  for key, value in items:
25
25
  self._data[key.lower()] = (key.lower(), value)
26
26
 
27
+ @staticmethod
28
+ def _attribute_key(name: str) -> str:
29
+ return name.replace("_", "-").lower()
30
+
27
31
  def __getitem__(self, key: str) -> str:
28
32
  return self._data[key.lower()][1]
29
33
 
@@ -46,6 +50,18 @@ class Headers(MutableMapping[str, str]):
46
50
  def as_list(self) -> list[tuple[str, str]]:
47
51
  return [(k, v) for k, v in self._data.values()]
48
52
 
53
+ def __getattr__(self, name: str) -> str:
54
+ key = self._attribute_key(name)
55
+ if key in self._data:
56
+ return self._data[key][1]
57
+ raise AttributeError(name)
58
+
59
+ def __setattr__(self, name: str, value: str) -> None:
60
+ if name.startswith("_"):
61
+ object.__setattr__(self, name, value)
62
+ return
63
+ self[self._attribute_key(name)] = value
64
+
49
65
 
50
66
  @dataclass
51
67
  class Response:
@@ -33,8 +33,8 @@ class APIKey(OpenAPISecurityDependency):
33
33
  self.key_in = in_
34
34
 
35
35
  def __call__(self, request: Any) -> str | None:
36
- headers = getattr(request, "headers", None) or {}
37
- query = getattr(request, "query_params", None) or {}
36
+ headers = request.headers
37
+ query = request.query_params
38
38
  value: str | None = None
39
39
 
40
40
  if self.key_in == "header":
@@ -41,7 +41,7 @@ class HTTPBearer(OpenAPISecurityDependency):
41
41
  self.http_scheme = scheme
42
42
 
43
43
  def __call__(self, request: Any) -> HTTPAuthorizationCredentials | None:
44
- header = (getattr(request, "headers", None) or {}).get("authorization")
44
+ header = request.headers.get("authorization")
45
45
  if not header:
46
46
  if self.auto_error:
47
47
  raise HTTPException(
@@ -36,6 +36,22 @@ class Headers(MutableMapping[str, str]):
36
36
  def get(self, key: str, default: str | None = None) -> str | None:
37
37
  return self._data.get(key.lower(), default)
38
38
 
39
+ @staticmethod
40
+ def _attribute_key(name: str) -> str:
41
+ return name.replace("_", "-").lower()
42
+
43
+ def __getattr__(self, name: str) -> str:
44
+ key = self._attribute_key(name)
45
+ if key in self._data:
46
+ return self._data[key]
47
+ raise AttributeError(name)
48
+
49
+ def __setattr__(self, name: str, value: str) -> None:
50
+ if name.startswith("_"):
51
+ object.__setattr__(self, name, value)
52
+ return
53
+ self[self._attribute_key(name)] = value
54
+
39
55
 
40
56
  @dataclass(frozen=True)
41
57
  class URL:
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes