plain.postgres 0.89.0__tar.gz → 0.89.1__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.
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/PKG-INFO +1 -1
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/CHANGELOG.md +18 -8
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/cli/schema.py +7 -4
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/dialect.py +1 -1
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/pyproject.toml +1 -1
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/.gitignore +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/CLAUDE.md +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/LICENSE +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/README.md +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/README.md +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/__init__.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/agents/.claude/rules/plain-postgres.md +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/agents/.claude/skills/plain-postgres-diagnose/SKILL.md +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/aggregates.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/backups/__init__.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/backups/cli.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/backups/clients.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/backups/core.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/base.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/cli/__init__.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/cli/core.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/cli/diagnose.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/cli/migrations.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/config.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/connection.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/connections.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/constants.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/constraints.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/database_url.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/db.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/default_settings.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/deletion.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/diagnose/__init__.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/diagnose/checks.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/diagnose/context.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/diagnose/tables.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/diagnose/types.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/entrypoints.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/enums.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/exceptions.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/expressions.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/fields/__init__.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/fields/encrypted.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/fields/json.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/fields/mixins.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/fields/related.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/fields/related_descriptors.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/fields/related_lookups.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/fields/related_managers.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/fields/reverse_descriptors.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/fields/reverse_related.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/fields/timezones.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/forms.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/functions/__init__.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/functions/comparison.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/functions/datetime.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/functions/math.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/functions/mixins.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/functions/text.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/functions/window.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/indexes.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/lookups.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/meta.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/migrations/__init__.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/migrations/autodetector.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/migrations/exceptions.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/migrations/executor.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/migrations/graph.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/migrations/loader.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/migrations/migration.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/migrations/operations/__init__.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/migrations/operations/base.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/migrations/operations/fields.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/migrations/operations/models.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/migrations/operations/special.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/migrations/optimizer.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/migrations/questioner.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/migrations/recorder.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/migrations/serializer.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/migrations/state.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/migrations/utils.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/migrations/writer.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/options.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/otel.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/preflight.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/query.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/query_utils.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/registry.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/schema.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/sql/__init__.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/sql/compiler.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/sql/constants.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/sql/datastructures.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/sql/query.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/sql/where.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/test/__init__.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/test/pytest.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/test/utils.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/transaction.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/types.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/types.pyi +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/utils.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/tests/app/examples/migrations/0001_initial.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/tests/app/examples/migrations/0002_test_field_removed.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/tests/app/examples/migrations/0003_deleteparent_childsetnull_childsetdefault_and_more.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/tests/app/examples/migrations/0004_defaultquerysetmodel_mixintestmodel_and_more.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/tests/app/examples/migrations/0005_feature_carfeature_car_features.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/tests/app/examples/migrations/0006_secretstore.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/tests/app/examples/migrations/__init__.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/tests/app/examples/models.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/tests/app/settings.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/tests/app/urls.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/tests/test_connection_isolation.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/tests/test_connection_lifecycle.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/tests/test_database_url.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/tests/test_delete_behaviors.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/tests/test_encrypted_fields.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/tests/test_exceptions.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/tests/test_iterator.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/tests/test_manager_assignment.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/tests/test_models.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/tests/test_read_only_transactions.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/tests/test_related_descriptors.py +0 -0
- {plain_postgres-0.89.0 → plain_postgres-0.89.1}/tests/test_related_manager_api.py +0 -0
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# plain-postgres changelog
|
|
2
2
|
|
|
3
|
+
## [0.89.1](https://github.com/dropseed/plain/releases/plain-postgres@0.89.1) (2026-03-26)
|
|
4
|
+
|
|
5
|
+
### What's changed
|
|
6
|
+
|
|
7
|
+
- Fixed `schema` command type mismatches for `time`, `timestamp`, and `DecimalField` types that caused false drift reports ([187e39e3faeb](https://github.com/dropseed/plain/commit/187e39e3faeb))
|
|
8
|
+
- Fixed `schema` command crash on expression-based unique constraints (e.g. `UniqueConstraint` with `expressions` instead of `fields`) ([187e39e3faeb](https://github.com/dropseed/plain/commit/187e39e3faeb))
|
|
9
|
+
- Improved 0.89.0 upgrade instructions with clearer ordering and step descriptions ([a59062327ed5](https://github.com/dropseed/plain/commit/a59062327ed5), [c0520bdca709](https://github.com/dropseed/plain/commit/c0520bdca709))
|
|
10
|
+
|
|
11
|
+
### Upgrade instructions
|
|
12
|
+
|
|
13
|
+
- No changes required.
|
|
14
|
+
|
|
3
15
|
## [0.89.0](https://github.com/dropseed/plain/releases/plain-postgres@0.89.0) (2026-03-25)
|
|
4
16
|
|
|
5
17
|
### What's changed
|
|
@@ -11,11 +23,11 @@
|
|
|
11
23
|
|
|
12
24
|
### Upgrade instructions
|
|
13
25
|
|
|
14
|
-
|
|
26
|
+
1. Remove any `db_index=False` from FK fields in models and migration files — the parameter no longer exists.
|
|
15
27
|
|
|
16
|
-
|
|
28
|
+
2. For each `ForeignKeyField`, check if it's covered by an explicit `Index` or `UniqueConstraint` (with the FK as the leading field). Most FK columns should have an index.
|
|
17
29
|
|
|
18
|
-
|
|
30
|
+
3. **If uncovered**, add an explicit index:
|
|
19
31
|
|
|
20
32
|
```python
|
|
21
33
|
model_options = postgres.Options(
|
|
@@ -25,7 +37,7 @@
|
|
|
25
37
|
)
|
|
26
38
|
```
|
|
27
39
|
|
|
28
|
-
|
|
40
|
+
4. Run `makemigrations`. Before the `AddIndex` operation, add a `RunSQL` to drop the orphan auto-index left behind by the old `db_index=True` default:
|
|
29
41
|
|
|
30
42
|
```python
|
|
31
43
|
operations = [
|
|
@@ -34,9 +46,9 @@
|
|
|
34
46
|
]
|
|
35
47
|
```
|
|
36
48
|
|
|
37
|
-
The old auto-index name
|
|
49
|
+
The old auto-index name follows the pattern `{table}_{column}_{hash}`. Find orphan names by running `plain postgres schema`.
|
|
38
50
|
|
|
39
|
-
|
|
51
|
+
5. **If already covered** by a composite index or unique constraint, the orphan auto-index is redundant. Generate a migration to drop it:
|
|
40
52
|
|
|
41
53
|
```python
|
|
42
54
|
operations = [
|
|
@@ -44,8 +56,6 @@
|
|
|
44
56
|
]
|
|
45
57
|
```
|
|
46
58
|
|
|
47
|
-
5. Remove any `db_index=False` from FK fields in models and migration files — the parameter no longer exists.
|
|
48
|
-
|
|
49
59
|
6. Run `migrate`.
|
|
50
60
|
|
|
51
61
|
## [0.88.2](https://github.com/dropseed/plain/releases/plain-postgres@0.88.2) (2026-03-25)
|
|
@@ -19,6 +19,8 @@ _TYPE_ALIASES: dict[str, str] = {
|
|
|
19
19
|
"int8": "bigint",
|
|
20
20
|
"float4": "real",
|
|
21
21
|
"float8": "double precision",
|
|
22
|
+
"time": "time without time zone",
|
|
23
|
+
"timestamp": "timestamp without time zone",
|
|
22
24
|
"timestamptz": "timestamp with time zone",
|
|
23
25
|
"timetz": "time with time zone",
|
|
24
26
|
"serial": "integer",
|
|
@@ -172,9 +174,7 @@ def _show_model(conn: Any, cursor: Any, model: Any) -> int:
|
|
|
172
174
|
|
|
173
175
|
# Unique constraints
|
|
174
176
|
model_constraints = [
|
|
175
|
-
c
|
|
176
|
-
for c in model.model_options.constraints
|
|
177
|
-
if isinstance(c, UniqueConstraint) and c.fields
|
|
177
|
+
c for c in model.model_options.constraints if isinstance(c, UniqueConstraint)
|
|
178
178
|
]
|
|
179
179
|
extra_constraints = actual_unique.keys() - {c.name for c in model_constraints}
|
|
180
180
|
|
|
@@ -183,7 +183,10 @@ def _show_model(conn: Any, cursor: Any, model: Any) -> int:
|
|
|
183
183
|
click.secho(" Constraints:", dim=True)
|
|
184
184
|
|
|
185
185
|
for constraint in model_constraints:
|
|
186
|
-
|
|
186
|
+
if constraint.fields:
|
|
187
|
+
fields_str = ", ".join(constraint.fields)
|
|
188
|
+
else:
|
|
189
|
+
fields_str = "expressions"
|
|
187
190
|
click.echo(f" {constraint.name} UNIQUE ({fields_str})", nl=False)
|
|
188
191
|
|
|
189
192
|
if constraint.name not in actual_unique:
|
|
@@ -109,7 +109,7 @@ DATA_TYPES: dict[str, Any] = {
|
|
|
109
109
|
"CharField": _get_varchar_column,
|
|
110
110
|
"DateField": "date",
|
|
111
111
|
"DateTimeField": "timestamp with time zone",
|
|
112
|
-
"DecimalField": "numeric(%(max_digits)s
|
|
112
|
+
"DecimalField": "numeric(%(max_digits)s,%(decimal_places)s)",
|
|
113
113
|
"DurationField": "interval",
|
|
114
114
|
"FloatField": "double precision",
|
|
115
115
|
"IntegerField": "integer",
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/fields/related_descriptors.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/fields/reverse_descriptors.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
|
{plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/migrations/operations/__init__.py
RENAMED
|
File without changes
|
{plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/migrations/operations/base.py
RENAMED
|
File without changes
|
{plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/migrations/operations/fields.py
RENAMED
|
File without changes
|
{plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/migrations/operations/models.py
RENAMED
|
File without changes
|
{plain_postgres-0.89.0 → plain_postgres-0.89.1}/plain/postgres/migrations/operations/special.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
|
{plain_postgres-0.89.0 → plain_postgres-0.89.1}/tests/app/examples/migrations/0001_initial.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{plain_postgres-0.89.0 → plain_postgres-0.89.1}/tests/app/examples/migrations/0006_secretstore.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
|