tigrbl 0.3.17.dev18__tar.gz → 0.3.20.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.20.dev1/PKG-INFO +71 -0
- tigrbl-0.3.20.dev1/README.md +23 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/pyproject.toml +17 -4
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/__init__.py +115 -3
- tigrbl-0.3.20.dev1/tigrbl/__main__.py +5 -0
- tigrbl-0.3.20.dev1/tigrbl/canonical_json.py +7 -0
- tigrbl-0.3.20.dev1/tigrbl/cli.py +863 -0
- tigrbl-0.3.20.dev1/tigrbl/factories/app.py +4 -0
- {tigrbl-0.3.17.dev18/tigrbl/shortcuts → tigrbl-0.3.20.dev1/tigrbl/factories}/responses.py +13 -2
- tigrbl-0.3.20.dev1/tigrbl/middlewares/__init__.py +11 -0
- tigrbl-0.3.20.dev1/tigrbl/session/__init__.py +8 -0
- tigrbl-0.3.20.dev1/tigrbl/session/base.py +7 -0
- tigrbl-0.3.20.dev1/tigrbl/session/spec.py +7 -0
- tigrbl-0.3.20.dev1/tigrbl/shortcuts/__init__.py +32 -0
- tigrbl-0.3.20.dev1/tigrbl/shortcuts/app.py +2 -0
- tigrbl-0.3.20.dev1/tigrbl/shortcuts/column.py +2 -0
- tigrbl-0.3.20.dev1/tigrbl/shortcuts/engine.py +2 -0
- tigrbl-0.3.20.dev1/tigrbl/shortcuts/hook.py +2 -0
- tigrbl-0.3.20.dev1/tigrbl/shortcuts/op.py +2 -0
- tigrbl-0.3.20.dev1/tigrbl/shortcuts/responses.py +2 -0
- tigrbl-0.3.20.dev1/tigrbl/shortcuts/rest.py +2 -0
- tigrbl-0.3.20.dev1/tigrbl/shortcuts/router.py +2 -0
- tigrbl-0.3.20.dev1/tigrbl/shortcuts/schema.py +2 -0
- tigrbl-0.3.20.dev1/tigrbl/shortcuts/table.py +2 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/specs.py +3 -2
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/system/diagnostics/__init__.py +10 -0
- tigrbl-0.3.20.dev1/tigrbl/system/diagnostics/healthz.py +285 -0
- tigrbl-0.3.20.dev1/tigrbl/system/diagnostics/router.py +4 -0
- tigrbl-0.3.20.dev1/tigrbl/system/docs/openapi/mount.py +4 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/system/docs/openapi/schema.py +28 -1
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/system/docs/openrpc.py +17 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/types/__init__.py +3 -2
- tigrbl-0.3.17.dev18/PKG-INFO +0 -784
- tigrbl-0.3.17.dev18/README.md +0 -742
- tigrbl-0.3.17.dev18/tigrbl/README.md +0 -94
- tigrbl-0.3.17.dev18/tigrbl/decorators/router.py +0 -1
- tigrbl-0.3.17.dev18/tigrbl/docs/column_specs.md +0 -62
- tigrbl-0.3.17.dev18/tigrbl/docs/session.md +0 -11
- tigrbl-0.3.17.dev18/tigrbl/docs/verbosity.md +0 -35
- tigrbl-0.3.17.dev18/tigrbl/engine/docs/PLUGINS.md +0 -49
- tigrbl-0.3.17.dev18/tigrbl/middlewares/__init__.py +0 -0
- tigrbl-0.3.17.dev18/tigrbl/shortcuts/app.py +0 -3
- tigrbl-0.3.17.dev18/tigrbl/system/diagnostics/healthz.py +0 -69
- tigrbl-0.3.17.dev18/tigrbl/system/diagnostics/router.py +0 -208
- tigrbl-0.3.17.dev18/tigrbl/system/docs/openapi/mount.py +0 -85
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/LICENSE +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/config/__init__.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/config/constants.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/config/defaults.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/ddl/__init__.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/decorators/__init__.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/decorators/allow_anon.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/decorators/engine.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/decorators/hook.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/decorators/middlewares.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/decorators/op.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/decorators/response.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/decorators/rest.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/decorators/schema.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/decorators/session.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/engine/__init__.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/engine/bind.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/engine/builders.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/engine/capabilities.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/engine/collect.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/engine/plugins.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/engine/registry.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/engine/resolver.py +0 -0
- {tigrbl-0.3.17.dev18/tigrbl/shortcuts → tigrbl-0.3.20.dev1/tigrbl/factories}/__init__.py +0 -0
- {tigrbl-0.3.17.dev18/tigrbl/shortcuts → tigrbl-0.3.20.dev1/tigrbl/factories}/column.py +0 -0
- {tigrbl-0.3.17.dev18/tigrbl/shortcuts → tigrbl-0.3.20.dev1/tigrbl/factories}/engine.py +0 -0
- {tigrbl-0.3.17.dev18/tigrbl/shortcuts → tigrbl-0.3.20.dev1/tigrbl/factories}/hook.py +0 -0
- {tigrbl-0.3.17.dev18/tigrbl/shortcuts → tigrbl-0.3.20.dev1/tigrbl/factories}/op.py +0 -0
- {tigrbl-0.3.17.dev18/tigrbl/shortcuts → tigrbl-0.3.20.dev1/tigrbl/factories}/router.py +0 -0
- {tigrbl-0.3.17.dev18/tigrbl/shortcuts → tigrbl-0.3.20.dev1/tigrbl/factories}/schema.py +0 -0
- {tigrbl-0.3.17.dev18/tigrbl/shortcuts → tigrbl-0.3.20.dev1/tigrbl/factories}/table.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/hook/exceptions.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/hook/types.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/middlewares/compose.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/op/__init__.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/op/canonical.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/op/collect.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/op/types.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/orm/__init__.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/requests.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/rest/__init__.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/schema/__init__.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/schema/builder/__init__.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/schema/builder/build_schema.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/schema/builder/cache.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/schema/builder/extras.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/schema/builder/helpers.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/schema/builder/list_params.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/schema/builder/strip_parent_fields.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/schema/utils.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/security/__init__.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/security/dependencies.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/system/__init__.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/system/diagnostics/hookz.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/system/diagnostics/kernelz.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/system/diagnostics/methodz.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/system/diagnostics/utils.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/system/docs/__init__.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/system/docs/lens.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/system/docs/openapi/__init__.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/system/docs/openapi/helpers.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/system/docs/openapi/metadata.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/system/docs/swagger.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/system/favicon/__init__.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/system/favicon/assets/favicon.svg +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/system/uvicorn.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/transport/__init__.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/transport/jsonrpc/__init__.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/transport/jsonrpc/helpers.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/transport/jsonrpc/models.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/transport/rest/__init__.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/transport/rest/aggregator.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/utils/__init__.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/utils/schema.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/vendor/__init__.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/vendor/jinja.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/vendor/pydantic.py +0 -0
- {tigrbl-0.3.17.dev18 → tigrbl-0.3.20.dev1}/tigrbl/vendor/sqlalchemy.py +0 -0
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: tigrbl
|
|
3
|
+
Version: 0.3.20.dev1
|
|
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
|
+
License-Expression: Apache-2.0
|
|
6
|
+
License-File: LICENSE
|
|
7
|
+
Author: Jacob Stewart
|
|
8
|
+
Author-email: jacob@swarmauri.com
|
|
9
|
+
Requires-Python: >=3.10,<3.14
|
|
10
|
+
Classifier: Development Status :: 3 - Alpha
|
|
11
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
12
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
13
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
14
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
15
|
+
Classifier: Programming Language :: Python
|
|
16
|
+
Classifier: Programming Language :: Python :: 3
|
|
17
|
+
Classifier: Programming Language :: Python :: 3 :: Only
|
|
18
|
+
Provides-Extra: postgres
|
|
19
|
+
Provides-Extra: servers
|
|
20
|
+
Provides-Extra: templates
|
|
21
|
+
Provides-Extra: tests
|
|
22
|
+
Requires-Dist: aiosqlite (>=0.19.0)
|
|
23
|
+
Requires-Dist: asyncpg (>=0.30.0) ; extra == "postgres"
|
|
24
|
+
Requires-Dist: greenlet (>=3.2.3)
|
|
25
|
+
Requires-Dist: gunicorn (>=21.2.0) ; extra == "servers"
|
|
26
|
+
Requires-Dist: httpx (>=0.27.0)
|
|
27
|
+
Requires-Dist: hypercorn (>=0.16.0) ; extra == "servers"
|
|
28
|
+
Requires-Dist: jinja2 (>=3.1.4) ; extra == "templates"
|
|
29
|
+
Requires-Dist: psycopg2-binary (>=2.9.9) ; extra == "postgres"
|
|
30
|
+
Requires-Dist: pydantic (>=2.0.0)
|
|
31
|
+
Requires-Dist: sqlalchemy (>=2.0)
|
|
32
|
+
Requires-Dist: tigrbl-atoms
|
|
33
|
+
Requires-Dist: tigrbl-base
|
|
34
|
+
Requires-Dist: tigrbl-canon
|
|
35
|
+
Requires-Dist: tigrbl-concrete
|
|
36
|
+
Requires-Dist: tigrbl-core
|
|
37
|
+
Requires-Dist: tigrbl-kernel
|
|
38
|
+
Requires-Dist: tigrbl-ops-oltp
|
|
39
|
+
Requires-Dist: tigrbl-orm
|
|
40
|
+
Requires-Dist: tigrbl-runtime
|
|
41
|
+
Requires-Dist: tigrbl-tests ; extra == "tests"
|
|
42
|
+
Requires-Dist: uvicorn
|
|
43
|
+
Project-URL: Homepage, https://github.com/swarmauri/tigrbl
|
|
44
|
+
Project-URL: Issues, https://github.com/swarmauri/tigrbl/issues
|
|
45
|
+
Project-URL: Repository, https://github.com/swarmauri/tigrbl
|
|
46
|
+
Description-Content-Type: text/markdown
|
|
47
|
+
|
|
48
|
+
# tigrbl
|
|
49
|
+
|
|
50
|
+
This file is a package-local distribution entry point.
|
|
51
|
+
It is not the authoritative location for repository governance, current target status, current state reporting, certification claims, or release evidence.
|
|
52
|
+
|
|
53
|
+
## Canonical repository docs
|
|
54
|
+
|
|
55
|
+
- `README.md`
|
|
56
|
+
- `docs/README.md`
|
|
57
|
+
- `docs/conformance/CURRENT_TARGET.md`
|
|
58
|
+
- `docs/conformance/CURRENT_STATE.md`
|
|
59
|
+
- `docs/conformance/NEXT_STEPS.md`
|
|
60
|
+
- `docs/governance/DOC_POINTERS.md`
|
|
61
|
+
- `docs/developer/PACKAGE_CATALOG.md`
|
|
62
|
+
- `docs/developer/PACKAGE_LAYOUT.md`
|
|
63
|
+
|
|
64
|
+
## Package identity
|
|
65
|
+
|
|
66
|
+
- workspace path: `pkgs/core/tigrbl`
|
|
67
|
+
- workspace class: core Python package
|
|
68
|
+
- implementation layout: `tigrbl/`
|
|
69
|
+
|
|
70
|
+
Long-form repository documentation is governed from `docs/`.
|
|
71
|
+
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# tigrbl
|
|
2
|
+
|
|
3
|
+
This file is a package-local distribution entry point.
|
|
4
|
+
It is not the authoritative location for repository governance, current target status, current state reporting, certification claims, or release evidence.
|
|
5
|
+
|
|
6
|
+
## Canonical repository docs
|
|
7
|
+
|
|
8
|
+
- `README.md`
|
|
9
|
+
- `docs/README.md`
|
|
10
|
+
- `docs/conformance/CURRENT_TARGET.md`
|
|
11
|
+
- `docs/conformance/CURRENT_STATE.md`
|
|
12
|
+
- `docs/conformance/NEXT_STEPS.md`
|
|
13
|
+
- `docs/governance/DOC_POINTERS.md`
|
|
14
|
+
- `docs/developer/PACKAGE_CATALOG.md`
|
|
15
|
+
- `docs/developer/PACKAGE_LAYOUT.md`
|
|
16
|
+
|
|
17
|
+
## Package identity
|
|
18
|
+
|
|
19
|
+
- workspace path: `pkgs/core/tigrbl`
|
|
20
|
+
- workspace class: core Python package
|
|
21
|
+
- implementation layout: `tigrbl/`
|
|
22
|
+
|
|
23
|
+
Long-form repository documentation is governed from `docs/`.
|
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "tigrbl"
|
|
3
|
-
version = "0.3.
|
|
3
|
+
version = "0.3.20.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"
|
|
7
|
-
|
|
8
|
-
requires-python = ">=3.10,<3.13"
|
|
7
|
+
requires-python = ">=3.10,<3.14"
|
|
9
8
|
classifiers = [
|
|
10
|
-
"License :: OSI Approved :: Apache Software License",
|
|
11
9
|
"Development Status :: 3 - Alpha",
|
|
12
10
|
"Programming Language :: Python :: 3.10",
|
|
13
11
|
"Programming Language :: Python :: 3.11",
|
|
14
12
|
"Programming Language :: Python :: 3.12",
|
|
13
|
+
"Programming Language :: Python :: 3.13",
|
|
15
14
|
"Programming Language :: Python",
|
|
16
15
|
"Programming Language :: Python :: 3",
|
|
17
16
|
"Programming Language :: Python :: 3 :: Only",
|
|
18
17
|
]
|
|
19
18
|
authors = [{ name = "Jacob Stewart", email = "jacob@swarmauri.com" }]
|
|
19
|
+
|
|
20
20
|
dependencies = [
|
|
21
21
|
"tigrbl-core",
|
|
22
22
|
"tigrbl-base",
|
|
@@ -36,6 +36,15 @@ dependencies = [
|
|
|
36
36
|
]
|
|
37
37
|
|
|
38
38
|
|
|
39
|
+
|
|
40
|
+
[project.urls]
|
|
41
|
+
Homepage = "https://github.com/swarmauri/tigrbl"
|
|
42
|
+
Repository = "https://github.com/swarmauri/tigrbl"
|
|
43
|
+
Issues = "https://github.com/swarmauri/tigrbl/issues"
|
|
44
|
+
|
|
45
|
+
[project.scripts]
|
|
46
|
+
tigrbl = "tigrbl.cli:console_main"
|
|
47
|
+
|
|
39
48
|
[project.optional-dependencies]
|
|
40
49
|
postgres = [
|
|
41
50
|
"asyncpg>=0.30.0",
|
|
@@ -44,6 +53,10 @@ postgres = [
|
|
|
44
53
|
templates = [
|
|
45
54
|
"jinja2>=3.1.4",
|
|
46
55
|
]
|
|
56
|
+
servers = [
|
|
57
|
+
"hypercorn>=0.16.0",
|
|
58
|
+
"gunicorn>=21.2.0",
|
|
59
|
+
]
|
|
47
60
|
tests = [
|
|
48
61
|
"tigrbl-tests",
|
|
49
62
|
]
|
|
@@ -82,11 +82,16 @@ from tigrbl_concrete._concrete import ( # noqa: E402
|
|
|
82
82
|
Alias,
|
|
83
83
|
App,
|
|
84
84
|
BackgroundTask,
|
|
85
|
+
Binding,
|
|
86
|
+
BindingRegistry,
|
|
85
87
|
Column,
|
|
88
|
+
CORSMiddleware,
|
|
89
|
+
EventStreamResponse,
|
|
86
90
|
FileResponse,
|
|
87
91
|
ForeignKey,
|
|
88
92
|
Hook,
|
|
89
93
|
HTMLResponse,
|
|
94
|
+
HTTPBasic,
|
|
90
95
|
HTTPBearer,
|
|
91
96
|
JSONResponse,
|
|
92
97
|
MutualTLS,
|
|
@@ -96,11 +101,15 @@ from tigrbl_concrete._concrete import ( # noqa: E402
|
|
|
96
101
|
PlainTextResponse,
|
|
97
102
|
RedirectResponse,
|
|
98
103
|
Request,
|
|
104
|
+
TransportResponse,
|
|
105
|
+
UploadedFile,
|
|
106
|
+
WebSocket,
|
|
99
107
|
Response,
|
|
100
108
|
Route,
|
|
101
109
|
Router,
|
|
102
110
|
Schema,
|
|
103
111
|
StorageTransform,
|
|
112
|
+
Middleware,
|
|
104
113
|
StreamingResponse,
|
|
105
114
|
Table,
|
|
106
115
|
TableRegistry,
|
|
@@ -116,22 +125,32 @@ from tigrbl.decorators import ( # noqa: E402
|
|
|
116
125
|
alias,
|
|
117
126
|
allow_anon,
|
|
118
127
|
alias_ctx,
|
|
128
|
+
delete,
|
|
119
129
|
engine_ctx,
|
|
130
|
+
get,
|
|
120
131
|
hook_ctx,
|
|
121
132
|
middleware,
|
|
122
133
|
middlewares,
|
|
123
134
|
op_alias,
|
|
124
135
|
op_ctx,
|
|
136
|
+
patch,
|
|
137
|
+
post,
|
|
138
|
+
put,
|
|
125
139
|
response_ctx,
|
|
126
|
-
route_ctx,
|
|
127
140
|
schema_ctx,
|
|
141
|
+
sse_ctx,
|
|
142
|
+
stream_ctx,
|
|
143
|
+
websocket_ctx,
|
|
144
|
+
webtransport_ctx,
|
|
128
145
|
)
|
|
129
|
-
from tigrbl.
|
|
146
|
+
from tigrbl.factories.op import op # noqa: E402
|
|
130
147
|
from tigrbl.schema import _build_list_params, _build_schema, get_schema # noqa: E402
|
|
131
148
|
from tigrbl.ddl import bootstrap_dbschema, ensure_schemas, register_sqlite_attach # noqa: E402
|
|
132
149
|
|
|
133
150
|
from tigrbl_base._base import ( # noqa: E402
|
|
134
151
|
AppBase,
|
|
152
|
+
EngineBase,
|
|
153
|
+
EngineProviderBase,
|
|
135
154
|
ForeignKeyBase,
|
|
136
155
|
HookBase,
|
|
137
156
|
RouterBase,
|
|
@@ -141,11 +160,19 @@ from tigrbl_base._base import ( # noqa: E402
|
|
|
141
160
|
from tigrbl_core._spec import ( # noqa: E402
|
|
142
161
|
AppSpec,
|
|
143
162
|
Arity,
|
|
163
|
+
BindingRegistrySpec,
|
|
164
|
+
BindingSpec,
|
|
144
165
|
ColumnSpec,
|
|
145
166
|
EngineSpec,
|
|
167
|
+
EngineRegistry,
|
|
168
|
+
Exchange,
|
|
146
169
|
FieldSpec,
|
|
170
|
+
Framing,
|
|
147
171
|
ForeignKeySpec,
|
|
148
172
|
HookPhase,
|
|
173
|
+
HttpJsonRpcBindingSpec,
|
|
174
|
+
HttpRestBindingSpec,
|
|
175
|
+
HttpStreamBindingSpec,
|
|
149
176
|
IOSpec,
|
|
150
177
|
OpSpec,
|
|
151
178
|
PersistPolicy,
|
|
@@ -154,16 +181,26 @@ from tigrbl_core._spec import ( # noqa: E402
|
|
|
154
181
|
RequestSpec,
|
|
155
182
|
ResponseSpec,
|
|
156
183
|
RouterSpec,
|
|
184
|
+
SseBindingSpec,
|
|
157
185
|
SchemaArg,
|
|
158
186
|
SchemaRef,
|
|
159
187
|
SchemaSpec,
|
|
160
188
|
SessionSpec,
|
|
189
|
+
readonly,
|
|
190
|
+
session_spec,
|
|
161
191
|
StorageSpec,
|
|
162
192
|
StorageTransformSpec,
|
|
193
|
+
StorageTypeRef,
|
|
163
194
|
TableRegistrySpec,
|
|
164
195
|
TableSpec,
|
|
165
196
|
TargetOp,
|
|
166
197
|
TemplateSpec,
|
|
198
|
+
tx_read_committed,
|
|
199
|
+
tx_repeatable_read,
|
|
200
|
+
tx_serializable,
|
|
201
|
+
TxScope,
|
|
202
|
+
WebTransportBindingSpec,
|
|
203
|
+
WsBindingSpec,
|
|
167
204
|
)
|
|
168
205
|
from tigrbl_runtime.runtime.executor import _invoke # noqa: E402
|
|
169
206
|
|
|
@@ -219,12 +256,47 @@ def include_tables(*args, **kwargs):
|
|
|
219
256
|
)
|
|
220
257
|
|
|
221
258
|
|
|
259
|
+
def include_model(*args, **kwargs):
|
|
260
|
+
if len(args) == 1 and isinstance(args[0], type) and not kwargs:
|
|
261
|
+
return args[0], None
|
|
262
|
+
return import_module("tigrbl_concrete._mapping.router.include").include_model(
|
|
263
|
+
*args, **kwargs
|
|
264
|
+
)
|
|
265
|
+
|
|
266
|
+
|
|
267
|
+
def include_table(*args, **kwargs):
|
|
268
|
+
return import_module("tigrbl_concrete._mapping.router.include").include_table(
|
|
269
|
+
*args, **kwargs
|
|
270
|
+
)
|
|
271
|
+
|
|
272
|
+
|
|
273
|
+
def include_models(*args, **kwargs):
|
|
274
|
+
return import_module("tigrbl_concrete._mapping.router.include").include_models(
|
|
275
|
+
*args, **kwargs
|
|
276
|
+
)
|
|
277
|
+
|
|
278
|
+
|
|
222
279
|
async def rpc_call(*args, **kwargs):
|
|
223
280
|
return await import_module("tigrbl_concrete._mapping.router.rpc").rpc_call(
|
|
224
281
|
*args, **kwargs
|
|
225
282
|
)
|
|
226
283
|
|
|
227
284
|
|
|
285
|
+
from tigrbl_core._spec.session_spec import ( # noqa: E402
|
|
286
|
+
readonly as _readonly_fn,
|
|
287
|
+
session_spec as _session_spec_fn,
|
|
288
|
+
tx_read_committed as _tx_read_committed_fn,
|
|
289
|
+
tx_repeatable_read as _tx_repeatable_read_fn,
|
|
290
|
+
tx_serializable as _tx_serializable_fn,
|
|
291
|
+
)
|
|
292
|
+
|
|
293
|
+
readonly = _readonly_fn
|
|
294
|
+
session_spec = _session_spec_fn
|
|
295
|
+
tx_read_committed = _tx_read_committed_fn
|
|
296
|
+
tx_repeatable_read = _tx_repeatable_read_fn
|
|
297
|
+
tx_serializable = _tx_serializable_fn
|
|
298
|
+
|
|
299
|
+
|
|
228
300
|
__all__ = [
|
|
229
301
|
"specs",
|
|
230
302
|
"base",
|
|
@@ -238,12 +310,15 @@ __all__ = [
|
|
|
238
310
|
"TigrblApp",
|
|
239
311
|
"TigrblRouter",
|
|
240
312
|
"Router",
|
|
313
|
+
"Binding",
|
|
314
|
+
"BindingRegistry",
|
|
241
315
|
"Depends",
|
|
242
316
|
"HTTPException",
|
|
243
317
|
"TableBase",
|
|
244
318
|
"RouterBase",
|
|
245
319
|
"Op",
|
|
246
320
|
"op",
|
|
321
|
+
"HTTPBasic",
|
|
247
322
|
"HTTPBearer",
|
|
248
323
|
"APIKey",
|
|
249
324
|
"OAuth2",
|
|
@@ -253,14 +328,27 @@ __all__ = [
|
|
|
253
328
|
"TargetOp",
|
|
254
329
|
"Arity",
|
|
255
330
|
"PersistPolicy",
|
|
331
|
+
"TxScope",
|
|
256
332
|
"PHASE",
|
|
257
333
|
"PHASES",
|
|
258
334
|
"HookPhase",
|
|
335
|
+
"Exchange",
|
|
336
|
+
"Framing",
|
|
337
|
+
"HttpJsonRpcBindingSpec",
|
|
338
|
+
"HttpRestBindingSpec",
|
|
259
339
|
"SchemaRef",
|
|
260
340
|
"SchemaArg",
|
|
261
341
|
"alias_ctx",
|
|
342
|
+
"get",
|
|
262
343
|
"op_ctx",
|
|
263
|
-
"
|
|
344
|
+
"post",
|
|
345
|
+
"put",
|
|
346
|
+
"patch",
|
|
347
|
+
"delete",
|
|
348
|
+
"websocket_ctx",
|
|
349
|
+
"sse_ctx",
|
|
350
|
+
"stream_ctx",
|
|
351
|
+
"webtransport_ctx",
|
|
264
352
|
"hook_ctx",
|
|
265
353
|
"schema_ctx",
|
|
266
354
|
"response_ctx",
|
|
@@ -270,6 +358,10 @@ __all__ = [
|
|
|
270
358
|
"op_alias",
|
|
271
359
|
"engine_ctx",
|
|
272
360
|
"ResponseSpec",
|
|
361
|
+
"HttpStreamBindingSpec",
|
|
362
|
+
"SseBindingSpec",
|
|
363
|
+
"WebTransportBindingSpec",
|
|
364
|
+
"WsBindingSpec",
|
|
273
365
|
"bind",
|
|
274
366
|
"rebind",
|
|
275
367
|
"build_schemas",
|
|
@@ -277,6 +369,9 @@ __all__ = [
|
|
|
277
369
|
"build_handlers",
|
|
278
370
|
"register_rpc",
|
|
279
371
|
"build_rest",
|
|
372
|
+
"include_model",
|
|
373
|
+
"include_table",
|
|
374
|
+
"include_models",
|
|
280
375
|
"include_tables",
|
|
281
376
|
"rpc_call",
|
|
282
377
|
"_invoke",
|
|
@@ -289,11 +384,16 @@ __all__ = [
|
|
|
289
384
|
"bootstrap_dbschema",
|
|
290
385
|
"DEFAULT_HTTP_METHODS",
|
|
291
386
|
"Request",
|
|
387
|
+
"UploadedFile",
|
|
388
|
+
"WebSocket",
|
|
292
389
|
"Response",
|
|
390
|
+
"TransportResponse",
|
|
293
391
|
"JSONResponse",
|
|
294
392
|
"BackgroundTask",
|
|
295
393
|
"resolver",
|
|
296
394
|
"AppSpec",
|
|
395
|
+
"BindingSpec",
|
|
396
|
+
"BindingRegistrySpec",
|
|
297
397
|
"RouterSpec",
|
|
298
398
|
"TableSpec",
|
|
299
399
|
"TableRegistrySpec",
|
|
@@ -302,12 +402,22 @@ __all__ = [
|
|
|
302
402
|
"IOSpec",
|
|
303
403
|
"StorageSpec",
|
|
304
404
|
"StorageTransform",
|
|
405
|
+
"Middleware",
|
|
305
406
|
"StorageTransformSpec",
|
|
407
|
+
"StorageTypeRef",
|
|
306
408
|
"ForeignKeySpec",
|
|
307
409
|
"RequestSpec",
|
|
308
410
|
"SchemaSpec",
|
|
309
411
|
"SessionSpec",
|
|
412
|
+
"session_spec",
|
|
413
|
+
"tx_read_committed",
|
|
414
|
+
"tx_repeatable_read",
|
|
415
|
+
"tx_serializable",
|
|
416
|
+
"readonly",
|
|
310
417
|
"EngineSpec",
|
|
418
|
+
"EngineRegistry",
|
|
419
|
+
"EngineBase",
|
|
420
|
+
"EngineProviderBase",
|
|
311
421
|
"TemplateSpec",
|
|
312
422
|
"ForeignKeyBase",
|
|
313
423
|
"HookBase",
|
|
@@ -316,6 +426,7 @@ __all__ = [
|
|
|
316
426
|
"App",
|
|
317
427
|
"Table",
|
|
318
428
|
"Column",
|
|
429
|
+
"CORSMiddleware",
|
|
319
430
|
"Route",
|
|
320
431
|
"Schema",
|
|
321
432
|
"Hook",
|
|
@@ -324,6 +435,7 @@ __all__ = [
|
|
|
324
435
|
"HOOK_DECLS_ATTR",
|
|
325
436
|
"middleware",
|
|
326
437
|
"middlewares",
|
|
438
|
+
"EventStreamResponse",
|
|
327
439
|
"FileResponse",
|
|
328
440
|
"HTMLResponse",
|
|
329
441
|
"PlainTextResponse",
|