matrx-orm 3.1.103__tar.gz → 3.1.104__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.103 → matrx_orm-3.1.104}/PKG-INFO +1 -1
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/schema_builder/FEATURE.md +4 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/schema_builder/schema_manager.py +20 -6
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/pyproject.toml +1 -1
- matrx_orm-3.1.104/tests/schema/test_schema_analysis.py +26 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/.gitignore +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/AGENTS.md +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/BASE_CLASS_METHODS.md +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/CLAUDE.md +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/MODEL_API.md +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/README.md +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/database/orm/extended/managers/ai_model_base.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/docs/migrations.md +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/FEATURE.md +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/MODULE_README.md +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/__init__.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/adapters/MODULE_README.md +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/adapters/__init__.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/adapters/async_postgresql.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/adapters/base_adapter.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/adapters/postgresql.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/adapters/postgrest_client_adapter.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/adapters/supabase_adapter.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/admin/FEATURE.md +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/admin/__init__.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/admin/router.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/api/__init__.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/api/auth.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/api/config.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/api/handlers.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/api/protocol.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/api/server.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/associations.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/cache_debug.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/catalog.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/catalog_sql.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/client/MODULE_README.md +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/client/__init__.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/client/postgres_connection.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/client/postgrest.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/client/supabase_auth.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/client/supabase_config.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/client/supabase_manager.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/core/EXTENDED-TASK.md +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/core/FEATURE.md +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/core/MODULE_README.md +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/core/RELATIONS-TASKS.md +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/core/TASKS.md +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/core/__init__.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/core/async_db_manager.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/core/base.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/core/config.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/core/connections.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/core/db_function.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/core/diagnostics.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/core/expressions.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/core/extended.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/core/fields.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/core/introspection.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/core/listen.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/core/loop_filters.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/core/model_dto.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/core/model_view.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/core/one_database.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/core/paginator.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/core/pool_maintenance.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/core/pool_watch.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/core/pooler_role.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/core/pydantic_bridge.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/core/registry.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/core/relations.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/core/resilience.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/core/rls_session.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/core/signals.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/core/tls.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/core/transaction.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/core/types.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/core/write_queue.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/entity.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/error_handling.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/exceptions.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/extended/__init__.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/extended/app_error_handler.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/identity_rule.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/local_sqlite.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/middleware/__init__.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/middleware/base.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/migrations/MODULE_README.md +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/migrations/__init__.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/migrations/cli.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/migrations/ddl.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/migrations/diff.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/migrations/executor.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/migrations/integration.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/migrations/loader.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/migrations/operations.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/migrations/state.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/migrations/table_filter.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/operations/FEATURE.md +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/operations/MODULE_README.md +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/operations/__init__.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/operations/bulk_update_values.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/operations/conflict.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/operations/conflict_writes.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/operations/create.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/operations/db_functions.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/operations/delete.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/operations/dynamic_admin.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/operations/dynamic_crud.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/operations/graph_walk.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/operations/latest_rows.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/operations/queue_claim.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/operations/read.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/operations/relational_backfill.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/operations/staging_load.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/operations/update.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/platform_db.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/py.typed +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/python_sql/MODULE_README.md +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/python_sql/__init__.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/python_sql/db_objects.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/python_sql/table_detailed_relationships.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/python_sql/table_typescript_relationship.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/query/FEATURE.md +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/query/MODULE_README.md +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/query/__init__.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/query/builder.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/query/executor.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/schema_builder/MODULE_README.md +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/schema_builder/__init__.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/schema_builder/code_handler.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/schema_builder/codegen_writer.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/schema_builder/columns.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/schema_builder/common.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/schema_builder/diff_preview.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/schema_builder/entity_capabilities.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/schema_builder/generator.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/schema_builder/helpers/__init__.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/schema_builder/helpers/base_generators.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/schema_builder/helpers/entity_generators.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/schema_builder/helpers/git_checker.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/schema_builder/package_wiring.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/schema_builder/relationships.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/schema_builder/runner.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/schema_builder/schema.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/schema_builder/tables.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/schema_builder/views.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/secrets_battery/FEATURE.md +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/secrets_battery/__init__.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/secrets_battery/attachments.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/secrets_battery/crypto.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/secrets_battery/items.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/secrets_battery/model.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/secrets_battery/org_service.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/secrets_battery/service.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/session/README.md +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/session/__init__.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/session/coalesce.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/session/dag.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/session/errors.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/session/fallback.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/session/flush.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/session/lifecycle.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/session/managed.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/session/op.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/session/reads.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/session/session.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/session/telemetry.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/sql_executor/MODULE_README.md +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/sql_executor/__init__.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/sql_executor/executor.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/sql_executor/queries.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/sql_executor/registry.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/sql_executor/types.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/sql_executor/utils.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/state.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/utils/__init__.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/utils/sql_utils.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/utils/type_converters.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/scripts/git-branches.sh +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/scripts/publish.sh +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/scripts/release.sh +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/MODULE_README.md +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/__init__.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/conftest.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/MODULE_README.md +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/__init__.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_admin_db_columns.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_admin_response_rendering.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_admin_search_negation.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_admin_search_sentinels.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_advisory_lock.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_agent_message.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_api_auth.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_api_config.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_api_handlers.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_api_protocol.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_array_agg_order_by.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_associations.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_bulk_hydration_offload.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_bulk_update_by_pk.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_bulk_upsert_increment_set_fields.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_cache_debug.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_call_function.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_case_when.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_catalog.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_composite_pk_filter.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_composite_pk_write_paths.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_config.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_conflict_target.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_conflict_writes.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_connection_codecs.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_connection_poison_guard.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_connection_primitives.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_count_composite_distinct.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_db_function_field.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_ddl_generator.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_derived_table.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_dirty_tracking.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_dynamic_crud.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_exceptions.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_execute_query_integrity_mapping.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_expression_primitives.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_fields.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_filter_jsonb_agg_array_index.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_from_alias.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_fts.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_func_expression_args.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_graph_walk.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_having_annotate_alias.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_insert_ignore_and_admin_primitives.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_introspect_rls_policies.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_join_and_aggregate.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_latest_rows.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_listen_notify.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_local_sqlite.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_managed_write_guard.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_matrx_entity.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_migration_diff_types.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_migration_loader.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_model_instance.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_model_meta.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_optimistic_concurrency.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_order_by_expression.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_parameter_name_hydration.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_patch_jsonb_path.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_pool_holder_census.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_pool_loop_recreation.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_pool_maintenance.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_postgrest_filters.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_pydantic_bridge.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_query_builder.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_query_error_detail.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_query_executor_sql.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_query_timeout.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_querybuilder_clone_semantics.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_queue_claim.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_read_connection_retry.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_registry.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_registry_multi_database.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_registry_multi_schema.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_relational_backfill.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_relations.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_resilience.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_rls_session_scope.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_schema_exists.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_session_advisory_lock.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_state_cache.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_subquery_filter_raw.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_subquery_in_filter.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_subquery_nested_expressions.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_supabase_auth.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_supabase_config.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_tls.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_typed_join_projection.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_typed_predicates.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_update_case_expression.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_update_subquery.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_update_with_rebase.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_upsert_default_leak.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_upsert_with_conflict.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_values_jsonb_decode.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_watched_lifecycle.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level1/test_write_retry_semantics.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level2/MODULE_README.md +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level2/__init__.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level2/conftest.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level2/test_bulk_ops.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level2/test_cache_integration.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level2/test_crud.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level2/test_foreign_keys.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level2/test_m2m.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level2/test_manager.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level2/test_migrations_live.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level2/test_query_execution.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/level2/test_schema_diff.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/live_pooler_role.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/sample_project/.env.example +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/sample_project/README.md +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/sample_project/__init__.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/sample_project/generate.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/sample_project/generated/.gitkeep +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/sample_project/matrx_orm.yaml +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/sample_project/test_schema_generation.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/sample_project_desktop/.env.example +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/sample_project_desktop/README.md +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/sample_project_desktop/__init__.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/sample_project_desktop/client_example.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/sample_project_desktop/client_example.ts +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/sample_project_desktop/client_supabase_example.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/sample_project_desktop/server.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/schema/entity_tests.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/schema/test_base_generation.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/schema/test_composite_pk_fk_generation.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/schema/test_composite_unique_generation.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/schema/test_dto_identity_generation.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/schema/test_entity_capability_generation.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/schema/test_enum_ordering.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/schema/test_generate_schema.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/schema/test_junction_analysis.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/schema/test_multi_schema_output.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/schema/test_sql_expression_defaults.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/schema/test_table_relationships_query.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/schema/test_view_generation.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/schema_builder/test_array_default_parsing.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/schema_builder/test_focused_generation_plan.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/schema_builder/test_host_models_aggregator.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/session/__init__.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/session/conftest.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/session/test_cache_no_downgrade.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/session/test_capture_poison_proof.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/session/test_coalesce.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/session/test_dag.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/session/test_disk_spill_fallback.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/session/test_flush_individual_fallback.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/session/test_governed_write.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/session/test_managed.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/session/test_op_enqueue_site.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/session/test_reads.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/session/test_session.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/test_database_name_alias.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/test_db_functions.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/test_model_cls_refactor.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/test_no_blocking_asyncpg_tls.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/test_one_database.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/test_pooler_role_guard.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/test_secrets_battery.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/test_sql_param_casts.py +0 -0
- {matrx_orm-3.1.103 → matrx_orm-3.1.104}/tests/test_sync_twins_guard.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: matrx-orm
|
|
3
|
-
Version: 3.1.
|
|
3
|
+
Version: 3.1.104
|
|
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
|
|
@@ -8,6 +8,10 @@ The schema builder generates importable models and manager wrappers from live da
|
|
|
8
8
|
must never rely on catalog row order; otherwise identical generator runs
|
|
9
9
|
oscillate every generated model containing that enum.
|
|
10
10
|
- Guard: `packages/matrx-orm/tests/schema/test_enum_ordering.py`.
|
|
11
|
+
- **Unknown catalog metrics sort last.** PostgreSQL can return `NULL` for a
|
|
12
|
+
relation's size or estimated row count; analysis must still complete and emit
|
|
13
|
+
generated code.
|
|
14
|
+
- Guard: `packages/matrx-orm/tests/schema/test_schema_analysis.py`.
|
|
11
15
|
|
|
12
16
|
## Manager method names
|
|
13
17
|
|
|
@@ -15,6 +15,16 @@ from matrx_orm.schema_builder.tables import Table
|
|
|
15
15
|
from matrx_orm.schema_builder.views import View
|
|
16
16
|
|
|
17
17
|
|
|
18
|
+
def _relation_size_sort_key(relation: Table | View) -> tuple[bool, int]:
|
|
19
|
+
"""Sort measured relations ahead of relations whose catalog size is unknown."""
|
|
20
|
+
return _nullable_int_sort_key(relation.size_bytes)
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
def _nullable_int_sort_key(value: int | None) -> tuple[bool, int]:
|
|
24
|
+
"""Sort known catalog metrics ahead of unknown values."""
|
|
25
|
+
return value is not None, value or 0
|
|
26
|
+
|
|
27
|
+
|
|
18
28
|
class SchemaManager:
|
|
19
29
|
def __init__(
|
|
20
30
|
self,
|
|
@@ -85,17 +95,17 @@ class SchemaManager:
|
|
|
85
95
|
)
|
|
86
96
|
|
|
87
97
|
vcprint(
|
|
88
|
-
self.schema, title=
|
|
98
|
+
self.schema, title="SCHEMA MANAGER] with schema", verbose=self.verbose, color="blue"
|
|
89
99
|
)
|
|
90
100
|
vcprint(
|
|
91
101
|
self.database_project,
|
|
92
|
-
title=
|
|
102
|
+
title="SCHEMA MANAGER] with database project",
|
|
93
103
|
verbose=self.verbose,
|
|
94
104
|
color="blue",
|
|
95
105
|
)
|
|
96
106
|
vcprint(
|
|
97
107
|
self.additional_schemas,
|
|
98
|
-
title=
|
|
108
|
+
title="SCHEMA MANAGER] with additional schemas",
|
|
99
109
|
verbose=self.verbose,
|
|
100
110
|
color="blue",
|
|
101
111
|
)
|
|
@@ -475,10 +485,10 @@ class SchemaManager:
|
|
|
475
485
|
),
|
|
476
486
|
"all_enum_base_types": list(self.all_enum_base_types),
|
|
477
487
|
"tables_by_size": sorted(
|
|
478
|
-
self.schema.tables.values(), key=
|
|
488
|
+
self.schema.tables.values(), key=_relation_size_sort_key, reverse=True
|
|
479
489
|
)[:5],
|
|
480
490
|
"views_by_size": sorted(
|
|
481
|
-
self.schema.views.values(), key=
|
|
491
|
+
self.schema.views.values(), key=_relation_size_sort_key, reverse=True
|
|
482
492
|
)[:5],
|
|
483
493
|
"fetch_strategies": table_fetch_strategy,
|
|
484
494
|
"tables_with_foreign_keys": tables_with_fk,
|
|
@@ -489,7 +499,11 @@ class SchemaManager:
|
|
|
489
499
|
"calc_exclusion_rules_count": calc_exclusion_rules_count,
|
|
490
500
|
"sub_component_props_count": sub_component_props_count,
|
|
491
501
|
"estimated_row_counts": dict(
|
|
492
|
-
sorted(
|
|
502
|
+
sorted(
|
|
503
|
+
estimated_row_counts.items(),
|
|
504
|
+
key=lambda item: _nullable_int_sort_key(item[1]),
|
|
505
|
+
reverse=True,
|
|
506
|
+
)
|
|
493
507
|
),
|
|
494
508
|
"foreign_key_relationships_total": foreign_key_relationships_total,
|
|
495
509
|
"referenced_by_relationships_total": referenced_by_relationships_total,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "matrx-orm"
|
|
3
|
-
version = "3.1.
|
|
3
|
+
version = "3.1.104"
|
|
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" }
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
from types import SimpleNamespace
|
|
2
|
+
|
|
3
|
+
from matrx_orm.schema_builder.schema_manager import (
|
|
4
|
+
_nullable_int_sort_key,
|
|
5
|
+
_relation_size_sort_key,
|
|
6
|
+
)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
def test_relation_size_sort_key_tolerates_unknown_catalog_sizes() -> None:
|
|
10
|
+
relations = [
|
|
11
|
+
SimpleNamespace(name="unknown", size_bytes=None),
|
|
12
|
+
SimpleNamespace(name="small", size_bytes=10),
|
|
13
|
+
SimpleNamespace(name="large", size_bytes=20),
|
|
14
|
+
]
|
|
15
|
+
|
|
16
|
+
ordered = sorted(relations, key=_relation_size_sort_key, reverse=True)
|
|
17
|
+
|
|
18
|
+
assert [relation.name for relation in ordered] == ["large", "small", "unknown"]
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
def test_nullable_catalog_metrics_sort_unknown_values_last() -> None:
|
|
22
|
+
assert sorted([None, 10, 20], key=_nullable_int_sort_key, reverse=True) == [
|
|
23
|
+
20,
|
|
24
|
+
10,
|
|
25
|
+
None,
|
|
26
|
+
]
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/python_sql/table_detailed_relationships.py
RENAMED
|
File without changes
|
{matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/python_sql/table_typescript_relationship.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{matrx_orm-3.1.103 → matrx_orm-3.1.104}/matrx_orm/schema_builder/helpers/entity_generators.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|