tigrbl-orm 0.4.4.dev8__tar.gz → 0.4.5.dev1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (33) hide show
  1. {tigrbl_orm-0.4.4.dev8 → tigrbl_orm-0.4.5.dev1}/PKG-INFO +31 -20
  2. {tigrbl_orm-0.4.4.dev8 → tigrbl_orm-0.4.5.dev1}/README.md +30 -19
  3. {tigrbl_orm-0.4.4.dev8 → tigrbl_orm-0.4.5.dev1}/pyproject.toml +1 -1
  4. {tigrbl_orm-0.4.4.dev8 → tigrbl_orm-0.4.5.dev1}/LICENSE +0 -0
  5. {tigrbl_orm-0.4.4.dev8 → tigrbl_orm-0.4.5.dev1}/NOTICE +0 -0
  6. {tigrbl_orm-0.4.4.dev8 → tigrbl_orm-0.4.5.dev1}/tigrbl_orm/orm/__init__.py +0 -0
  7. {tigrbl_orm-0.4.4.dev8 → tigrbl_orm-0.4.5.dev1}/tigrbl_orm/orm/mixins/_RowBound.py +0 -0
  8. {tigrbl_orm-0.4.4.dev8 → tigrbl_orm-0.4.5.dev1}/tigrbl_orm/orm/mixins/__init__.py +0 -0
  9. {tigrbl_orm-0.4.4.dev8 → tigrbl_orm-0.4.5.dev1}/tigrbl_orm/orm/mixins/bootstrappable.py +0 -0
  10. {tigrbl_orm-0.4.4.dev8 → tigrbl_orm-0.4.5.dev1}/tigrbl_orm/orm/mixins/bound.py +0 -0
  11. {tigrbl_orm-0.4.4.dev8 → tigrbl_orm-0.4.5.dev1}/tigrbl_orm/orm/mixins/edges.py +0 -0
  12. {tigrbl_orm-0.4.4.dev8 → tigrbl_orm-0.4.5.dev1}/tigrbl_orm/orm/mixins/fields.py +0 -0
  13. {tigrbl_orm-0.4.4.dev8 → tigrbl_orm-0.4.5.dev1}/tigrbl_orm/orm/mixins/hierarchy.py +0 -0
  14. {tigrbl_orm-0.4.4.dev8 → tigrbl_orm-0.4.5.dev1}/tigrbl_orm/orm/mixins/key_digest.py +0 -0
  15. {tigrbl_orm-0.4.4.dev8 → tigrbl_orm-0.4.5.dev1}/tigrbl_orm/orm/mixins/lifecycle.py +0 -0
  16. {tigrbl_orm-0.4.4.dev8 → tigrbl_orm-0.4.5.dev1}/tigrbl_orm/orm/mixins/locks.py +0 -0
  17. {tigrbl_orm-0.4.4.dev8 → tigrbl_orm-0.4.5.dev1}/tigrbl_orm/orm/mixins/markers.py +0 -0
  18. {tigrbl_orm-0.4.4.dev8 → tigrbl_orm-0.4.5.dev1}/tigrbl_orm/orm/mixins/operations.py +0 -0
  19. {tigrbl_orm-0.4.4.dev8 → tigrbl_orm-0.4.5.dev1}/tigrbl_orm/orm/mixins/ownable.py +0 -0
  20. {tigrbl_orm-0.4.4.dev8 → tigrbl_orm-0.4.5.dev1}/tigrbl_orm/orm/mixins/principals.py +0 -0
  21. {tigrbl_orm-0.4.4.dev8 → tigrbl_orm-0.4.5.dev1}/tigrbl_orm/orm/mixins/tenant_bound.py +0 -0
  22. {tigrbl_orm-0.4.4.dev8 → tigrbl_orm-0.4.5.dev1}/tigrbl_orm/orm/mixins/upsertable.py +0 -0
  23. {tigrbl_orm-0.4.4.dev8 → tigrbl_orm-0.4.5.dev1}/tigrbl_orm/orm/mixins/utils.py +0 -0
  24. {tigrbl_orm-0.4.4.dev8 → tigrbl_orm-0.4.5.dev1}/tigrbl_orm/orm/tables/__init__.py +0 -0
  25. {tigrbl_orm-0.4.4.dev8 → tigrbl_orm-0.4.5.dev1}/tigrbl_orm/orm/tables/_base.py +0 -0
  26. {tigrbl_orm-0.4.4.dev8 → tigrbl_orm-0.4.5.dev1}/tigrbl_orm/orm/tables/audit.py +0 -0
  27. {tigrbl_orm-0.4.4.dev8 → tigrbl_orm-0.4.5.dev1}/tigrbl_orm/orm/tables/client.py +0 -0
  28. {tigrbl_orm-0.4.4.dev8 → tigrbl_orm-0.4.5.dev1}/tigrbl_orm/orm/tables/group.py +0 -0
  29. {tigrbl_orm-0.4.4.dev8 → tigrbl_orm-0.4.5.dev1}/tigrbl_orm/orm/tables/org.py +0 -0
  30. {tigrbl_orm-0.4.4.dev8 → tigrbl_orm-0.4.5.dev1}/tigrbl_orm/orm/tables/rbac.py +0 -0
  31. {tigrbl_orm-0.4.4.dev8 → tigrbl_orm-0.4.5.dev1}/tigrbl_orm/orm/tables/status.py +0 -0
  32. {tigrbl_orm-0.4.4.dev8 → tigrbl_orm-0.4.5.dev1}/tigrbl_orm/orm/tables/tenant.py +0 -0
  33. {tigrbl_orm-0.4.4.dev8 → tigrbl_orm-0.4.5.dev1}/tigrbl_orm/orm/tables/user.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: tigrbl-orm
3
- Version: 0.4.4.dev8
3
+ Version: 0.4.5.dev1
4
4
  Summary: SQLAlchemy ORM tables, mixins, columns, model helpers, and persistence primitives for Tigrbl applications.
5
5
  License: Apache License
6
6
  Version 2.0, January 2004
@@ -270,13 +270,6 @@ Framework maintainers, extension authors, and advanced users composing Tigrbl fr
270
270
 
271
271
  It owns a narrow layer in the split workspace and is consumed by higher-level packages through explicit dependencies.
272
272
 
273
- ## Certification Status
274
-
275
- - Package status: governed package in the `tigrbl/tigrbl` workspace.
276
- - Governance source: [SSOT registry](https://github.com/tigrbl/tigrbl/blob/master/.ssot/registry.json).
277
- - Release evidence: [publish workflow](https://github.com/tigrbl/tigrbl/actions/workflows/publish.yml) validates package builds, tests, GitHub release assets, and PyPI publication for managed packages.
278
- - Local certification guard: `pkgs/core/tigrbl_tests/tests/unit/test_package_badges_and_notices.py` verifies every package README keeps the Discord badge, Apache 2.0 badge, explicit Python-version badge, `LICENSE`, and `NOTICE`.
279
- - Scope note: this README documents the package boundary. Runtime feature support remains governed by `.ssot/` entities and the conformance docs linked below.
280
273
 
281
274
  ## Install
282
275
 
@@ -361,23 +354,33 @@ PY
361
354
 
362
355
  Choose `tigrbl-orm` when the quick-answer table matches your use case. Choose [`tigrbl`](https://pypi.org/project/tigrbl/) instead when you want the full public facade. Choose a lower-level package such as [`tigrbl-core`](https://pypi.org/project/tigrbl-core/), [`tigrbl-base`](https://pypi.org/project/tigrbl-base/), or [`tigrbl-runtime`](https://pypi.org/project/tigrbl-runtime/) when you are building framework extensions or testing a specific internal boundary.
363
356
 
364
- ## Authoring BCP
357
+ ## Convenient Authoring Path and Best Current Practice (BCP)
365
358
 
366
359
  `tigrbl-orm` is the SQLAlchemy-facing implementation boundary for Tigrbl table and persistence helpers. Normal application documentation should still lead with the `tigrbl` facade, Tigrbl table/column helpers, and Tigrbl specs.
367
360
 
368
- Do:
369
- - Do use this package when implementing or testing ORM helpers, table mixins, persistence primitives, and SQLAlchemy-facing compatibility behavior.
370
- - Do keep ORM behavior aligned with Tigrbl table, column, datatype, storage, IO, and operation specs.
371
- - Do let Tigrbl specs describe reusable field and operation intent before ORM materialization.
361
+ ### Keep ORM usage boundary-owned
362
+
363
+ - Avoid: Exposing implementation-only ORM helpers as facade-level guidance unless the package boundary is explicit.
364
+ - Do: Use this package when implementing or testing ORM helpers, table mixins, persistence primitives, and SQLAlchemy-facing compatibility behavior.
365
+ - Why: SQLAlchemy is useful inside the storage boundary, while application users still get the more convenient Tigrbl facade contract.
366
+
367
+ ### Keep specs authoritative before ORM materialization
368
+
369
+ - Avoid: Duplicating field behavior across ORM declarations and Tigrbl specs.
370
+ - Do: Keep ORM behavior aligned with Tigrbl table, column, datatype, storage, IO, and operation specs.
371
+ - Why: The spec layer is the reusable source for behavior that must project into storage, validation, runtime, hooks, diagnostics, and docs.
372
372
 
373
- Do not:
374
- - Do not present raw SQLAlchemy `mapped_column(...)` or `Column(...)` as the preferred application authoring surface when Tigrbl column helpers or specs can express the behavior.
375
- - Do not put application route authoring, FastAPI/Starlette route objects, ad-hoc engine construction in handlers, or direct transaction control in this package's public examples.
376
- - Do not treat SQLAlchemy tables as the only source of truth for schema, docs, runtime, hooks, and diagnostics.
373
+ ### Do not teach raw ORM declarations as application style
377
374
 
378
- Avoid:
379
- - Avoid duplicating field behavior across ORM declarations and Tigrbl specs. Keep the spec layer authoritative for behavior that must project into storage, validation, runtime, and docs.
380
- - Avoid exposing implementation-only ORM helpers as facade-level guidance unless the package boundary is explicit.
375
+ - Do not: Present raw SQLAlchemy `mapped_column(...)` or `Column(...)` as the preferred application authoring surface when Tigrbl column helpers or specs can express the behavior.
376
+ - Do: Let Tigrbl specs describe reusable field and operation intent before ORM materialization.
377
+ - Why: Raw ORM declarations are only one lowering target and cannot carry the full Tigrbl storage, IO, validation, docs, hook, and runtime contract.
378
+
379
+ ### Do not move application behavior into this boundary
380
+
381
+ - Do not: Put application route authoring, FastAPI/Starlette route objects, ad-hoc engine construction in handlers, or direct transaction control in this package's public examples.
382
+ - Do: Keep application-facing examples on the `tigrbl` facade and keep this README focused on the ORM implementation boundary.
383
+ - Why: This keeps routes, engines, transactions, schemas, hooks, diagnostics, and runtime planning owned by the packages that govern those behaviors.
381
384
 
382
385
  ## Related Packages
383
386
 
@@ -406,6 +409,14 @@ Avoid:
406
409
 
407
410
  This README is the package-local distribution entry point for `tigrbl-orm`. It answers install, usage, API, ownership, and certification-orientation questions for this package. Broader architectural decisions, release status, and cross-package proof chains remain in the repository-level docs and SSOT registry.
408
411
 
412
+ ## Certification Status
413
+
414
+ - Package status: governed package in the `tigrbl/tigrbl` workspace.
415
+ - Governance source: [SSOT registry](https://github.com/tigrbl/tigrbl/blob/master/.ssot/registry.json).
416
+ - Release evidence: [publish workflow](https://github.com/tigrbl/tigrbl/actions/workflows/publish.yml) validates package builds, tests, GitHub release assets, and PyPI publication for managed packages.
417
+ - Local certification guard: `pkgs/core/tigrbl_tests/tests/unit/test_package_badges_and_notices.py` verifies every package README keeps the Discord badge, Apache 2.0 badge, explicit Python-version badge, `LICENSE`, and `NOTICE`.
418
+ - Scope note: this README documents the package boundary. Runtime feature support remains governed by `.ssot/` entities and the conformance docs linked below.
419
+
409
420
  ## License
410
421
 
411
422
  Licensed under the Apache License, Version 2.0. See `LICENSE`, `NOTICE`, and the official [Apache 2.0 license text](https://www.apache.org/licenses/LICENSE-2.0).
@@ -35,13 +35,6 @@ Framework maintainers, extension authors, and advanced users composing Tigrbl fr
35
35
 
36
36
  It owns a narrow layer in the split workspace and is consumed by higher-level packages through explicit dependencies.
37
37
 
38
- ## Certification Status
39
-
40
- - Package status: governed package in the `tigrbl/tigrbl` workspace.
41
- - Governance source: [SSOT registry](https://github.com/tigrbl/tigrbl/blob/master/.ssot/registry.json).
42
- - Release evidence: [publish workflow](https://github.com/tigrbl/tigrbl/actions/workflows/publish.yml) validates package builds, tests, GitHub release assets, and PyPI publication for managed packages.
43
- - Local certification guard: `pkgs/core/tigrbl_tests/tests/unit/test_package_badges_and_notices.py` verifies every package README keeps the Discord badge, Apache 2.0 badge, explicit Python-version badge, `LICENSE`, and `NOTICE`.
44
- - Scope note: this README documents the package boundary. Runtime feature support remains governed by `.ssot/` entities and the conformance docs linked below.
45
38
 
46
39
  ## Install
47
40
 
@@ -126,23 +119,33 @@ PY
126
119
 
127
120
  Choose `tigrbl-orm` when the quick-answer table matches your use case. Choose [`tigrbl`](https://pypi.org/project/tigrbl/) instead when you want the full public facade. Choose a lower-level package such as [`tigrbl-core`](https://pypi.org/project/tigrbl-core/), [`tigrbl-base`](https://pypi.org/project/tigrbl-base/), or [`tigrbl-runtime`](https://pypi.org/project/tigrbl-runtime/) when you are building framework extensions or testing a specific internal boundary.
128
121
 
129
- ## Authoring BCP
122
+ ## Convenient Authoring Path and Best Current Practice (BCP)
130
123
 
131
124
  `tigrbl-orm` is the SQLAlchemy-facing implementation boundary for Tigrbl table and persistence helpers. Normal application documentation should still lead with the `tigrbl` facade, Tigrbl table/column helpers, and Tigrbl specs.
132
125
 
133
- Do:
134
- - Do use this package when implementing or testing ORM helpers, table mixins, persistence primitives, and SQLAlchemy-facing compatibility behavior.
135
- - Do keep ORM behavior aligned with Tigrbl table, column, datatype, storage, IO, and operation specs.
136
- - Do let Tigrbl specs describe reusable field and operation intent before ORM materialization.
126
+ ### Keep ORM usage boundary-owned
127
+
128
+ - Avoid: Exposing implementation-only ORM helpers as facade-level guidance unless the package boundary is explicit.
129
+ - Do: Use this package when implementing or testing ORM helpers, table mixins, persistence primitives, and SQLAlchemy-facing compatibility behavior.
130
+ - Why: SQLAlchemy is useful inside the storage boundary, while application users still get the more convenient Tigrbl facade contract.
131
+
132
+ ### Keep specs authoritative before ORM materialization
133
+
134
+ - Avoid: Duplicating field behavior across ORM declarations and Tigrbl specs.
135
+ - Do: Keep ORM behavior aligned with Tigrbl table, column, datatype, storage, IO, and operation specs.
136
+ - Why: The spec layer is the reusable source for behavior that must project into storage, validation, runtime, hooks, diagnostics, and docs.
137
137
 
138
- Do not:
139
- - Do not present raw SQLAlchemy `mapped_column(...)` or `Column(...)` as the preferred application authoring surface when Tigrbl column helpers or specs can express the behavior.
140
- - Do not put application route authoring, FastAPI/Starlette route objects, ad-hoc engine construction in handlers, or direct transaction control in this package's public examples.
141
- - Do not treat SQLAlchemy tables as the only source of truth for schema, docs, runtime, hooks, and diagnostics.
138
+ ### Do not teach raw ORM declarations as application style
142
139
 
143
- Avoid:
144
- - Avoid duplicating field behavior across ORM declarations and Tigrbl specs. Keep the spec layer authoritative for behavior that must project into storage, validation, runtime, and docs.
145
- - Avoid exposing implementation-only ORM helpers as facade-level guidance unless the package boundary is explicit.
140
+ - Do not: Present raw SQLAlchemy `mapped_column(...)` or `Column(...)` as the preferred application authoring surface when Tigrbl column helpers or specs can express the behavior.
141
+ - Do: Let Tigrbl specs describe reusable field and operation intent before ORM materialization.
142
+ - Why: Raw ORM declarations are only one lowering target and cannot carry the full Tigrbl storage, IO, validation, docs, hook, and runtime contract.
143
+
144
+ ### Do not move application behavior into this boundary
145
+
146
+ - Do not: Put application route authoring, FastAPI/Starlette route objects, ad-hoc engine construction in handlers, or direct transaction control in this package's public examples.
147
+ - Do: Keep application-facing examples on the `tigrbl` facade and keep this README focused on the ORM implementation boundary.
148
+ - Why: This keeps routes, engines, transactions, schemas, hooks, diagnostics, and runtime planning owned by the packages that govern those behaviors.
146
149
 
147
150
  ## Related Packages
148
151
 
@@ -171,6 +174,14 @@ Avoid:
171
174
 
172
175
  This README is the package-local distribution entry point for `tigrbl-orm`. It answers install, usage, API, ownership, and certification-orientation questions for this package. Broader architectural decisions, release status, and cross-package proof chains remain in the repository-level docs and SSOT registry.
173
176
 
177
+ ## Certification Status
178
+
179
+ - Package status: governed package in the `tigrbl/tigrbl` workspace.
180
+ - Governance source: [SSOT registry](https://github.com/tigrbl/tigrbl/blob/master/.ssot/registry.json).
181
+ - Release evidence: [publish workflow](https://github.com/tigrbl/tigrbl/actions/workflows/publish.yml) validates package builds, tests, GitHub release assets, and PyPI publication for managed packages.
182
+ - Local certification guard: `pkgs/core/tigrbl_tests/tests/unit/test_package_badges_and_notices.py` verifies every package README keeps the Discord badge, Apache 2.0 badge, explicit Python-version badge, `LICENSE`, and `NOTICE`.
183
+ - Scope note: this README documents the package boundary. Runtime feature support remains governed by `.ssot/` entities and the conformance docs linked below.
184
+
174
185
  ## License
175
186
 
176
187
  Licensed under the Apache License, Version 2.0. See `LICENSE`, `NOTICE`, and the official [Apache 2.0 license text](https://www.apache.org/licenses/LICENSE-2.0).
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "tigrbl-orm"
3
- version = "0.4.4.dev8"
3
+ version = "0.4.5.dev1"
4
4
  description = "SQLAlchemy ORM tables, mixins, columns, model helpers, and persistence primitives for Tigrbl applications."
5
5
  readme = "README.md"
6
6
  license = { file = "LICENSE" }
File without changes
File without changes