tigrbl 0.3.17.dev11__tar.gz → 0.3.17.dev13__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 (434) hide show
  1. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/PKG-INFO +22 -2
  2. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/README.md +12 -0
  3. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/pyproject.toml +22 -10
  4. tigrbl-0.3.17.dev13/tigrbl/__init__.py +333 -0
  5. tigrbl-0.3.17.dev13/tigrbl/config/__init__.py +3 -0
  6. tigrbl-0.3.17.dev13/tigrbl/config/constants.py +3 -0
  7. tigrbl-0.3.17.dev13/tigrbl/config/defaults.py +3 -0
  8. tigrbl-0.3.17.dev13/tigrbl/ddl/__init__.py +3 -0
  9. tigrbl-0.3.17.dev13/tigrbl/decorators/__init__.py +1 -0
  10. tigrbl-0.3.17.dev13/tigrbl/decorators/allow_anon.py +1 -0
  11. tigrbl-0.3.17.dev13/tigrbl/decorators/engine.py +1 -0
  12. tigrbl-0.3.17.dev13/tigrbl/decorators/hook.py +1 -0
  13. tigrbl-0.3.17.dev13/tigrbl/decorators/middlewares.py +1 -0
  14. tigrbl-0.3.17.dev13/tigrbl/decorators/op.py +1 -0
  15. tigrbl-0.3.17.dev13/tigrbl/decorators/response.py +1 -0
  16. tigrbl-0.3.17.dev13/tigrbl/decorators/rest.py +1 -0
  17. tigrbl-0.3.17.dev13/tigrbl/decorators/router.py +1 -0
  18. tigrbl-0.3.17.dev13/tigrbl/decorators/schema.py +1 -0
  19. tigrbl-0.3.17.dev13/tigrbl/decorators/session.py +1 -0
  20. tigrbl-0.3.17.dev13/tigrbl/engine/__init__.py +1 -0
  21. tigrbl-0.3.17.dev13/tigrbl/engine/bind.py +1 -0
  22. tigrbl-0.3.17.dev13/tigrbl/engine/builders.py +1 -0
  23. tigrbl-0.3.17.dev13/tigrbl/engine/capabilities.py +1 -0
  24. tigrbl-0.3.17.dev13/tigrbl/engine/collect.py +1 -0
  25. tigrbl-0.3.17.dev13/tigrbl/engine/plugins.py +1 -0
  26. tigrbl-0.3.17.dev13/tigrbl/engine/registry.py +1 -0
  27. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/engine/resolver.py +2 -2
  28. tigrbl-0.3.17.dev13/tigrbl/hook/types.py +10 -0
  29. tigrbl-0.3.17.dev13/tigrbl/op/__init__.py +22 -0
  30. tigrbl-0.3.17.dev13/tigrbl/op/canonical.py +3 -0
  31. tigrbl-0.3.17.dev13/tigrbl/op/collect.py +3 -0
  32. tigrbl-0.3.17.dev13/tigrbl/op/types.py +3 -0
  33. tigrbl-0.3.17.dev13/tigrbl/schema/__init__.py +3 -0
  34. tigrbl-0.3.17.dev13/tigrbl/schema/builder/__init__.py +3 -0
  35. tigrbl-0.3.17.dev13/tigrbl/schema/builder/build_schema.py +3 -0
  36. tigrbl-0.3.17.dev13/tigrbl/schema/builder/cache.py +3 -0
  37. tigrbl-0.3.17.dev13/tigrbl/schema/builder/extras.py +3 -0
  38. tigrbl-0.3.17.dev13/tigrbl/schema/builder/helpers.py +3 -0
  39. tigrbl-0.3.17.dev13/tigrbl/schema/builder/list_params.py +3 -0
  40. tigrbl-0.3.17.dev13/tigrbl/schema/builder/strip_parent_fields.py +3 -0
  41. tigrbl-0.3.17.dev13/tigrbl/schema/utils.py +9 -0
  42. tigrbl-0.3.17.dev13/tigrbl/security/__init__.py +3 -0
  43. tigrbl-0.3.17.dev13/tigrbl/security/dependencies.py +3 -0
  44. tigrbl-0.3.17.dev13/tigrbl/shortcuts/app.py +3 -0
  45. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/shortcuts/engine.py +19 -17
  46. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/shortcuts/hook.py +1 -1
  47. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/shortcuts/router.py +1 -1
  48. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/shortcuts/schema.py +1 -1
  49. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/specs.py +11 -3
  50. tigrbl-0.3.17.dev13/tigrbl/system/__init__.py +3 -0
  51. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/system/diagnostics/healthz.py +6 -0
  52. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/system/diagnostics/hookz.py +4 -4
  53. tigrbl-0.3.17.dev13/tigrbl/system/diagnostics/kernelz.py +57 -0
  54. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/system/diagnostics/router.py +2 -2
  55. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/system/diagnostics/utils.py +9 -1
  56. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/system/docs/openapi/helpers.py +1 -1
  57. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/system/docs/openapi/mount.py +1 -1
  58. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/system/docs/openapi/schema.py +7 -9
  59. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/system/docs/openrpc.py +15 -12
  60. tigrbl-0.3.17.dev13/tigrbl/transport/__init__.py +1 -0
  61. tigrbl-0.3.17.dev13/tigrbl/transport/jsonrpc/__init__.py +1 -0
  62. tigrbl-0.3.17.dev13/tigrbl/transport/jsonrpc/helpers.py +1 -0
  63. tigrbl-0.3.17.dev13/tigrbl/transport/jsonrpc/models.py +1 -0
  64. tigrbl-0.3.17.dev13/tigrbl/transport/rest/__init__.py +1 -0
  65. tigrbl-0.3.17.dev13/tigrbl/transport/rest/aggregator.py +1 -0
  66. tigrbl-0.3.17.dev13/tigrbl/types/__init__.py +35 -0
  67. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/utils/schema.py +1 -1
  68. tigrbl-0.3.17.dev11/tigrbl/__init__.py +0 -218
  69. tigrbl-0.3.17.dev11/tigrbl/_base/__init__.py +0 -24
  70. tigrbl-0.3.17.dev11/tigrbl/_base/_hook_base.py +0 -25
  71. tigrbl-0.3.17.dev11/tigrbl/_base/_middleware_base.py +0 -141
  72. tigrbl-0.3.17.dev11/tigrbl/_base/_op_base.py +0 -12
  73. tigrbl-0.3.17.dev11/tigrbl/_base/_request_base.py +0 -32
  74. tigrbl-0.3.17.dev11/tigrbl/_base/_response_base.py +0 -231
  75. tigrbl-0.3.17.dev11/tigrbl/_base/_schema_base.py +0 -14
  76. tigrbl-0.3.17.dev11/tigrbl/_base/_security_base.py +0 -69
  77. tigrbl-0.3.17.dev11/tigrbl/_base/_session_abc.py +0 -47
  78. tigrbl-0.3.17.dev11/tigrbl/_base/_session_base.py +0 -132
  79. tigrbl-0.3.17.dev11/tigrbl/_base/_storage.py +0 -13
  80. tigrbl-0.3.17.dev11/tigrbl/_base/_table_base.py +0 -443
  81. tigrbl-0.3.17.dev11/tigrbl/_base/_table_registry_base.py +0 -55
  82. tigrbl-0.3.17.dev11/tigrbl/_concrete/__init__.py +0 -44
  83. tigrbl-0.3.17.dev11/tigrbl/_concrete/_alias.py +0 -42
  84. tigrbl-0.3.17.dev11/tigrbl/_concrete/_app.py +0 -180
  85. tigrbl-0.3.17.dev11/tigrbl/_concrete/_background.py +0 -29
  86. tigrbl-0.3.17.dev11/tigrbl/_concrete/_body.py +0 -27
  87. tigrbl-0.3.17.dev11/tigrbl/_concrete/_column.py +0 -96
  88. tigrbl-0.3.17.dev11/tigrbl/_concrete/_cors_middleware.py +0 -103
  89. tigrbl-0.3.17.dev11/tigrbl/_concrete/_engine.py +0 -187
  90. tigrbl-0.3.17.dev11/tigrbl/_concrete/_file_response.py +0 -26
  91. tigrbl-0.3.17.dev11/tigrbl/_concrete/_headers.py +0 -142
  92. tigrbl-0.3.17.dev11/tigrbl/_concrete/_hook.py +0 -12
  93. tigrbl-0.3.17.dev11/tigrbl/_concrete/_html_response.py +0 -18
  94. tigrbl-0.3.17.dev11/tigrbl/_concrete/_httpx.py +0 -25
  95. tigrbl-0.3.17.dev11/tigrbl/_concrete/_json_response.py +0 -24
  96. tigrbl-0.3.17.dev11/tigrbl/_concrete/_middleware.py +0 -45
  97. tigrbl-0.3.17.dev11/tigrbl/_concrete/_op.py +0 -31
  98. tigrbl-0.3.17.dev11/tigrbl/_concrete/_op_registry.py +0 -301
  99. tigrbl-0.3.17.dev11/tigrbl/_concrete/_plain_text_response.py +0 -18
  100. tigrbl-0.3.17.dev11/tigrbl/_concrete/_redirect_response.py +0 -19
  101. tigrbl-0.3.17.dev11/tigrbl/_concrete/_request.py +0 -270
  102. tigrbl-0.3.17.dev11/tigrbl/_concrete/_request_adapters.py +0 -68
  103. tigrbl-0.3.17.dev11/tigrbl/_concrete/_response.py +0 -35
  104. tigrbl-0.3.17.dev11/tigrbl/_concrete/_route.py +0 -122
  105. tigrbl-0.3.17.dev11/tigrbl/_concrete/_router.py +0 -207
  106. tigrbl-0.3.17.dev11/tigrbl/_concrete/_routing.py +0 -139
  107. tigrbl-0.3.17.dev11/tigrbl/_concrete/_schema.py +0 -28
  108. tigrbl-0.3.17.dev11/tigrbl/_concrete/_security/api_key.py +0 -57
  109. tigrbl-0.3.17.dev11/tigrbl/_concrete/_security/http_bearer.py +0 -74
  110. tigrbl-0.3.17.dev11/tigrbl/_concrete/_security/mutual_tls.py +0 -27
  111. tigrbl-0.3.17.dev11/tigrbl/_concrete/_security/oauth2.py +0 -28
  112. tigrbl-0.3.17.dev11/tigrbl/_concrete/_security/openid_connect.py +0 -31
  113. tigrbl-0.3.17.dev11/tigrbl/_concrete/_session.py +0 -112
  114. tigrbl-0.3.17.dev11/tigrbl/_concrete/_storage.py +0 -13
  115. tigrbl-0.3.17.dev11/tigrbl/_concrete/_streaming_response.py +0 -35
  116. tigrbl-0.3.17.dev11/tigrbl/_concrete/_table.py +0 -103
  117. tigrbl-0.3.17.dev11/tigrbl/_concrete/_table_registry.py +0 -10
  118. tigrbl-0.3.17.dev11/tigrbl/_concrete/dependencies.py +0 -21
  119. tigrbl-0.3.17.dev11/tigrbl/_concrete/tigrbl_app.py +0 -895
  120. tigrbl-0.3.17.dev11/tigrbl/_concrete/tigrbl_router.py +0 -418
  121. tigrbl-0.3.17.dev11/tigrbl/_spec/__init__.py +0 -67
  122. tigrbl-0.3.17.dev11/tigrbl/_spec/alias_spec.py +0 -35
  123. tigrbl-0.3.17.dev11/tigrbl/_spec/app_spec.py +0 -137
  124. tigrbl-0.3.17.dev11/tigrbl/_spec/binding_spec.py +0 -78
  125. tigrbl-0.3.17.dev11/tigrbl/_spec/column_spec.py +0 -40
  126. tigrbl-0.3.17.dev11/tigrbl/_spec/engine_spec.py +0 -359
  127. tigrbl-0.3.17.dev11/tigrbl/_spec/field_spec.py +0 -32
  128. tigrbl-0.3.17.dev11/tigrbl/_spec/hook_spec.py +0 -24
  129. tigrbl-0.3.17.dev11/tigrbl/_spec/io_spec.py +0 -136
  130. tigrbl-0.3.17.dev11/tigrbl/_spec/middleware_spec.py +0 -28
  131. tigrbl-0.3.17.dev11/tigrbl/_spec/op_spec.py +0 -110
  132. tigrbl-0.3.17.dev11/tigrbl/_spec/request_spec.py +0 -19
  133. tigrbl-0.3.17.dev11/tigrbl/_spec/response_spec.py +0 -34
  134. tigrbl-0.3.17.dev11/tigrbl/_spec/response_types.py +0 -12
  135. tigrbl-0.3.17.dev11/tigrbl/_spec/router_spec.py +0 -25
  136. tigrbl-0.3.17.dev11/tigrbl/_spec/schema_spec.py +0 -20
  137. tigrbl-0.3.17.dev11/tigrbl/_spec/session_spec.py +0 -160
  138. tigrbl-0.3.17.dev11/tigrbl/_spec/shortcuts_spec.py +0 -8
  139. tigrbl-0.3.17.dev11/tigrbl/_spec/storage_spec.py +0 -72
  140. tigrbl-0.3.17.dev11/tigrbl/_spec/table_registry_spec.py +0 -14
  141. tigrbl-0.3.17.dev11/tigrbl/_spec/table_spec.py +0 -73
  142. tigrbl-0.3.17.dev11/tigrbl/column/README.md +0 -62
  143. tigrbl-0.3.17.dev11/tigrbl/column/__init__.py +0 -23
  144. tigrbl-0.3.17.dev11/tigrbl/column/infer/__init__.py +0 -25
  145. tigrbl-0.3.17.dev11/tigrbl/column/infer/core.py +0 -92
  146. tigrbl-0.3.17.dev11/tigrbl/column/infer/jsonhints.py +0 -44
  147. tigrbl-0.3.17.dev11/tigrbl/column/infer/planning.py +0 -133
  148. tigrbl-0.3.17.dev11/tigrbl/column/infer/types.py +0 -102
  149. tigrbl-0.3.17.dev11/tigrbl/column/infer/utils.py +0 -59
  150. tigrbl-0.3.17.dev11/tigrbl/config/__init__.py +0 -19
  151. tigrbl-0.3.17.dev11/tigrbl/config/constants.py +0 -224
  152. tigrbl-0.3.17.dev11/tigrbl/config/defaults.py +0 -32
  153. tigrbl-0.3.17.dev11/tigrbl/core/__init__.py +0 -47
  154. tigrbl-0.3.17.dev11/tigrbl/core/crud/__init__.py +0 -43
  155. tigrbl-0.3.17.dev11/tigrbl/core/crud/bulk.py +0 -167
  156. tigrbl-0.3.17.dev11/tigrbl/core/crud/helpers/__init__.py +0 -76
  157. tigrbl-0.3.17.dev11/tigrbl/core/crud/helpers/db.py +0 -91
  158. tigrbl-0.3.17.dev11/tigrbl/core/crud/helpers/enum.py +0 -85
  159. tigrbl-0.3.17.dev11/tigrbl/core/crud/helpers/filters.py +0 -161
  160. tigrbl-0.3.17.dev11/tigrbl/core/crud/helpers/model.py +0 -136
  161. tigrbl-0.3.17.dev11/tigrbl/core/crud/helpers/normalize.py +0 -98
  162. tigrbl-0.3.17.dev11/tigrbl/core/crud/ops.py +0 -298
  163. tigrbl-0.3.17.dev11/tigrbl/core/crud/params.py +0 -50
  164. tigrbl-0.3.17.dev11/tigrbl/ddl/__init__.py +0 -411
  165. tigrbl-0.3.17.dev11/tigrbl/decorators/__init__.py +0 -48
  166. tigrbl-0.3.17.dev11/tigrbl/decorators/engine.py +0 -110
  167. tigrbl-0.3.17.dev11/tigrbl/decorators/hook.py +0 -35
  168. tigrbl-0.3.17.dev11/tigrbl/decorators/middlewares.py +0 -32
  169. tigrbl-0.3.17.dev11/tigrbl/decorators/op.py +0 -254
  170. tigrbl-0.3.17.dev11/tigrbl/decorators/response.py +0 -45
  171. tigrbl-0.3.17.dev11/tigrbl/decorators/rest.py +0 -30
  172. tigrbl-0.3.17.dev11/tigrbl/decorators/router.py +0 -115
  173. tigrbl-0.3.17.dev11/tigrbl/decorators/schema.py +0 -67
  174. tigrbl-0.3.17.dev11/tigrbl/decorators/session.py +0 -43
  175. tigrbl-0.3.17.dev11/tigrbl/engine/__init__.py +0 -108
  176. tigrbl-0.3.17.dev11/tigrbl/engine/bind.py +0 -53
  177. tigrbl-0.3.17.dev11/tigrbl/engine/builders.py +0 -244
  178. tigrbl-0.3.17.dev11/tigrbl/engine/capabilities.py +0 -29
  179. tigrbl-0.3.17.dev11/tigrbl/engine/collect.py +0 -10
  180. tigrbl-0.3.17.dev11/tigrbl/engine/plugins.py +0 -52
  181. tigrbl-0.3.17.dev11/tigrbl/engine/registry.py +0 -36
  182. tigrbl-0.3.17.dev11/tigrbl/hook/types.py +0 -60
  183. tigrbl-0.3.17.dev11/tigrbl/mapping/__init__.py +0 -60
  184. tigrbl-0.3.17.dev11/tigrbl/mapping/app_mro_collect.py +0 -14
  185. tigrbl-0.3.17.dev11/tigrbl/mapping/apply.py +0 -98
  186. tigrbl-0.3.17.dev11/tigrbl/mapping/collect.py +0 -60
  187. tigrbl-0.3.17.dev11/tigrbl/mapping/collect_decorated_schemas.py +0 -78
  188. tigrbl-0.3.17.dev11/tigrbl/mapping/column_mro_collect.py +0 -124
  189. tigrbl-0.3.17.dev11/tigrbl/mapping/columns.py +0 -49
  190. tigrbl-0.3.17.dev11/tigrbl/mapping/config_resolver.py +0 -299
  191. tigrbl-0.3.17.dev11/tigrbl/mapping/context.py +0 -48
  192. tigrbl-0.3.17.dev11/tigrbl/mapping/core_resolver.py +0 -102
  193. tigrbl-0.3.17.dev11/tigrbl/mapping/diagnostics.py +0 -20
  194. tigrbl-0.3.17.dev11/tigrbl/mapping/engine_resolver.py +0 -379
  195. tigrbl-0.3.17.dev11/tigrbl/mapping/handlers/__init__.py +0 -10
  196. tigrbl-0.3.17.dev11/tigrbl/mapping/handlers/builder.py +0 -118
  197. tigrbl-0.3.17.dev11/tigrbl/mapping/handlers/ctx.py +0 -85
  198. tigrbl-0.3.17.dev11/tigrbl/mapping/handlers/identifiers.py +0 -227
  199. tigrbl-0.3.17.dev11/tigrbl/mapping/handlers/namespaces.py +0 -50
  200. tigrbl-0.3.17.dev11/tigrbl/mapping/handlers/steps.py +0 -276
  201. tigrbl-0.3.17.dev11/tigrbl/mapping/hook_mro_collect.py +0 -121
  202. tigrbl-0.3.17.dev11/tigrbl/mapping/hooks.py +0 -325
  203. tigrbl-0.3.17.dev11/tigrbl/mapping/mapping_resolver.py +0 -5
  204. tigrbl-0.3.17.dev11/tigrbl/mapping/model.py +0 -33
  205. tigrbl-0.3.17.dev11/tigrbl/mapping/model_helpers.py +0 -151
  206. tigrbl-0.3.17.dev11/tigrbl/mapping/model_registry.py +0 -85
  207. tigrbl-0.3.17.dev11/tigrbl/mapping/op_mro_collect.py +0 -136
  208. tigrbl-0.3.17.dev11/tigrbl/mapping/op_resolver.py +0 -216
  209. tigrbl-0.3.17.dev11/tigrbl/mapping/passes.py +0 -74
  210. tigrbl-0.3.17.dev11/tigrbl/mapping/plan.py +0 -54
  211. tigrbl-0.3.17.dev11/tigrbl/mapping/precedence.py +0 -45
  212. tigrbl-0.3.17.dev11/tigrbl/mapping/responses_resolver.py +0 -83
  213. tigrbl-0.3.17.dev11/tigrbl/mapping/rest/__init__.py +0 -7
  214. tigrbl-0.3.17.dev11/tigrbl/mapping/rest/attach.py +0 -25
  215. tigrbl-0.3.17.dev11/tigrbl/mapping/rest/collection.py +0 -290
  216. tigrbl-0.3.17.dev11/tigrbl/mapping/rest/common.py +0 -121
  217. tigrbl-0.3.17.dev11/tigrbl/mapping/rest/helpers.py +0 -108
  218. tigrbl-0.3.17.dev11/tigrbl/mapping/rest/io.py +0 -335
  219. tigrbl-0.3.17.dev11/tigrbl/mapping/rest/io_headers.py +0 -49
  220. tigrbl-0.3.17.dev11/tigrbl/mapping/rest/member.py +0 -200
  221. tigrbl-0.3.17.dev11/tigrbl/mapping/rest/router.py +0 -319
  222. tigrbl-0.3.17.dev11/tigrbl/mapping/rest/routing.py +0 -135
  223. tigrbl-0.3.17.dev11/tigrbl/mapping/router/common.py +0 -100
  224. tigrbl-0.3.17.dev11/tigrbl/mapping/router/include.py +0 -466
  225. tigrbl-0.3.17.dev11/tigrbl/mapping/router/resource_proxy.py +0 -104
  226. tigrbl-0.3.17.dev11/tigrbl/mapping/router/rpc.py +0 -153
  227. tigrbl-0.3.17.dev11/tigrbl/mapping/router_mro_collect.py +0 -45
  228. tigrbl-0.3.17.dev11/tigrbl/mapping/rpc.py +0 -493
  229. tigrbl-0.3.17.dev11/tigrbl/mapping/runtime_routes.py +0 -293
  230. tigrbl-0.3.17.dev11/tigrbl/mapping/schemas/__init__.py +0 -10
  231. tigrbl-0.3.17.dev11/tigrbl/mapping/schemas/builder.py +0 -347
  232. tigrbl-0.3.17.dev11/tigrbl/mapping/schemas/defaults.py +0 -259
  233. tigrbl-0.3.17.dev11/tigrbl/mapping/schemas/utils.py +0 -192
  234. tigrbl-0.3.17.dev11/tigrbl/mapping/spec_normalization.py +0 -110
  235. tigrbl-0.3.17.dev11/tigrbl/mapping/table.py +0 -5
  236. tigrbl-0.3.17.dev11/tigrbl/mapping/table_mro_collect.py +0 -14
  237. tigrbl-0.3.17.dev11/tigrbl/mapping/traversal.py +0 -196
  238. tigrbl-0.3.17.dev11/tigrbl/op/__init__.py +0 -39
  239. tigrbl-0.3.17.dev11/tigrbl/op/canonical.py +0 -33
  240. tigrbl-0.3.17.dev11/tigrbl/op/collect.py +0 -20
  241. tigrbl-0.3.17.dev11/tigrbl/op/types.py +0 -55
  242. tigrbl-0.3.17.dev11/tigrbl/orm/__init__.py +0 -1
  243. tigrbl-0.3.17.dev11/tigrbl/orm/mixins/_RowBound.py +0 -83
  244. tigrbl-0.3.17.dev11/tigrbl/orm/mixins/__init__.py +0 -95
  245. tigrbl-0.3.17.dev11/tigrbl/orm/mixins/bootstrappable.py +0 -113
  246. tigrbl-0.3.17.dev11/tigrbl/orm/mixins/bound.py +0 -47
  247. tigrbl-0.3.17.dev11/tigrbl/orm/mixins/edges.py +0 -40
  248. tigrbl-0.3.17.dev11/tigrbl/orm/mixins/fields.py +0 -165
  249. tigrbl-0.3.17.dev11/tigrbl/orm/mixins/hierarchy.py +0 -54
  250. tigrbl-0.3.17.dev11/tigrbl/orm/mixins/key_digest.py +0 -44
  251. tigrbl-0.3.17.dev11/tigrbl/orm/mixins/lifecycle.py +0 -115
  252. tigrbl-0.3.17.dev11/tigrbl/orm/mixins/locks.py +0 -51
  253. tigrbl-0.3.17.dev11/tigrbl/orm/mixins/markers.py +0 -16
  254. tigrbl-0.3.17.dev11/tigrbl/orm/mixins/operations.py +0 -57
  255. tigrbl-0.3.17.dev11/tigrbl/orm/mixins/ownable.py +0 -337
  256. tigrbl-0.3.17.dev11/tigrbl/orm/mixins/principals.py +0 -98
  257. tigrbl-0.3.17.dev11/tigrbl/orm/mixins/tenant_bound.py +0 -301
  258. tigrbl-0.3.17.dev11/tigrbl/orm/mixins/upsertable.py +0 -118
  259. tigrbl-0.3.17.dev11/tigrbl/orm/mixins/utils.py +0 -49
  260. tigrbl-0.3.17.dev11/tigrbl/orm/tables/__init__.py +0 -73
  261. tigrbl-0.3.17.dev11/tigrbl/orm/tables/_base.py +0 -7
  262. tigrbl-0.3.17.dev11/tigrbl/orm/tables/audit.py +0 -56
  263. tigrbl-0.3.17.dev11/tigrbl/orm/tables/client.py +0 -25
  264. tigrbl-0.3.17.dev11/tigrbl/orm/tables/group.py +0 -29
  265. tigrbl-0.3.17.dev11/tigrbl/orm/tables/org.py +0 -30
  266. tigrbl-0.3.17.dev11/tigrbl/orm/tables/rbac.py +0 -76
  267. tigrbl-0.3.17.dev11/tigrbl/orm/tables/status.py +0 -106
  268. tigrbl-0.3.17.dev11/tigrbl/orm/tables/tenant.py +0 -22
  269. tigrbl-0.3.17.dev11/tigrbl/orm/tables/user.py +0 -39
  270. tigrbl-0.3.17.dev11/tigrbl/runtime/README.md +0 -180
  271. tigrbl-0.3.17.dev11/tigrbl/runtime/__init__.py +0 -20
  272. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/__init__.py +0 -111
  273. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/dep/__init__.py +0 -15
  274. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/dep/extra.py +0 -104
  275. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/dep/security.py +0 -114
  276. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/egress/__init__.py +0 -43
  277. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/egress/asgi_send.py +0 -228
  278. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/egress/envelope_apply.py +0 -101
  279. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/egress/headers_apply.py +0 -58
  280. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/egress/http_finalize.py +0 -43
  281. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/egress/out_dump.py +0 -33
  282. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/egress/result_normalize.py +0 -35
  283. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/egress/to_transport_response.py +0 -125
  284. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/emit/__init__.py +0 -42
  285. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/emit/paired_post.py +0 -158
  286. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/emit/paired_pre.py +0 -106
  287. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/emit/readtime_alias.py +0 -120
  288. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/ingress/__init__.py +0 -58
  289. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/ingress/attach_compiled.py +0 -32
  290. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/ingress/body_peek.py +0 -29
  291. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/ingress/body_read.py +0 -66
  292. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/ingress/ctx_init.py +0 -27
  293. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/ingress/headers_parse.py +0 -67
  294. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/ingress/method_extract.py +0 -45
  295. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/ingress/metrics_start.py +0 -27
  296. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/ingress/path_extract.py +0 -46
  297. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/ingress/query_parse.py +0 -101
  298. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/ingress/raw_from_scope.py +0 -124
  299. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/ingress/request_body_apply.py +0 -26
  300. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/ingress/request_from_scope.py +0 -33
  301. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/out/__init__.py +0 -38
  302. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/out/masking.py +0 -135
  303. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/refresh/__init__.py +0 -38
  304. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/refresh/demand.py +0 -130
  305. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/resolve/__init__.py +0 -40
  306. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/resolve/assemble.py +0 -167
  307. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/resolve/paired_gen.py +0 -152
  308. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/response/__init__.py +0 -19
  309. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/response/headers_from_payload.py +0 -57
  310. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/response/negotiate.py +0 -30
  311. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/response/negotiation.py +0 -43
  312. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/response/render.py +0 -82
  313. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/response/renderer.py +0 -117
  314. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/response/template.py +0 -44
  315. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/response/templates.py +0 -88
  316. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/route/__init__.py +0 -42
  317. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/route/binding_match.py +0 -155
  318. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/route/binding_policy_apply.py +0 -82
  319. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/route/ctx_finalize.py +0 -142
  320. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/route/op_resolve.py +0 -67
  321. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/route/params_normalize.py +0 -22
  322. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/route/path_params_extract.py +0 -21
  323. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/route/payload_select.py +0 -222
  324. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/route/plan_select.py +0 -31
  325. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/route/protocol_detect.py +0 -51
  326. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/route/rpc_envelope_parse.py +0 -135
  327. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/route/rpc_method_match.py +0 -39
  328. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/schema/__init__.py +0 -40
  329. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/schema/collect_in.py +0 -21
  330. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/schema/collect_out.py +0 -21
  331. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/storage/__init__.py +0 -38
  332. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/storage/to_stored.py +0 -167
  333. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/sys/__init__.py +0 -26
  334. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/sys/commit_tx.py +0 -16
  335. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/sys/handler_persistence.py +0 -38
  336. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/sys/start_tx.py +0 -16
  337. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/wire/__init__.py +0 -45
  338. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/wire/build_in.py +0 -287
  339. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/wire/build_out.py +0 -99
  340. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/wire/dump.py +0 -270
  341. tigrbl-0.3.17.dev11/tigrbl/runtime/atoms/wire/validate_in.py +0 -259
  342. tigrbl-0.3.17.dev11/tigrbl/runtime/context.py +0 -206
  343. tigrbl-0.3.17.dev11/tigrbl/runtime/events.py +0 -435
  344. tigrbl-0.3.17.dev11/tigrbl/runtime/exceptions.py +0 -18
  345. tigrbl-0.3.17.dev11/tigrbl/runtime/executor/__init__.py +0 -6
  346. tigrbl-0.3.17.dev11/tigrbl/runtime/executor/guards.py +0 -132
  347. tigrbl-0.3.17.dev11/tigrbl/runtime/executor/helpers.py +0 -194
  348. tigrbl-0.3.17.dev11/tigrbl/runtime/executor/invoke.py +0 -242
  349. tigrbl-0.3.17.dev11/tigrbl/runtime/executor/types.py +0 -128
  350. tigrbl-0.3.17.dev11/tigrbl/runtime/gw/__init__.py +0 -4
  351. tigrbl-0.3.17.dev11/tigrbl/runtime/gw/invoke.py +0 -345
  352. tigrbl-0.3.17.dev11/tigrbl/runtime/gw/raw.py +0 -26
  353. tigrbl-0.3.17.dev11/tigrbl/runtime/hook_types.py +0 -60
  354. tigrbl-0.3.17.dev11/tigrbl/runtime/kernel/__init__.py +0 -49
  355. tigrbl-0.3.17.dev11/tigrbl/runtime/kernel/atoms.py +0 -234
  356. tigrbl-0.3.17.dev11/tigrbl/runtime/kernel/cache.py +0 -85
  357. tigrbl-0.3.17.dev11/tigrbl/runtime/kernel/core.py +0 -483
  358. tigrbl-0.3.17.dev11/tigrbl/runtime/kernel/models.py +0 -124
  359. tigrbl-0.3.17.dev11/tigrbl/runtime/kernel/opview_compiler.py +0 -99
  360. tigrbl-0.3.17.dev11/tigrbl/runtime/kernel/payload.py +0 -64
  361. tigrbl-0.3.17.dev11/tigrbl/runtime/kernel.py +0 -667
  362. tigrbl-0.3.17.dev11/tigrbl/runtime/labels.py +0 -369
  363. tigrbl-0.3.17.dev11/tigrbl/runtime/opview.py +0 -89
  364. tigrbl-0.3.17.dev11/tigrbl/runtime/ordering.py +0 -331
  365. tigrbl-0.3.17.dev11/tigrbl/runtime/status/__init__.py +0 -63
  366. tigrbl-0.3.17.dev11/tigrbl/runtime/status/converters.py +0 -222
  367. tigrbl-0.3.17.dev11/tigrbl/runtime/status/exceptions.py +0 -149
  368. tigrbl-0.3.17.dev11/tigrbl/runtime/status/mappings.py +0 -94
  369. tigrbl-0.3.17.dev11/tigrbl/runtime/status/utils.py +0 -114
  370. tigrbl-0.3.17.dev11/tigrbl/runtime/system.py +0 -338
  371. tigrbl-0.3.17.dev11/tigrbl/runtime/trace.py +0 -330
  372. tigrbl-0.3.17.dev11/tigrbl/schema/__init__.py +0 -27
  373. tigrbl-0.3.17.dev11/tigrbl/schema/builder/__init__.py +0 -17
  374. tigrbl-0.3.17.dev11/tigrbl/schema/builder/build_schema.py +0 -308
  375. tigrbl-0.3.17.dev11/tigrbl/schema/builder/cache.py +0 -24
  376. tigrbl-0.3.17.dev11/tigrbl/schema/builder/extras.py +0 -85
  377. tigrbl-0.3.17.dev11/tigrbl/schema/builder/helpers.py +0 -87
  378. tigrbl-0.3.17.dev11/tigrbl/schema/builder/list_params.py +0 -117
  379. tigrbl-0.3.17.dev11/tigrbl/schema/builder/strip_parent_fields.py +0 -70
  380. tigrbl-0.3.17.dev11/tigrbl/schema/types.py +0 -34
  381. tigrbl-0.3.17.dev11/tigrbl/schema/utils.py +0 -142
  382. tigrbl-0.3.17.dev11/tigrbl/security/__init__.py +0 -5
  383. tigrbl-0.3.17.dev11/tigrbl/security/dependencies.py +0 -5
  384. tigrbl-0.3.17.dev11/tigrbl/shortcuts/app.py +0 -65
  385. tigrbl-0.3.17.dev11/tigrbl/system/__init__.py +0 -98
  386. tigrbl-0.3.17.dev11/tigrbl/system/diagnostics/kernelz.py +0 -20
  387. tigrbl-0.3.17.dev11/tigrbl/transport/__init__.py +0 -3
  388. tigrbl-0.3.17.dev11/tigrbl/transport/jsonrpc/__init__.py +0 -0
  389. tigrbl-0.3.17.dev11/tigrbl/transport/jsonrpc/helpers.py +0 -55
  390. tigrbl-0.3.17.dev11/tigrbl/transport/jsonrpc/models.py +0 -41
  391. tigrbl-0.3.17.dev11/tigrbl/transport/rest/__init__.py +0 -30
  392. tigrbl-0.3.17.dev11/tigrbl/transport/rest/aggregator.py +0 -118
  393. tigrbl-0.3.17.dev11/tigrbl/types/__init__.py +0 -187
  394. tigrbl-0.3.17.dev11/tigrbl/types/allow_anon_provider.py +0 -19
  395. tigrbl-0.3.17.dev11/tigrbl/types/authn_abc.py +0 -31
  396. tigrbl-0.3.17.dev11/tigrbl/types/nested_path_provider.py +0 -22
  397. tigrbl-0.3.17.dev11/tigrbl/types/op.py +0 -35
  398. tigrbl-0.3.17.dev11/tigrbl/types/op_config_provider.py +0 -17
  399. tigrbl-0.3.17.dev11/tigrbl/types/op_verb_alias_provider.py +0 -33
  400. tigrbl-0.3.17.dev11/tigrbl/types/request_extras_provider.py +0 -22
  401. tigrbl-0.3.17.dev11/tigrbl/types/response_extras_provider.py +0 -22
  402. tigrbl-0.3.17.dev11/tigrbl/types/table_config_provider.py +0 -13
  403. tigrbl-0.3.17.dev11/tigrbl/types/uuid.py +0 -55
  404. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/LICENSE +0 -0
  405. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/README.md +0 -0
  406. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/docs/column_specs.md +0 -0
  407. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/docs/session.md +0 -0
  408. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/docs/verbosity.md +0 -0
  409. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/engine/docs/PLUGINS.md +0 -0
  410. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/hook/exceptions.py +0 -0
  411. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/middlewares/__init__.py +0 -0
  412. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/middlewares/compose.py +0 -0
  413. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/requests.py +0 -0
  414. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/rest/__init__.py +0 -0
  415. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/shortcuts/__init__.py +0 -0
  416. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/shortcuts/column.py +0 -0
  417. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/shortcuts/op.py +0 -0
  418. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/shortcuts/responses.py +0 -0
  419. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/shortcuts/table.py +0 -0
  420. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/system/diagnostics/__init__.py +0 -0
  421. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/system/diagnostics/methodz.py +0 -0
  422. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/system/docs/__init__.py +0 -0
  423. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/system/docs/lens.py +0 -0
  424. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/system/docs/openapi/__init__.py +0 -0
  425. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/system/docs/openapi/metadata.py +0 -0
  426. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/system/docs/swagger.py +0 -0
  427. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/system/favicon/__init__.py +0 -0
  428. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/system/favicon/assets/favicon.svg +0 -0
  429. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/system/uvicorn.py +0 -0
  430. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/utils/__init__.py +0 -0
  431. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/vendor/__init__.py +0 -0
  432. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/vendor/jinja.py +0 -0
  433. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/vendor/pydantic.py +0 -0
  434. {tigrbl-0.3.17.dev11 → tigrbl-0.3.17.dev13}/tigrbl/vendor/sqlalchemy.py +0 -0
@@ -1,10 +1,9 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: tigrbl
3
- Version: 0.3.17.dev11
3
+ Version: 0.3.17.dev13
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
7
- Keywords: tigrbl,sdk,standards,asgi,rest,rpc
8
7
  Author: Jacob Stewart
9
8
  Author-email: jacob@swarmauri.com
10
9
  Requires-Python: >=3.10,<3.13
@@ -27,6 +26,15 @@ Requires-Dist: jinja2 (>=3.1.4) ; extra == "templates"
27
26
  Requires-Dist: psycopg2-binary (>=2.9.9) ; extra == "postgres"
28
27
  Requires-Dist: pydantic (>=2.0.0)
29
28
  Requires-Dist: sqlalchemy (>=2.0)
29
+ Requires-Dist: tigrbl-atoms
30
+ Requires-Dist: tigrbl-base
31
+ Requires-Dist: tigrbl-canon
32
+ Requires-Dist: tigrbl-concrete
33
+ Requires-Dist: tigrbl-core
34
+ Requires-Dist: tigrbl-kernel
35
+ Requires-Dist: tigrbl-ops-oltp
36
+ Requires-Dist: tigrbl-orm
37
+ Requires-Dist: tigrbl-runtime
30
38
  Requires-Dist: tigrbl-tests ; extra == "tests"
31
39
  Requires-Dist: uvicorn
32
40
  Description-Content-Type: text/markdown
@@ -59,6 +67,18 @@ A high-leverage ASGI meta-framework that turns plain SQLAlchemy models into a fu
59
67
  - 🧩 Pluggable engine and provider abstractions
60
68
  - 🚀 Built as an ASGI-native framework with Pydantic-powered schema generation
61
69
 
70
+ ## Split Package Module Locations 🗂️
71
+
72
+ These surfaces are now maintained in the split Tigrbl packages (with `tigrbl.*`
73
+ kept as compatibility imports):
74
+
75
+ - `tigrbl.ddl` → `tigrbl_concrete.ddl`
76
+ - `tigrbl.system` → `tigrbl_concrete.system`
77
+ - `tigrbl.op` → `tigrbl_core.op`
78
+ - `tigrbl.config` → `tigrbl_core.config`
79
+ - `tigrbl.schema` → `tigrbl_core.schema`
80
+ - `tigrbl.security` → `tigrbl_concrete.security`
81
+
62
82
  ## Runtime-owned Routing Contract
63
83
 
64
84
  For the kernel-first flow that avoids pre-runtime REST/RPC dispatching, see
@@ -26,6 +26,18 @@ A high-leverage ASGI meta-framework that turns plain SQLAlchemy models into a fu
26
26
  - 🧩 Pluggable engine and provider abstractions
27
27
  - 🚀 Built as an ASGI-native framework with Pydantic-powered schema generation
28
28
 
29
+ ## Split Package Module Locations 🗂️
30
+
31
+ These surfaces are now maintained in the split Tigrbl packages (with `tigrbl.*`
32
+ kept as compatibility imports):
33
+
34
+ - `tigrbl.ddl` → `tigrbl_concrete.ddl`
35
+ - `tigrbl.system` → `tigrbl_concrete.system`
36
+ - `tigrbl.op` → `tigrbl_core.op`
37
+ - `tigrbl.config` → `tigrbl_core.config`
38
+ - `tigrbl.schema` → `tigrbl_core.schema`
39
+ - `tigrbl.security` → `tigrbl_concrete.security`
40
+
29
41
  ## Runtime-owned Routing Contract
30
42
 
31
43
  For the kernel-first flow that avoids pre-runtime REST/RPC dispatching, see
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "tigrbl"
3
- version = "0.3.17.dev11"
3
+ version = "0.3.17.dev13"
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"
@@ -18,22 +18,24 @@ classifiers = [
18
18
  ]
19
19
  authors = [{ name = "Jacob Stewart", email = "jacob@swarmauri.com" }]
20
20
  dependencies = [
21
+ "tigrbl-core",
22
+ "tigrbl-base",
23
+ "tigrbl-concrete",
24
+ "tigrbl-canon",
25
+ "tigrbl-orm",
26
+ "tigrbl-runtime",
27
+ "tigrbl-atoms",
28
+ "tigrbl-kernel",
29
+ "tigrbl-ops-oltp",
21
30
  "pydantic>=2.0.0",
22
31
  "sqlalchemy>=2.0",
23
32
  "aiosqlite>=0.19.0",
24
33
  "httpx>=0.27.0",
25
34
  "greenlet>=3.2.3",
26
- "uvicorn",
27
- ]
28
- keywords = [
29
- 'tigrbl',
30
- 'sdk',
31
- 'standards',
32
- 'asgi',
33
- 'rest',
34
- 'rpc',
35
+ "uvicorn",
35
36
  ]
36
37
 
38
+
37
39
  [project.optional-dependencies]
38
40
  postgres = [
39
41
  "asyncpg>=0.30.0",
@@ -47,9 +49,19 @@ tests = [
47
49
  ]
48
50
 
49
51
  [tool.uv.sources]
52
+ "tigrbl-core" = { workspace = true }
53
+ "tigrbl-base" = { workspace = true }
54
+ "tigrbl-concrete" = { workspace = true }
55
+ "tigrbl-canon" = { workspace = true }
56
+ "tigrbl-orm" = { workspace = true }
57
+ "tigrbl-runtime" = { workspace = true }
58
+ "tigrbl-atoms" = { workspace = true }
59
+ "tigrbl-kernel" = { workspace = true }
60
+ "tigrbl-ops-oltp" = { workspace = true }
50
61
  tigrbl-tests = { workspace = true }
51
62
  tigrbl_client = { workspace = true }
52
63
 
64
+
53
65
  [tool.pytest.ini_options]
54
66
  norecursedirs = ["combined", "scripts"]
55
67
  testpaths = ["../tigrbl_tests/tests"]
@@ -0,0 +1,333 @@
1
+ """Tigrbl public API facade over split core packages."""
2
+
3
+ from __future__ import annotations
4
+
5
+ from importlib import import_module
6
+ from pkgutil import extend_path
7
+ import sys
8
+
9
+ __path__ = extend_path(__path__, __name__)
10
+
11
+
12
+ # Compatibility aliases so legacy ``tigrbl.<segment>`` imports resolve to
13
+ # the new split packages.
14
+ _ALIAS_MODULES = {
15
+ "_spec": "tigrbl_core._spec",
16
+ "_base": "tigrbl_base._base",
17
+ "_concrete": "tigrbl_concrete._concrete",
18
+ "core": "tigrbl_ops_oltp",
19
+ "orm": "tigrbl_orm.orm",
20
+ "runtime": "tigrbl_runtime.runtime",
21
+ "executors": "tigrbl_runtime.executors",
22
+ "atoms": "tigrbl_atoms.atoms",
23
+ }
24
+
25
+
26
+ def _optional_import(path: str):
27
+ try:
28
+ return import_module(path)
29
+ except ImportError:
30
+ return None
31
+
32
+
33
+ def _install_alias(alias: str, target: str) -> None:
34
+ module = _optional_import(target)
35
+ if module is None:
36
+ return
37
+
38
+ alias_name = f"{__name__}.{alias}"
39
+ sys.modules.setdefault(alias_name, module)
40
+
41
+ target_prefix = f"{target}."
42
+ alias_prefix = f"{alias_name}."
43
+ for name, loaded in tuple(sys.modules.items()):
44
+ if name.startswith(target_prefix):
45
+ suffix = name[len(target_prefix) :]
46
+ sys.modules.setdefault(f"{alias_prefix}{suffix}", loaded)
47
+
48
+ module_path = getattr(module, "__path__", None)
49
+ if not module_path:
50
+ return
51
+
52
+ from pkgutil import walk_packages
53
+
54
+ for info in walk_packages(module_path, target_prefix):
55
+ submodule = _optional_import(info.name)
56
+ if submodule is None:
57
+ continue
58
+ suffix = info.name[len(target_prefix) :]
59
+ sys.modules.setdefault(f"{alias_prefix}{suffix}", submodule)
60
+
61
+
62
+ for alias, target in _ALIAS_MODULES.items():
63
+ _install_alias(alias, target)
64
+
65
+
66
+ _spec = import_module("tigrbl_core._spec")
67
+ _base = import_module("tigrbl_base._base")
68
+ _concrete = import_module("tigrbl_concrete._concrete")
69
+ canon = None
70
+ orm = import_module("tigrbl_orm.orm")
71
+ runtime = _optional_import("tigrbl_runtime.runtime")
72
+ atoms = _optional_import("tigrbl_atoms.atoms")
73
+ kernel = None
74
+ core = _optional_import("tigrbl_ops_oltp")
75
+
76
+ # Backward-compatible names requested for top-level facade access.
77
+ specs = _spec
78
+ base = _base
79
+ concrete = _concrete
80
+
81
+ from tigrbl_concrete._concrete import ( # noqa: E402
82
+ APIKey,
83
+ Alias,
84
+ App,
85
+ BackgroundTask,
86
+ Column,
87
+ FileResponse,
88
+ ForeignKey,
89
+ Hook,
90
+ HTMLResponse,
91
+ HTTPBearer,
92
+ JSONResponse,
93
+ MutualTLS,
94
+ OAuth2,
95
+ OpenIdConnect,
96
+ Op,
97
+ PlainTextResponse,
98
+ RedirectResponse,
99
+ Request,
100
+ Response,
101
+ Route,
102
+ Router,
103
+ Schema,
104
+ StorageTransform,
105
+ StreamingResponse,
106
+ Table,
107
+ TableRegistry,
108
+ TigrblApp,
109
+ TigrblRouter,
110
+ )
111
+ from tigrbl_concrete._concrete.dependencies import Depends # noqa: E402
112
+ from tigrbl_runtime.runtime.status.exceptions import HTTPException # noqa: E402
113
+ from tigrbl.engine import resolver # noqa: E402
114
+ from tigrbl.system import mount_diagnostics # noqa: E402
115
+ from tigrbl_core.config.constants import DEFAULT_HTTP_METHODS, HOOK_DECLS_ATTR # noqa: E402
116
+ from tigrbl.decorators import ( # noqa: E402
117
+ alias,
118
+ allow_anon,
119
+ alias_ctx,
120
+ engine_ctx,
121
+ hook_ctx,
122
+ middleware,
123
+ middlewares,
124
+ op_alias,
125
+ op_ctx,
126
+ response_ctx,
127
+ route_ctx,
128
+ schema_ctx,
129
+ )
130
+ from tigrbl.shortcuts.op import op # noqa: E402
131
+ from tigrbl.schema import _build_list_params, _build_schema, get_schema # noqa: E402
132
+ from tigrbl.ddl import bootstrap_dbschema, ensure_schemas, register_sqlite_attach # noqa: E402
133
+
134
+ from tigrbl_base._base import ( # noqa: E402
135
+ AppBase,
136
+ ForeignKeyBase,
137
+ HookBase,
138
+ RouterBase,
139
+ TableBase,
140
+ TableRegistryBase,
141
+ )
142
+ from tigrbl_core._spec import ( # noqa: E402
143
+ AppSpec,
144
+ Arity,
145
+ ColumnSpec,
146
+ EngineSpec,
147
+ FieldSpec,
148
+ ForeignKeySpec,
149
+ HookPhase,
150
+ IOSpec,
151
+ OpSpec,
152
+ PersistPolicy,
153
+ PHASE,
154
+ PHASES,
155
+ RequestSpec,
156
+ ResponseSpec,
157
+ RouterSpec,
158
+ SchemaArg,
159
+ SchemaRef,
160
+ SchemaSpec,
161
+ SessionSpec,
162
+ StorageSpec,
163
+ StorageTransformSpec,
164
+ TableRegistrySpec,
165
+ TableSpec,
166
+ TargetOp,
167
+ TemplateSpec,
168
+ )
169
+ from tigrbl_runtime.runtime.executor import _invoke # noqa: E402
170
+
171
+
172
+ def bind(*args, **kwargs):
173
+ return import_module("tigrbl_concrete._mapping.model").bind(*args, **kwargs)
174
+
175
+
176
+ def rebind(*args, **kwargs):
177
+ return import_module("tigrbl_concrete._mapping.model").rebind(*args, **kwargs)
178
+
179
+
180
+ def build_schemas(*args, **kwargs):
181
+ return import_module("tigrbl_concrete._mapping.model")._materialize_schemas(
182
+ *args, **kwargs
183
+ )
184
+
185
+
186
+ def build_hooks(*args, **kwargs):
187
+ return import_module("tigrbl_concrete._mapping.model")._bind_model_hooks(
188
+ *args, **kwargs
189
+ )
190
+
191
+
192
+ def build_handlers(*args, **kwargs):
193
+ mod = import_module("tigrbl_concrete._mapping.model")
194
+ specs = mod._materialize_handlers(*args, **kwargs)
195
+ model = args[0] if args else kwargs.get("model")
196
+ spec_arg = args[1] if len(args) > 1 else kwargs.get("specs", ())
197
+ spec_tuple = tuple(spec_arg or ())
198
+ if model is not None:
199
+ mod._bind_model_hooks(model, spec_tuple)
200
+ return specs
201
+
202
+
203
+ def register_rpc(*args, **kwargs):
204
+ return import_module("tigrbl_base._base._rpc_map").register_and_attach(
205
+ *args, **kwargs
206
+ )
207
+
208
+
209
+ def build_rest(*args, **kwargs):
210
+ if "router" not in kwargs:
211
+ kwargs["router"] = None
212
+ return import_module("tigrbl_concrete._mapping.model")._materialize_rest_router(
213
+ *args, **kwargs
214
+ )
215
+
216
+
217
+ def include_tables(*args, **kwargs):
218
+ return import_module("tigrbl_concrete._mapping.router.include").include_tables(
219
+ *args, **kwargs
220
+ )
221
+
222
+
223
+ async def rpc_call(*args, **kwargs):
224
+ return await import_module("tigrbl_concrete._mapping.router.rpc").rpc_call(
225
+ *args, **kwargs
226
+ )
227
+
228
+
229
+ __all__ = [
230
+ "specs",
231
+ "base",
232
+ "concrete",
233
+ "canon",
234
+ "orm",
235
+ "runtime",
236
+ "atoms",
237
+ "kernel",
238
+ "core",
239
+ "TigrblApp",
240
+ "TigrblRouter",
241
+ "Router",
242
+ "Depends",
243
+ "HTTPException",
244
+ "TableBase",
245
+ "RouterBase",
246
+ "Op",
247
+ "op",
248
+ "HTTPBearer",
249
+ "APIKey",
250
+ "OAuth2",
251
+ "OpenIdConnect",
252
+ "MutualTLS",
253
+ "OpSpec",
254
+ "TargetOp",
255
+ "Arity",
256
+ "PersistPolicy",
257
+ "PHASE",
258
+ "PHASES",
259
+ "HookPhase",
260
+ "SchemaRef",
261
+ "SchemaArg",
262
+ "alias_ctx",
263
+ "op_ctx",
264
+ "route_ctx",
265
+ "hook_ctx",
266
+ "schema_ctx",
267
+ "response_ctx",
268
+ "alias",
269
+ "allow_anon",
270
+ "Alias",
271
+ "op_alias",
272
+ "engine_ctx",
273
+ "ResponseSpec",
274
+ "bind",
275
+ "rebind",
276
+ "build_schemas",
277
+ "build_hooks",
278
+ "build_handlers",
279
+ "register_rpc",
280
+ "build_rest",
281
+ "include_tables",
282
+ "rpc_call",
283
+ "_invoke",
284
+ "_build_schema",
285
+ "_build_list_params",
286
+ "get_schema",
287
+ "mount_diagnostics",
288
+ "ensure_schemas",
289
+ "register_sqlite_attach",
290
+ "bootstrap_dbschema",
291
+ "DEFAULT_HTTP_METHODS",
292
+ "Request",
293
+ "Response",
294
+ "JSONResponse",
295
+ "BackgroundTask",
296
+ "resolver",
297
+ "AppSpec",
298
+ "RouterSpec",
299
+ "TableSpec",
300
+ "TableRegistrySpec",
301
+ "ColumnSpec",
302
+ "FieldSpec",
303
+ "IOSpec",
304
+ "StorageSpec",
305
+ "StorageTransform",
306
+ "StorageTransformSpec",
307
+ "ForeignKeySpec",
308
+ "RequestSpec",
309
+ "SchemaSpec",
310
+ "SessionSpec",
311
+ "EngineSpec",
312
+ "TemplateSpec",
313
+ "ForeignKeyBase",
314
+ "HookBase",
315
+ "TableRegistryBase",
316
+ "AppBase",
317
+ "App",
318
+ "Table",
319
+ "Column",
320
+ "Route",
321
+ "Schema",
322
+ "Hook",
323
+ "ForeignKey",
324
+ "TableRegistry",
325
+ "HOOK_DECLS_ATTR",
326
+ "middleware",
327
+ "middlewares",
328
+ "FileResponse",
329
+ "HTMLResponse",
330
+ "PlainTextResponse",
331
+ "StreamingResponse",
332
+ "RedirectResponse",
333
+ ]
@@ -0,0 +1,3 @@
1
+ """Compatibility shim for relocated config module."""
2
+
3
+ from tigrbl_core.config import * # noqa: F403
@@ -0,0 +1,3 @@
1
+ """Compatibility shim for constants moved to ``tigrbl_core``."""
2
+
3
+ from tigrbl_core.config.constants import * # noqa: F403
@@ -0,0 +1,3 @@
1
+ """Compatibility shim for relocated config defaults."""
2
+
3
+ from tigrbl_core.config.defaults import * # noqa: F403
@@ -0,0 +1,3 @@
1
+ """Compatibility shim for relocated DDL module."""
2
+
3
+ from tigrbl_concrete.ddl import * # noqa: F403
@@ -0,0 +1 @@
1
+ from tigrbl_concrete._decorators import * # noqa: F401,F403
@@ -0,0 +1 @@
1
+ from tigrbl_concrete._decorators.allow_anon import * # noqa: F401,F403
@@ -0,0 +1 @@
1
+ from tigrbl_concrete._decorators.engine import * # noqa: F401,F403
@@ -0,0 +1 @@
1
+ from tigrbl_concrete._decorators.hook import * # noqa: F401,F403
@@ -0,0 +1 @@
1
+ from tigrbl_concrete._decorators.middlewares import * # noqa: F401,F403
@@ -0,0 +1 @@
1
+ from tigrbl_concrete._decorators.op import * # noqa: F401,F403
@@ -0,0 +1 @@
1
+ from tigrbl_concrete._decorators.response import * # noqa: F401,F403
@@ -0,0 +1 @@
1
+ from tigrbl_concrete._decorators.rest import * # noqa: F401,F403
@@ -0,0 +1 @@
1
+ from tigrbl_concrete._decorators.router import * # noqa: F401,F403
@@ -0,0 +1 @@
1
+ from tigrbl_concrete._decorators.schema import * # noqa: F401,F403
@@ -0,0 +1 @@
1
+ from tigrbl_concrete._decorators.session import * # noqa: F401,F403
@@ -0,0 +1 @@
1
+ from tigrbl_concrete.engine import * # noqa: F401,F403
@@ -0,0 +1 @@
1
+ from tigrbl_concrete.engine.bind import * # noqa: F401,F403
@@ -0,0 +1 @@
1
+ from tigrbl_concrete.engine.builders import * # noqa: F401,F403
@@ -0,0 +1 @@
1
+ from tigrbl_concrete.engine.capabilities import * # noqa: F401,F403
@@ -0,0 +1 @@
1
+ from tigrbl_concrete.engine.collect import * # noqa: F401,F403
@@ -0,0 +1 @@
1
+ from tigrbl_concrete.engine.plugins import * # noqa: F401,F403
@@ -0,0 +1 @@
1
+ from tigrbl_concrete.engine.registry import * # noqa: F401,F403
@@ -1,7 +1,7 @@
1
1
  """Backward-compatible engine resolver exports."""
2
2
 
3
- from ..mapping.engine_resolver import * # noqa: F401,F403
4
- from ..mapping import engine_resolver as _engine_resolver
3
+ from tigrbl_concrete.engine.resolver import * # noqa: F401,F403
4
+ from tigrbl_concrete._concrete import engine_resolver as _engine_resolver
5
5
 
6
6
  _SECRET_KEYS = _engine_resolver._SECRET_KEYS
7
7
  _hash_secret = _engine_resolver._hash_secret
@@ -0,0 +1,10 @@
1
+ """Hook type definitions exposed without importing runtime package internals."""
2
+
3
+ from __future__ import annotations
4
+
5
+ from tigrbl_atoms import HookPhase, HookPhases, HookPredicate, StepFn
6
+
7
+ PHASE = HookPhase
8
+ PHASES = tuple(h.value for h in HookPhases)
9
+
10
+ __all__ = ["HookPhase", "HookPhases", "PHASE", "PHASES", "StepFn", "HookPredicate"]
@@ -0,0 +1,22 @@
1
+ """Compatibility facade for op APIs across split tigrbl packages."""
2
+
3
+ import tigrbl_core.op as _core_op
4
+ from tigrbl_core.op import * # noqa: F403
5
+ from tigrbl_core._spec.op_spec import resolve
6
+ from tigrbl_concrete._concrete._op_registry import (
7
+ OpspecRegistry,
8
+ clear_registry,
9
+ get_registered_ops,
10
+ get_registry,
11
+ register_ops,
12
+ )
13
+
14
+ __all__ = [
15
+ *_core_op.__all__,
16
+ "OpspecRegistry",
17
+ "get_registry",
18
+ "register_ops",
19
+ "get_registered_ops",
20
+ "clear_registry",
21
+ "resolve",
22
+ ]
@@ -0,0 +1,3 @@
1
+ """Compatibility shim for relocated op canonical helpers."""
2
+
3
+ from tigrbl_core.op.canonical import * # noqa: F403
@@ -0,0 +1,3 @@
1
+ """Compatibility shim for relocated op collection helpers."""
2
+
3
+ from tigrbl_core.op.collect import * # noqa: F403
@@ -0,0 +1,3 @@
1
+ """Compatibility shim for relocated op typing aliases."""
2
+
3
+ from tigrbl_core.op.types import * # noqa: F403
@@ -0,0 +1,3 @@
1
+ """Compatibility shim for relocated schema module."""
2
+
3
+ from tigrbl_core.schema import * # noqa: F403
@@ -0,0 +1,3 @@
1
+ """Compatibility shim for relocated schema builder module."""
2
+
3
+ from tigrbl_core.schema.builder import * # noqa: F403
@@ -0,0 +1,3 @@
1
+ """Compatibility shim for relocated schema builder helpers."""
2
+
3
+ from tigrbl_core.schema.builder.build_schema import * # noqa: F403
@@ -0,0 +1,3 @@
1
+ """Compatibility shim for relocated schema builder helpers."""
2
+
3
+ from tigrbl_core.schema.builder.cache import * # noqa: F403
@@ -0,0 +1,3 @@
1
+ """Compatibility shim for relocated schema builder helpers."""
2
+
3
+ from tigrbl_core.schema.builder.extras import * # noqa: F403
@@ -0,0 +1,3 @@
1
+ """Compatibility shim for relocated schema builder helpers."""
2
+
3
+ from tigrbl_core.schema.builder.helpers import * # noqa: F403
@@ -0,0 +1,3 @@
1
+ """Compatibility shim for relocated schema builder helpers."""
2
+
3
+ from tigrbl_core.schema.builder.list_params import * # noqa: F403
@@ -0,0 +1,3 @@
1
+ """Compatibility shim for relocated schema builder helpers."""
2
+
3
+ from tigrbl_core.schema.builder.strip_parent_fields import * # noqa: F403
@@ -0,0 +1,9 @@
1
+ """Compatibility shim for relocated schema utilities."""
2
+
3
+ from tigrbl_core.schema.utils import * # noqa: F403
4
+ from tigrbl_core.schema.utils import logger
5
+
6
+ __all__ = [
7
+ "logger",
8
+ *[name for name in globals() if not name.startswith("_") and name != "__all__"],
9
+ ]
@@ -0,0 +1,3 @@
1
+ """Compatibility shim for relocated security module."""
2
+
3
+ from tigrbl_concrete.security import * # noqa: F403
@@ -0,0 +1,3 @@
1
+ """Compatibility shim for relocated security dependencies."""
2
+
3
+ from tigrbl_concrete.security.dependencies import * # noqa: F403
@@ -0,0 +1,3 @@
1
+ from tigrbl_concrete.shortcuts.app import defineAppSpec, deriveApp
2
+
3
+ __all__ = ["defineAppSpec", "deriveApp"]