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.
Files changed (54) hide show
  1. lamindb/__init__.py +8 -14
  2. lamindb/_tracked.py +2 -0
  3. lamindb/base/types.py +1 -3
  4. lamindb/core/_context.py +16 -31
  5. lamindb/core/_mapped_collection.py +2 -2
  6. lamindb/core/storage/paths.py +5 -3
  7. lamindb/curators/core.py +15 -4
  8. lamindb/examples/__init__.py +3 -1
  9. lamindb/examples/croissant/__init__.py +3 -1
  10. lamindb/examples/mlflow/__init__.py +38 -0
  11. lamindb/examples/wandb/__init__.py +40 -0
  12. lamindb/integrations/__init__.py +26 -0
  13. lamindb/integrations/lightning.py +87 -0
  14. lamindb/migrations/0120_add_record_fk_constraint.py +1 -1
  15. lamindb/migrations/0122_remove_personproject_person_and_more.py +219 -0
  16. lamindb/migrations/0123_alter_artifact_description_alter_branch_description_and_more.py +82 -0
  17. lamindb/migrations/0124_page_artifact_page_collection_page_feature_page_and_more.py +15 -0
  18. lamindb/migrations/0125_artifact_is_locked_collection_is_locked_and_more.py +79 -0
  19. lamindb/migrations/0126_alter_artifact_is_locked_alter_collection_is_locked_and_more.py +105 -0
  20. lamindb/migrations/0127_alter_run_status_code_feature_dtype.py +31 -0
  21. lamindb/migrations/0128_artifact__real_key.py +21 -0
  22. lamindb/migrations/0129_remove_feature_page_remove_project_page_and_more.py +779 -0
  23. lamindb/migrations/0130_branch_space_alter_artifactblock_artifact_and_more.py +170 -0
  24. lamindb/migrations/0131_record_unique_name_type_space.py +18 -0
  25. lamindb/migrations/0132_record_parents_record_reference_and_more.py +61 -0
  26. lamindb/migrations/0133_artifactuser_artifact_users.py +108 -0
  27. lamindb/migrations/{0119_squashed.py → 0133_squashed.py} +1211 -322
  28. lamindb/models/__init__.py +14 -4
  29. lamindb/models/_django.py +1 -2
  30. lamindb/models/_feature_manager.py +1 -0
  31. lamindb/models/_is_versioned.py +14 -16
  32. lamindb/models/_relations.py +7 -0
  33. lamindb/models/artifact.py +99 -56
  34. lamindb/models/artifact_set.py +20 -3
  35. lamindb/models/block.py +174 -0
  36. lamindb/models/can_curate.py +7 -9
  37. lamindb/models/collection.py +9 -9
  38. lamindb/models/feature.py +38 -38
  39. lamindb/models/has_parents.py +15 -6
  40. lamindb/models/project.py +44 -99
  41. lamindb/models/query_manager.py +1 -1
  42. lamindb/models/query_set.py +36 -8
  43. lamindb/models/record.py +169 -46
  44. lamindb/models/run.py +44 -10
  45. lamindb/models/save.py +7 -7
  46. lamindb/models/schema.py +9 -2
  47. lamindb/models/sqlrecord.py +87 -35
  48. lamindb/models/storage.py +13 -3
  49. lamindb/models/transform.py +7 -2
  50. lamindb/models/ulabel.py +6 -23
  51. {lamindb-1.11.3.dist-info → lamindb-1.12.0.dist-info}/METADATA +18 -21
  52. {lamindb-1.11.3.dist-info → lamindb-1.12.0.dist-info}/RECORD +54 -38
  53. {lamindb-1.11.3.dist-info → lamindb-1.12.0.dist-info}/LICENSE +0 -0
  54. {lamindb-1.11.3.dist-info → lamindb-1.12.0.dist-info}/WHEEL +0 -0
@@ -0,0 +1,170 @@
1
+ # Generated by Django 5.1.12 on 2025-10-02 10:27
2
+
3
+ import django.db.models.deletion
4
+ from django.db import migrations, models
5
+
6
+ import lamindb.base.fields
7
+
8
+
9
+ class Migration(migrations.Migration):
10
+ dependencies = [
11
+ ("lamindb", "0129_remove_feature_page_remove_project_page_and_more"),
12
+ ]
13
+
14
+ operations = [
15
+ migrations.AddField(
16
+ model_name="branch",
17
+ name="space",
18
+ field=lamindb.base.fields.ForeignKey(
19
+ blank=True,
20
+ db_default=1,
21
+ default=1,
22
+ on_delete=django.db.models.deletion.PROTECT,
23
+ related_name="+",
24
+ to="lamindb.space",
25
+ ),
26
+ ),
27
+ migrations.AlterField(
28
+ model_name="artifactblock",
29
+ name="artifact",
30
+ field=models.ForeignKey(
31
+ default=1,
32
+ on_delete=django.db.models.deletion.CASCADE,
33
+ related_name="blocks",
34
+ to="lamindb.artifact",
35
+ ),
36
+ preserve_default=False,
37
+ ),
38
+ migrations.AlterField(
39
+ model_name="artifactblock",
40
+ name="vertical_pos",
41
+ field=models.FloatField(db_default=0, db_index=True, default=0),
42
+ ),
43
+ migrations.AlterField(
44
+ model_name="branchblock",
45
+ name="branch",
46
+ field=models.ForeignKey(
47
+ default=1,
48
+ on_delete=django.db.models.deletion.CASCADE,
49
+ related_name="blocks",
50
+ to="lamindb.branch",
51
+ ),
52
+ preserve_default=False,
53
+ ),
54
+ migrations.AlterField(
55
+ model_name="branchblock",
56
+ name="vertical_pos",
57
+ field=models.FloatField(db_default=0, db_index=True, default=0),
58
+ ),
59
+ migrations.AlterField(
60
+ model_name="collectionblock",
61
+ name="vertical_pos",
62
+ field=models.FloatField(db_default=0, db_index=True, default=0),
63
+ ),
64
+ migrations.AlterField(
65
+ model_name="featureblock",
66
+ name="feature",
67
+ field=models.ForeignKey(
68
+ default=1,
69
+ on_delete=django.db.models.deletion.CASCADE,
70
+ related_name="blocks",
71
+ to="lamindb.feature",
72
+ ),
73
+ preserve_default=False,
74
+ ),
75
+ migrations.AlterField(
76
+ model_name="featureblock",
77
+ name="vertical_pos",
78
+ field=models.FloatField(db_default=0, db_index=True, default=0),
79
+ ),
80
+ migrations.AlterField(
81
+ model_name="projectblock",
82
+ name="project",
83
+ field=models.ForeignKey(
84
+ default=1,
85
+ on_delete=django.db.models.deletion.CASCADE,
86
+ related_name="blocks",
87
+ to="lamindb.project",
88
+ ),
89
+ preserve_default=False,
90
+ ),
91
+ migrations.AlterField(
92
+ model_name="projectblock",
93
+ name="vertical_pos",
94
+ field=models.FloatField(db_default=0, db_index=True, default=0),
95
+ ),
96
+ migrations.AlterField(
97
+ model_name="recordblock",
98
+ name="record",
99
+ field=models.ForeignKey(
100
+ default=1,
101
+ on_delete=django.db.models.deletion.CASCADE,
102
+ related_name="blocks",
103
+ to="lamindb.record",
104
+ ),
105
+ preserve_default=False,
106
+ ),
107
+ migrations.AlterField(
108
+ model_name="recordblock",
109
+ name="vertical_pos",
110
+ field=models.FloatField(db_default=0, db_index=True, default=0),
111
+ ),
112
+ migrations.AlterField(
113
+ model_name="rootblock",
114
+ name="vertical_pos",
115
+ field=models.FloatField(db_default=0, db_index=True, default=0),
116
+ ),
117
+ migrations.AlterField(
118
+ model_name="runblock",
119
+ name="run",
120
+ field=models.ForeignKey(
121
+ default=1,
122
+ on_delete=django.db.models.deletion.CASCADE,
123
+ related_name="blocks",
124
+ to="lamindb.run",
125
+ ),
126
+ preserve_default=False,
127
+ ),
128
+ migrations.AlterField(
129
+ model_name="runblock",
130
+ name="vertical_pos",
131
+ field=models.FloatField(db_default=0, db_index=True, default=0),
132
+ ),
133
+ migrations.AlterField(
134
+ model_name="schemablock",
135
+ name="schema",
136
+ field=models.ForeignKey(
137
+ default=1,
138
+ on_delete=django.db.models.deletion.CASCADE,
139
+ related_name="blocks",
140
+ to="lamindb.schema",
141
+ ),
142
+ preserve_default=False,
143
+ ),
144
+ migrations.AlterField(
145
+ model_name="schemablock",
146
+ name="vertical_pos",
147
+ field=models.FloatField(db_default=0, db_index=True, default=0),
148
+ ),
149
+ migrations.AlterField(
150
+ model_name="spaceblock",
151
+ name="space",
152
+ field=models.ForeignKey(
153
+ default=1,
154
+ on_delete=django.db.models.deletion.CASCADE,
155
+ related_name="blocks",
156
+ to="lamindb.space",
157
+ ),
158
+ preserve_default=False,
159
+ ),
160
+ migrations.AlterField(
161
+ model_name="spaceblock",
162
+ name="vertical_pos",
163
+ field=models.FloatField(db_default=0, db_index=True, default=0),
164
+ ),
165
+ migrations.AlterField(
166
+ model_name="transformblock",
167
+ name="vertical_pos",
168
+ field=models.FloatField(db_default=0, db_index=True, default=0),
169
+ ),
170
+ ]
@@ -0,0 +1,18 @@
1
+ # Generated by Django 5.1.12 on 2025-10-02 15:17
2
+
3
+ from django.db import migrations, models
4
+
5
+
6
+ class Migration(migrations.Migration):
7
+ dependencies = [
8
+ ("lamindb", "0130_branch_space_alter_artifactblock_artifact_and_more"),
9
+ ]
10
+
11
+ operations = [
12
+ migrations.AddConstraint(
13
+ model_name="record",
14
+ constraint=models.UniqueConstraint(
15
+ fields=("name", "type", "space"), name="unique_name_type_space"
16
+ ),
17
+ ),
18
+ ]
@@ -0,0 +1,61 @@
1
+ # Generated by Django 5.1.12 on 2025-10-04 10:57
2
+
3
+ import django.db.models.deletion
4
+ from django.db import migrations, models
5
+
6
+ import lamindb.base.fields
7
+
8
+
9
+ class Migration(migrations.Migration):
10
+ dependencies = [
11
+ ("lamindb", "0131_record_unique_name_type_space"),
12
+ ]
13
+
14
+ operations = [
15
+ migrations.AddField(
16
+ model_name="record",
17
+ name="parents",
18
+ field=models.ManyToManyField(related_name="children", to="lamindb.record"),
19
+ ),
20
+ migrations.AddField(
21
+ model_name="record",
22
+ name="reference",
23
+ field=lamindb.base.fields.CharField(
24
+ blank=True, db_index=True, default=None, max_length=255, null=True
25
+ ),
26
+ ),
27
+ migrations.AddField(
28
+ model_name="record",
29
+ name="reference_type",
30
+ field=lamindb.base.fields.CharField(
31
+ blank=True, db_index=True, default=None, max_length=25, null=True
32
+ ),
33
+ ),
34
+ migrations.RenameField(
35
+ model_name="record",
36
+ old_name="ulabels",
37
+ new_name="linked_ulabels",
38
+ ),
39
+ migrations.AlterField(
40
+ model_name="record",
41
+ name="linked_ulabels",
42
+ field=models.ManyToManyField(
43
+ related_name="linked_in_records",
44
+ through="lamindb.RecordULabel",
45
+ to="lamindb.ulabel",
46
+ ),
47
+ ),
48
+ migrations.AlterField(
49
+ model_name="record",
50
+ name="run",
51
+ field=lamindb.base.fields.ForeignKey(
52
+ blank=True,
53
+ default=lamindb.models.run.current_run,
54
+ editable=False,
55
+ null=True,
56
+ on_delete=django.db.models.deletion.PROTECT,
57
+ related_name="output_records",
58
+ to="lamindb.run",
59
+ ),
60
+ ),
61
+ ]
@@ -0,0 +1,108 @@
1
+ # Generated by Django 5.1.12 on 2025-10-06 12:19
2
+
3
+ import django.db.models.deletion
4
+ import django.db.models.functions.datetime
5
+ from django.db import migrations, models
6
+
7
+ import lamindb.base.fields
8
+ import lamindb.base.users
9
+ import lamindb.models.run
10
+ import lamindb.models.sqlrecord
11
+
12
+
13
+ class Migration(migrations.Migration):
14
+ dependencies = [
15
+ ("lamindb", "0132_record_parents_record_reference_and_more"),
16
+ ]
17
+
18
+ operations = [
19
+ migrations.CreateModel(
20
+ name="ArtifactUser",
21
+ fields=[
22
+ (
23
+ "created_at",
24
+ lamindb.base.fields.DateTimeField(
25
+ blank=True,
26
+ db_default=django.db.models.functions.datetime.Now(),
27
+ db_index=True,
28
+ editable=False,
29
+ ),
30
+ ),
31
+ ("id", models.BigAutoField(primary_key=True, serialize=False)),
32
+ (
33
+ "label_ref_is_name",
34
+ lamindb.base.fields.BooleanField(
35
+ blank=True, default=None, null=True
36
+ ),
37
+ ),
38
+ (
39
+ "feature_ref_is_name",
40
+ lamindb.base.fields.BooleanField(
41
+ blank=True, default=None, null=True
42
+ ),
43
+ ),
44
+ (
45
+ "artifact",
46
+ lamindb.base.fields.ForeignKey(
47
+ blank=True,
48
+ on_delete=django.db.models.deletion.CASCADE,
49
+ related_name="links_user",
50
+ to="lamindb.artifact",
51
+ ),
52
+ ),
53
+ (
54
+ "created_by",
55
+ lamindb.base.fields.ForeignKey(
56
+ blank=True,
57
+ default=lamindb.base.users.current_user_id,
58
+ editable=False,
59
+ on_delete=django.db.models.deletion.PROTECT,
60
+ related_name="+",
61
+ to="lamindb.user",
62
+ ),
63
+ ),
64
+ (
65
+ "feature",
66
+ lamindb.base.fields.ForeignKey(
67
+ blank=True,
68
+ default=None,
69
+ null=True,
70
+ on_delete=django.db.models.deletion.PROTECT,
71
+ related_name="links_artifactuser",
72
+ to="lamindb.feature",
73
+ ),
74
+ ),
75
+ (
76
+ "run",
77
+ lamindb.base.fields.ForeignKey(
78
+ blank=True,
79
+ default=lamindb.models.run.current_run,
80
+ null=True,
81
+ on_delete=django.db.models.deletion.PROTECT,
82
+ related_name="+",
83
+ to="lamindb.run",
84
+ ),
85
+ ),
86
+ (
87
+ "user",
88
+ lamindb.base.fields.ForeignKey(
89
+ blank=True,
90
+ on_delete=django.db.models.deletion.PROTECT,
91
+ related_name="links_artifact",
92
+ to="lamindb.user",
93
+ ),
94
+ ),
95
+ ],
96
+ options={
97
+ "unique_together": {("artifact", "user", "feature")},
98
+ },
99
+ bases=(lamindb.models.sqlrecord.IsLink, models.Model),
100
+ ),
101
+ migrations.AddField(
102
+ model_name="artifact",
103
+ name="users",
104
+ field=models.ManyToManyField(
105
+ related_name="+", through="lamindb.ArtifactUser", to="lamindb.user"
106
+ ),
107
+ ),
108
+ ]