matrx-orm 3.1.22__tar.gz → 3.1.23__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.
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/CLAUDE.md +7 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/PKG-INFO +1 -1
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/schema_builder/runner.py +27 -6
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/pyproject.toml +1 -1
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/.gitignore +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/AGENTS.md +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/BASE_CLASS_METHODS.md +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/MODEL_API.md +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/README.md +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/database/orm/extended/managers/ai_model_base.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/docs/migrations.md +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/MODULE_README.md +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/__init__.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/adapters/MODULE_README.md +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/adapters/__init__.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/adapters/async_postgresql.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/adapters/base_adapter.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/adapters/postgresql.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/adapters/postgrest_client_adapter.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/adapters/supabase_adapter.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/admin/__init__.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/admin/router.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/api/__init__.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/api/auth.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/api/config.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/api/handlers.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/api/protocol.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/api/server.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/associations.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/cache_debug.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/client/MODULE_README.md +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/client/__init__.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/client/postgres_connection.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/client/postgrest.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/client/supabase_auth.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/client/supabase_config.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/client/supabase_manager.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/core/EXTENDED-TASK.md +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/core/MODULE_README.md +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/core/RELATIONS-TASKS.md +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/core/TASKS.md +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/core/__init__.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/core/async_db_manager.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/core/base.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/core/config.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/core/db_function.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/core/diagnostics.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/core/expressions.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/core/extended.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/core/fields.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/core/introspection.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/core/listen.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/core/loop_filters.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/core/model_dto.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/core/model_view.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/core/paginator.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/core/pool_maintenance.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/core/pydantic_bridge.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/core/registry.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/core/relations.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/core/resilience.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/core/rls_session.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/core/signals.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/core/tls.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/core/transaction.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/core/types.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/core/write_queue.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/entity.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/error_handling.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/exceptions.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/extended/__init__.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/extended/app_error_handler.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/identity_rule.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/middleware/__init__.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/middleware/base.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/migrations/MODULE_README.md +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/migrations/__init__.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/migrations/cli.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/migrations/ddl.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/migrations/diff.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/migrations/executor.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/migrations/integration.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/migrations/loader.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/migrations/operations.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/migrations/state.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/migrations/table_filter.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/operations/MODULE_README.md +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/operations/__init__.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/operations/bulk_update_values.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/operations/conflict.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/operations/conflict_writes.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/operations/create.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/operations/delete.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/operations/dynamic_admin.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/operations/queue_claim.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/operations/read.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/operations/staging_load.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/operations/update.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/py.typed +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/python_sql/MODULE_README.md +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/python_sql/__init__.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/python_sql/db_objects.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/python_sql/table_detailed_relationships.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/python_sql/table_typescript_relationship.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/query/MODULE_README.md +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/query/__init__.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/query/builder.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/query/executor.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/schema_builder/MODULE_README.md +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/schema_builder/__init__.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/schema_builder/code_handler.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/schema_builder/codegen_writer.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/schema_builder/columns.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/schema_builder/common.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/schema_builder/diff_preview.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/schema_builder/entity_capabilities.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/schema_builder/generator.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/schema_builder/helpers/__init__.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/schema_builder/helpers/base_generators.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/schema_builder/helpers/entity_generators.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/schema_builder/helpers/git_checker.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/schema_builder/package_wiring.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/schema_builder/relationships.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/schema_builder/schema.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/schema_builder/schema_manager.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/schema_builder/tables.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/schema_builder/views.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/session/README.md +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/session/__init__.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/session/coalesce.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/session/dag.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/session/errors.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/session/fallback.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/session/flush.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/session/lifecycle.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/session/managed.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/session/op.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/session/reads.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/session/session.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/session/telemetry.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/sql_executor/MODULE_README.md +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/sql_executor/__init__.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/sql_executor/executor.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/sql_executor/queries.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/sql_executor/registry.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/sql_executor/types.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/sql_executor/utils.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/state.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/utils/__init__.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/utils/sql_utils.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/matrx_orm/utils/type_converters.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/scripts/git-branches.sh +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/scripts/publish.sh +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/scripts/release.sh +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/MODULE_README.md +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/__init__.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/conftest.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/MODULE_README.md +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/__init__.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_admin_db_columns.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_admin_search_negation.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_admin_search_sentinels.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_advisory_lock.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_agent_message.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_api_auth.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_api_config.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_api_handlers.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_api_protocol.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_array_agg_order_by.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_associations.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_bulk_update_by_pk.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_bulk_upsert_increment_set_fields.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_cache_debug.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_call_function.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_case_when.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_composite_pk_filter.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_composite_pk_write_paths.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_config.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_conflict_target.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_conflict_writes.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_connection_codecs.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_connection_poison_guard.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_count_composite_distinct.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_db_function_field.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_ddl_generator.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_derived_table.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_dirty_tracking.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_exceptions.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_execute_admin_sql.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_expression_primitives.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_fields.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_filter_jsonb_agg_array_index.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_filter_raw.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_from_alias.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_fts.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_func_expression_args.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_having_annotate_alias.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_insert_ignore_and_admin_primitives.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_introspect_rls_policies.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_join_and_aggregate.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_listen_notify.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_managed_write_guard.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_matrx_entity.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_migration_diff_types.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_migration_loader.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_model_instance.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_model_meta.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_order_by_expression.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_patch_jsonb_path.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_pool_maintenance.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_postgrest_filters.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_query_builder.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_query_error_detail.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_query_executor_sql.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_query_timeout.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_querybuilder_clone_semantics.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_queue_claim.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_registry.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_registry_multi_database.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_registry_multi_schema.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_relations.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_resilience.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_schema_exists.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_session_advisory_lock.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_state_cache.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_subquery_filter_raw.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_subquery_in_filter.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_supabase_auth.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_supabase_config.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_tls.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_update_case_expression.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_update_subquery.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_upsert_with_conflict.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_values_jsonb_decode.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_watched_lifecycle.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level1/test_write_retry_semantics.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level2/MODULE_README.md +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level2/__init__.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level2/conftest.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level2/test_bulk_ops.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level2/test_cache_integration.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level2/test_crud.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level2/test_foreign_keys.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level2/test_m2m.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level2/test_manager.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level2/test_migrations_live.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level2/test_query_execution.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/level2/test_schema_diff.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/sample_project/.env.example +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/sample_project/README.md +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/sample_project/__init__.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/sample_project/generate.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/sample_project/generated/.gitkeep +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/sample_project/matrx_orm.yaml +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/sample_project/test_schema_generation.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/sample_project_desktop/.env.example +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/sample_project_desktop/README.md +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/sample_project_desktop/__init__.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/sample_project_desktop/client_example.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/sample_project_desktop/client_example.ts +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/sample_project_desktop/client_supabase_example.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/sample_project_desktop/server.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/schema/entity_tests.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/schema/test_base_generation.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/schema/test_composite_pk_fk_generation.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/schema/test_composite_unique_generation.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/schema/test_dto_identity_generation.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/schema/test_entity_capability_generation.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/schema/test_generate_schema.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/schema/test_multi_schema_output.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/schema/test_sql_expression_defaults.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/schema/test_view_generation.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/session/__init__.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/session/conftest.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/session/test_capture_poison_proof.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/session/test_coalesce.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/session/test_dag.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/session/test_disk_spill_fallback.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/session/test_flush_individual_fallback.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/session/test_governed_write.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/session/test_managed.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/session/test_op_enqueue_site.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/session/test_reads.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/session/test_session.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/test_database_name_alias.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/test_model_cls_refactor.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/test_no_blocking_asyncpg_tls.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/test_sql_param_casts.py +0 -0
- {matrx_orm-3.1.22 → matrx_orm-3.1.23}/tests/test_sync_twins_guard.py +0 -0
|
@@ -98,6 +98,13 @@ uv run pytest packages/matrx-orm/tests
|
|
|
98
98
|
|
|
99
99
|
Tests must run against a Postgres instance the developer provides (or a testcontainers-based fixture). No sibling matrx package is needed. If a test needs `matrx-connect`, that's a sign the test is in the wrong package.
|
|
100
100
|
|
|
101
|
+
Host generators may expose a focused schema pass by forwarding
|
|
102
|
+
`only_schemas={...}` to `run_schema_generation`; aidream's focused package-model
|
|
103
|
+
command is `uv run python db/generate.py --schema <schema> --models-only`.
|
|
104
|
+
`models_only=True` skips unrelated schema/type/helper outputs but still performs
|
|
105
|
+
live introspection and writes the canonical generated Model file. The unfiltered
|
|
106
|
+
command remains the release-wide regeneration path.
|
|
107
|
+
|
|
101
108
|
---
|
|
102
109
|
|
|
103
110
|
## Known issues
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: matrx-orm
|
|
3
|
-
Version: 3.1.
|
|
3
|
+
Version: 3.1.23
|
|
4
4
|
Summary: Async-first PostgreSQL ORM with bidirectional migrations, schema introspection, many-to-many relationships, and built-in state caching
|
|
5
5
|
Project-URL: Homepage, https://github.com/AI-Matrix-Engine/aidream-current
|
|
6
6
|
Project-URL: Repository, https://github.com/AI-Matrix-Engine/aidream-current
|
|
@@ -52,7 +52,11 @@ def _load_yaml(path: Path) -> dict[str, Any]:
|
|
|
52
52
|
|
|
53
53
|
|
|
54
54
|
def run_schema_generation(
|
|
55
|
-
config_path: str | Path = "matrx_orm.yaml",
|
|
55
|
+
config_path: str | Path = "matrx_orm.yaml",
|
|
56
|
+
skip_git_check: bool = False,
|
|
57
|
+
*,
|
|
58
|
+
only_schemas: set[str] | None = None,
|
|
59
|
+
models_only: bool = False,
|
|
56
60
|
) -> None:
|
|
57
61
|
"""
|
|
58
62
|
Read a matrx_orm.yaml config file, register all databases, apply debug
|
|
@@ -233,6 +237,16 @@ def run_schema_generation(
|
|
|
233
237
|
color="yellow",
|
|
234
238
|
)
|
|
235
239
|
return
|
|
240
|
+
if only_schemas:
|
|
241
|
+
requested = set(only_schemas)
|
|
242
|
+
generate_list = [entry for entry in generate_list if entry.get("schema", "public") in requested]
|
|
243
|
+
found = {entry.get("schema", "public") for entry in generate_list}
|
|
244
|
+
missing = requested - found
|
|
245
|
+
if missing:
|
|
246
|
+
raise ValueError(
|
|
247
|
+
"matrx-orm generation requested unknown schema target(s): "
|
|
248
|
+
+ ", ".join(sorted(missing))
|
|
249
|
+
)
|
|
236
250
|
|
|
237
251
|
# model_name_prefix is RETIRED. The schema-aware model_registry (keyed on
|
|
238
252
|
# (schema, class_name)) makes same-named tables across schemas coexist with
|
|
@@ -309,7 +323,8 @@ def run_schema_generation(
|
|
|
309
323
|
output_overrides=output_overrides,
|
|
310
324
|
)
|
|
311
325
|
manager.initialize()
|
|
312
|
-
|
|
326
|
+
if not models_only:
|
|
327
|
+
manager.schema.generate_schema_files()
|
|
313
328
|
manager.schema.generate_models()
|
|
314
329
|
vcprint(
|
|
315
330
|
f"[MATRX ORM] Done — database='{db_name}' schema='{schema}'\n",
|
|
@@ -337,14 +352,20 @@ def run_schema_generation(
|
|
|
337
352
|
_close_pools()
|
|
338
353
|
raise
|
|
339
354
|
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
355
|
+
if not models_only:
|
|
356
|
+
_write_host_models_aggregator(
|
|
357
|
+
generate_list, python_root, output_config, host_schema_model_names
|
|
358
|
+
)
|
|
343
359
|
|
|
344
360
|
# Declarative host→package DB wiring: resolve each incorporated package's
|
|
345
361
|
# DB_REQUIREMENTS manifest against the inventory just written above and emit
|
|
346
362
|
# the aidream-side wiring module. Only when writing Python directly to disk.
|
|
347
|
-
if
|
|
363
|
+
if (
|
|
364
|
+
not models_only
|
|
365
|
+
and cfg.get("package_wiring")
|
|
366
|
+
and output_config.python
|
|
367
|
+
and output_config.save_direct
|
|
368
|
+
):
|
|
348
369
|
try:
|
|
349
370
|
from matrx_orm.schema_builder.package_wiring import generate_package_wiring
|
|
350
371
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "matrx-orm"
|
|
3
|
-
version = "3.1.
|
|
3
|
+
version = "3.1.23"
|
|
4
4
|
description = "Async-first PostgreSQL ORM with bidirectional migrations, schema introspection, many-to-many relationships, and built-in state caching"
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
license = { text = "MIT" }
|
|
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
|