matrx-orm 3.1.82__tar.gz → 3.1.84__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.82 → matrx_orm-3.1.84}/.gitignore +1 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/BASE_CLASS_METHODS.md +29 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/PKG-INFO +1 -1
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/python_sql/db_objects.py +1 -1
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/schema_builder/FEATURE.md +7 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/pyproject.toml +1 -1
- matrx_orm-3.1.84/tests/schema/test_enum_ordering.py +8 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/AGENTS.md +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/CLAUDE.md +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/MODEL_API.md +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/README.md +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/database/orm/extended/managers/ai_model_base.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/docs/migrations.md +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/FEATURE.md +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/MODULE_README.md +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/__init__.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/adapters/MODULE_README.md +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/adapters/__init__.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/adapters/async_postgresql.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/adapters/base_adapter.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/adapters/postgresql.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/adapters/postgrest_client_adapter.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/adapters/supabase_adapter.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/admin/FEATURE.md +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/admin/__init__.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/admin/router.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/api/__init__.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/api/auth.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/api/config.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/api/handlers.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/api/protocol.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/api/server.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/associations.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/cache_debug.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/catalog.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/catalog_sql.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/client/MODULE_README.md +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/client/__init__.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/client/postgres_connection.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/client/postgrest.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/client/supabase_auth.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/client/supabase_config.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/client/supabase_manager.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/core/EXTENDED-TASK.md +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/core/FEATURE.md +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/core/MODULE_README.md +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/core/RELATIONS-TASKS.md +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/core/TASKS.md +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/core/__init__.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/core/async_db_manager.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/core/base.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/core/config.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/core/connections.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/core/db_function.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/core/diagnostics.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/core/expressions.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/core/extended.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/core/fields.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/core/introspection.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/core/listen.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/core/loop_filters.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/core/model_dto.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/core/model_view.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/core/one_database.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/core/paginator.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/core/pool_maintenance.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/core/pool_watch.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/core/pooler_role.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/core/pydantic_bridge.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/core/registry.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/core/relations.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/core/resilience.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/core/rls_session.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/core/signals.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/core/tls.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/core/transaction.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/core/types.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/core/write_queue.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/entity.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/error_handling.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/exceptions.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/extended/__init__.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/extended/app_error_handler.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/identity_rule.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/local_sqlite.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/middleware/__init__.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/middleware/base.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/migrations/MODULE_README.md +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/migrations/__init__.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/migrations/cli.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/migrations/ddl.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/migrations/diff.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/migrations/executor.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/migrations/integration.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/migrations/loader.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/migrations/operations.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/migrations/state.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/migrations/table_filter.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/operations/FEATURE.md +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/operations/MODULE_README.md +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/operations/__init__.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/operations/bulk_update_values.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/operations/conflict.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/operations/conflict_writes.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/operations/create.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/operations/db_functions.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/operations/delete.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/operations/dynamic_admin.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/operations/dynamic_crud.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/operations/graph_walk.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/operations/latest_rows.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/operations/queue_claim.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/operations/read.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/operations/relational_backfill.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/operations/staging_load.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/operations/update.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/platform_db.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/py.typed +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/python_sql/MODULE_README.md +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/python_sql/__init__.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/python_sql/table_detailed_relationships.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/python_sql/table_typescript_relationship.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/query/FEATURE.md +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/query/MODULE_README.md +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/query/__init__.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/query/builder.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/query/executor.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/schema_builder/MODULE_README.md +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/schema_builder/__init__.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/schema_builder/code_handler.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/schema_builder/codegen_writer.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/schema_builder/columns.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/schema_builder/common.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/schema_builder/diff_preview.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/schema_builder/entity_capabilities.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/schema_builder/generator.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/schema_builder/helpers/__init__.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/schema_builder/helpers/base_generators.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/schema_builder/helpers/entity_generators.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/schema_builder/helpers/git_checker.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/schema_builder/package_wiring.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/schema_builder/relationships.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/schema_builder/runner.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/schema_builder/schema.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/schema_builder/schema_manager.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/schema_builder/tables.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/schema_builder/views.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/secrets_battery/FEATURE.md +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/secrets_battery/__init__.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/secrets_battery/attachments.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/secrets_battery/crypto.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/secrets_battery/items.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/secrets_battery/model.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/secrets_battery/org_service.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/secrets_battery/service.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/session/README.md +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/session/__init__.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/session/coalesce.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/session/dag.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/session/errors.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/session/fallback.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/session/flush.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/session/lifecycle.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/session/managed.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/session/op.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/session/reads.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/session/session.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/session/telemetry.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/sql_executor/MODULE_README.md +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/sql_executor/__init__.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/sql_executor/executor.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/sql_executor/queries.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/sql_executor/registry.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/sql_executor/types.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/sql_executor/utils.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/state.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/utils/__init__.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/utils/sql_utils.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/matrx_orm/utils/type_converters.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/scripts/git-branches.sh +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/scripts/publish.sh +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/scripts/release.sh +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/MODULE_README.md +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/__init__.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/conftest.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/MODULE_README.md +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/__init__.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_admin_db_columns.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_admin_response_rendering.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_admin_search_negation.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_admin_search_sentinels.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_advisory_lock.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_agent_message.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_api_auth.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_api_config.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_api_handlers.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_api_protocol.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_array_agg_order_by.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_associations.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_bulk_hydration_offload.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_bulk_update_by_pk.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_bulk_upsert_increment_set_fields.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_cache_debug.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_call_function.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_case_when.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_catalog.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_composite_pk_filter.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_composite_pk_write_paths.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_config.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_conflict_target.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_conflict_writes.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_connection_codecs.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_connection_poison_guard.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_connection_primitives.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_count_composite_distinct.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_db_function_field.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_ddl_generator.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_derived_table.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_dirty_tracking.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_dynamic_crud.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_exceptions.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_execute_query_integrity_mapping.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_expression_primitives.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_fields.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_filter_jsonb_agg_array_index.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_from_alias.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_fts.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_func_expression_args.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_graph_walk.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_having_annotate_alias.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_insert_ignore_and_admin_primitives.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_introspect_rls_policies.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_join_and_aggregate.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_latest_rows.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_listen_notify.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_local_sqlite.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_managed_write_guard.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_matrx_entity.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_migration_diff_types.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_migration_loader.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_model_instance.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_model_meta.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_optimistic_concurrency.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_order_by_expression.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_parameter_name_hydration.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_patch_jsonb_path.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_pool_holder_census.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_pool_loop_recreation.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_pool_maintenance.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_postgrest_filters.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_pydantic_bridge.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_query_builder.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_query_error_detail.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_query_executor_sql.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_query_timeout.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_querybuilder_clone_semantics.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_queue_claim.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_registry.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_registry_multi_database.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_registry_multi_schema.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_relational_backfill.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_relations.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_resilience.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_rls_session_scope.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_schema_exists.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_session_advisory_lock.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_state_cache.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_subquery_filter_raw.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_subquery_in_filter.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_subquery_nested_expressions.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_supabase_auth.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_supabase_config.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_tls.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_typed_join_projection.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_typed_predicates.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_update_case_expression.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_update_subquery.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_update_with_rebase.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_upsert_default_leak.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_upsert_with_conflict.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_values_jsonb_decode.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_watched_lifecycle.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level1/test_write_retry_semantics.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level2/MODULE_README.md +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level2/__init__.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level2/conftest.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level2/test_bulk_ops.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level2/test_cache_integration.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level2/test_crud.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level2/test_foreign_keys.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level2/test_m2m.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level2/test_manager.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level2/test_migrations_live.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level2/test_query_execution.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/level2/test_schema_diff.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/live_pooler_role.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/sample_project/.env.example +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/sample_project/README.md +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/sample_project/__init__.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/sample_project/generate.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/sample_project/generated/.gitkeep +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/sample_project/matrx_orm.yaml +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/sample_project/test_schema_generation.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/sample_project_desktop/.env.example +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/sample_project_desktop/README.md +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/sample_project_desktop/__init__.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/sample_project_desktop/client_example.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/sample_project_desktop/client_example.ts +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/sample_project_desktop/client_supabase_example.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/sample_project_desktop/server.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/schema/entity_tests.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/schema/test_base_generation.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/schema/test_composite_pk_fk_generation.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/schema/test_composite_unique_generation.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/schema/test_dto_identity_generation.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/schema/test_entity_capability_generation.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/schema/test_generate_schema.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/schema/test_junction_analysis.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/schema/test_multi_schema_output.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/schema/test_sql_expression_defaults.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/schema/test_table_relationships_query.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/schema/test_view_generation.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/schema_builder/test_array_default_parsing.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/schema_builder/test_focused_generation_plan.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/schema_builder/test_host_models_aggregator.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/session/__init__.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/session/conftest.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/session/test_cache_no_downgrade.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/session/test_capture_poison_proof.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/session/test_coalesce.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/session/test_dag.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/session/test_disk_spill_fallback.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/session/test_flush_individual_fallback.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/session/test_governed_write.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/session/test_managed.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/session/test_op_enqueue_site.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/session/test_reads.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/session/test_session.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/test_database_name_alias.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/test_db_functions.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/test_model_cls_refactor.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/test_no_blocking_asyncpg_tls.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/test_one_database.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/test_pooler_role_guard.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/test_secrets_battery.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/test_sql_param_casts.py +0 -0
- {matrx_orm-3.1.82 → matrx_orm-3.1.84}/tests/test_sync_twins_guard.py +0 -0
|
@@ -615,6 +615,35 @@ result = await SystemWriteFailure.update_where(
|
|
|
615
615
|
|
|
616
616
|
Tests: `packages/matrx-orm/tests/level1/test_subquery_in_filter.py`.
|
|
617
617
|
|
|
618
|
+
### The INNER queryset of a `Subquery`/`Exists` is a real query too
|
|
619
|
+
|
|
620
|
+
A subquery's own filters are rendered by the same rules as a top-level query:
|
|
621
|
+
a **nested** `Subquery`/`Exists`/`Func` value, and a **compound or negated
|
|
622
|
+
`Q`** tree, all render as SQL inside the sub-select.
|
|
623
|
+
|
|
624
|
+
```python
|
|
625
|
+
sessions = CodingSession.filter(created_by=uid, provider="claude_code").select("conversation_id")
|
|
626
|
+
summaries = (
|
|
627
|
+
ConversationSummary.filter(user_id=uid)
|
|
628
|
+
.filter(Q(origin_class="unknown") | Q(origin_class__isnull=True)) # compound Q
|
|
629
|
+
.filter(id__in=Subquery(sessions)) # nested Subquery
|
|
630
|
+
.select("id")
|
|
631
|
+
)
|
|
632
|
+
rows = await Message.filter(conversation_id__in=Subquery(summaries)).all()
|
|
633
|
+
```
|
|
634
|
+
|
|
635
|
+
Before this, the inner renderer only understood flat keyword filters: a nested
|
|
636
|
+
`Subquery` fell through to the scalar condition builder and emitted
|
|
637
|
+
`field = ANY($n)` **with the `Subquery` object itself bound as a parameter**
|
|
638
|
+
(asyncpg then raised `invalid input for query argument $n` at execute time),
|
|
639
|
+
and a compound/negated `Q` raised `NotImplementedError`. Grown from the live
|
|
640
|
+
failure of aidream's `conversations` tool — "search my Claude Code
|
|
641
|
+
conversations" combined both shapes, so search+provider died while
|
|
642
|
+
search-alone and list+provider worked. Placeholder numbering across the
|
|
643
|
+
nesting is contiguous with the outer query's params.
|
|
644
|
+
|
|
645
|
+
Tests: `packages/matrx-orm/tests/level1/test_subquery_nested_expressions.py`.
|
|
646
|
+
|
|
618
647
|
### `introspect_rls_policies` — pg_catalog RLS-coverage introspection
|
|
619
648
|
|
|
620
649
|
`introspect_rls_policies(database, schemas, relnames)` (in
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: matrx-orm
|
|
3
|
-
Version: 3.1.
|
|
3
|
+
Version: 3.1.84
|
|
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
|
|
@@ -110,7 +110,7 @@ def get_full_db_objects(schema, database_project):
|
|
|
110
110
|
'full_type', pg_catalog.format_type(a.atttypid, a.atttypmod),
|
|
111
111
|
'base_type', t.typname,
|
|
112
112
|
'domain_type', CASE WHEN t.typtype = 'd' THEN t.typname ELSE NULL END,
|
|
113
|
-
'enum_labels', CASE WHEN t.typtype = 'e' THEN (SELECT array_agg(enumlabel) FROM pg_enum WHERE enumtypid = t.oid) ELSE NULL END,
|
|
113
|
+
'enum_labels', CASE WHEN t.typtype = 'e' THEN (SELECT array_agg(enumlabel ORDER BY enumsortorder) FROM pg_enum WHERE enumtypid = t.oid) ELSE NULL END,
|
|
114
114
|
'is_array', a.attndims > 0,
|
|
115
115
|
'nullable', NOT a.attnotnull,
|
|
116
116
|
'default', pg_get_expr(d.adbin, d.adrelid),
|
|
@@ -2,6 +2,13 @@
|
|
|
2
2
|
|
|
3
3
|
The schema builder generates importable models and manager wrappers from live database metadata.
|
|
4
4
|
|
|
5
|
+
## Deterministic database metadata
|
|
6
|
+
|
|
7
|
+
- PostgreSQL enum labels are emitted in `pg_enum.enumsortorder`. Introspection
|
|
8
|
+
must never rely on catalog row order; otherwise identical generator runs
|
|
9
|
+
oscillate every generated model containing that enum.
|
|
10
|
+
- Guard: `packages/matrx-orm/tests/schema/test_enum_ordering.py`.
|
|
11
|
+
|
|
5
12
|
## Manager method names
|
|
6
13
|
|
|
7
14
|
- A generated manager must never contain duplicate method names; later definitions silently replace earlier behavior in Python.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "matrx-orm"
|
|
3
|
-
version = "3.1.
|
|
3
|
+
version = "3.1.84"
|
|
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,8 @@
|
|
|
1
|
+
from pathlib import Path
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
def test_schema_introspection_orders_enum_labels_by_postgres_enum_order() -> None:
|
|
5
|
+
source = (Path(__file__).parents[2] / "matrx_orm" / "python_sql" / "db_objects.py").read_text()
|
|
6
|
+
|
|
7
|
+
assert "array_agg(enumlabel ORDER BY enumsortorder)" in source
|
|
8
|
+
assert "array_agg(enumlabel) FROM pg_enum" not in source
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|