tigrbl-orm 0.4.4.dev8__py3-none-any.whl → 0.4.5.dev1__py3-none-any.whl

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.
@@ -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).
@@ -26,8 +26,8 @@ tigrbl_orm/orm/tables/rbac.py,sha256=zv8XBC2vrQLqxjN3ilA7TyCNJnnBp6jlQs1yqylw0qs
26
26
  tigrbl_orm/orm/tables/status.py,sha256=eYY_13BJScrZN2VK6s_QG0Jlk0vrysKbINVR28GfklE,3596
27
27
  tigrbl_orm/orm/tables/tenant.py,sha256=yTDrGktHqp7EE3dtE959SAqKOY6guNUbt-H__FQvmIM,460
28
28
  tigrbl_orm/orm/tables/user.py,sha256=ROdfbnF4Nta96pY__sir-2CpSoGJp_YappmyDYJ_Nso,807
29
- tigrbl_orm-0.4.4.dev8.dist-info/METADATA,sha256=vqIb1j2JvvuZEHaD0mrXE8XFD4J4HozRbLWr9XbCr6k,23236
30
- tigrbl_orm-0.4.4.dev8.dist-info/WHEEL,sha256=eY7nduwzv-ldUxpzbRlxwvC693Hg6PX8bWDjEHjZ_dk,88
31
- tigrbl_orm-0.4.4.dev8.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
32
- tigrbl_orm-0.4.4.dev8.dist-info/licenses/NOTICE,sha256=EvJMTshzsWz43LiK-DeN2ZuLtrP49cxvlrFlJ8F_buc,221
33
- tigrbl_orm-0.4.4.dev8.dist-info/RECORD,,
29
+ tigrbl_orm-0.4.5.dev1.dist-info/METADATA,sha256=CGq6NoLR3HLAAa573pVbUsyFxk2ljcVDNW621nqkRtY,23959
30
+ tigrbl_orm-0.4.5.dev1.dist-info/WHEEL,sha256=eY7nduwzv-ldUxpzbRlxwvC693Hg6PX8bWDjEHjZ_dk,88
31
+ tigrbl_orm-0.4.5.dev1.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
32
+ tigrbl_orm-0.4.5.dev1.dist-info/licenses/NOTICE,sha256=EvJMTshzsWz43LiK-DeN2ZuLtrP49cxvlrFlJ8F_buc,221
33
+ tigrbl_orm-0.4.5.dev1.dist-info/RECORD,,