lamindb 0.77.2__py3-none-any.whl → 1.0rc1__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.
Files changed (89) hide show
  1. lamindb/__init__.py +39 -32
  2. lamindb/_artifact.py +95 -64
  3. lamindb/_can_curate.py +19 -10
  4. lamindb/_collection.py +51 -49
  5. lamindb/_feature.py +9 -9
  6. lamindb/_finish.py +99 -86
  7. lamindb/_from_values.py +20 -17
  8. lamindb/_is_versioned.py +2 -1
  9. lamindb/_parents.py +23 -16
  10. lamindb/_query_manager.py +3 -3
  11. lamindb/_query_set.py +85 -18
  12. lamindb/_record.py +121 -46
  13. lamindb/_run.py +3 -3
  14. lamindb/_save.py +14 -8
  15. lamindb/{_feature_set.py → _schema.py} +34 -31
  16. lamindb/_storage.py +2 -1
  17. lamindb/_transform.py +51 -23
  18. lamindb/_ulabel.py +17 -8
  19. lamindb/_view.py +15 -14
  20. lamindb/base/__init__.py +24 -0
  21. lamindb/base/fields.py +281 -0
  22. lamindb/base/ids.py +103 -0
  23. lamindb/base/types.py +51 -0
  24. lamindb/base/users.py +30 -0
  25. lamindb/base/validation.py +67 -0
  26. lamindb/core/__init__.py +19 -14
  27. lamindb/core/_context.py +297 -228
  28. lamindb/core/_data.py +44 -49
  29. lamindb/core/_describe.py +41 -31
  30. lamindb/core/_django.py +59 -44
  31. lamindb/core/_feature_manager.py +192 -168
  32. lamindb/core/_label_manager.py +22 -22
  33. lamindb/core/_mapped_collection.py +17 -14
  34. lamindb/core/_settings.py +1 -12
  35. lamindb/core/_sync_git.py +56 -9
  36. lamindb/core/_track_environment.py +1 -1
  37. lamindb/core/datasets/_core.py +5 -6
  38. lamindb/core/exceptions.py +0 -7
  39. lamindb/core/fields.py +1 -1
  40. lamindb/core/loaders.py +18 -2
  41. lamindb/core/{schema.py → relations.py} +22 -19
  42. lamindb/core/storage/_anndata_accessor.py +1 -2
  43. lamindb/core/storage/_backed_access.py +2 -1
  44. lamindb/core/storage/_tiledbsoma.py +40 -13
  45. lamindb/core/storage/objects.py +1 -1
  46. lamindb/core/storage/paths.py +13 -8
  47. lamindb/core/subsettings/__init__.py +0 -2
  48. lamindb/core/types.py +2 -23
  49. lamindb/core/versioning.py +11 -7
  50. lamindb/{_curate.py → curators/__init__.py} +700 -57
  51. lamindb/curators/_spatial.py +528 -0
  52. lamindb/integrations/_vitessce.py +1 -3
  53. lamindb/migrations/0052_squashed.py +1261 -0
  54. lamindb/migrations/0053_alter_featureset_hash_alter_paramvalue_created_by_and_more.py +57 -0
  55. lamindb/migrations/0054_alter_feature_previous_runs_and_more.py +35 -0
  56. lamindb/migrations/0055_artifact_type_artifactparamvalue_and_more.py +61 -0
  57. lamindb/migrations/0056_rename_ulabel_ref_is_name_artifactulabel_label_ref_is_name_and_more.py +22 -0
  58. lamindb/migrations/0057_link_models_latest_report_and_others.py +356 -0
  59. lamindb/migrations/0058_artifact__actions_collection__actions.py +22 -0
  60. lamindb/migrations/0059_alter_artifact__accessor_alter_artifact__hash_type_and_more.py +31 -0
  61. lamindb/migrations/0060_alter_artifact__actions.py +22 -0
  62. lamindb/migrations/0061_alter_collection_meta_artifact_alter_run_environment_and_more.py +45 -0
  63. lamindb/migrations/0062_add_is_latest_field.py +32 -0
  64. lamindb/migrations/0063_populate_latest_field.py +45 -0
  65. lamindb/migrations/0064_alter_artifact_version_alter_collection_version_and_more.py +33 -0
  66. lamindb/migrations/0065_remove_collection_feature_sets_and_more.py +22 -0
  67. lamindb/migrations/0066_alter_artifact__feature_values_and_more.py +352 -0
  68. lamindb/migrations/0067_alter_featurevalue_unique_together_and_more.py +20 -0
  69. lamindb/migrations/0068_alter_artifactulabel_unique_together_and_more.py +20 -0
  70. lamindb/migrations/0069_alter_artifact__accessor_alter_artifact__hash_type_and_more.py +1294 -0
  71. lamindb/migrations/0069_squashed.py +1770 -0
  72. lamindb/migrations/0070_lamindbv1_migrate_data.py +78 -0
  73. lamindb/migrations/0071_lamindbv1_migrate_schema.py +741 -0
  74. lamindb/migrations/0072_remove_user__branch_code_remove_user_aux_and_more.py +148 -0
  75. lamindb/migrations/0073_merge_ourprojects.py +945 -0
  76. lamindb/migrations/0074_lamindbv1_part4.py +374 -0
  77. lamindb/migrations/0075_lamindbv1_part5.py +276 -0
  78. lamindb/migrations/0076_lamindbv1_part6.py +621 -0
  79. lamindb/migrations/0077_lamindbv1_part6b.py +228 -0
  80. lamindb/migrations/0078_lamindbv1_part6c.py +468 -0
  81. lamindb/migrations/0079_alter_rundata_value_json_and_more.py +36 -0
  82. lamindb/migrations/__init__.py +0 -0
  83. lamindb/models.py +4064 -0
  84. {lamindb-0.77.2.dist-info → lamindb-1.0rc1.dist-info}/METADATA +15 -20
  85. lamindb-1.0rc1.dist-info/RECORD +100 -0
  86. {lamindb-0.77.2.dist-info → lamindb-1.0rc1.dist-info}/WHEEL +1 -1
  87. lamindb/core/subsettings/_transform_settings.py +0 -21
  88. lamindb-0.77.2.dist-info/RECORD +0 -63
  89. {lamindb-0.77.2.dist-info → lamindb-1.0rc1.dist-info}/LICENSE +0 -0
@@ -0,0 +1,57 @@
1
+ # Generated by Django 5.0.6 on 2024-05-29 08:56
2
+
3
+ import django.db.models.deletion
4
+ from django.db import migrations, models
5
+
6
+ import lamindb.base.users
7
+
8
+
9
+ class Migration(migrations.Migration):
10
+ dependencies = [
11
+ ("lamindb", "0052_squashed"),
12
+ ]
13
+
14
+ operations = [
15
+ migrations.AlterField(
16
+ model_name="featureset",
17
+ name="hash",
18
+ field=models.CharField(
19
+ db_index=True, default=None, max_length=20, null=True, unique=True
20
+ ),
21
+ ),
22
+ migrations.AlterField(
23
+ model_name="paramvalue",
24
+ name="created_by",
25
+ field=models.ForeignKey(
26
+ default=lamindb.base.users.current_user_id,
27
+ on_delete=django.db.models.deletion.PROTECT,
28
+ to="lamindb.user",
29
+ ),
30
+ ),
31
+ migrations.AlterField(
32
+ model_name="run",
33
+ name="created_by",
34
+ field=models.ForeignKey(
35
+ default=lamindb.base.users.current_user_id,
36
+ on_delete=django.db.models.deletion.CASCADE,
37
+ to="lamindb.user",
38
+ ),
39
+ ),
40
+ migrations.AlterField(
41
+ model_name="transform",
42
+ name="created_by",
43
+ field=models.ForeignKey(
44
+ default=lamindb.base.users.current_user_id,
45
+ on_delete=django.db.models.deletion.PROTECT,
46
+ to="lamindb.user",
47
+ ),
48
+ ),
49
+ migrations.AlterUniqueTogether(
50
+ name="featurevalue",
51
+ unique_together={("feature", "value")},
52
+ ),
53
+ migrations.AlterUniqueTogether(
54
+ name="paramvalue",
55
+ unique_together={("param", "value")},
56
+ ),
57
+ ]
@@ -0,0 +1,35 @@
1
+ # Generated by Django 5.1 on 2024-06-13 10:31
2
+
3
+ from django.db import migrations, models
4
+
5
+
6
+ class Migration(migrations.Migration):
7
+ dependencies = [
8
+ (
9
+ "lamindb",
10
+ "0053_alter_featureset_hash_alter_paramvalue_created_by_and_more",
11
+ ),
12
+ ]
13
+
14
+ operations = [
15
+ migrations.AlterField(
16
+ model_name="feature",
17
+ name="previous_runs",
18
+ field=models.ManyToManyField(related_name="+", to="lamindb.run"),
19
+ ),
20
+ migrations.AlterField(
21
+ model_name="param",
22
+ name="previous_runs",
23
+ field=models.ManyToManyField(related_name="+", to="lamindb.run"),
24
+ ),
25
+ migrations.AlterField(
26
+ model_name="storage",
27
+ name="previous_runs",
28
+ field=models.ManyToManyField(related_name="+", to="lamindb.run"),
29
+ ),
30
+ migrations.AlterField(
31
+ model_name="ulabel",
32
+ name="previous_runs",
33
+ field=models.ManyToManyField(related_name="+", to="lamindb.run"),
34
+ ),
35
+ ]
@@ -0,0 +1,61 @@
1
+ # Generated by Django 5.1 on 2024-06-19 09:56
2
+
3
+ import django.db.models.deletion
4
+ from django.db import migrations, models
5
+
6
+ import lamindb.models
7
+
8
+
9
+ class Migration(migrations.Migration):
10
+ dependencies = [
11
+ ("lamindb", "0054_alter_feature_previous_runs_and_more"),
12
+ ]
13
+
14
+ operations = [
15
+ migrations.AddField(
16
+ model_name="artifact",
17
+ name="type",
18
+ field=models.CharField(
19
+ choices=[("dataset", "dataset"), ("model", "model"), ("code", "code")],
20
+ db_index=True,
21
+ default=None,
22
+ max_length=20,
23
+ null=True,
24
+ ),
25
+ ),
26
+ migrations.CreateModel(
27
+ name="ArtifactParamValue",
28
+ fields=[
29
+ ("id", models.BigAutoField(primary_key=True, serialize=False)),
30
+ (
31
+ "artifact",
32
+ models.ForeignKey(
33
+ on_delete=django.db.models.deletion.CASCADE,
34
+ related_name="+",
35
+ to="lamindb.artifact",
36
+ ),
37
+ ),
38
+ (
39
+ "paramvalue",
40
+ models.ForeignKey(
41
+ on_delete=django.db.models.deletion.PROTECT,
42
+ related_name="+",
43
+ to="lamindb.paramvalue",
44
+ ),
45
+ ),
46
+ ],
47
+ options={
48
+ "unique_together": {("artifact", "paramvalue")},
49
+ },
50
+ bases=(models.Model, lamindb.models.LinkORM),
51
+ ),
52
+ migrations.AddField(
53
+ model_name="artifact",
54
+ name="param_values",
55
+ field=models.ManyToManyField(
56
+ related_name="artifacts",
57
+ through="lamindb.ArtifactParamValue",
58
+ to="lamindb.paramvalue",
59
+ ),
60
+ ),
61
+ ]
@@ -0,0 +1,22 @@
1
+ # Generated by Django 5.1 on 2024-07-26 12:53
2
+
3
+ from django.db import migrations
4
+
5
+
6
+ class Migration(migrations.Migration):
7
+ dependencies = [
8
+ ("lamindb", "0055_artifact_type_artifactparamvalue_and_more"),
9
+ ]
10
+
11
+ operations = [
12
+ migrations.RenameField(
13
+ model_name="artifactulabel",
14
+ old_name="ulabel_ref_is_name",
15
+ new_name="label_ref_is_name",
16
+ ),
17
+ migrations.RenameField(
18
+ model_name="collectionulabel",
19
+ old_name="ulabel_ref_is_name",
20
+ new_name="label_ref_is_name",
21
+ ),
22
+ ]
@@ -0,0 +1,356 @@
1
+ # Generated by Django 5.0.7 on 2024-07-30 12:42
2
+
3
+ import django.db.models.deletion
4
+ from django.db import migrations, models
5
+
6
+
7
+ class Migration(migrations.Migration):
8
+ dependencies = [
9
+ (
10
+ "lamindb",
11
+ "0056_rename_ulabel_ref_is_name_artifactulabel_label_ref_is_name_and_more",
12
+ ),
13
+ ]
14
+
15
+ operations = [
16
+ migrations.RunSQL(
17
+ sql="""
18
+ UPDATE lamindb_artifact
19
+ SET hash = SUBSTR(hash, 1, 22)
20
+ WHERE length(hash) > 22;
21
+
22
+ UPDATE lamindb_collection
23
+ SET hash = SUBSTR(hash, 1, 22)
24
+ WHERE length(hash) > 22;
25
+
26
+ UPDATE lamindb_featureset
27
+ SET hash = SUBSTR(hash, 1, 22)
28
+ WHERE length(hash) > 22;
29
+ """,
30
+ ),
31
+ migrations.AlterField(
32
+ model_name="artifactfeatureset",
33
+ name="artifact",
34
+ field=models.ForeignKey(
35
+ on_delete=django.db.models.deletion.CASCADE,
36
+ related_name="links_feature_set",
37
+ to="lamindb.artifact",
38
+ ),
39
+ ),
40
+ migrations.AlterField(
41
+ model_name="artifactfeatureset",
42
+ name="featureset",
43
+ field=models.ForeignKey(
44
+ on_delete=django.db.models.deletion.PROTECT,
45
+ related_name="links_artifact",
46
+ to="lamindb.featureset",
47
+ ),
48
+ ),
49
+ migrations.AlterField(
50
+ model_name="artifactulabel",
51
+ name="artifact",
52
+ field=models.ForeignKey(
53
+ on_delete=django.db.models.deletion.CASCADE,
54
+ related_name="links_ulabel",
55
+ to="lamindb.artifact",
56
+ ),
57
+ ),
58
+ migrations.AlterField(
59
+ model_name="artifactulabel",
60
+ name="feature",
61
+ field=models.ForeignKey(
62
+ default=None,
63
+ null=True,
64
+ on_delete=django.db.models.deletion.PROTECT,
65
+ related_name="links_artifactulabel",
66
+ to="lamindb.feature",
67
+ ),
68
+ ),
69
+ migrations.AlterField(
70
+ model_name="artifactulabel",
71
+ name="ulabel",
72
+ field=models.ForeignKey(
73
+ on_delete=django.db.models.deletion.PROTECT,
74
+ related_name="links_artifact",
75
+ to="lamindb.ulabel",
76
+ ),
77
+ ),
78
+ migrations.AlterField(
79
+ model_name="collectionartifact",
80
+ name="artifact",
81
+ field=models.ForeignKey(
82
+ on_delete=django.db.models.deletion.PROTECT,
83
+ related_name="links_collection",
84
+ to="lamindb.artifact",
85
+ ),
86
+ ),
87
+ migrations.AlterField(
88
+ model_name="collectionartifact",
89
+ name="collection",
90
+ field=models.ForeignKey(
91
+ on_delete=django.db.models.deletion.CASCADE,
92
+ related_name="links_artifact",
93
+ to="lamindb.collection",
94
+ ),
95
+ ),
96
+ migrations.AlterField(
97
+ model_name="collectionfeatureset",
98
+ name="collection",
99
+ field=models.ForeignKey(
100
+ on_delete=django.db.models.deletion.CASCADE,
101
+ related_name="links_feature_set",
102
+ to="lamindb.collection",
103
+ ),
104
+ ),
105
+ migrations.AlterField(
106
+ model_name="collectionfeatureset",
107
+ name="featureset",
108
+ field=models.ForeignKey(
109
+ on_delete=django.db.models.deletion.PROTECT,
110
+ related_name="links_collection",
111
+ to="lamindb.featureset",
112
+ ),
113
+ ),
114
+ migrations.AlterField(
115
+ model_name="collectionulabel",
116
+ name="collection",
117
+ field=models.ForeignKey(
118
+ on_delete=django.db.models.deletion.CASCADE,
119
+ related_name="links_ulabel",
120
+ to="lamindb.collection",
121
+ ),
122
+ ),
123
+ migrations.AlterField(
124
+ model_name="collectionulabel",
125
+ name="feature",
126
+ field=models.ForeignKey(
127
+ default=None,
128
+ null=True,
129
+ on_delete=django.db.models.deletion.PROTECT,
130
+ related_name="links_collectionulabel",
131
+ to="lamindb.feature",
132
+ ),
133
+ ),
134
+ migrations.AlterField(
135
+ model_name="collectionulabel",
136
+ name="ulabel",
137
+ field=models.ForeignKey(
138
+ on_delete=django.db.models.deletion.PROTECT,
139
+ related_name="links_collection",
140
+ to="lamindb.ulabel",
141
+ ),
142
+ ),
143
+ migrations.RemoveField(
144
+ model_name="transform",
145
+ name="latest_report",
146
+ ),
147
+ migrations.RenameField(
148
+ model_name="artifact",
149
+ old_name="input_of",
150
+ new_name="input_of_runs",
151
+ ),
152
+ migrations.RenameField(
153
+ model_name="collection",
154
+ old_name="input_of",
155
+ new_name="input_of_runs",
156
+ ),
157
+ migrations.RenameField(
158
+ model_name="collection",
159
+ old_name="unordered_artifacts",
160
+ new_name="artifacts",
161
+ ),
162
+ migrations.RenameField(
163
+ model_name="collection",
164
+ old_name="artifact",
165
+ new_name="meta_artifact",
166
+ ),
167
+ migrations.AlterField(
168
+ model_name="artifact",
169
+ name="type",
170
+ field=models.CharField(
171
+ choices=[("dataset", "dataset"), ("model", "model")],
172
+ db_index=True,
173
+ default=None,
174
+ max_length=20,
175
+ null=True,
176
+ ),
177
+ ),
178
+ migrations.AlterField(
179
+ model_name="artifact",
180
+ name="accessor",
181
+ field=models.CharField(
182
+ db_column="accessor",
183
+ db_index=True,
184
+ default=None,
185
+ max_length=64,
186
+ null=True,
187
+ ),
188
+ ),
189
+ migrations.RenameField(
190
+ model_name="artifact",
191
+ old_name="accessor",
192
+ new_name="_accessor",
193
+ ),
194
+ migrations.AlterField(
195
+ model_name="feature",
196
+ name="name",
197
+ field=models.CharField(
198
+ db_index=True, default=None, max_length=150, unique=True
199
+ ),
200
+ ),
201
+ migrations.RenameField(
202
+ model_name="transform",
203
+ old_name="source_code",
204
+ new_name="_source_code_artifact",
205
+ ),
206
+ migrations.AlterField(
207
+ model_name="transform",
208
+ name="_source_code_artifact",
209
+ field=models.ForeignKey(
210
+ default=None,
211
+ null=True,
212
+ on_delete=django.db.models.deletion.PROTECT,
213
+ related_name="_source_code_of",
214
+ to="lamindb.artifact",
215
+ ),
216
+ ),
217
+ migrations.AlterField(
218
+ model_name="artifact",
219
+ name="type",
220
+ field=models.CharField(
221
+ db_index=True, default=None, max_length=20, null=True
222
+ ),
223
+ ),
224
+ migrations.AlterField(
225
+ model_name="transform",
226
+ name="type",
227
+ field=models.CharField(db_index=True, default="pipeline", max_length=20),
228
+ ),
229
+ migrations.RenameField(
230
+ model_name="artifact",
231
+ old_name="feature_values",
232
+ new_name="_feature_values",
233
+ ),
234
+ migrations.RenameField(
235
+ model_name="artifact",
236
+ old_name="hash_type",
237
+ new_name="_hash_type",
238
+ ),
239
+ migrations.RenameField(
240
+ model_name="artifact",
241
+ old_name="key_is_virtual",
242
+ new_name="_key_is_virtual",
243
+ ),
244
+ migrations.RenameField(
245
+ model_name="artifact",
246
+ old_name="param_values",
247
+ new_name="_param_values",
248
+ ),
249
+ migrations.RenameField(
250
+ model_name="run",
251
+ old_name="param_values",
252
+ new_name="_param_values",
253
+ ),
254
+ migrations.RenameField(
255
+ model_name="artifact",
256
+ old_name="previous_runs",
257
+ new_name="_previous_runs",
258
+ ),
259
+ migrations.RenameField(
260
+ model_name="collection",
261
+ old_name="previous_runs",
262
+ new_name="_previous_runs",
263
+ ),
264
+ migrations.RenameField(
265
+ model_name="feature",
266
+ old_name="previous_runs",
267
+ new_name="_previous_runs",
268
+ ),
269
+ migrations.RenameField(
270
+ model_name="param",
271
+ old_name="previous_runs",
272
+ new_name="_previous_runs",
273
+ ),
274
+ migrations.RenameField(
275
+ model_name="storage",
276
+ old_name="previous_runs",
277
+ new_name="_previous_runs",
278
+ ),
279
+ migrations.RenameField(
280
+ model_name="ulabel",
281
+ old_name="previous_runs",
282
+ new_name="_previous_runs",
283
+ ),
284
+ migrations.AlterField(
285
+ model_name="artifact",
286
+ name="_hash_type",
287
+ field=models.CharField(
288
+ db_column="hash_type",
289
+ db_index=True,
290
+ default=None,
291
+ max_length=30,
292
+ null=True,
293
+ ),
294
+ ),
295
+ migrations.AlterField(
296
+ model_name="artifact",
297
+ name="_key_is_virtual",
298
+ field=models.BooleanField(db_column="key_is_virtual"),
299
+ ),
300
+ migrations.AlterField(
301
+ model_name="artifact",
302
+ name="hash",
303
+ field=models.CharField(
304
+ db_index=True, default=None, max_length=22, null=True
305
+ ),
306
+ ),
307
+ migrations.AlterField(
308
+ model_name="collection",
309
+ name="hash",
310
+ field=models.CharField(
311
+ db_index=True, default=None, max_length=22, null=True
312
+ ),
313
+ ),
314
+ migrations.AlterField(
315
+ model_name="featureset",
316
+ name="hash",
317
+ field=models.CharField(
318
+ db_index=True, default=None, max_length=22, null=True, unique=True
319
+ ),
320
+ ),
321
+ migrations.AddField(
322
+ model_name="transform",
323
+ name="hash",
324
+ field=models.CharField(
325
+ db_index=True, default=None, max_length=22, null=True
326
+ ),
327
+ ),
328
+ migrations.AddField(
329
+ model_name="transform",
330
+ name="source_code",
331
+ field=models.TextField(default=None, null=True),
332
+ ),
333
+ migrations.AddField(
334
+ model_name="run",
335
+ name="parent",
336
+ field=models.ForeignKey(
337
+ default=None,
338
+ null=True,
339
+ on_delete=django.db.models.deletion.CASCADE,
340
+ related_name="children",
341
+ to="lamindb.run",
342
+ ),
343
+ ),
344
+ migrations.RenameField(
345
+ model_name="transform",
346
+ old_name="parents",
347
+ new_name="predecessors",
348
+ ),
349
+ migrations.AlterField(
350
+ model_name="transform",
351
+ name="predecessors",
352
+ field=models.ManyToManyField(
353
+ related_name="successors", to="lamindb.transform"
354
+ ),
355
+ ),
356
+ ]
@@ -0,0 +1,22 @@
1
+ # Generated by Django 5.2 on 2024-08-02 08:03
2
+
3
+ from django.db import migrations, models
4
+
5
+
6
+ class Migration(migrations.Migration):
7
+ dependencies = [
8
+ ("lamindb", "0057_link_models_latest_report_and_others"),
9
+ ]
10
+
11
+ operations = [
12
+ migrations.AddField(
13
+ model_name="artifact",
14
+ name="_actions",
15
+ field=models.ManyToManyField(related_name="+", to="lamindb.artifact"),
16
+ ),
17
+ migrations.AddField(
18
+ model_name="collection",
19
+ name="_actions",
20
+ field=models.ManyToManyField(related_name="+", to="lamindb.artifact"),
21
+ ),
22
+ ]
@@ -0,0 +1,31 @@
1
+ # Generated by Django 5.2 on 2024-08-02 15:03
2
+
3
+ from django.db import migrations, models
4
+
5
+
6
+ class Migration(migrations.Migration):
7
+ dependencies = [
8
+ ("lamindb", "0058_artifact__actions_collection__actions"),
9
+ ]
10
+
11
+ operations = [
12
+ migrations.AlterField(
13
+ model_name="artifact",
14
+ name="_accessor",
15
+ field=models.CharField(
16
+ db_index=True, default=None, max_length=64, null=True
17
+ ),
18
+ ),
19
+ migrations.AlterField(
20
+ model_name="artifact",
21
+ name="_hash_type",
22
+ field=models.CharField(
23
+ db_index=True, default=None, max_length=30, null=True
24
+ ),
25
+ ),
26
+ migrations.AlterField(
27
+ model_name="artifact",
28
+ name="_key_is_virtual",
29
+ field=models.BooleanField(),
30
+ ),
31
+ ]
@@ -0,0 +1,22 @@
1
+ # Generated by Django 5.2 on 2024-08-07 19:51
2
+
3
+ from django.db import migrations, models
4
+
5
+
6
+ class Migration(migrations.Migration):
7
+ dependencies = [
8
+ (
9
+ "lamindb",
10
+ "0059_alter_artifact__accessor_alter_artifact__hash_type_and_more",
11
+ ),
12
+ ]
13
+
14
+ operations = [
15
+ migrations.AlterField(
16
+ model_name="artifact",
17
+ name="_actions",
18
+ field=models.ManyToManyField(
19
+ related_name="_action_targets", to="lamindb.artifact"
20
+ ),
21
+ ),
22
+ ]
@@ -0,0 +1,45 @@
1
+ # Generated by Django 5.2 on 2024-08-08 11:33
2
+
3
+ import django.db.models.deletion
4
+ from django.db import migrations, models
5
+
6
+
7
+ class Migration(migrations.Migration):
8
+ dependencies = [
9
+ ("lamindb", "0060_alter_artifact__actions"),
10
+ ]
11
+
12
+ operations = [
13
+ migrations.AlterField(
14
+ model_name="collection",
15
+ name="meta_artifact",
16
+ field=models.OneToOneField(
17
+ null=True,
18
+ on_delete=django.db.models.deletion.PROTECT,
19
+ related_name="_meta_of_collection",
20
+ to="lamindb.artifact",
21
+ ),
22
+ ),
23
+ migrations.AlterField(
24
+ model_name="run",
25
+ name="environment",
26
+ field=models.ForeignKey(
27
+ default=None,
28
+ null=True,
29
+ on_delete=django.db.models.deletion.PROTECT,
30
+ related_name="_environment_of",
31
+ to="lamindb.artifact",
32
+ ),
33
+ ),
34
+ migrations.AlterField(
35
+ model_name="run",
36
+ name="report",
37
+ field=models.ForeignKey(
38
+ default=None,
39
+ null=True,
40
+ on_delete=django.db.models.deletion.PROTECT,
41
+ related_name="_report_of",
42
+ to="lamindb.artifact",
43
+ ),
44
+ ),
45
+ ]
@@ -0,0 +1,32 @@
1
+ # Generated by Django 5.2 on 2024-08-12 07:46
2
+
3
+ from django.db import migrations, models
4
+
5
+
6
+ # data migration comes in the next migration due to pending triggers
7
+ class Migration(migrations.Migration):
8
+ dependencies = [
9
+ (
10
+ "lamindb",
11
+ "0061_alter_collection_meta_artifact_alter_run_environment_and_more",
12
+ ),
13
+ ]
14
+
15
+ operations = [
16
+ # add the field
17
+ migrations.AddField(
18
+ model_name="artifact",
19
+ name="is_latest",
20
+ field=models.BooleanField(db_index=True, default=True),
21
+ ),
22
+ migrations.AddField(
23
+ model_name="collection",
24
+ name="is_latest",
25
+ field=models.BooleanField(db_index=True, default=True),
26
+ ),
27
+ migrations.AddField(
28
+ model_name="transform",
29
+ name="is_latest",
30
+ field=models.BooleanField(db_index=True, default=True),
31
+ ),
32
+ ]