lamindb_setup 0.76.2__tar.gz → 0.76.4__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.
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/PKG-INFO +1 -1
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/__init__.py +1 -1
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/_schema_metadata.py +7 -3
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/core/_hub_core.py +3 -3
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/core/_hub_crud.py +22 -5
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/core/_settings_load.py +2 -7
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/core/upath.py +10 -13
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/tests/hub-local/conftest.py +5 -3
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/tests/storage/test_storage_basis.py +1 -1
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/tests/storage/test_storage_stats.py +15 -1
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/.github/workflows/build.yml +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/.github/workflows/doc-changes.yml +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/.gitignore +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/.pre-commit-config.yaml +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/LICENSE +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/README.md +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/docs/changelog.md +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/docs/hub-cloud/01-init-local-instance.ipynb +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/docs/hub-cloud/02-connect-local-instance.ipynb +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/docs/hub-cloud/03-add-managed-storage.ipynb +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/docs/hub-cloud/04-test-bionty.ipynb +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/docs/hub-cloud/05-init-hosted-instance.ipynb +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/docs/hub-cloud/06-connect-hosted-instance.ipynb +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/docs/hub-cloud/07-keep-artifacts-local.ipynb +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/docs/hub-cloud/test-multi-session.ipynb +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/docs/hub-cloud/test_notebooks.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/docs/hub-prod/test-cache-management.ipynb +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/docs/hub-prod/test-cloud-sync.ipynb +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/docs/hub-prod/test-connect-anonymously.ipynb +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/docs/hub-prod/test-empty-init.ipynb +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/docs/hub-prod/test-import-schema.ipynb +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/docs/hub-prod/test-insufficient-user-info.ipynb +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/docs/hub-prod/test-invalid-schema.ipynb +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/docs/hub-prod/test-sqlite-lock.ipynb +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/docs/hub-prod/test_notebooks2.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/docs/index.md +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/docs/notebooks.md +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/docs/reference.md +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/_cache.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/_check.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/_check_setup.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/_close.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/_connect_instance.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/_delete.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/_django.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/_exportdb.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/_importdb.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/_init_instance.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/_migrate.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/_register_instance.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/_schema.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/_set_managed_storage.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/_setup_user.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/_silence_loggers.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/core/__init__.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/core/_aws_credentials.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/core/_aws_storage.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/core/_deprecated.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/core/_docs.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/core/_hub_client.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/core/_hub_utils.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/core/_private_django_api.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/core/_settings.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/core/_settings_instance.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/core/_settings_save.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/core/_settings_storage.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/core/_settings_store.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/core/_settings_user.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/core/_setup_bionty_sources.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/core/cloud_sqlite_locker.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/core/django.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/core/exceptions.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/core/hashing.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/lamindb_setup/core/types.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/noxfile.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/pyproject.toml +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/tests/hub-cloud/test_connect_instance.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/tests/hub-cloud/test_delete_instance.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/tests/hub-cloud/test_init_instance.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/tests/hub-cloud/test_login.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/tests/hub-cloud/test_migrate.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/tests/hub-cloud/test_set_storage.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/tests/hub-local/test_all.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/tests/hub-local/test_update_schema_in_hub.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/tests/hub-prod/conftest.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/tests/hub-prod/test_django.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/tests/hub-prod/test_global_settings.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/tests/hub-prod/test_switch_and_fallback_env.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/tests/hub-prod/test_upath.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/tests/storage/test_hashing.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/tests/storage/test_storage_access.py +0 -0
- {lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/tests/storage/test_to_url.py +0 -0
|
@@ -356,7 +356,9 @@ class _SchemaHandler:
|
|
|
356
356
|
return self.to_dict(include_django_objects=False)
|
|
357
357
|
|
|
358
358
|
def _get_modules_metadata(self):
|
|
359
|
-
|
|
359
|
+
from lnschema_core.models import Record, Registry
|
|
360
|
+
|
|
361
|
+
all_models = {
|
|
360
362
|
module_name: {
|
|
361
363
|
model._meta.model_name: _ModelHandler(
|
|
362
364
|
model, module_name, self.included_modules
|
|
@@ -364,13 +366,15 @@ class _SchemaHandler:
|
|
|
364
366
|
for model in self._get_schema_module(
|
|
365
367
|
module_name
|
|
366
368
|
).models.__dict__.values()
|
|
367
|
-
if model.__class__
|
|
368
|
-
and model
|
|
369
|
+
if model.__class__ is Registry
|
|
370
|
+
and model is not Record
|
|
369
371
|
and not model._meta.abstract
|
|
370
372
|
and model.__get_schema_name__() == module_name
|
|
371
373
|
}
|
|
372
374
|
for module_name in self.included_modules
|
|
373
375
|
}
|
|
376
|
+
assert all_models
|
|
377
|
+
return all_models
|
|
374
378
|
|
|
375
379
|
def _get_module_set_info(self):
|
|
376
380
|
# TODO: rely on schemamodule table for this
|
|
@@ -19,10 +19,10 @@ from ._hub_crud import (
|
|
|
19
19
|
_delete_instance_record,
|
|
20
20
|
select_account_by_handle,
|
|
21
21
|
select_db_user_by_instance,
|
|
22
|
+
select_default_storage_by_instance_id,
|
|
22
23
|
select_instance_by_id_with_storage,
|
|
23
24
|
select_instance_by_name,
|
|
24
25
|
select_instance_by_owner_name,
|
|
25
|
-
select_storage,
|
|
26
26
|
)
|
|
27
27
|
from ._hub_crud import update_instance as _update_instance_record
|
|
28
28
|
from ._hub_utils import (
|
|
@@ -338,7 +338,7 @@ def _connect_instance(
|
|
|
338
338
|
if instance is None:
|
|
339
339
|
return "instance-not-found"
|
|
340
340
|
# get default storage
|
|
341
|
-
storage =
|
|
341
|
+
storage = select_default_storage_by_instance_id(instance["id"], client)
|
|
342
342
|
if storage is None:
|
|
343
343
|
return "storage-does-not-exist-on-hub"
|
|
344
344
|
else:
|
|
@@ -364,7 +364,7 @@ def _connect_instance(
|
|
|
364
364
|
database=instance["db_database"],
|
|
365
365
|
)
|
|
366
366
|
instance["db"] = db_dsn
|
|
367
|
-
return instance, storage
|
|
367
|
+
return instance, storage # type: ignore
|
|
368
368
|
|
|
369
369
|
|
|
370
370
|
def access_aws(storage_root: str, access_token: str | None = None) -> dict[str, dict]:
|
|
@@ -17,10 +17,11 @@ def select_instance_by_owner_name(
|
|
|
17
17
|
client.table("instance")
|
|
18
18
|
.select(
|
|
19
19
|
"*, account!inner!instance_account_id_28936e8f_fk_account_id(*),"
|
|
20
|
-
" storage!
|
|
20
|
+
" storage!inner!storage_instance_id_359fca71_fk_instance_id(*)"
|
|
21
21
|
)
|
|
22
|
-
.eq("account.handle", owner)
|
|
23
22
|
.eq("name", name)
|
|
23
|
+
.eq("account.handle", owner)
|
|
24
|
+
.eq("storage.is_default", True)
|
|
24
25
|
.execute()
|
|
25
26
|
.data
|
|
26
27
|
)
|
|
@@ -28,7 +29,11 @@ def select_instance_by_owner_name(
|
|
|
28
29
|
return None
|
|
29
30
|
if len(data) == 0:
|
|
30
31
|
return None
|
|
31
|
-
|
|
32
|
+
result = data[0]
|
|
33
|
+
# this is now a list
|
|
34
|
+
# assume only one default storage
|
|
35
|
+
result["storage"] = result["storage"][0]
|
|
36
|
+
return result
|
|
32
37
|
|
|
33
38
|
|
|
34
39
|
# --------------- ACCOUNT ----------------------
|
|
@@ -131,8 +136,20 @@ def select_collaborator(
|
|
|
131
136
|
# --------------- STORAGE ----------------------
|
|
132
137
|
|
|
133
138
|
|
|
134
|
-
def
|
|
135
|
-
|
|
139
|
+
def select_default_storage_by_instance_id(
|
|
140
|
+
instance_id: str, client: Client
|
|
141
|
+
) -> dict | None:
|
|
142
|
+
try:
|
|
143
|
+
data = (
|
|
144
|
+
client.table("storage")
|
|
145
|
+
.select("*")
|
|
146
|
+
.eq("instance_id", instance_id)
|
|
147
|
+
.eq("is_default", True)
|
|
148
|
+
.execute()
|
|
149
|
+
.data
|
|
150
|
+
)
|
|
151
|
+
except Exception:
|
|
152
|
+
return None
|
|
136
153
|
if len(data) == 0:
|
|
137
154
|
return None
|
|
138
155
|
return data[0]
|
|
@@ -36,14 +36,9 @@ def load_instance_settings(instance_settings_file: Path | None = None):
|
|
|
36
36
|
content = f.read()
|
|
37
37
|
raise SettingsEnvFileOutdated(
|
|
38
38
|
f"\n\n{error}\n\nYour instance settings file with\n\n{content}\nis invalid"
|
|
39
|
-
f" (likely outdated),
|
|
40
|
-
"
|
|
39
|
+
f" (likely outdated), see validation error. Please delete {instance_settings_file} &"
|
|
40
|
+
" reload (remote) or re-initialize (local) the instance with the same name & storage location."
|
|
41
41
|
) from error
|
|
42
|
-
if settings_store.id == "null":
|
|
43
|
-
raise ValueError(
|
|
44
|
-
"Your instance._id is undefined, please either load your instance from the"
|
|
45
|
-
f" hub or update {instance_settings_file} with a new id: {uuid4().hex}"
|
|
46
|
-
)
|
|
47
42
|
isettings = setup_instance_from_store(settings_store)
|
|
48
43
|
return isettings
|
|
49
44
|
|
|
@@ -18,7 +18,7 @@ from upath.implementations.cloud import CloudPath, S3Path # keep CloudPath!
|
|
|
18
18
|
from upath.implementations.local import LocalPath, PosixUPath, WindowsUPath
|
|
19
19
|
|
|
20
20
|
from ._aws_credentials import HOSTED_BUCKETS, get_aws_credentials_manager
|
|
21
|
-
from .hashing import b16_to_b64, hash_md5s_from_dir
|
|
21
|
+
from .hashing import HASH_LENGTH, b16_to_b64, hash_md5s_from_dir
|
|
22
22
|
|
|
23
23
|
if TYPE_CHECKING:
|
|
24
24
|
from .types import UPathStr
|
|
@@ -28,7 +28,7 @@ LocalPathClasses = (PosixUPath, WindowsUPath, LocalPath)
|
|
|
28
28
|
# also see https://gist.github.com/securifera/e7eed730cbe1ce43d0c29d7cd2d582f4
|
|
29
29
|
# ".gz" is not listed here as it typically occurs with another suffix
|
|
30
30
|
# the complete list is at lamindb.core.storage._suffixes
|
|
31
|
-
|
|
31
|
+
VALID_SIMPLE_SUFFIXES = {
|
|
32
32
|
#
|
|
33
33
|
# without readers
|
|
34
34
|
#
|
|
@@ -56,11 +56,8 @@ VALID_SUFFIXES = {
|
|
|
56
56
|
".zarr",
|
|
57
57
|
".json",
|
|
58
58
|
}
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
".spatialdata.zarr",
|
|
62
|
-
".ome.zarr",
|
|
63
|
-
}
|
|
59
|
+
# below gets updated within lamindb because it's frequently changing
|
|
60
|
+
VALID_COMPOSITE_SUFFIXES = {".anndata.zarr"}
|
|
64
61
|
|
|
65
62
|
TRAILING_SEP = (os.sep, os.altsep) if os.altsep is not None else os.sep
|
|
66
63
|
|
|
@@ -76,7 +73,7 @@ def extract_suffix_from_path(path: Path, arg_name: str | None = None) -> str:
|
|
|
76
73
|
return process_digits(path.suffix)
|
|
77
74
|
|
|
78
75
|
total_suffix = "".join(path.suffixes)
|
|
79
|
-
if total_suffix in
|
|
76
|
+
if total_suffix in VALID_SIMPLE_SUFFIXES:
|
|
80
77
|
return total_suffix
|
|
81
78
|
elif total_suffix.endswith(tuple(VALID_COMPOSITE_SUFFIXES)):
|
|
82
79
|
# below seems slow but OK for now
|
|
@@ -94,7 +91,7 @@ def extract_suffix_from_path(path: Path, arg_name: str | None = None) -> str:
|
|
|
94
91
|
# in COMPRESSION_SUFFIXES to detect something like .random.gz and then
|
|
95
92
|
# add ".random.gz" but concluded it's too dangerous it's safer to just
|
|
96
93
|
# use ".gz" in such a case
|
|
97
|
-
if path.suffixes[-2] in
|
|
94
|
+
if path.suffixes[-2] in VALID_SIMPLE_SUFFIXES:
|
|
98
95
|
suffix = "".join(path.suffixes[-2:])
|
|
99
96
|
msg += f"inferring: '{suffix}'"
|
|
100
97
|
# do not print a warning for things like .tar.gz, .fastq.gz
|
|
@@ -105,7 +102,7 @@ def extract_suffix_from_path(path: Path, arg_name: str | None = None) -> str:
|
|
|
105
102
|
msg += (
|
|
106
103
|
f"using only last suffix: '{suffix}' - if you want your composite"
|
|
107
104
|
" suffix to be recognized add it to"
|
|
108
|
-
" lamindb.core.storage.
|
|
105
|
+
" lamindb.core.storage.VALID_SIMPLE_SUFFIXES.add()"
|
|
109
106
|
)
|
|
110
107
|
if print_hint:
|
|
111
108
|
logger.hint(msg)
|
|
@@ -710,9 +707,9 @@ def get_stat_file_cloud(stat: dict) -> tuple[int, str, str]:
|
|
|
710
707
|
else:
|
|
711
708
|
stripped_etag, suffix = etag.split("-")
|
|
712
709
|
suffix = suffix.strip('"')
|
|
713
|
-
hash =
|
|
714
|
-
hash_type = "md5-
|
|
715
|
-
return size, hash, hash_type
|
|
710
|
+
hash = b16_to_b64(stripped_etag)
|
|
711
|
+
hash_type = f"md5-{suffix}" # this is the S3 chunk-hashing strategy
|
|
712
|
+
return size, hash[:HASH_LENGTH], hash_type
|
|
716
713
|
|
|
717
714
|
|
|
718
715
|
def get_stat_dir_cloud(path: UPath) -> tuple[int, str, str, int]:
|
|
@@ -2,9 +2,11 @@ from __future__ import annotations
|
|
|
2
2
|
|
|
3
3
|
import os
|
|
4
4
|
|
|
5
|
-
from laminhub_rest.dev
|
|
6
|
-
|
|
7
|
-
|
|
5
|
+
from laminhub_rest.dev import (
|
|
6
|
+
SupabaseResources,
|
|
7
|
+
remove_lamin_local_settings,
|
|
8
|
+
seed_local_test,
|
|
9
|
+
)
|
|
8
10
|
|
|
9
11
|
supabase_resources = SupabaseResources()
|
|
10
12
|
|
|
@@ -19,7 +19,7 @@ def test_extract_suffix_from_path():
|
|
|
19
19
|
("logs/date.log.123", ""), # digits are no valid suffixes
|
|
20
20
|
("salmon.merged.gene_counts.tsv", ".tsv"),
|
|
21
21
|
("salmon.merged.gene_counts.tsv.gz", ".tsv.gz"),
|
|
22
|
-
("filename.v1.1.0.
|
|
22
|
+
("filename.v1.1.0.anndata.zarr", ".anndata.zarr"),
|
|
23
23
|
]
|
|
24
24
|
for path, suffix in collection:
|
|
25
25
|
filepath = Path(path)
|
|
@@ -2,7 +2,21 @@ from __future__ import annotations
|
|
|
2
2
|
|
|
3
3
|
from lamindb_setup.core._aws_credentials import HOSTED_REGIONS
|
|
4
4
|
from lamindb_setup.core._settings_storage import get_storage_region
|
|
5
|
-
from lamindb_setup.core.upath import
|
|
5
|
+
from lamindb_setup.core.upath import (
|
|
6
|
+
UPath,
|
|
7
|
+
compute_file_tree,
|
|
8
|
+
get_stat_dir_cloud,
|
|
9
|
+
get_stat_file_cloud,
|
|
10
|
+
)
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
def test_get_stat_file_cloud_aws():
|
|
14
|
+
string_path = "s3://bionty-assets/df_all__ncbitaxon__2023-06-20__Organism.parquet"
|
|
15
|
+
path = UPath(string_path, anon=True)
|
|
16
|
+
size, hash, hash_type = get_stat_file_cloud(path.stat().as_info())
|
|
17
|
+
assert hash == "zQxieeCkNGNJWhPl3OfM8A"
|
|
18
|
+
assert hash_type == "md5-5"
|
|
19
|
+
assert size == 78148228
|
|
6
20
|
|
|
7
21
|
|
|
8
22
|
def test_get_stat_dir_cloud_aws():
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/docs/hub-cloud/02-connect-local-instance.ipynb
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/docs/hub-cloud/06-connect-hosted-instance.ipynb
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
|
{lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/docs/hub-prod/test-insufficient-user-info.ipynb
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
|
|
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
|
{lamindb_setup-0.76.2 → lamindb_setup-0.76.4}/tests/hub-prod/test_switch_and_fallback_env.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|