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.
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/PKG-INFO +1 -1
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/pyproject.toml +1 -1
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/response/stdapi.py +16 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/security/schemes/api_key.py +2 -2
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/security/schemes/http_bearer.py +1 -1
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/transport/request.py +16 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/LICENSE +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/README.md +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/README.md +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/api/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/api/_api.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/api/_route.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/api/_router.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/api/_routing.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/api/api_spec.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/api/mro_collect.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/api/resolve.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/api/shortcuts.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/api/tigrbl_api.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/app/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/app/_app.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/app/_model_registry.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/app/_routing_runtime.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/app/app_spec.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/app/mro_collect.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/app/shortcuts.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/app/tigrbl_app.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/api/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/api/common.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/api/include.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/api/resource_proxy.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/api/rpc.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/columns.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/handlers/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/handlers/builder.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/handlers/ctx.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/handlers/identifiers.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/handlers/namespaces.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/handlers/steps.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/hooks.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/model.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/model_helpers.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/model_registry.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/rest/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/rest/attach.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/rest/collection.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/rest/common.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/rest/fastapi.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/rest/helpers.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/rest/io.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/rest/io_headers.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/rest/member.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/rest/router.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/rest/routing.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/rpc.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/schemas/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/schemas/builder.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/schemas/defaults.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/bindings/schemas/utils.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/column/README.md +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/column/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/column/_column.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/column/column_spec.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/column/field_spec.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/column/infer/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/column/infer/core.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/column/infer/jsonhints.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/column/infer/planning.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/column/infer/types.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/column/infer/utils.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/column/io_spec.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/column/mro_collect.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/column/shortcuts.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/column/storage_spec.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/config/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/config/constants.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/config/defaults.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/config/resolver.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/core/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/core/crud/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/core/crud/bulk.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/core/crud/helpers/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/core/crud/helpers/db.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/core/crud/helpers/enum.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/core/crud/helpers/filters.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/core/crud/helpers/model.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/core/crud/helpers/normalize.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/core/crud/ops.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/core/crud/params.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/core/resolver.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/core/router_runtime.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/ddl/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/decorators.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/deps/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/deps/jinja.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/deps/pydantic.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/deps/sqlalchemy.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/docs/verbosity.md +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/engine/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/engine/_engine.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/engine/bind.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/engine/builders.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/engine/capabilities.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/engine/collect.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/engine/decorators.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/engine/docs/PLUGINS.md +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/engine/engine_spec.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/engine/plugins.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/engine/registry.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/engine/resolver.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/engine/shortcuts.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/hook/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/hook/_hook.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/hook/decorators.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/hook/exceptions.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/hook/hook_spec.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/hook/mro_collect.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/hook/shortcuts.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/hook/types.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/op/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/op/_op.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/op/canonical.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/op/collect.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/op/decorators.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/op/model_registry.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/op/mro_collect.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/op/resolver.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/op/types.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/mixins/_RowBound.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/mixins/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/mixins/bootstrappable.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/mixins/bound.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/mixins/edges.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/mixins/fields.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/mixins/hierarchy.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/mixins/key_digest.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/mixins/lifecycle.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/mixins/locks.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/mixins/markers.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/mixins/operations.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/mixins/ownable.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/mixins/principals.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/mixins/tenant_bound.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/mixins/upsertable.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/mixins/utils.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/tables/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/tables/_base.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/tables/audit.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/tables/client.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/tables/group.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/tables/org.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/tables/rbac.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/tables/status.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/tables/tenant.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/orm/tables/user.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/response/README.md +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/response/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/response/bind.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/response/decorators.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/response/resolver.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/response/shortcuts.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/response/types.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/rest/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/README.md +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/emit/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/emit/paired_post.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/emit/paired_pre.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/emit/readtime_alias.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/out/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/out/masking.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/refresh/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/refresh/demand.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/resolve/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/resolve/assemble.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/resolve/paired_gen.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/response/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/response/headers_from_payload.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/response/negotiate.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/response/negotiation.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/response/render.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/response/renderer.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/response/template.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/response/templates.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/schema/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/schema/collect_in.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/schema/collect_out.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/storage/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/storage/to_stored.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/wire/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/wire/build_in.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/wire/build_out.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/wire/dump.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/atoms/wire/validate_in.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/context.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/events.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/executor/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/executor/guards.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/executor/helpers.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/executor/invoke.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/executor/types.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/kernel.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/labels.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/opview.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/ordering.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/status/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/status/converters.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/status/exceptions.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/status/mappings.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/status/utils.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/system.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/runtime/trace.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/schema/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/schema/_schema.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/schema/builder/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/schema/builder/build_schema.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/schema/builder/cache.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/schema/builder/compat.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/schema/builder/extras.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/schema/builder/helpers.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/schema/builder/list_params.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/schema/builder/strip_parent_fields.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/schema/collect.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/schema/decorators.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/schema/get_schema.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/schema/schema_spec.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/schema/shortcuts.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/schema/types.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/schema/utils.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/security/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/security/dependencies.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/security/schemes/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/security/schemes/_base.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/security/schemes/mutual_tls.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/security/schemes/oauth2.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/security/schemes/openid_connect.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/session/README.md +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/session/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/session/abc.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/session/base.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/session/decorators.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/session/default.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/session/shortcuts.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/session/spec.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/shortcuts.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/specs.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/diagnostics/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/diagnostics/compat.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/diagnostics/healthz.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/diagnostics/hookz.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/diagnostics/kernelz.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/diagnostics/methodz.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/diagnostics/router.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/diagnostics/utils.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/docs/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/docs/lens.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/docs/openapi/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/docs/openapi/helpers.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/docs/openapi/metadata.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/docs/openapi/mount.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/docs/openapi/schema.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/docs/openrpc.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/docs/swagger.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/favicon/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/favicon/assets/favicon.svg +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/system/uvicorn.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/table/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/table/_base.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/table/_table.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/table/mro_collect.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/table/shortcuts.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/table/table_spec.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/transport/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/transport/asgi_wsgi.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/transport/background.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/transport/httpx.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/transport/jsonrpc/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/transport/jsonrpc/dispatcher.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/transport/jsonrpc/helpers.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/transport/jsonrpc/models.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/transport/jsonrpc/openrpc.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/transport/rest/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/transport/rest/aggregator.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/transport/rest/decorators.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/types/__init__.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/types/allow_anon_provider.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/types/authn_abc.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/types/nested_path_provider.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/types/op.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/types/op_config_provider.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/types/op_verb_alias_provider.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/types/request_extras_provider.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/types/response_extras_provider.py +0 -0
- {tigrbl-0.3.6 → tigrbl-0.3.7.dev1}/tigrbl/types/table_config_provider.py +0 -0
- {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.
|
|
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.
|
|
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 =
|
|
37
|
-
query =
|
|
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 =
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|