matrx-orm 3.0.7__tar.gz → 3.0.10__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.0.7 → matrx_orm-3.0.10}/PKG-INFO +2 -1
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/README.md +1 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/pyproject.toml +1 -1
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/core/fields.py +23 -7
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/level1/test_fields.py +8 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/uv.lock +1 -1
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/.arman/pending/versioning/INITIAL.md +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/.env.example +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/.github/workflows/publish.yml +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/.gitignore +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/.python-version +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/CLAUDE.md +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/MIGRATIONS.md +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/MODULE_README.md +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/RESERVED_NAMES.md +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/TASKS-TEMPLATE.md +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/TASKS.md +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/database/orm/extended/managers/ai_model_base.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/docs/migrations.md +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/extended_jan5_backup.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/main.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/release.sh +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/scripts/publish.sh +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/MODULE_README.md +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/MODULE_README.md +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/__init__.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/adapters/MODULE_README.md +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/adapters/__init__.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/adapters/base_adapter.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/adapters/postgresql.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/client/MODULE_README.md +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/client/__init__.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/client/postgres_connection.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/core/EXTENDED-TASK.md +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/core/MODULE_README.md +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/core/RELATIONS-TASKS.md +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/core/TASKS.md +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/core/__init__.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/core/async_db_manager.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/core/base.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/core/config.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/core/expressions.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/core/extended.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/core/model_dto.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/core/model_view.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/core/paginator.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/core/pydantic_bridge.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/core/registry.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/core/relations.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/core/signals.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/core/transaction.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/core/types.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/error_handling.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/exceptions.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/extended/__init__.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/extended/app_error_handler.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/middleware/__init__.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/middleware/base.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/migrations/MODULE_README.md +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/migrations/__init__.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/migrations/cli.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/migrations/ddl.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/migrations/diff.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/migrations/executor.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/migrations/integration.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/migrations/loader.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/migrations/operations.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/migrations/state.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/migrations/table_filter.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/operations/MODULE_README.md +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/operations/__init__.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/operations/create.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/operations/delete.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/operations/read.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/operations/update.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/py.typed +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/python_sql/MODULE_README.md +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/python_sql/__init__.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/python_sql/db_objects.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/python_sql/table_detailed_relationships.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/python_sql/table_typescript_relationship.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/query/MODULE_README.md +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/query/__init__.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/query/builder.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/query/executor.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/schema_builder/MODULE_README.md +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/schema_builder/__init__.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/schema_builder/code_handler.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/schema_builder/columns.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/schema_builder/common.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/schema_builder/generator.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/schema_builder/helpers/__init__.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/schema_builder/helpers/base_generators.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/schema_builder/helpers/entity_generators.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/schema_builder/helpers/git_checker.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/schema_builder/relationships.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/schema_builder/runner.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/schema_builder/schema.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/schema_builder/schema_manager.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/schema_builder/tables.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/schema_builder/views.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/sql_executor/MODULE_README.md +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/sql_executor/__init__.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/sql_executor/executor.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/sql_executor/queries.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/sql_executor/registry.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/sql_executor/types.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/sql_executor/utils.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/state.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/utils/__init__.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/utils/sql_utils.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/utils/type_converters.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/MODULE_README.md +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/__init__.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/conftest.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/level1/MODULE_README.md +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/level1/__init__.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/level1/test_config.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/level1/test_ddl_generator.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/level1/test_exceptions.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/level1/test_migration_diff_types.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/level1/test_migration_loader.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/level1/test_model_instance.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/level1/test_model_meta.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/level1/test_query_builder.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/level1/test_query_executor_sql.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/level1/test_registry.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/level1/test_relations.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/level1/test_state_cache.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/level2/MODULE_README.md +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/level2/__init__.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/level2/conftest.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/level2/test_bulk_ops.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/level2/test_cache_integration.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/level2/test_crud.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/level2/test_foreign_keys.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/level2/test_m2m.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/level2/test_manager.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/level2/test_migrations_live.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/level2/test_query_execution.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/level2/test_schema_diff.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/sample_project/.env.example +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/sample_project/README.md +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/sample_project/__init__.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/sample_project/generate.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/sample_project/generated/.gitkeep +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/sample_project/matrx_orm.yaml +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/sample_project/test_schema_generation.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/schema/entity_tests.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/schema/test_base_generation.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/schema/test_generate_schema.py +0 -0
- {matrx_orm-3.0.7 → matrx_orm-3.0.10}/tests/test_model_cls_refactor.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: matrx-orm
|
|
3
|
-
Version: 3.0.
|
|
3
|
+
Version: 3.0.10
|
|
4
4
|
Summary: Async-first PostgreSQL ORM with bidirectional migrations, schema introspection, many-to-many relationships, and built-in state caching. Works with any PostgreSQL database.
|
|
5
5
|
Project-URL: Homepage, https://github.com/armanisadeghi/matrx-orm
|
|
6
6
|
Project-URL: Repository, https://github.com/armanisadeghi/matrx-orm
|
|
@@ -1836,6 +1836,7 @@ When you run the schema builder against a database that has `vector(n)` columns,
|
|
|
1836
1836
|
|
|
1837
1837
|
| Version | Highlights |
|
|
1838
1838
|
|---|---|
|
|
1839
|
+
| **v3.0.10** | Patch release |
|
|
1839
1840
|
| **v3.0.1** | Patch release |
|
|
1840
1841
|
| **v3.0.0** | Major release |
|
|
1841
1842
|
| **v2.0.35** | Patch release |
|
|
@@ -1795,6 +1795,7 @@ When you run the schema builder against a database that has `vector(n)` columns,
|
|
|
1795
1795
|
|
|
1796
1796
|
| Version | Highlights |
|
|
1797
1797
|
|---|---|
|
|
1798
|
+
| **v3.0.10** | Patch release |
|
|
1798
1799
|
| **v3.0.1** | Patch release |
|
|
1799
1800
|
| **v3.0.0** | Major release |
|
|
1800
1801
|
| **v2.0.35** | Patch release |
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "matrx-orm"
|
|
3
|
-
version = "3.0.
|
|
3
|
+
version = "3.0.10"
|
|
4
4
|
description = "Async-first PostgreSQL ORM with bidirectional migrations, schema introspection, many-to-many relationships, and built-in state caching. Works with any PostgreSQL database."
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
license = { text = "MIT" }
|
|
@@ -560,13 +560,19 @@ class JSONField(Field, Generic[_JT]):
|
|
|
560
560
|
|
|
561
561
|
def to_python(self, value):
|
|
562
562
|
if isinstance(value, str):
|
|
563
|
+
if not value.strip():
|
|
564
|
+
return None
|
|
563
565
|
return json.loads(value)
|
|
564
566
|
return value
|
|
565
567
|
|
|
566
568
|
def get_db_prep_value(self, value):
|
|
567
|
-
if value is
|
|
568
|
-
return
|
|
569
|
-
|
|
569
|
+
if value is None:
|
|
570
|
+
return None
|
|
571
|
+
if isinstance(value, str):
|
|
572
|
+
if not value.strip():
|
|
573
|
+
return None
|
|
574
|
+
return value
|
|
575
|
+
return json.dumps(value)
|
|
570
576
|
|
|
571
577
|
|
|
572
578
|
class ArrayField(Field):
|
|
@@ -1027,10 +1033,16 @@ class JSONBField(Field, Generic[_JT]):
|
|
|
1027
1033
|
break
|
|
1028
1034
|
if name is None:
|
|
1029
1035
|
return # Cannot determine attribute name; bail rather than corrupt state.
|
|
1030
|
-
if isinstance(value, Field)
|
|
1031
|
-
|
|
1032
|
-
|
|
1033
|
-
object.__setattr__(
|
|
1036
|
+
coerced = None if isinstance(value, Field) else self.to_python(value)
|
|
1037
|
+
# Model uses RuntimeMixin which routes all attribute writes through
|
|
1038
|
+
# self._data. We must write there to avoid triggering this __set__
|
|
1039
|
+
# again via object.__setattr__ (which re-invokes the data descriptor).
|
|
1040
|
+
_data = obj.__dict__.get("_data")
|
|
1041
|
+
if _data is not None:
|
|
1042
|
+
_data[name] = coerced
|
|
1043
|
+
else:
|
|
1044
|
+
# Fallback for non-Model objects or before _data is initialised.
|
|
1045
|
+
obj.__dict__[name] = coerced
|
|
1034
1046
|
|
|
1035
1047
|
def to_python(self, value: Any) -> _JT | None:
|
|
1036
1048
|
"""Deserialise to a Python object.
|
|
@@ -1047,6 +1059,8 @@ class JSONBField(Field, Generic[_JT]):
|
|
|
1047
1059
|
if isinstance(value, Field):
|
|
1048
1060
|
return None # type: ignore[return-value]
|
|
1049
1061
|
if isinstance(value, str):
|
|
1062
|
+
if not value.strip():
|
|
1063
|
+
return None
|
|
1050
1064
|
value = json.loads(value)
|
|
1051
1065
|
if self._pydantic_schema is not None and isinstance(value, dict):
|
|
1052
1066
|
return self._pydantic_schema.model_validate(value) # type: ignore[return-value]
|
|
@@ -1083,6 +1097,8 @@ class JSONBField(Field, Generic[_JT]):
|
|
|
1083
1097
|
if isinstance(value, str):
|
|
1084
1098
|
# Re-validate: parse then re-encode so callers can't inject
|
|
1085
1099
|
# malformed JSON strings directly into the wire value.
|
|
1100
|
+
if not value.strip():
|
|
1101
|
+
return None
|
|
1086
1102
|
return json.dumps(json.loads(value))
|
|
1087
1103
|
return json.dumps(value)
|
|
1088
1104
|
|
|
@@ -364,6 +364,14 @@ class TestJSONField:
|
|
|
364
364
|
def test_get_db_prep_value_none(self):
|
|
365
365
|
assert JSONField().get_db_prep_value(None) is None
|
|
366
366
|
|
|
367
|
+
def test_to_python_empty_string_returns_none(self):
|
|
368
|
+
assert JSONField().to_python("") is None
|
|
369
|
+
assert JSONField().to_python(" ") is None
|
|
370
|
+
|
|
371
|
+
def test_get_db_prep_value_empty_string_returns_none(self):
|
|
372
|
+
assert JSONField().get_db_prep_value("") is None
|
|
373
|
+
assert JSONField().get_db_prep_value(" ") is None
|
|
374
|
+
|
|
367
375
|
|
|
368
376
|
# ---------------------------------------------------------------------------
|
|
369
377
|
# ArrayField
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
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.0.7 → matrx_orm-3.0.10}/src/matrx_orm/python_sql/table_detailed_relationships.py
RENAMED
|
File without changes
|
{matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/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
|
{matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/matrx_orm/schema_builder/helpers/base_generators.py
RENAMED
|
File without changes
|
{matrx_orm-3.0.7 → matrx_orm-3.0.10}/src/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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|