lamindb 0.69.6__tar.gz → 0.69.7__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-0.69.6 → lamindb-0.69.7}/PKG-INFO +3 -2
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/changelog.md +6 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/__init__.py +1 -1
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/_finish.py +1 -1
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/core/_mapped_collection.py +16 -7
- {lamindb-0.69.6 → lamindb-0.69.7}/pyproject.toml +2 -1
- lamindb-0.69.7/sub/lamin-cli/lamin_cli/__init__.py +3 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamin-cli/lamin_cli/__main__.py +5 -3
- lamindb-0.69.7/sub/lamin-cli/lamin_cli/_save.py +65 -0
- lamindb-0.69.7/sub/lamin-cli/tests/test_save_files.py +33 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/models.py +19 -9
- {lamindb-0.69.6 → lamindb-0.69.7}/tests/test_run_context.py +1 -1
- lamindb-0.69.6/sub/lamin-cli/lamin_cli/__init__.py +0 -3
- lamindb-0.69.6/sub/lamin-cli/lamin_cli/_save.py +0 -49
- {lamindb-0.69.6 → lamindb-0.69.7}/.github/workflows/build.yml +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/.github/workflows/latest-changes.jinja2 +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/.github/workflows/latest-changes.yml +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/.gitignore +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/.gitmodules +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/.pre-commit-config.yaml +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/LICENSE +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/README.md +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/annotate-for-developers.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/annotate.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/bio-registries.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/bionty-base.md +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/bionty.md +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/can-validate.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/data.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/faq/acid.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/faq/delete.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/faq/idempotency.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/faq/import-schema.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/faq/key.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/faq/reference-field.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/faq/setup.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/faq/test_notebooks.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/faq/track-run-inputs.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/faq/visibility.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/faq.md +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/features-lamindb.md +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/features-laminhub.md +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/guide.md +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/index.md +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/installation.md +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/introduction.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/lamin-utils.md +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/lamindb.md +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/meta.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/nbproject.md +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/query-search.md +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/readfcs.md +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/reference.md +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/schemas.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/setup.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/signup-login.md +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/storage/add-replace-stage.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/storage/anndata-accessor.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/storage/prepare-transfer-local-to-cloud.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/storage/test-files/iris.csv +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/storage/test-files/iris.data +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/storage/test-files/new_iris.csv +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/storage/test_notebooks.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/storage/transfer-local-to-cloud.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/storage/upload.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/storage.md +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/test_notebooks.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/track.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/transfer.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/tutorial.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/docs/tutorial2.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/_annotate.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/_artifact.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/_can_validate.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/_collection.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/_feature.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/_feature_set.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/_filter.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/_from_values.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/_is_versioned.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/_parents.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/_query_manager.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/_query_set.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/_registry.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/_run.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/_save.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/_storage.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/_transform.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/_ulabel.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/_utils.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/_view.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/core/__init__.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/core/_data.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/core/_feature_manager.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/core/_label_manager.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/core/_run_context.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/core/_settings.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/core/_sync_git.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/core/_track_environment.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/core/_transform_settings.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/core/_view_tree.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/core/datasets/__init__.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/core/datasets/_core.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/core/datasets/_fake.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/core/exceptions.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/core/fields.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/core/storage/__init__.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/core/storage/_anndata_sizes.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/core/storage/_backed_access.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/core/storage/_zarr.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/core/storage/file.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/core/storage/object.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/core/types.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/core/versioning.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/integrations/__init__.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/integrations/_vitessce.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/setup/__init__.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/lamindb/setup/core/__init__.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/noxfile.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/bionty/.github/workflows/build.yml +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/bionty/.github/workflows/latest-changes.jinja2 +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/bionty/.github/workflows/latest-changes.yml +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/bionty/.gitignore +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/bionty/.pre-commit-config.yaml +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/bionty/LICENSE +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/bionty/README.md +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/bionty/bionty/__init__.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/bionty/bionty/core/__init__.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/bionty/docs/changelog.md +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/bionty/docs/index.md +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/bionty/docs/reference.md +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/bionty/lamin-project.yaml +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/bionty/noxfile.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/bionty/pyproject.toml +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/bionty/tests/test_notebooks.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamin-cli/.gitignore +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamin-cli/.pre-commit-config.yaml +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamin-cli/README.md +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamin-cli/lamin_cli/_cache.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamin-cli/lamin_cli/_get.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamin-cli/lamin_cli/_migration.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamin-cli/pyproject.toml +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamin-cli/tests/conftest.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamin-cli/tests/notebooks/not-initialized.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamin-cli/tests/notebooks/with-title-and-initialized-consecutive.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamin-cli/tests/notebooks/with-title-and-initialized-non-consecutive.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamin-cli/tests/scripts/initialized.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamin-cli/tests/test_cli.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamin-cli/tests/test_get.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamin-cli/tests/test_migrate.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamin-cli/tests/test_save_notebooks.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamin-cli/tests/test_save_scripts.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/.github/workflows/build.yml +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/.github/workflows/latest-changes.jinja2 +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/.github/workflows/latest-changes.yml +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/.gitignore +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/.pre-commit-config.yaml +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/LICENSE +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/README.md +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/docs/changelog.md +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/docs/hub-cloud/01-init-on-prem-instance.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/docs/hub-cloud/02-connect-on-prem-instance.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/docs/hub-cloud/03-set-storage.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/docs/hub-cloud/04-test-bionty.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/docs/hub-cloud/05-init-hosted-instance.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/docs/hub-cloud/06-connect-hosted-instance.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/docs/hub-cloud/test-multi-session.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/docs/hub-cloud/test_notebooks.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/docs/hub-prod/test-cache-management.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/docs/hub-prod/test-cloud-sync.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/docs/hub-prod/test-connect-anonymously.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/docs/hub-prod/test-empty-init.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/docs/hub-prod/test-import-schema.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/docs/hub-prod/test-insufficient-user-info.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/docs/hub-prod/test-invalid-schema.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/docs/hub-prod/test-sqlite-lock.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/docs/hub-prod/test_notebooks2.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/docs/index.md +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/docs/notebooks.md +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/docs/reference.md +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/lamindb_setup/__init__.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/lamindb_setup/_add_remote_storage.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/lamindb_setup/_cache.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/lamindb_setup/_check.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/lamindb_setup/_check_setup.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/lamindb_setup/_close.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/lamindb_setup/_connect_instance.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/lamindb_setup/_delete.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/lamindb_setup/_django.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/lamindb_setup/_exportdb.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/lamindb_setup/_importdb.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/lamindb_setup/_init_instance.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/lamindb_setup/_migrate.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/lamindb_setup/_register_instance.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/lamindb_setup/_schema.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/lamindb_setup/_setup_user.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/lamindb_setup/_silence_loggers.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/lamindb_setup/core/__init__.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/lamindb_setup/core/_aws_storage.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/lamindb_setup/core/_deprecated.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/lamindb_setup/core/_docs.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/lamindb_setup/core/_hub_client.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/lamindb_setup/core/_hub_core.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/lamindb_setup/core/_hub_crud.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/lamindb_setup/core/_hub_utils.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/lamindb_setup/core/_settings.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/lamindb_setup/core/_settings_instance.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/lamindb_setup/core/_settings_load.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/lamindb_setup/core/_settings_save.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/lamindb_setup/core/_settings_storage.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/lamindb_setup/core/_settings_store.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/lamindb_setup/core/_settings_user.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/lamindb_setup/core/_setup_bionty_sources.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/lamindb_setup/core/cloud_sqlite_locker.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/lamindb_setup/core/django.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/lamindb_setup/core/exceptions.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/lamindb_setup/core/hashing.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/lamindb_setup/core/types.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/lamindb_setup/core/upath.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/noxfile.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/pyproject.toml +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/tests/hub-cloud/test_connect_instance.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/tests/hub-cloud/test_delete_instance.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/tests/hub-cloud/test_init_instance.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/tests/hub-cloud/test_login.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/tests/hub-cloud/test_migrate.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/tests/hub-cloud/test_set_storage.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/tests/hub-local/conftest.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/tests/hub-local/test_all.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/tests/hub-local/test_check_s3_storage_empty.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/tests/hub-local/test_hosted_instance_deletion_gate.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/tests/hub-prod/conftest.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/tests/hub-prod/test_auto_connect.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/tests/hub-prod/test_django.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/tests/hub-prod/test_switch_and_fallback_env.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/tests/hub-prod/test_upath.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/tests/storage/test_hashing.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/tests/storage/test_storage_access.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/tests/storage/test_storage_basis.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lamindb-setup/tests/storage/test_storage_stats.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/.github/workflows/build.yml +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/.github/workflows/latest-changes.jinja2 +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/.github/workflows/latest-changes.yml +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/.gitignore +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/.pre-commit-config.yaml +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/LICENSE +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/README.md +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/docs/changelog.md +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/docs/index.md +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/docs/reference.md +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/lamin-project.yaml +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/lnschema_bionty/__init__.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/lnschema_bionty/_bionty.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/lnschema_bionty/core/__init__.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/lnschema_bionty/core/_bionty.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/lnschema_bionty/core/_settings.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/lnschema_bionty/ids.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/lnschema_bionty/migrations/0001_initial.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/lnschema_bionty/migrations/0001_initial_squashed_0016.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/lnschema_bionty/migrations/0002_rename_gene_type_gene_biotype_and_more.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/lnschema_bionty/migrations/0003_alter_biontysource_entity_alter_biontysource_source_and_more.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/lnschema_bionty/migrations/0004_alter_cellline_bionty_source_and_more.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/lnschema_bionty/migrations/0005_rename_short_name_cellline_abbr_and_more.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/lnschema_bionty/migrations/0006_alter_biontysource_options_alter_cellline_options_and_more.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/lnschema_bionty/migrations/0007_rename_readout_experimental_factor.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/lnschema_bionty/migrations/0008_remove_gene_hgnc_id_remove_gene_mgi_id_and_more.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/lnschema_bionty/migrations/0009_alter_gene_ensembl_gene_id.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/lnschema_bionty/migrations/0010_alter_species_name.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/lnschema_bionty/migrations/0011_cellline_datasets_cellmarker_datasets_and_more.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/lnschema_bionty/migrations/0012_gene_stable_id.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/lnschema_bionty/migrations/0013_alter_cellmarker_species_alter_gene_species_and_more.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/lnschema_bionty/migrations/0014_ethnicity_developmentalstage.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/lnschema_bionty/migrations/0015_migrate_to_integer_pks.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/lnschema_bionty/migrations/0016_export_legacy_data.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/lnschema_bionty/migrations/0017_import_legacy_data.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/lnschema_bionty/migrations/0018_organism_rename_species_biontysource_organism_and_more.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/lnschema_bionty/migrations/0019_rename_taxon_id_organism_ontology_id_and_more.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/lnschema_bionty/migrations/0020_alter_organism_bionty_source.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/lnschema_bionty/migrations/0021_rename_files_cellline_artifacts_and_more.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/lnschema_bionty/migrations/0022_rename_datasets_cellline_collections_and_more.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/lnschema_bionty/migrations/0023_rename_publicsource_encode_uid.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/lnschema_bionty/migrations/__init__.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/lnschema_bionty/models.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/noxfile.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/pyproject.toml +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-bionty/tests/test_integrity.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/.github/workflows/build.yml +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/.github/workflows/latest-changes.jinja2 +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/.github/workflows/latest-changes.yml +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/.gitignore +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/.pre-commit-config.yaml +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/CHANGELOG.md +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/LICENSE +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/README.md +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/__init__.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/ids.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0001_initial.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0001_initial_squashed_0023.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0002_alter_user_name.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0003_alter_storage_region_alter_transform_short_name.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0004_rename_folder_tag_alter_project_folders.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0005_alter_run_inputs_delete_runinput.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0006_feature_dataset.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0007_feature_synonyms_featureset_field_and_more.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0008_file_hash_type_transform_parents.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0009_remove_featureset_files_feature_unit_and_more.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0010_dataset_categories_file_categories.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0011_label_remove_tag_created_by_remove_tag_parents_and_more.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0012_remove_label_ref_id_remove_label_ref_orm_and_more.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0013_remove_feature_labels_orm_and_more.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0014_rename_ref_field_featureset_registry.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0015_file_initial_version_file_version.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0016_dataset_input_of_dataset_run_dataset_transform_and_more.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0017_dataset_initial_version_dataset_version.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0018_rename_datasetlabel_datasetulabel_and_more.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0019_dataset_reference_dataset_reference_type_and_more.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0020_run_report_transform_latest_report_and_more.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0021_dataset_storage_alter_dataset_file.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0022_migrate_to_integer_pks.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0023_export_legacy_data.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0024_import_legacy_data.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0025_remove_user_email.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0026_dataset_visibility_file_visibility.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0027_file_key_is_virtual.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0028_alter_dataset_visibility_alter_file_visibility.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0029_remove_feature_modality_remove_featureset_modality_and_more.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0030_alter_dataset_visibility_alter_file_visibility.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0031_rename_file_to_artifact.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0032_remove_dataset_storage.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0033_alter_artifact_unique_together_artifact_n_objects_and_more.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0034_run_environment.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0035_remove_artifact_initial_version_and_more.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0036_storage_description.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0037_rename_dataset_to_collection.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0038_alter_collection_artifact_alter_collection_artifacts_and_more.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0039_remove_collection_artifacts_collectionartifact_and_more.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0040_alter_transform_type.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0041_remove_transform_short_name_transform_description_and_more.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0042_rename_run_at_run_started_at_run_finished_at.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/0043_run_json.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/migrations/__init__.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/mocks.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/types.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/lnschema_core/users.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/noxfile.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/pyproject.toml +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/tests/test_integrity.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/sub/lnschema-core/tests/test_types.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/tests/conftest.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/tests/notebooks/initialized-with-nbproject.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/tests/notebooks/no-title.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/tests/notebooks/not-initialized.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/tests/notebooks/with-title-initialized-consecutive-finish-not-last-cell.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/tests/notebooks/with-title-initialized-consecutive-finish.ipynb +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/tests/test_annotate.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/tests/test_artifact.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/tests/test_cache.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/tests/test_can_validate.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/tests/test_collection.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/tests/test_data.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/tests/test_db.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/tests/test_delete.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/tests/test_feature.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/tests/test_feature_manager.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/tests/test_feature_set.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/tests/test_from_values.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/tests/test_label_manager.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/tests/test_load.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/tests/test_manager.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/tests/test_notebooks.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/tests/test_parents.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/tests/test_queryset.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/tests/test_registry.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/tests/test_run.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/tests/test_save.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/tests/test_settings.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/tests/test_storage.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/tests/test_transfer.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/tests/test_transform.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/tests/test_uid.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/tests/test_ulabel.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/tests/test_versioning.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/tests/test_view.py +0 -0
- {lamindb-0.69.6 → lamindb-0.69.7}/tests/test_visibility.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: lamindb
|
3
|
-
Version: 0.69.
|
3
|
+
Version: 0.69.7
|
4
4
|
Summary: A data framework for biology.
|
5
5
|
Author-email: Lamin Labs <open-source@lamin.ai>
|
6
6
|
Requires-Python: >=3.8
|
@@ -12,12 +12,13 @@ Classifier: Programming Language :: Python :: 3.11
|
|
12
12
|
Requires-Dist: lnschema_core==0.64.4
|
13
13
|
Requires-Dist: lamindb_setup==0.68.4
|
14
14
|
Requires-Dist: lamin_utils==0.13.1
|
15
|
-
Requires-Dist: lamin_cli==0.
|
15
|
+
Requires-Dist: lamin_cli==0.12.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
20
|
Requires-Dist: anndata>=0.8.0,<0.10.6
|
21
|
+
Requires-Dist: scipy<1.13.0rc1
|
21
22
|
Requires-Dist: fsspec
|
22
23
|
Requires-Dist: pandas
|
23
24
|
Requires-Dist: graphviz
|
@@ -1,11 +1,17 @@
|
|
1
1
|
# Changelog
|
2
2
|
|
3
|
+
|
3
4
|
```{eval-rst}
|
4
5
|
.. role:: small
|
5
6
|
```
|
6
7
|
|
7
8
|
## 0.69
|
8
9
|
|
10
|
+
### 0.69.7 {small}`2024-04-03`
|
11
|
+
|
12
|
+
- ✨ Add ability to upload arbitrary files or folders from CLI [PR](https://github.com/laminlabs/lamindb/pull/1545) [@falexwolf](https://github.com/falexwolf)
|
13
|
+
- 🐛 Fix anndata backed mode incompatibility with scipy 1.13.0 f
|
14
|
+
|
9
15
|
### 0.69.6 {small}`2024-04-02`
|
10
16
|
|
11
17
|
- 🚑️ Temp fix region for non-hosted buckets [PR](https://github.com/laminlabs/lamindb/pull/1543) [@sunnyosun](https://github.com/sunnyosun)
|
@@ -34,7 +34,7 @@ def finish(i_saved_the_notebook: bool = False):
|
|
34
34
|
|
35
35
|
if not i_saved_the_notebook and not ln_setup._TESTING:
|
36
36
|
logger.error(
|
37
|
-
"
|
37
|
+
"Please save the notebook, pass `i_saved_the_notebook=True`, and re-run this cell."
|
38
38
|
)
|
39
39
|
return None
|
40
40
|
notebook_content = read_notebook(run_context.path) # type: ignore
|
@@ -45,19 +45,28 @@ class _Connect:
|
|
45
45
|
class MappedCollection:
|
46
46
|
"""Map-style collection for use in data loaders.
|
47
47
|
|
48
|
-
This
|
48
|
+
This class virtually concatenates `AnnData` arrays as a `pytorch map-style dataset
|
49
|
+
<https://pytorch.org/docs/stable/data.html#map-style-datasets>`__.
|
49
50
|
|
50
|
-
|
51
|
+
If your `AnnData` collection is in the cloud, move them into a local cache
|
52
|
+
first for faster access.
|
51
53
|
|
52
54
|
.. note::
|
53
55
|
|
54
|
-
|
55
|
-
|
56
|
+
For a guide, see :doc:`docs:scrna5`.
|
57
|
+
|
58
|
+
For more convenient use within :class:`~lamindb.core.MappedCollection`,
|
59
|
+
see :meth:`~lamindb.Collection.mapped`.
|
60
|
+
|
61
|
+
This currently only works for collections of `AnnData` objects.
|
62
|
+
|
63
|
+
The implementation was influenced by the `SCimilarity
|
64
|
+
<https://github.com/Genentech/scimilarity>`__ data loader.
|
65
|
+
|
56
66
|
|
57
67
|
Args:
|
58
|
-
path_list: A list of paths to `AnnData` objects stored in
|
59
|
-
label_keys: Columns of the ``.obs`` slot
|
60
|
-
features storing labels.
|
68
|
+
path_list: A list of paths to `AnnData` objects stored in `.h5ad` or `.zarr` formats.
|
69
|
+
label_keys: Columns of the ``.obs`` slot that store labels.
|
61
70
|
join: `"inner"` or `"outer"` virtual joins. If ``None`` is passed,
|
62
71
|
does not join.
|
63
72
|
encode_labels: Encode labels into integers.
|
@@ -19,13 +19,14 @@ dependencies = [
|
|
19
19
|
"lnschema_core==0.64.4",
|
20
20
|
"lamindb_setup==0.68.4",
|
21
21
|
"lamin_utils==0.13.1",
|
22
|
-
"lamin_cli==0.
|
22
|
+
"lamin_cli==0.12.0",
|
23
23
|
# others
|
24
24
|
"rapidfuzz",
|
25
25
|
"pyarrow",
|
26
26
|
"typing_extensions!=4.6.0",
|
27
27
|
"python-dateutil",
|
28
28
|
"anndata>=0.8.0,<0.10.6", # will upgrade to new anndata releases
|
29
|
+
"scipy<1.13.0rc1", # anndata backed is incompatible otherwise
|
29
30
|
"fsspec",
|
30
31
|
"pandas",
|
31
32
|
"graphviz",
|
@@ -143,11 +143,13 @@ def schema(action: str):
|
|
143
143
|
@click.argument(
|
144
144
|
"filepath", type=click.Path(exists=True, dir_okay=False, file_okay=True)
|
145
145
|
)
|
146
|
-
|
147
|
-
|
146
|
+
@click.option("--key", type=str, default=None)
|
147
|
+
@click.option("--description", type=str, default=None)
|
148
|
+
def save(filepath: str, key: str, description: str):
|
149
|
+
"""Save file or folder."""
|
148
150
|
from lamin_cli._save import save_from_filepath_cli
|
149
151
|
|
150
|
-
if save_from_filepath_cli(filepath) is not None:
|
152
|
+
if save_from_filepath_cli(filepath, key, description) is not None:
|
151
153
|
sys.exit(1)
|
152
154
|
|
153
155
|
|
@@ -0,0 +1,65 @@
|
|
1
|
+
from pathlib import Path
|
2
|
+
from typing import Optional, Union
|
3
|
+
import lamindb_setup as ln_setup
|
4
|
+
from lamin_utils import logger
|
5
|
+
|
6
|
+
|
7
|
+
def save_from_filepath_cli(
|
8
|
+
filepath: Union[str, Path], key: Optional[str], description: Optional[str]
|
9
|
+
) -> Optional[str]:
|
10
|
+
if not isinstance(filepath, Path):
|
11
|
+
filepath = Path(filepath)
|
12
|
+
|
13
|
+
# this will be gone once we get rid of lamin load or enable loading multiple
|
14
|
+
# instances sequentially
|
15
|
+
auto_connect_state = ln_setup.settings.auto_connect
|
16
|
+
ln_setup.settings.auto_connect = True
|
17
|
+
|
18
|
+
import lamindb as ln
|
19
|
+
from lamindb.core._run_context import get_stem_uid_and_version_from_file
|
20
|
+
from lamindb._finish import save_run_context_core
|
21
|
+
|
22
|
+
ln_setup.settings.auto_connect = auto_connect_state
|
23
|
+
|
24
|
+
if filepath.suffix not in {".py", ".ipynb"}:
|
25
|
+
if key is None and description is None:
|
26
|
+
logger.error("Please pass a key or description via --key or --description")
|
27
|
+
return "missing-key-or-description"
|
28
|
+
artifact = ln.Artifact(filepath, key=key, description=description)
|
29
|
+
artifact.save()
|
30
|
+
slug = ln_setup.settings.instance.slug
|
31
|
+
logger.important(f"saved: {artifact}")
|
32
|
+
logger.important(f"storage path: {artifact.path}")
|
33
|
+
if ln_setup.settings.instance.is_remote:
|
34
|
+
logger.important(f"go to: https://lamin.ai/{slug}/artifact/{artifact.uid}")
|
35
|
+
if ln_setup.settings.storage.type == "s3":
|
36
|
+
logger.important(f"storage url: {artifact.path.to_url()}")
|
37
|
+
return None
|
38
|
+
else:
|
39
|
+
# consider notebooks & scripts a transform
|
40
|
+
stem_uid, transform_version = get_stem_uid_and_version_from_file(filepath)
|
41
|
+
# the corresponding transform family in the transform table
|
42
|
+
transform_family = ln.Transform.filter(uid__startswith=stem_uid).all()
|
43
|
+
if len(transform_family) == 0:
|
44
|
+
logger.error(
|
45
|
+
f"Did not find stem uid '{stem_uid}'"
|
46
|
+
" in Transform registry. Did you run ln.track()?"
|
47
|
+
)
|
48
|
+
return "not-tracked-in-transform-registry"
|
49
|
+
# the specific version
|
50
|
+
transform = transform_family.filter(version=transform_version).one()
|
51
|
+
# latest run of this transform by user
|
52
|
+
run = ln.Run.filter(transform=transform).order_by("-started_at").first()
|
53
|
+
if run.created_by.id != ln_setup.settings.user.id:
|
54
|
+
response = input(
|
55
|
+
"You are trying to save a transform created by another user: Source and"
|
56
|
+
" report files will be tagged with *your* user id. Proceed? (y/n)"
|
57
|
+
)
|
58
|
+
if response != "y":
|
59
|
+
return "aborted-save-notebook-created-by-different-user"
|
60
|
+
return save_run_context_core(
|
61
|
+
run=run,
|
62
|
+
transform=transform,
|
63
|
+
filepath=filepath,
|
64
|
+
transform_family=transform_family,
|
65
|
+
)
|
@@ -0,0 +1,33 @@
|
|
1
|
+
import subprocess
|
2
|
+
from pathlib import Path
|
3
|
+
|
4
|
+
test_file = Path(__file__).parent.parent.resolve() / ".gitignore"
|
5
|
+
|
6
|
+
|
7
|
+
def test_save_file():
|
8
|
+
filepath = test_file
|
9
|
+
|
10
|
+
# neither key nor description
|
11
|
+
result = subprocess.run(
|
12
|
+
f"lamin save {filepath}",
|
13
|
+
shell=True,
|
14
|
+
capture_output=True,
|
15
|
+
)
|
16
|
+
print(result.stdout.decode())
|
17
|
+
print(result.stderr.decode())
|
18
|
+
assert (
|
19
|
+
"Please pass a key or description via --key or --description"
|
20
|
+
in result.stdout.decode()
|
21
|
+
)
|
22
|
+
assert result.returncode == 1
|
23
|
+
|
24
|
+
result = subprocess.run(
|
25
|
+
f"lamin save {filepath} --key mytest",
|
26
|
+
shell=True,
|
27
|
+
capture_output=True,
|
28
|
+
)
|
29
|
+
print(result.stdout.decode())
|
30
|
+
print(result.stderr.decode())
|
31
|
+
assert "key='mytest'" in result.stdout.decode()
|
32
|
+
assert "storage path:" in result.stdout.decode()
|
33
|
+
assert result.returncode == 0
|
@@ -740,9 +740,9 @@ class User(Registry, CanValidate):
|
|
740
740
|
class Storage(Registry):
|
741
741
|
"""Storage locations.
|
742
742
|
|
743
|
-
|
743
|
+
A storage location can be a local or remote directory/folder or an entire S3/GCP bucket.
|
744
744
|
|
745
|
-
|
745
|
+
This registry is auto-managed and read-only.
|
746
746
|
|
747
747
|
See Also:
|
748
748
|
Default storage: :attr:`~lamindb.core.Settings.storage`
|
@@ -828,10 +828,10 @@ class Storage(Registry):
|
|
828
828
|
|
829
829
|
|
830
830
|
class Transform(Registry, HasParents, IsVersioned):
|
831
|
-
"""
|
831
|
+
"""Transformations of artifacts & collections.
|
832
832
|
|
833
833
|
A transform can refer to a script, a notebook, or a pipeline. If you execute
|
834
|
-
a
|
834
|
+
a transform, you generate a run of a transform
|
835
835
|
(:class:`~lamindb.Run`). A run has input and output data.
|
836
836
|
|
837
837
|
A pipeline is typically created with a workflow tool (Nextflow, Snakemake,
|
@@ -839,7 +839,7 @@ class Transform(Registry, HasParents, IsVersioned):
|
|
839
839
|
repository.
|
840
840
|
|
841
841
|
Transforms are versioned so that a given transform maps 1:1 to a specific
|
842
|
-
version of
|
842
|
+
version of code. If you switch on
|
843
843
|
:attr:`~lamindb.core.Settings.sync_git_repo`, any script-like transform is
|
844
844
|
synced its hashed state in a git repository.
|
845
845
|
|
@@ -1421,7 +1421,7 @@ class FeatureSet(Registry):
|
|
1421
1421
|
|
1422
1422
|
|
1423
1423
|
class Artifact(Registry, Data, IsTree, IsVersioned):
|
1424
|
-
"""Artifacts: files, folders
|
1424
|
+
"""Artifacts: files, folders & arrays in storage.
|
1425
1425
|
|
1426
1426
|
Args:
|
1427
1427
|
path: `UPathStr` A path to a local or remote folder or file.
|
@@ -2033,10 +2033,20 @@ class Collection(Registry, Data, IsVersioned):
|
|
2033
2033
|
stream: bool = False,
|
2034
2034
|
is_run_input: Optional[bool] = None,
|
2035
2035
|
) -> "MappedCollection":
|
2036
|
-
"""
|
2036
|
+
"""Return a map-style dataset.
|
2037
2037
|
|
2038
|
-
|
2039
|
-
|
2038
|
+
Returns a `pytorch map-style dataset
|
2039
|
+
<https://pytorch.org/docs/stable/data.html#map-style-datasets>`__ by
|
2040
|
+
virtually concatenating `AnnData` arrays.
|
2041
|
+
|
2042
|
+
If your `AnnData` collection is in the cloud, move them into a local
|
2043
|
+
cache first via :meth:`~lamindb.Collection.stage`.
|
2044
|
+
|
2045
|
+
.. note::
|
2046
|
+
|
2047
|
+
For a guide, see :doc:`docs:scrna5`.
|
2048
|
+
|
2049
|
+
This method currently only works for collections of `AnnData` artifacts.
|
2040
2050
|
|
2041
2051
|
Args:
|
2042
2052
|
label_keys: Columns of the ``.obs`` slot - the names of the metadata
|
@@ -93,6 +93,6 @@ def test_sync_git_repo():
|
|
93
93
|
transform = ln.Transform.filter(name="initialized.py").one()
|
94
94
|
assert (
|
95
95
|
transform.reference
|
96
|
-
== "https://github.com/laminlabs/lamin-cli/blob/
|
96
|
+
== "https://github.com/laminlabs/lamin-cli/blob/5a6af4a4f4936a1ff3b11d3420aa8f6a5a72c677/tests/scripts/initialized.py"
|
97
97
|
)
|
98
98
|
assert transform.reference_type == "url"
|
@@ -1,49 +0,0 @@
|
|
1
|
-
from pathlib import Path
|
2
|
-
from typing import Optional, Union
|
3
|
-
import lamindb_setup as ln_setup
|
4
|
-
from lamin_utils import logger
|
5
|
-
|
6
|
-
|
7
|
-
def save_from_filepath_cli(filepath: Union[str, Path]) -> Optional[str]:
|
8
|
-
if not isinstance(filepath, Path):
|
9
|
-
filepath = Path(filepath)
|
10
|
-
|
11
|
-
# this will be gone once we get rid of lamin load or enable loading multiple
|
12
|
-
# instances sequentially
|
13
|
-
auto_connect_state = ln_setup.settings.auto_connect
|
14
|
-
ln_setup.settings.auto_connect = True
|
15
|
-
|
16
|
-
import lamindb as ln
|
17
|
-
from lamindb.core._run_context import get_stem_uid_and_version_from_file
|
18
|
-
from lamindb._finish import save_run_context_core
|
19
|
-
|
20
|
-
ln_setup.settings.auto_connect = auto_connect_state
|
21
|
-
|
22
|
-
stem_uid, transform_version = get_stem_uid_and_version_from_file(filepath)
|
23
|
-
|
24
|
-
# the corresponding transform family in the transform table
|
25
|
-
transform_family = ln.Transform.filter(uid__startswith=stem_uid).all()
|
26
|
-
if len(transform_family) == 0:
|
27
|
-
logger.error(
|
28
|
-
f"Did not find stem uid '{stem_uid}'"
|
29
|
-
" in Transform registry. Did you run ln.track()?"
|
30
|
-
)
|
31
|
-
return "not-tracked-in-transform-registry"
|
32
|
-
# the specific version
|
33
|
-
transform = transform_family.filter(version=transform_version).one()
|
34
|
-
# latest run of this transform by user
|
35
|
-
run = ln.Run.filter(transform=transform).order_by("-started_at").first()
|
36
|
-
if run.created_by.id != ln_setup.settings.user.id:
|
37
|
-
response = input(
|
38
|
-
"You are trying to save a transform created by another user: Source and"
|
39
|
-
" report files will be tagged with *your* user id. Proceed? (y/n)"
|
40
|
-
)
|
41
|
-
if response != "y":
|
42
|
-
return "aborted-save-notebook-created-by-different-user"
|
43
|
-
|
44
|
-
return save_run_context_core(
|
45
|
-
run=run,
|
46
|
-
transform=transform,
|
47
|
-
filepath=filepath,
|
48
|
-
transform_family=transform_family,
|
49
|
-
)
|
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
|
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
|