lamindb 0.73.2__py3-none-any.whl → 0.74.1__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 -8
- lamindb/_artifact.py +21 -26
- lamindb/_feature.py +2 -2
- lamindb/_finish.py +9 -3
- lamindb/_from_values.py +21 -9
- lamindb/_query_manager.py +1 -1
- lamindb/_query_set.py +5 -3
- lamindb/_registry.py +2 -2
- lamindb/_run.py +2 -1
- lamindb/_storage.py +0 -6
- lamindb/core/__init__.py +7 -5
- lamindb/core/_data.py +7 -4
- lamindb/core/_feature_manager.py +243 -108
- lamindb/core/_run_context.py +5 -23
- lamindb/core/_settings.py +43 -49
- lamindb/core/datasets/_core.py +3 -3
- lamindb/core/storage/paths.py +3 -3
- lamindb/core/subsettings/__init__.py +12 -0
- lamindb/core/subsettings/_creation_settings.py +38 -0
- lamindb/core/subsettings/_transform_settings.py +21 -0
- {lamindb-0.73.2.dist-info → lamindb-0.74.1.dist-info}/METADATA +5 -5
- {lamindb-0.73.2.dist-info → lamindb-0.74.1.dist-info}/RECORD +24 -22
- lamindb/core/_transform_settings.py +0 -9
- {lamindb-0.73.2.dist-info → lamindb-0.74.1.dist-info}/LICENSE +0 -0
- {lamindb-0.73.2.dist-info → lamindb-0.74.1.dist-info}/WHEEL +0 -0
lamindb/core/_settings.py
CHANGED
@@ -9,11 +9,13 @@ from lamindb_setup._set_managed_storage import set_managed_storage
|
|
9
9
|
from lamindb_setup.core._settings import settings as setup_settings
|
10
10
|
from lamindb_setup.core._settings_instance import sanitize_git_repo_url
|
11
11
|
|
12
|
-
from .
|
12
|
+
from .subsettings._creation_settings import CreationSettings, creation_settings
|
13
|
+
from .subsettings._transform_settings import TransformSettings, transform_settings
|
13
14
|
|
14
15
|
if TYPE_CHECKING:
|
15
16
|
from pathlib import Path
|
16
17
|
|
18
|
+
from lamindb_setup.core._settings_storage import StorageSettings
|
17
19
|
from upath import UPath
|
18
20
|
|
19
21
|
VERBOSITY_TO_INT = {
|
@@ -40,29 +42,15 @@ class Settings:
|
|
40
42
|
logger.set_verbosity(self._verbosity_int)
|
41
43
|
self._sync_git_repo: str | None = git_repo
|
42
44
|
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
"""Behavior if file hash exists (default `"warn_return_existing"`).
|
47
|
-
|
48
|
-
One of `["warn_return_existing", "error", "warn_create_new"]`.
|
49
|
-
|
50
|
-
FAQ: :doc:`/faq/idempotency`
|
51
|
-
"""
|
52
|
-
upon_file_create_skip_size_hash: bool = False
|
53
|
-
"""To speed up registering high numbers of files (default `False`).
|
54
|
-
|
55
|
-
This bypasses queries for size and hash to AWS & GCP.
|
56
|
-
|
57
|
-
It speeds up file creation by about a factor 100.
|
58
|
-
"""
|
59
|
-
upon_create_search_names: bool = True
|
60
|
-
"""To speed up creating Registry objects (default `True`).
|
45
|
+
@property
|
46
|
+
def creation(self) -> CreationSettings:
|
47
|
+
"""Record creation settings.
|
61
48
|
|
62
|
-
|
49
|
+
For example, `ln.settings.creation.search_names = False` will disable
|
50
|
+
searching for records with similar names during creation.
|
51
|
+
"""
|
52
|
+
return creation_settings
|
63
53
|
|
64
|
-
FAQ: :doc:`/faq/idempotency`
|
65
|
-
"""
|
66
54
|
track_run_inputs: bool = True
|
67
55
|
"""Track files as input upon `.load()`, `.cache()` and `.backed()`.
|
68
56
|
|
@@ -70,14 +58,6 @@ class Settings:
|
|
70
58
|
|
71
59
|
FAQ: :doc:`/faq/track-run-inputs`
|
72
60
|
"""
|
73
|
-
silence_file_run_transform_warning: bool = False
|
74
|
-
"""Silence warning about missing run & transform during file creation."""
|
75
|
-
artifact_use_virtual_keys: bool = True
|
76
|
-
"""Treat `key` parameter in :class:`~lamindb.Artifact` as virtual.
|
77
|
-
|
78
|
-
If `True`, the `key` is **not** used to construct file paths, but file paths are
|
79
|
-
based on the `uid` of artifact.
|
80
|
-
"""
|
81
61
|
__using_key: str | None = None
|
82
62
|
_using_storage: str | None = None
|
83
63
|
|
@@ -101,8 +81,17 @@ class Settings:
|
|
101
81
|
|
102
82
|
@property
|
103
83
|
def transform(self) -> TransformSettings:
|
104
|
-
"""Transform settings.
|
105
|
-
|
84
|
+
"""Transform settings.
|
85
|
+
|
86
|
+
For example::
|
87
|
+
|
88
|
+
ln.settings.transform.stem_uid = "FPnfDtJz8qbE" # defines version family
|
89
|
+
ln.settings.transform.version = "1" # defines version
|
90
|
+
ln.settings.transform.name = "My good script" # semantic name
|
91
|
+
|
92
|
+
The first two are typically auto-generated by :func:`~lamindb.track`.
|
93
|
+
"""
|
94
|
+
return transform_settings
|
106
95
|
|
107
96
|
@property
|
108
97
|
def sync_git_repo(self) -> str | None:
|
@@ -116,18 +105,25 @@ class Settings:
|
|
116
105
|
def sync_git_repo(self, value) -> None:
|
117
106
|
"""Sync transforms with scripts in git repository.
|
118
107
|
|
119
|
-
|
108
|
+
For example: `ln.sync_git_repo = https://github.com/laminlabs/redun-lamin`
|
120
109
|
"""
|
121
110
|
self._sync_git_repo = sanitize_git_repo_url(value)
|
122
111
|
assert self._sync_git_repo.startswith("https://")
|
123
112
|
|
124
113
|
@property
|
125
|
-
def storage(self) ->
|
126
|
-
"""Default storage location
|
114
|
+
def storage(self) -> StorageSettings:
|
115
|
+
"""Default storage location.
|
127
116
|
|
128
117
|
Examples:
|
129
118
|
|
130
|
-
|
119
|
+
>>> ln.settings.storage
|
120
|
+
StorageSettings(root='s3://my-bucket', uid='j7MaPxtLxPeE')
|
121
|
+
|
122
|
+
>>> ln.settings.storage.root
|
123
|
+
UPath('s3://my-bucket')
|
124
|
+
|
125
|
+
You can switch the default storage location to another managed storage
|
126
|
+
location by passing a string:
|
131
127
|
|
132
128
|
>>> ln.settings.storage = "s3://some-bucket"
|
133
129
|
|
@@ -139,7 +135,7 @@ class Settings:
|
|
139
135
|
>>> )
|
140
136
|
>>> ln.settings.storage = "s3://some-bucket", kwargs
|
141
137
|
"""
|
142
|
-
return self._storage_settings
|
138
|
+
return self._storage_settings
|
143
139
|
|
144
140
|
@storage.setter
|
145
141
|
def storage(self, path_kwargs: str | Path | UPath | tuple[str | UPath, Mapping]):
|
@@ -150,16 +146,14 @@ class Settings:
|
|
150
146
|
set_managed_storage(path, **kwargs)
|
151
147
|
|
152
148
|
@property
|
153
|
-
def storage_local(self) ->
|
149
|
+
def storage_local(self) -> StorageSettings:
|
154
150
|
"""An additional local default storage (a path to its root).
|
155
151
|
|
156
152
|
Is only available if :attr:`~lamindb.setup.core.InstanceSettings.keep_artifacts_local` is enabled.
|
157
153
|
|
158
154
|
Guide: :doc:`faq/keep-artifacts-local`
|
159
|
-
|
160
|
-
Shortcut for: `ln.setup.settings.instance.storage_local.root`
|
161
155
|
"""
|
162
|
-
return ln_setup.settings.instance.storage_local
|
156
|
+
return ln_setup.settings.instance.storage_local
|
163
157
|
|
164
158
|
@storage_local.setter
|
165
159
|
def storage_local(self, local_root: Path):
|
@@ -167,14 +161,14 @@ class Settings:
|
|
167
161
|
|
168
162
|
@property
|
169
163
|
def verbosity(self) -> str:
|
170
|
-
"""Logger verbosity (default 'warning').
|
171
|
-
|
172
|
-
- 'error'
|
173
|
-
- 'warning'
|
174
|
-
- 'success'
|
175
|
-
- 'info'
|
176
|
-
- 'hint'
|
177
|
-
- 'debug'
|
164
|
+
"""Logger verbosity (default `'warning'`).
|
165
|
+
|
166
|
+
- `'error'`: ❌ only show error messages
|
167
|
+
- `'warning'`: ❗ also show warning messages
|
168
|
+
- `'success'`: ✅ also show success and save messages
|
169
|
+
- `'info'`: 💡 also show info messages
|
170
|
+
- `'hint'`: 💡 also show hint messages
|
171
|
+
- `'debug'`: 🐛 also show detailed debug messages
|
178
172
|
"""
|
179
173
|
return VERBOSITY_TO_STR[self._verbosity_int]
|
180
174
|
|
lamindb/core/datasets/_core.py
CHANGED
@@ -91,7 +91,7 @@ def file_tsv_rnaseq_nfcore_salmon_merged_gene_counts(
|
|
91
91
|
|
92
92
|
def file_fastq(in_storage_root=False) -> Path:
|
93
93
|
"""Mini mock fastq artifact."""
|
94
|
-
basedir = Path() if not in_storage_root else settings.storage
|
94
|
+
basedir = Path() if not in_storage_root else settings.storage.root
|
95
95
|
filepath = basedir / "input.fastq.gz"
|
96
96
|
with open(filepath, "w") as f:
|
97
97
|
f.write("Mock fastq artifact.")
|
@@ -100,7 +100,7 @@ def file_fastq(in_storage_root=False) -> Path:
|
|
100
100
|
|
101
101
|
def file_bam(in_storage_root=False) -> Path: # pragma: no cover
|
102
102
|
"""Mini mock bam artifact."""
|
103
|
-
basedir = Path() if not in_storage_root else settings.storage
|
103
|
+
basedir = Path() if not in_storage_root else settings.storage.root
|
104
104
|
filepath = basedir / "output.bam"
|
105
105
|
with open(filepath, "w") as f:
|
106
106
|
f.write("Mock bam artifact.")
|
@@ -109,7 +109,7 @@ def file_bam(in_storage_root=False) -> Path: # pragma: no cover
|
|
109
109
|
|
110
110
|
def file_mini_csv(in_storage_root=False) -> Path:
|
111
111
|
"""Mini csv artifact."""
|
112
|
-
basedir = Path() if not in_storage_root else settings.storage
|
112
|
+
basedir = Path() if not in_storage_root else settings.storage.root
|
113
113
|
filepath = basedir / "mini.csv"
|
114
114
|
df = pd.DataFrame([1, 2, 3], columns=["test"])
|
115
115
|
df.to_csv(filepath, index=False)
|
lamindb/core/storage/paths.py
CHANGED
@@ -72,7 +72,7 @@ def attempt_accessing_path(
|
|
72
72
|
storage_settings = settings._storage_settings
|
73
73
|
else:
|
74
74
|
storage_settings = StorageSettings(
|
75
|
-
settings.storage, access_token=access_token
|
75
|
+
settings.storage.root, access_token=access_token
|
76
76
|
)
|
77
77
|
else:
|
78
78
|
if artifact._state.db not in ("default", None) and using_key is None:
|
@@ -143,8 +143,8 @@ def delete_storage(
|
|
143
143
|
"""Delete arbitrary artifact."""
|
144
144
|
# TODO is_relative_to is not available in 3.8 and deprecated since 3.12
|
145
145
|
# replace with check_path_is_child_of_root but this needs to first be debugged
|
146
|
-
# if not check_path_is_child_of_root(storagepath, settings.storage):
|
147
|
-
if not storagepath.is_relative_to(settings.storage): # type: ignore
|
146
|
+
# if not check_path_is_child_of_root(storagepath, settings.storage.root):
|
147
|
+
if not storagepath.is_relative_to(settings.storage.root): # type: ignore
|
148
148
|
allow_delete = False
|
149
149
|
if setup_settings.instance.keep_artifacts_local:
|
150
150
|
allow_delete = storagepath.is_relative_to( # type: ignore
|
@@ -0,0 +1,38 @@
|
|
1
|
+
from typing import Literal
|
2
|
+
|
3
|
+
|
4
|
+
class CreationSettings:
|
5
|
+
artifact_if_hash_exists: Literal[
|
6
|
+
"warn_return_existing", "error", "warn_create_new"
|
7
|
+
] = "warn_return_existing"
|
8
|
+
"""Behavior if file hash exists (default `"warn_return_existing"`).
|
9
|
+
|
10
|
+
One of `["warn_return_existing", "error", "warn_create_new"]`.
|
11
|
+
|
12
|
+
FAQ: :doc:`/faq/idempotency`
|
13
|
+
"""
|
14
|
+
artifact_skip_size_hash: bool = False
|
15
|
+
"""To speed up registering high numbers of files (default `False`).
|
16
|
+
|
17
|
+
This bypasses queries for size and hash to AWS & GCP.
|
18
|
+
|
19
|
+
It speeds up file creation by about a factor 100.
|
20
|
+
"""
|
21
|
+
search_names: bool = True
|
22
|
+
"""To speed up creating records (default `True`).
|
23
|
+
|
24
|
+
If `True`, search for alternative names.
|
25
|
+
|
26
|
+
FAQ: :doc:`/faq/idempotency`
|
27
|
+
"""
|
28
|
+
artifact_silence_missing_run_warning: bool = False
|
29
|
+
"""Silence warning about missing run & transform during artifact creation."""
|
30
|
+
_artifact_use_virtual_keys: bool = True
|
31
|
+
"""Treat `key` parameter in :class:`~lamindb.Artifact` as virtual.
|
32
|
+
|
33
|
+
If `True`, the `key` is **not** used to construct file paths, but file paths are
|
34
|
+
based on the `uid` of artifact.
|
35
|
+
"""
|
36
|
+
|
37
|
+
|
38
|
+
creation_settings = CreationSettings()
|
@@ -0,0 +1,21 @@
|
|
1
|
+
from __future__ import annotations
|
2
|
+
|
3
|
+
|
4
|
+
class TransformSettings:
|
5
|
+
stem_uid: str | None = None
|
6
|
+
"""Defines the version family of the transform.
|
7
|
+
|
8
|
+
For example, all notebooks of the same family have a uid that starts with
|
9
|
+
`"FPnfDtJz8qbE"`.
|
10
|
+
|
11
|
+
The full uids of the notebooks in this family are of form
|
12
|
+
`"{stem_uid}{suffix_uid}"` where the `suffix_uid` encodes the semantic
|
13
|
+
`version`.
|
14
|
+
"""
|
15
|
+
version: str | None = None
|
16
|
+
"""The version."""
|
17
|
+
name: str | None = None
|
18
|
+
"""A name like a notebook or script title."""
|
19
|
+
|
20
|
+
|
21
|
+
transform_settings = TransformSettings()
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: lamindb
|
3
|
-
Version: 0.
|
3
|
+
Version: 0.74.1
|
4
4
|
Summary: A data framework for biology.
|
5
5
|
Author-email: Lamin Labs <open-source@lamin.ai>
|
6
6
|
Requires-Python: >=3.8
|
@@ -9,15 +9,15 @@ Classifier: Programming Language :: Python :: 3.8
|
|
9
9
|
Classifier: Programming Language :: Python :: 3.9
|
10
10
|
Classifier: Programming Language :: Python :: 3.10
|
11
11
|
Classifier: Programming Language :: Python :: 3.11
|
12
|
-
Requires-Dist: lnschema_core==0.
|
13
|
-
Requires-Dist: lamindb_setup==0.73.
|
12
|
+
Requires-Dist: lnschema_core==0.70.0
|
13
|
+
Requires-Dist: lamindb_setup==0.73.2
|
14
14
|
Requires-Dist: lamin_utils==0.13.2
|
15
15
|
Requires-Dist: lamin_cli==0.14.0
|
16
16
|
Requires-Dist: rapidfuzz
|
17
17
|
Requires-Dist: pyarrow
|
18
18
|
Requires-Dist: typing_extensions!=4.6.0
|
19
19
|
Requires-Dist: python-dateutil
|
20
|
-
Requires-Dist: anndata>=0.8.0
|
20
|
+
Requires-Dist: anndata>=0.8.0,<=0.10.8
|
21
21
|
Requires-Dist: scipy<1.13.0rc1
|
22
22
|
Requires-Dist: fsspec
|
23
23
|
Requires-Dist: pandas
|
@@ -59,7 +59,7 @@ Provides-Extra: zarr
|
|
59
59
|
|
60
60
|
# LaminDB - A data framework for biology
|
61
61
|
|
62
|
-
- Manage
|
62
|
+
- Manage data & metadata with a unified Python API ("lakehouse").
|
63
63
|
- Track data lineage across notebooks & pipelines.
|
64
64
|
- Integrate registries for experimental metadata & in-house ontologies.
|
65
65
|
- Validate, standardize & annotate.
|
@@ -1,42 +1,41 @@
|
|
1
|
-
lamindb/__init__.py,sha256=
|
1
|
+
lamindb/__init__.py,sha256=7wGOqqM6NyKeQG6qqir53qzUowWMRAd36tH5L874hd0,2182
|
2
2
|
lamindb/_annotate.py,sha256=CScyKVB3k_x5p0pihxO1UrTFBCvPcSSjBXvGY3YgTLs,44381
|
3
|
-
lamindb/_artifact.py,sha256=
|
3
|
+
lamindb/_artifact.py,sha256=zVNBF7y-rARGG78Z2d2dI2J0Tg_5yeZL-GfogzBB7xY,40456
|
4
4
|
lamindb/_can_validate.py,sha256=s1q0lxplqnhytrVgArBTm05XKMMmpreK0ZlVCsd2jjk,14849
|
5
5
|
lamindb/_collection.py,sha256=AGiztgM_OIet617aF86muL6lIv6GEDcmXorize6V62U,14657
|
6
|
-
lamindb/_feature.py,sha256=
|
6
|
+
lamindb/_feature.py,sha256=Z_Awtsj183SA1egZgNmJI_dH04rqXAj72od3H6n0uBk,7398
|
7
7
|
lamindb/_feature_set.py,sha256=ZAFLyIiWC6yPOFTF7K03olE2Rl3KthsV-1ttqJySzqQ,8106
|
8
8
|
lamindb/_filter.py,sha256=jEA1n1Hi6lEPaD0JXiTSh9K4joGzWU6Yxy0LCLTiOdY,1422
|
9
|
-
lamindb/_finish.py,sha256=
|
10
|
-
lamindb/_from_values.py,sha256=
|
9
|
+
lamindb/_finish.py,sha256=WkFvZ0DijW9fRIsjyoxcAC4ehan_B0C8Fqoz9ZON19A,10213
|
10
|
+
lamindb/_from_values.py,sha256=Sq1NdjsqReih8aUR-JHZ09pxHdqL8rY-cZFHo078OJw,13886
|
11
11
|
lamindb/_is_versioned.py,sha256=0PgRCmxEmYDcAjllLSOYZm132B1lW6QgmBBERhRyFt0,1341
|
12
12
|
lamindb/_parents.py,sha256=kb5AHkntpTP5g2lk1aPL0FmIilYZYVZvj6stddFOI40,15075
|
13
|
-
lamindb/_query_manager.py,sha256=
|
14
|
-
lamindb/_query_set.py,sha256=
|
15
|
-
lamindb/_registry.py,sha256=
|
16
|
-
lamindb/_run.py,sha256=
|
13
|
+
lamindb/_query_manager.py,sha256=TjiwtX5CErEV58WyUFJ76p0riuPDODf8LGXo48aR9Fg,4236
|
14
|
+
lamindb/_query_set.py,sha256=q3C0gdfassidngMteGHuOlhHmt_3VXEGOwblRDInxpA,11626
|
15
|
+
lamindb/_registry.py,sha256=C_QKBAOhFj_pROBLUlieiPYWljd5ThPpTXunAekCQe8,18764
|
16
|
+
lamindb/_run.py,sha256=xj3ER4F_yWvuNw1mr0XU-QuIPi5hBO7Ue0ygBgJQ6mc,1887
|
17
17
|
lamindb/_save.py,sha256=It4XO448D8NG2cReo9Xy0lQBQdkMm_rCx_TGD1qZWWc,11864
|
18
|
-
lamindb/_storage.py,sha256=
|
18
|
+
lamindb/_storage.py,sha256=8wRefV-Klu6VBVtwcwppvTojeXnxRThaBdFniA0AEIw,400
|
19
19
|
lamindb/_transform.py,sha256=E9C7psuOnsNrUQpWRuGgEUM8_pc7YhDn7n4ieHzB4X0,3169
|
20
20
|
lamindb/_ulabel.py,sha256=XDSdZBXX_ki5s1vOths3MjF2x5DPggBR_PV_KF4SGyg,1611
|
21
21
|
lamindb/_utils.py,sha256=LGdiW4k3GClLz65vKAVRkL6Tw-Gkx9DWAdez1jyA5bE,428
|
22
22
|
lamindb/_view.py,sha256=NdWWF75rmkCHefqBViUnsHLu3OViJ1z_bEvfcedydsw,2330
|
23
|
-
lamindb/core/__init__.py,sha256=
|
24
|
-
lamindb/core/_data.py,sha256=
|
25
|
-
lamindb/core/_feature_manager.py,sha256=
|
23
|
+
lamindb/core/__init__.py,sha256=RDtvov8NkPTNT4Lhs1KWTd2s4eQsPBH0s3fQRNJQCZA,1375
|
24
|
+
lamindb/core/_data.py,sha256=u6eYlDOnLuwFMRsyg97qoIushwbHhwoQT-zjEL7p8VU,16241
|
25
|
+
lamindb/core/_feature_manager.py,sha256=OQ14OONCRecqVatNm5kALh5LuhWqKrwoMNPJ_qHtGhw,31372
|
26
26
|
lamindb/core/_label_manager.py,sha256=d9r3tiNDFbpZQmxE1jmgdgnMYPOfTPpAKGKtRRLmVj8,9640
|
27
27
|
lamindb/core/_mapped_collection.py,sha256=_OwFZh5SePDUD70XIK5kngv3we_Z5-YdGHNfpUSatSQ,19469
|
28
|
-
lamindb/core/_run_context.py,sha256=
|
29
|
-
lamindb/core/_settings.py,sha256=
|
28
|
+
lamindb/core/_run_context.py,sha256=ybGgrzGBy9kOyQNH1bPaMixXZNmZGynAP1eO6Zwtp4A,18393
|
29
|
+
lamindb/core/_settings.py,sha256=HIuCC9xEVo_3o-uogZlN-6oQVs92EWmaqBJWAdGKj5o,6009
|
30
30
|
lamindb/core/_sync_git.py,sha256=5Fb82eG1WYyBlfMRCMlcUZNTVk70UU_SPnfvYEBL-A8,4124
|
31
31
|
lamindb/core/_track_environment.py,sha256=xLZ6kgzxWS6MWZ5LQ_wkbJX99vmYOT8iQ-Fz4OHCgWw,754
|
32
|
-
lamindb/core/_transform_settings.py,sha256=eV96QKX9jOojjzF-a0oo0wXQsMXN2F6QV7orE06oFC8,161
|
33
32
|
lamindb/core/exceptions.py,sha256=bbm-PeSy24qFcqh2HpucZWpwGAvk-TL_3FUoAPb3e3E,867
|
34
33
|
lamindb/core/fields.py,sha256=Jgi_XI-iTe6cT7oD8FV_JqEpjN1Q9rZWwL8VLtj4jkA,164
|
35
34
|
lamindb/core/schema.py,sha256=BbG7JGrXVLwEX_6eQb8ouJc9Q-MgazwqHvAM5dtrWtM,1861
|
36
35
|
lamindb/core/types.py,sha256=xeQF2x40p2pR9eIVQrXT74RrS810z2fbjmTRTSQUqPM,230
|
37
36
|
lamindb/core/versioning.py,sha256=zbp3wAWOqU1uDF9wRrpaS9JfmRglUQtVHvFpWWoJHZk,4943
|
38
37
|
lamindb/core/datasets/__init__.py,sha256=zRP98oqUAaXhqWyKMiH0s_ImVIuNeziQQ2kQ_t0f-DI,1353
|
39
|
-
lamindb/core/datasets/_core.py,sha256=
|
38
|
+
lamindb/core/datasets/_core.py,sha256=11vsIRREU7TvjwkL2htJWAGoBNCmG2qz8ps4Bd4SNLQ,19873
|
40
39
|
lamindb/core/datasets/_fake.py,sha256=BZF9R_1iF0HDnvtZNqL2FtsjSMuqDIfuFxnw_LJYIh4,953
|
41
40
|
lamindb/core/storage/__init__.py,sha256=5LUFQKRr2BX24d-yWBezhTXBV83sShcOvPj5Y5u6qIg,441
|
42
41
|
lamindb/core/storage/_anndata_sizes.py,sha256=aXO3OB--tF5MChenSsigW6Q-RuE8YJJOUTVukkLrv9A,1029
|
@@ -44,12 +43,15 @@ lamindb/core/storage/_backed_access.py,sha256=eManrLsu3pSSQAyAKy47FDBm-iHgjaNfHA
|
|
44
43
|
lamindb/core/storage/_valid_suffixes.py,sha256=J08aglC9oo35pzahj0SQXW9IHib8Asp4dc11co-2uys,212
|
45
44
|
lamindb/core/storage/_zarr.py,sha256=5ceEz6YIvgvUnVVNWhK5Z4W0WfrvyvY82Yna5jSX1_E,3661
|
46
45
|
lamindb/core/storage/objects.py,sha256=OzvBCS-Urz5mr-O95qYt6RGBDDX5HmjfRRKWPPDn1ZE,1797
|
47
|
-
lamindb/core/storage/paths.py,sha256=
|
46
|
+
lamindb/core/storage/paths.py,sha256=p5TsZUOfQAN_0kzpr0JO43hRKLc95IO5qSu5V12A8Ok,8218
|
47
|
+
lamindb/core/subsettings/__init__.py,sha256=KFHPzIE7f7Bj4RgMjGQF4CjTdHVG_VNFBrCndo49ixo,198
|
48
|
+
lamindb/core/subsettings/_creation_settings.py,sha256=54mfMH_osC753hpxcl7Dq1rwBD2LHnWveXtQpkLBITE,1194
|
49
|
+
lamindb/core/subsettings/_transform_settings.py,sha256=4YbCuZtJo6zdytl6UQR4GvdDkTtT6SRBqVzofGzNOt8,583
|
48
50
|
lamindb/integrations/__init__.py,sha256=aH2PmO2m4-vwIifMYTB0Fyyr_gZWtVnV71jT0tVWSw0,123
|
49
51
|
lamindb/integrations/_vitessce.py,sha256=Qd39OuNsL0GXU7nMvEWLRRESFQ0mwGf_ePMJE_FDYm8,2639
|
50
52
|
lamindb/setup/__init__.py,sha256=OwZpZzPDv5lPPGXZP7-zK6UdO4FHvvuBh439yZvIp3A,410
|
51
53
|
lamindb/setup/core/__init__.py,sha256=SevlVrc2AZWL3uALbE5sopxBnIZPWZ1IB0NBDudiAL8,167
|
52
|
-
lamindb-0.
|
53
|
-
lamindb-0.
|
54
|
-
lamindb-0.
|
55
|
-
lamindb-0.
|
54
|
+
lamindb-0.74.1.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
55
|
+
lamindb-0.74.1.dist-info/WHEEL,sha256=EZbGkh7Ie4PoZfRQ8I0ZuP9VklN_TvcZ6DSE5Uar4z4,81
|
56
|
+
lamindb-0.74.1.dist-info/METADATA,sha256=iQeRxSkzFqxjAVMnofcMWyBaYsXLEp5gIhDeP339GNI,2732
|
57
|
+
lamindb-0.74.1.dist-info/RECORD,,
|
File without changes
|
File without changes
|