lamindb 1.11.3__py3-none-any.whl → 1.12.0__py3-none-any.whl
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.
- lamindb/__init__.py +8 -14
- lamindb/_tracked.py +2 -0
- lamindb/base/types.py +1 -3
- lamindb/core/_context.py +16 -31
- lamindb/core/_mapped_collection.py +2 -2
- lamindb/core/storage/paths.py +5 -3
- lamindb/curators/core.py +15 -4
- lamindb/examples/__init__.py +3 -1
- lamindb/examples/croissant/__init__.py +3 -1
- lamindb/examples/mlflow/__init__.py +38 -0
- lamindb/examples/wandb/__init__.py +40 -0
- lamindb/integrations/__init__.py +26 -0
- lamindb/integrations/lightning.py +87 -0
- lamindb/migrations/0120_add_record_fk_constraint.py +1 -1
- lamindb/migrations/0122_remove_personproject_person_and_more.py +219 -0
- lamindb/migrations/0123_alter_artifact_description_alter_branch_description_and_more.py +82 -0
- lamindb/migrations/0124_page_artifact_page_collection_page_feature_page_and_more.py +15 -0
- lamindb/migrations/0125_artifact_is_locked_collection_is_locked_and_more.py +79 -0
- lamindb/migrations/0126_alter_artifact_is_locked_alter_collection_is_locked_and_more.py +105 -0
- lamindb/migrations/0127_alter_run_status_code_feature_dtype.py +31 -0
- lamindb/migrations/0128_artifact__real_key.py +21 -0
- lamindb/migrations/0129_remove_feature_page_remove_project_page_and_more.py +779 -0
- lamindb/migrations/0130_branch_space_alter_artifactblock_artifact_and_more.py +170 -0
- lamindb/migrations/0131_record_unique_name_type_space.py +18 -0
- lamindb/migrations/0132_record_parents_record_reference_and_more.py +61 -0
- lamindb/migrations/0133_artifactuser_artifact_users.py +108 -0
- lamindb/migrations/{0119_squashed.py → 0133_squashed.py} +1211 -322
- lamindb/models/__init__.py +14 -4
- lamindb/models/_django.py +1 -2
- lamindb/models/_feature_manager.py +1 -0
- lamindb/models/_is_versioned.py +14 -16
- lamindb/models/_relations.py +7 -0
- lamindb/models/artifact.py +99 -56
- lamindb/models/artifact_set.py +20 -3
- lamindb/models/block.py +174 -0
- lamindb/models/can_curate.py +7 -9
- lamindb/models/collection.py +9 -9
- lamindb/models/feature.py +38 -38
- lamindb/models/has_parents.py +15 -6
- lamindb/models/project.py +44 -99
- lamindb/models/query_manager.py +1 -1
- lamindb/models/query_set.py +36 -8
- lamindb/models/record.py +169 -46
- lamindb/models/run.py +44 -10
- lamindb/models/save.py +7 -7
- lamindb/models/schema.py +9 -2
- lamindb/models/sqlrecord.py +87 -35
- lamindb/models/storage.py +13 -3
- lamindb/models/transform.py +7 -2
- lamindb/models/ulabel.py +6 -23
- {lamindb-1.11.3.dist-info → lamindb-1.12.0.dist-info}/METADATA +18 -21
- {lamindb-1.11.3.dist-info → lamindb-1.12.0.dist-info}/RECORD +54 -38
- {lamindb-1.11.3.dist-info → lamindb-1.12.0.dist-info}/LICENSE +0 -0
- {lamindb-1.11.3.dist-info → lamindb-1.12.0.dist-info}/WHEEL +0 -0
@@ -0,0 +1,219 @@
|
|
1
|
+
# Generated by Django 5.1.12 on 2025-09-28 20:30
|
2
|
+
|
3
|
+
|
4
|
+
import django.db.models.deletion
|
5
|
+
import django.db.models.functions.datetime
|
6
|
+
from django.db import migrations, models
|
7
|
+
|
8
|
+
import lamindb.base.fields
|
9
|
+
import lamindb.base.users
|
10
|
+
import lamindb.models.run
|
11
|
+
import lamindb.models.sqlrecord
|
12
|
+
|
13
|
+
|
14
|
+
def migrate_person_to_record(apps, schema_editor):
|
15
|
+
"""Migrate Person to Record."""
|
16
|
+
Person = apps.get_model("lamindb", "Person")
|
17
|
+
if not Person.objects.exists():
|
18
|
+
return # No Person records to migrate
|
19
|
+
|
20
|
+
with schema_editor.connection.cursor() as cursor:
|
21
|
+
cursor.execute("""
|
22
|
+
INSERT INTO lamindb_record (
|
23
|
+
uid, name, created_at, updated_at, created_by_id, run_id, is_type
|
24
|
+
)
|
25
|
+
SELECT
|
26
|
+
CONCAT(uid, uid) as uid,
|
27
|
+
name,
|
28
|
+
created_at,
|
29
|
+
updated_at,
|
30
|
+
created_by_id,
|
31
|
+
run_id,
|
32
|
+
False
|
33
|
+
FROM lamindb_person
|
34
|
+
""")
|
35
|
+
|
36
|
+
migrated_count = cursor.rowcount
|
37
|
+
print(f"\nMigrated {migrated_count} Person records to Record table")
|
38
|
+
|
39
|
+
with schema_editor.connection.cursor() as cursor:
|
40
|
+
cursor.execute("""
|
41
|
+
INSERT INTO lamindb_referencerecord (
|
42
|
+
created_at, created_by_id, feature_id, record_id, reference_id, run_id
|
43
|
+
)
|
44
|
+
SELECT
|
45
|
+
NOW() as created_at,
|
46
|
+
r.created_by_id,
|
47
|
+
NULL as feature_id,
|
48
|
+
rec.id as record_id,
|
49
|
+
ra.reference_id,
|
50
|
+
rec.run_id
|
51
|
+
FROM lamindb_reference_authors ra
|
52
|
+
JOIN lamindb_reference r ON ra.reference_id = r.id
|
53
|
+
JOIN lamindb_person p ON ra.person_id = p.id
|
54
|
+
JOIN lamindb_record rec ON rec.name = p.name
|
55
|
+
""")
|
56
|
+
|
57
|
+
created_count = cursor.rowcount
|
58
|
+
print(f"\nCreated {created_count} ReferenceRecord links for migrated authors")
|
59
|
+
|
60
|
+
|
61
|
+
class Migration(migrations.Migration):
|
62
|
+
dependencies = [
|
63
|
+
("lamindb", "0121_recorduser"),
|
64
|
+
]
|
65
|
+
|
66
|
+
operations = [
|
67
|
+
migrations.CreateModel(
|
68
|
+
name="ReferenceRecord",
|
69
|
+
fields=[
|
70
|
+
(
|
71
|
+
"created_at",
|
72
|
+
lamindb.base.fields.DateTimeField(
|
73
|
+
blank=True,
|
74
|
+
db_default=django.db.models.functions.datetime.Now(),
|
75
|
+
db_index=True,
|
76
|
+
editable=False,
|
77
|
+
),
|
78
|
+
),
|
79
|
+
("id", models.BigAutoField(primary_key=True, serialize=False)),
|
80
|
+
(
|
81
|
+
"created_by",
|
82
|
+
lamindb.base.fields.ForeignKey(
|
83
|
+
blank=True,
|
84
|
+
default=lamindb.base.users.current_user_id,
|
85
|
+
editable=False,
|
86
|
+
on_delete=django.db.models.deletion.PROTECT,
|
87
|
+
related_name="+",
|
88
|
+
to="lamindb.user",
|
89
|
+
),
|
90
|
+
),
|
91
|
+
(
|
92
|
+
"feature",
|
93
|
+
lamindb.base.fields.ForeignKey(
|
94
|
+
blank=True,
|
95
|
+
default=None,
|
96
|
+
null=True,
|
97
|
+
on_delete=django.db.models.deletion.PROTECT,
|
98
|
+
related_name="links_referencerecord",
|
99
|
+
to="lamindb.feature",
|
100
|
+
),
|
101
|
+
),
|
102
|
+
(
|
103
|
+
"record",
|
104
|
+
lamindb.base.fields.ForeignKey(
|
105
|
+
blank=True,
|
106
|
+
on_delete=django.db.models.deletion.CASCADE,
|
107
|
+
related_name="links_reference",
|
108
|
+
to="lamindb.record",
|
109
|
+
),
|
110
|
+
),
|
111
|
+
(
|
112
|
+
"reference",
|
113
|
+
lamindb.base.fields.ForeignKey(
|
114
|
+
blank=True,
|
115
|
+
on_delete=django.db.models.deletion.PROTECT,
|
116
|
+
related_name="links_record",
|
117
|
+
to="lamindb.reference",
|
118
|
+
),
|
119
|
+
),
|
120
|
+
(
|
121
|
+
"run",
|
122
|
+
lamindb.base.fields.ForeignKey(
|
123
|
+
blank=True,
|
124
|
+
default=lamindb.models.run.current_run,
|
125
|
+
null=True,
|
126
|
+
on_delete=django.db.models.deletion.PROTECT,
|
127
|
+
related_name="+",
|
128
|
+
to="lamindb.run",
|
129
|
+
),
|
130
|
+
),
|
131
|
+
],
|
132
|
+
options={
|
133
|
+
"unique_together": {("reference", "feature", "record")},
|
134
|
+
},
|
135
|
+
bases=(lamindb.models.sqlrecord.IsLink, models.Model),
|
136
|
+
),
|
137
|
+
migrations.AddField(
|
138
|
+
model_name="reference",
|
139
|
+
name="records",
|
140
|
+
field=models.ManyToManyField(
|
141
|
+
related_name="references",
|
142
|
+
through="lamindb.ReferenceRecord",
|
143
|
+
to="lamindb.record",
|
144
|
+
),
|
145
|
+
),
|
146
|
+
migrations.RunPython(migrate_person_to_record),
|
147
|
+
migrations.RemoveField(
|
148
|
+
model_name="project",
|
149
|
+
name="people",
|
150
|
+
),
|
151
|
+
migrations.RemoveField(
|
152
|
+
model_name="reference",
|
153
|
+
name="authors",
|
154
|
+
),
|
155
|
+
migrations.AlterUniqueTogether(
|
156
|
+
name="personproject",
|
157
|
+
unique_together=None,
|
158
|
+
),
|
159
|
+
migrations.AlterUniqueTogether(
|
160
|
+
name="recordperson",
|
161
|
+
unique_together=None,
|
162
|
+
),
|
163
|
+
migrations.RenameField(
|
164
|
+
model_name="reference",
|
165
|
+
old_name="records",
|
166
|
+
new_name="linked_in_records",
|
167
|
+
),
|
168
|
+
migrations.AddField(
|
169
|
+
model_name="project",
|
170
|
+
name="description",
|
171
|
+
field=lamindb.base.fields.TextField(blank=True, default=None, null=True),
|
172
|
+
),
|
173
|
+
migrations.AlterField(
|
174
|
+
model_name="reference",
|
175
|
+
name="description",
|
176
|
+
field=lamindb.base.fields.TextField(blank=True, default=None, null=True),
|
177
|
+
),
|
178
|
+
migrations.DeleteModel(
|
179
|
+
name="Person",
|
180
|
+
),
|
181
|
+
migrations.DeleteModel(
|
182
|
+
name="PersonProject",
|
183
|
+
),
|
184
|
+
migrations.DeleteModel(
|
185
|
+
name="RecordPerson",
|
186
|
+
),
|
187
|
+
migrations.AlterField(
|
188
|
+
model_name="recordreference",
|
189
|
+
name="value",
|
190
|
+
field=lamindb.base.fields.ForeignKey(
|
191
|
+
blank=True,
|
192
|
+
on_delete=django.db.models.deletion.PROTECT,
|
193
|
+
related_name="links_in_record",
|
194
|
+
to="lamindb.reference",
|
195
|
+
),
|
196
|
+
),
|
197
|
+
migrations.AlterUniqueTogether(
|
198
|
+
name="projectrecord",
|
199
|
+
unique_together={("project", "feature", "record")},
|
200
|
+
),
|
201
|
+
migrations.AddField(
|
202
|
+
model_name="reference",
|
203
|
+
name="records",
|
204
|
+
field=models.ManyToManyField(
|
205
|
+
related_name="references",
|
206
|
+
through="lamindb.ReferenceRecord",
|
207
|
+
to="lamindb.record",
|
208
|
+
),
|
209
|
+
),
|
210
|
+
migrations.AlterField(
|
211
|
+
model_name="reference",
|
212
|
+
name="linked_in_records",
|
213
|
+
field=models.ManyToManyField(
|
214
|
+
related_name="linked_references",
|
215
|
+
through="lamindb.RecordReference",
|
216
|
+
to="lamindb.record",
|
217
|
+
),
|
218
|
+
),
|
219
|
+
]
|
@@ -0,0 +1,82 @@
|
|
1
|
+
# Generated by Django 5.1.12 on 2025-09-28 21:39
|
2
|
+
|
3
|
+
from django.db import migrations
|
4
|
+
|
5
|
+
import lamindb.base.fields
|
6
|
+
|
7
|
+
|
8
|
+
class Migration(migrations.Migration):
|
9
|
+
dependencies = [
|
10
|
+
("lamindb", "0122_remove_personproject_person_and_more"),
|
11
|
+
]
|
12
|
+
|
13
|
+
operations = [
|
14
|
+
migrations.AlterField(
|
15
|
+
model_name="artifact",
|
16
|
+
name="description",
|
17
|
+
field=lamindb.base.fields.TextField(
|
18
|
+
blank=True, db_index=True, default=None, null=True
|
19
|
+
),
|
20
|
+
),
|
21
|
+
migrations.AlterField(
|
22
|
+
model_name="branch",
|
23
|
+
name="description",
|
24
|
+
field=lamindb.base.fields.TextField(blank=True, default=None, null=True),
|
25
|
+
),
|
26
|
+
migrations.AlterField(
|
27
|
+
model_name="collection",
|
28
|
+
name="description",
|
29
|
+
field=lamindb.base.fields.TextField(blank=True, default=None, null=True),
|
30
|
+
),
|
31
|
+
migrations.AlterField(
|
32
|
+
model_name="feature",
|
33
|
+
name="description",
|
34
|
+
field=lamindb.base.fields.TextField(blank=True, default=None, null=True),
|
35
|
+
),
|
36
|
+
migrations.AlterField(
|
37
|
+
model_name="record",
|
38
|
+
name="description",
|
39
|
+
field=lamindb.base.fields.TextField(blank=True, default=None, null=True),
|
40
|
+
),
|
41
|
+
migrations.AlterField(
|
42
|
+
model_name="schema",
|
43
|
+
name="description",
|
44
|
+
field=lamindb.base.fields.TextField(blank=True, default=None, null=True),
|
45
|
+
),
|
46
|
+
migrations.AlterField(
|
47
|
+
model_name="space",
|
48
|
+
name="description",
|
49
|
+
field=lamindb.base.fields.TextField(blank=True, default=None, null=True),
|
50
|
+
),
|
51
|
+
migrations.AlterField(
|
52
|
+
model_name="storage",
|
53
|
+
name="description",
|
54
|
+
field=lamindb.base.fields.TextField(blank=True, default=None, null=True),
|
55
|
+
),
|
56
|
+
migrations.AlterField(
|
57
|
+
model_name="transform",
|
58
|
+
name="description",
|
59
|
+
field=lamindb.base.fields.TextField(
|
60
|
+
blank=True, db_index=True, default=None, null=True
|
61
|
+
),
|
62
|
+
),
|
63
|
+
migrations.AlterField(
|
64
|
+
model_name="ulabel",
|
65
|
+
name="description",
|
66
|
+
field=lamindb.base.fields.TextField(blank=True, default=None, null=True),
|
67
|
+
),
|
68
|
+
migrations.AlterField(
|
69
|
+
model_name="artifact",
|
70
|
+
name="key",
|
71
|
+
field=lamindb.base.fields.CharField(
|
72
|
+
blank=True, db_index=True, default=None, max_length=1024, null=True
|
73
|
+
),
|
74
|
+
),
|
75
|
+
migrations.AlterField(
|
76
|
+
model_name="transform",
|
77
|
+
name="key",
|
78
|
+
field=lamindb.base.fields.CharField(
|
79
|
+
blank=True, db_index=True, default=None, max_length=1024, null=True
|
80
|
+
),
|
81
|
+
),
|
82
|
+
]
|
@@ -0,0 +1,15 @@
|
|
1
|
+
# Generated by Django 5.1.12 on 2025-09-28 23:37
|
2
|
+
|
3
|
+
from django.db import migrations
|
4
|
+
|
5
|
+
|
6
|
+
class Migration(migrations.Migration):
|
7
|
+
dependencies = [
|
8
|
+
(
|
9
|
+
"lamindb",
|
10
|
+
"0123_alter_artifact_description_alter_branch_description_and_more",
|
11
|
+
),
|
12
|
+
]
|
13
|
+
|
14
|
+
# this migration was later reverted, so we do not need to run it
|
15
|
+
operations = [] # type: ignore
|
@@ -0,0 +1,79 @@
|
|
1
|
+
# Generated by Django 5.1.12 on 2025-09-29 00:46
|
2
|
+
|
3
|
+
from django.db import migrations
|
4
|
+
|
5
|
+
import lamindb.base.fields
|
6
|
+
|
7
|
+
|
8
|
+
class Migration(migrations.Migration):
|
9
|
+
dependencies = [
|
10
|
+
("lamindb", "0124_page_artifact_page_collection_page_feature_page_and_more"),
|
11
|
+
]
|
12
|
+
|
13
|
+
operations = [
|
14
|
+
migrations.AddField(
|
15
|
+
model_name="artifact",
|
16
|
+
name="is_locked",
|
17
|
+
field=lamindb.base.fields.BooleanField(blank=True, default=False),
|
18
|
+
),
|
19
|
+
migrations.AddField(
|
20
|
+
model_name="collection",
|
21
|
+
name="is_locked",
|
22
|
+
field=lamindb.base.fields.BooleanField(blank=True, default=False),
|
23
|
+
),
|
24
|
+
migrations.AddField(
|
25
|
+
model_name="feature",
|
26
|
+
name="is_locked",
|
27
|
+
field=lamindb.base.fields.BooleanField(blank=True, default=False),
|
28
|
+
),
|
29
|
+
migrations.AddField(
|
30
|
+
model_name="featurevalue",
|
31
|
+
name="is_locked",
|
32
|
+
field=lamindb.base.fields.BooleanField(blank=True, default=False),
|
33
|
+
),
|
34
|
+
migrations.AddField(
|
35
|
+
model_name="project",
|
36
|
+
name="is_locked",
|
37
|
+
field=lamindb.base.fields.BooleanField(blank=True, default=False),
|
38
|
+
),
|
39
|
+
migrations.AddField(
|
40
|
+
model_name="record",
|
41
|
+
name="is_locked",
|
42
|
+
field=lamindb.base.fields.BooleanField(blank=True, default=False),
|
43
|
+
),
|
44
|
+
migrations.AddField(
|
45
|
+
model_name="recordrecord",
|
46
|
+
name="is_locked",
|
47
|
+
field=lamindb.base.fields.BooleanField(blank=True, default=False),
|
48
|
+
),
|
49
|
+
migrations.AddField(
|
50
|
+
model_name="reference",
|
51
|
+
name="is_locked",
|
52
|
+
field=lamindb.base.fields.BooleanField(blank=True, default=False),
|
53
|
+
),
|
54
|
+
migrations.AddField(
|
55
|
+
model_name="run",
|
56
|
+
name="is_locked",
|
57
|
+
field=lamindb.base.fields.BooleanField(blank=True, default=False),
|
58
|
+
),
|
59
|
+
migrations.AddField(
|
60
|
+
model_name="schema",
|
61
|
+
name="is_locked",
|
62
|
+
field=lamindb.base.fields.BooleanField(blank=True, default=False),
|
63
|
+
),
|
64
|
+
migrations.AddField(
|
65
|
+
model_name="storage",
|
66
|
+
name="is_locked",
|
67
|
+
field=lamindb.base.fields.BooleanField(blank=True, default=False),
|
68
|
+
),
|
69
|
+
migrations.AddField(
|
70
|
+
model_name="transform",
|
71
|
+
name="is_locked",
|
72
|
+
field=lamindb.base.fields.BooleanField(blank=True, default=False),
|
73
|
+
),
|
74
|
+
migrations.AddField(
|
75
|
+
model_name="ulabel",
|
76
|
+
name="is_locked",
|
77
|
+
field=lamindb.base.fields.BooleanField(blank=True, default=False),
|
78
|
+
),
|
79
|
+
]
|
@@ -0,0 +1,105 @@
|
|
1
|
+
# Generated by Django 5.1.12 on 2025-09-29 07:51
|
2
|
+
|
3
|
+
from django.db import migrations
|
4
|
+
|
5
|
+
import lamindb.base.fields
|
6
|
+
|
7
|
+
|
8
|
+
class Migration(migrations.Migration):
|
9
|
+
dependencies = [
|
10
|
+
("lamindb", "0125_artifact_is_locked_collection_is_locked_and_more"),
|
11
|
+
]
|
12
|
+
|
13
|
+
operations = [
|
14
|
+
migrations.AlterField(
|
15
|
+
model_name="artifact",
|
16
|
+
name="is_locked",
|
17
|
+
field=lamindb.base.fields.BooleanField(
|
18
|
+
blank=True, db_default=False, default=False
|
19
|
+
),
|
20
|
+
),
|
21
|
+
migrations.AlterField(
|
22
|
+
model_name="collection",
|
23
|
+
name="is_locked",
|
24
|
+
field=lamindb.base.fields.BooleanField(
|
25
|
+
blank=True, db_default=False, default=False
|
26
|
+
),
|
27
|
+
),
|
28
|
+
migrations.AlterField(
|
29
|
+
model_name="feature",
|
30
|
+
name="is_locked",
|
31
|
+
field=lamindb.base.fields.BooleanField(
|
32
|
+
blank=True, db_default=False, default=False
|
33
|
+
),
|
34
|
+
),
|
35
|
+
migrations.AlterField(
|
36
|
+
model_name="featurevalue",
|
37
|
+
name="is_locked",
|
38
|
+
field=lamindb.base.fields.BooleanField(
|
39
|
+
blank=True, db_default=False, default=False
|
40
|
+
),
|
41
|
+
),
|
42
|
+
migrations.AlterField(
|
43
|
+
model_name="project",
|
44
|
+
name="is_locked",
|
45
|
+
field=lamindb.base.fields.BooleanField(
|
46
|
+
blank=True, db_default=False, default=False
|
47
|
+
),
|
48
|
+
),
|
49
|
+
migrations.AlterField(
|
50
|
+
model_name="record",
|
51
|
+
name="is_locked",
|
52
|
+
field=lamindb.base.fields.BooleanField(
|
53
|
+
blank=True, db_default=False, default=False
|
54
|
+
),
|
55
|
+
),
|
56
|
+
migrations.AlterField(
|
57
|
+
model_name="recordrecord",
|
58
|
+
name="is_locked",
|
59
|
+
field=lamindb.base.fields.BooleanField(
|
60
|
+
blank=True, db_default=False, default=False
|
61
|
+
),
|
62
|
+
),
|
63
|
+
migrations.AlterField(
|
64
|
+
model_name="reference",
|
65
|
+
name="is_locked",
|
66
|
+
field=lamindb.base.fields.BooleanField(
|
67
|
+
blank=True, db_default=False, default=False
|
68
|
+
),
|
69
|
+
),
|
70
|
+
migrations.AlterField(
|
71
|
+
model_name="run",
|
72
|
+
name="is_locked",
|
73
|
+
field=lamindb.base.fields.BooleanField(
|
74
|
+
blank=True, db_default=False, default=False
|
75
|
+
),
|
76
|
+
),
|
77
|
+
migrations.AlterField(
|
78
|
+
model_name="schema",
|
79
|
+
name="is_locked",
|
80
|
+
field=lamindb.base.fields.BooleanField(
|
81
|
+
blank=True, db_default=False, default=False
|
82
|
+
),
|
83
|
+
),
|
84
|
+
migrations.AlterField(
|
85
|
+
model_name="storage",
|
86
|
+
name="is_locked",
|
87
|
+
field=lamindb.base.fields.BooleanField(
|
88
|
+
blank=True, db_default=False, default=False
|
89
|
+
),
|
90
|
+
),
|
91
|
+
migrations.AlterField(
|
92
|
+
model_name="transform",
|
93
|
+
name="is_locked",
|
94
|
+
field=lamindb.base.fields.BooleanField(
|
95
|
+
blank=True, db_default=False, default=False
|
96
|
+
),
|
97
|
+
),
|
98
|
+
migrations.AlterField(
|
99
|
+
model_name="ulabel",
|
100
|
+
name="is_locked",
|
101
|
+
field=lamindb.base.fields.BooleanField(
|
102
|
+
blank=True, db_default=False, default=False
|
103
|
+
),
|
104
|
+
),
|
105
|
+
]
|
@@ -0,0 +1,31 @@
|
|
1
|
+
# Generated by Django 5.1.12 on 2025-09-30 17:16
|
2
|
+
|
3
|
+
from django.db import migrations, models
|
4
|
+
|
5
|
+
|
6
|
+
class Migration(migrations.Migration):
|
7
|
+
dependencies = [
|
8
|
+
(
|
9
|
+
"lamindb",
|
10
|
+
"0126_alter_artifact_is_locked_alter_collection_is_locked_and_more",
|
11
|
+
),
|
12
|
+
]
|
13
|
+
|
14
|
+
operations = [
|
15
|
+
migrations.AlterField(
|
16
|
+
model_name="run",
|
17
|
+
name="_status_code",
|
18
|
+
field=models.SmallIntegerField(
|
19
|
+
db_default=-3, db_index=True, default=-3, null=True
|
20
|
+
),
|
21
|
+
),
|
22
|
+
migrations.AddConstraint(
|
23
|
+
model_name="feature",
|
24
|
+
constraint=models.CheckConstraint(
|
25
|
+
condition=models.Q(
|
26
|
+
("is_type", True), ("dtype__isnull", False), _connector="OR"
|
27
|
+
),
|
28
|
+
name="dtype_not_null_when_is_type_false",
|
29
|
+
),
|
30
|
+
),
|
31
|
+
]
|
@@ -0,0 +1,21 @@
|
|
1
|
+
# Generated by Django 5.2 on 2025-10-01 09:07
|
2
|
+
|
3
|
+
from django.db import migrations
|
4
|
+
|
5
|
+
import lamindb.base.fields
|
6
|
+
|
7
|
+
|
8
|
+
class Migration(migrations.Migration):
|
9
|
+
dependencies = [
|
10
|
+
("lamindb", "0127_alter_run_status_code_feature_dtype"),
|
11
|
+
]
|
12
|
+
|
13
|
+
operations = [
|
14
|
+
migrations.AddField(
|
15
|
+
model_name="artifact",
|
16
|
+
name="_real_key",
|
17
|
+
field=lamindb.base.fields.CharField(
|
18
|
+
blank=True, db_index=True, default=None, max_length=1024, null=True
|
19
|
+
),
|
20
|
+
),
|
21
|
+
]
|