lamindb 0.76.9__tar.gz → 0.76.10__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.76.9 → lamindb-0.76.10}/PKG-INFO +8 -8
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/bio-registries.ipynb +1 -1
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/faq/idempotency.ipynb +1 -2
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/faq/keep-artifacts-local.ipynb +1 -2
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/faq/key.ipynb +1 -2
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/faq/setup.ipynb +3 -4
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/faq/track-run-inputs.ipynb +2 -3
- lamindb-0.76.10/docs/scripts/run-track-with-params.py +17 -0
- lamindb-0.76.10/docs/scripts/synced-with-git.py +6 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/setup.ipynb +14 -20
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/signup-login.md +1 -1
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/storage/prepare-transfer-local-to-cloud.ipynb +1 -1
- lamindb-0.76.10/docs/track.ipynb +364 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/transfer.ipynb +71 -2
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/tutorial.ipynb +8 -37
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/__init__.py +15 -14
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/_artifact.py +2 -1
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/_can_validate.py +46 -4
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/_collection.py +2 -1
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/_curate.py +3 -1
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/_feature_set.py +3 -1
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/_finish.py +11 -17
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/_from_values.py +110 -89
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/_query_set.py +3 -1
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/_record.py +81 -62
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/_run.py +3 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/_save.py +3 -1
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/_transform.py +9 -6
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/core/_context.py +94 -78
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/core/_data.py +113 -41
- lamindb-0.76.10/lamindb/core/_django.py +209 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/core/_feature_manager.py +140 -13
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/core/_label_manager.py +59 -23
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/core/_mapped_collection.py +1 -1
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/core/_settings.py +2 -1
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/core/exceptions.py +9 -9
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/core/storage/_anndata_accessor.py +2 -1
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/core/versioning.py +2 -14
- {lamindb-0.76.9 → lamindb-0.76.10}/noxfile.py +3 -3
- {lamindb-0.76.9 → lamindb-0.76.10}/pyproject.toml +7 -7
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/__init__.py +11 -10
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/_bionty.py +6 -1
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/base/entities/_gene.py +22 -2
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/models.py +4 -3
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/pyproject.toml +1 -0
- lamindb-0.76.10/sub/lamin-cli/lamin_cli/__init__.py +3 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamin-cli/lamin_cli/__main__.py +111 -94
- lamindb-0.76.10/sub/lamin-cli/lamin_cli/_load.py +110 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamin-cli/lamin_cli/_migration.py +1 -1
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamin-cli/lamin_cli/_save.py +20 -17
- lamindb-0.76.10/sub/lamin-cli/lamin_cli/_settings.py +41 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamin-cli/tests/notebooks/with-title-and-initialized-consecutive.ipynb +1 -2
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamin-cli/tests/notebooks/with-title-and-initialized-non-consecutive.ipynb +1 -1
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamin-cli/tests/scripts/run-track-and-finish-sync-git.py +2 -2
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamin-cli/tests/scripts/run-track-and-finish.py +3 -2
- lamindb-0.76.10/sub/lamin-cli/tests/scripts/run-track-with-params.py +21 -0
- lamindb-0.76.9/sub/lamin-cli/tests/test_get.py → lamindb-0.76.10/sub/lamin-cli/tests/test_load.py +13 -9
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamin-cli/tests/test_migrate.py +4 -2
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamin-cli/tests/test_save_notebooks.py +7 -8
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamin-cli/tests/test_save_scripts.py +89 -12
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/__init__.py +1 -2
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/_check_setup.py +20 -7
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/_connect_instance.py +6 -12
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/_init_instance.py +5 -11
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/_migrate.py +3 -3
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/core/_hub_client.py +1 -1
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/core/_hub_core.py +8 -4
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/core/_settings.py +9 -2
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/core/_settings_user.py +2 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/core/django.py +1 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/noxfile.py +1 -1
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/pyproject.toml +2 -1
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/lnschema_core/__init__.py +1 -1
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/lnschema_core/models.py +62 -54
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/wetlab/pyproject.toml +1 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/wetlab/wetlab/__init__.py +6 -14
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/core/notebooks/duplicate/with-title-initialized-consecutive-finish.ipynb +3 -4
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/core/notebooks/no-title.ipynb +1 -3
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/core/notebooks/not-initialized.ipynb +3 -4
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/core/notebooks/with-title-initialized-consecutive-finish-not-last-cell.ipynb +3 -3
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/core/notebooks/with-title-initialized-consecutive-finish.ipynb +3 -4
- lamindb-0.76.10/tests/core/scripts/duplicate1/script-to-test-versioning.py +4 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/core/scripts/duplicate2/script-to-test-versioning.py +1 -3
- lamindb-0.76.10/tests/core/scripts/duplicate3/script-to-test-versioning.py +4 -0
- lamindb-0.76.10/tests/core/scripts/script-to-test-filename-change.py +3 -0
- lamindb-0.76.10/tests/core/scripts/script-to-test-versioning.py +4 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/core/test_artifact.py +2 -2
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/core/test_context.py +6 -12
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/core/test_feature_manager.py +0 -1
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/core/test_record.py +1 -1
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/core/test_versioning.py +0 -12
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/storage/test_transfer.py +35 -0
- lamindb-0.76.9/docs/track.ipynb +0 -255
- lamindb-0.76.9/sub/lamin-cli/lamin_cli/__init__.py +0 -3
- lamindb-0.76.9/sub/lamin-cli/lamin_cli/_get.py +0 -82
- lamindb-0.76.9/tests/core/scripts/duplicate1/script-to-test-versioning.py +0 -5
- lamindb-0.76.9/tests/core/scripts/duplicate3/script-to-test-versioning.py +0 -6
- lamindb-0.76.9/tests/core/scripts/script-to-test-filename-change.py +0 -4
- lamindb-0.76.9/tests/core/scripts/script-to-test-versioning.py +0 -5
- {lamindb-0.76.9 → lamindb-0.76.10}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/.github/ISSUE_TEMPLATE/usage_question.yml +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/.github/workflows/build.yml +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/.github/workflows/doc-changes.yml +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/.gitignore +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/.gitmodules +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/.pre-commit-config.yaml +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/CONTRIBUTING.md +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/LICENSE +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/README.md +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/api.md +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/arrays.ipynb +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/bionty.md +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/changelog.md +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/curate-any.ipynb +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/curate-df.ipynb +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/curate.md +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/faq/acid.ipynb +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/faq/delete.ipynb +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/faq/import-schema.ipynb +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/faq/reference-field.ipynb +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/faq/test_notebooks.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/faq/visibility.ipynb +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/faq.md +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/guide.md +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/includes/features-lamindb.md +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/includes/features-laminhub.md +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/includes/installation.md +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/index.md +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/introduction.ipynb +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/lamindb.md +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/laminr.md +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/query-search.md +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/registries.ipynb +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/rest.md +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/schemas.ipynb +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/storage/add-replace-cache.ipynb +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/storage/anndata-accessor.ipynb +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/storage/test-files/iris.csv +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/storage/test-files/iris.data +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/storage/test-files/new_iris.csv +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/storage/test_notebooks.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/storage/transfer-local-to-cloud.ipynb +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/storage/upload.ipynb +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/storage/vitessce.ipynb +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/storage.md +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/test_notebooks.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/tutorial2.ipynb +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/docs/wetlab.md +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/_feature.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/_filter.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/_is_versioned.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/_parents.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/_query_manager.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/_storage.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/_ulabel.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/_utils.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/_view.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/core/__init__.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/core/_sync_git.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/core/_track_environment.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/core/datasets/__init__.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/core/datasets/_core.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/core/datasets/_fake.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/core/fields.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/core/loaders.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/core/schema.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/core/storage/__init__.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/core/storage/_anndata_sizes.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/core/storage/_backed_access.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/core/storage/_tiledbsoma.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/core/storage/_valid_suffixes.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/core/storage/_zarr.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/core/storage/objects.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/core/storage/paths.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/core/subsettings/__init__.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/core/subsettings/_creation_settings.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/core/subsettings/_transform_settings.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/core/types.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/integrations/__init__.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/integrations/_vitessce.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/setup/__init__.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/lamindb/setup/core/__init__.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/.github/workflows/build.yml +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/.github/workflows/doc-changes.yml +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/.github/workflows/update_ontologies.yml +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/.gitignore +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/.pre-commit-config.yaml +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/LICENSE +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/README.md +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/base/__init__.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/base/_display_sources.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/base/_ontology.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/base/_public_ontology.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/base/_settings.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/base/_sync_sources.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/base/dev/__init__.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/base/dev/_handle_sources.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/base/dev/_io.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/base/dev/_md5.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/base/entities/__init__.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/base/entities/_bfxpipeline.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/base/entities/_biosample.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/base/entities/_cellline.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/base/entities/_cellmarker.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/base/entities/_celltype.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/base/entities/_developmentalstage.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/base/entities/_disease.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/base/entities/_drug.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/base/entities/_ethnicity.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/base/entities/_experimentalfactor.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/base/entities/_organism.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/base/entities/_pathway.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/base/entities/_phenotype.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/base/entities/_protein.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/base/entities/_shared_docstrings.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/base/entities/_tissue.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/base/scripts/bfxpipelines_info/custom_pipelines.json +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/base/scripts/check_ontologies_reachable.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/base/scripts/determine_md5s.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/base/scripts/generate_bfxpipelines.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/base/scripts/update_new_ontologies.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/base/scripts/upload_new_ontologies.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/base/sources.yaml +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/core/__init__.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/core/_add_ontology.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/core/_bionty.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/core/_settings.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/ids.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/migrations/0023_rename_publicsource_encode_uid.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/migrations/0024_remove_cellline_collections_and_more.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/migrations/0025_artifactcellline_alter_cellline_artifacts_and_more.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/migrations/0026_artifactcellline_cell_line_ref_is_name_and_more.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/migrations/0027_remove_artifactcellline_created_at_and_more.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/migrations/0028_artifactcellline_created_at_and_more.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/migrations/0028_squashed.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/migrations/0029_alter_cellline_previous_runs_and_more.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/migrations/0030_rename_publicsource_source_and_more.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/migrations/0031_alter_cellmarker_name_and_more.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/migrations/0032_rename_source_name_source_description_and_more.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/migrations/0033_alter_artifactcellline_artifact_and_more.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/migrations/0034_alter_source_unique_together.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/migrations/0035_alter_protein_gene_symbol.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/migrations/0036_alter_source_artifacts_and_more.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/migrations/0037_alter_cellline_source_alter_cellmarker_source_and_more.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/migrations/0038_alter_artifactcellline_created_by_and_more.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/migrations/0039_alter_cellline_source_alter_cellmarker_source_and_more.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/bionty/migrations/__init__.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/docs/guide/concepts.md +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/docs/guide/config.md +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/docs/guide/extend.md +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/docs/guide/test_notebooks.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/docs/guide.md +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/docs/index.md +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/docs/reference.md +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/lamin-project.yaml +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/noxfile.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/tests/dev/test_handle_sources.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/tests/dev/test_io.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/tests/entities/test_bfxpipeline.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/tests/entities/test_biosample.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/tests/entities/test_cellline.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/tests/entities/test_cellmarker.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/tests/entities/test_celltype.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/tests/entities/test_developmentalstage.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/tests/entities/test_disease.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/tests/entities/test_drug.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/tests/entities/test_ethnicity.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/tests/entities/test_experimentalfactor.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/tests/entities/test_gene.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/tests/entities/test_organism.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/tests/entities/test_pathway.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/tests/entities/test_phenotype.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/tests/entities/test_protein.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/tests/entities/test_tissue.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/tests/test_bionty.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/tests/test_lamindb.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/tests/test_md5.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/bionty/tests/test_ontology.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamin-cli/.github/workflows/doc-changes.yml +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamin-cli/.gitignore +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamin-cli/.pre-commit-config.yaml +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamin-cli/LICENSE +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamin-cli/README.md +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamin-cli/lamin_cli/_cache.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamin-cli/pyproject.toml +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamin-cli/tests/conftest.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamin-cli/tests/notebooks/not-initialized.ipynb +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamin-cli/tests/scripts/merely-import-lamindb.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamin-cli/tests/test_cli.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamin-cli/tests/test_multi_process.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamin-cli/tests/test_save_files.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/.github/workflows/build.yml +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/.github/workflows/doc-changes.yml +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/.gitignore +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/.pre-commit-config.yaml +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/LICENSE +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/README.md +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/docs/changelog.md +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/docs/hub-cloud/01-init-local-instance.ipynb +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/docs/hub-cloud/02-connect-local-instance.ipynb +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/docs/hub-cloud/03-add-managed-storage.ipynb +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/docs/hub-cloud/04-test-bionty.ipynb +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/docs/hub-cloud/05-init-hosted-instance.ipynb +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/docs/hub-cloud/06-connect-hosted-instance.ipynb +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/docs/hub-cloud/07-keep-artifacts-local.ipynb +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/docs/hub-cloud/08-test-multi-session.ipynb +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/docs/hub-cloud/test_notebooks.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/docs/hub-prod/test-cache-management.ipynb +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/docs/hub-prod/test-cloud-sync.ipynb +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/docs/hub-prod/test-connect-anonymously.ipynb +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/docs/hub-prod/test-empty-init.ipynb +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/docs/hub-prod/test-import-schema.ipynb +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/docs/hub-prod/test-init-load-local-anonymously.ipynb +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/docs/hub-prod/test-insufficient-user-info.ipynb +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/docs/hub-prod/test-invalid-schema.ipynb +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/docs/hub-prod/test-sqlite-lock.ipynb +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/docs/hub-prod/test_notebooks2.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/docs/index.md +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/docs/notebooks.md +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/docs/reference.md +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/_cache.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/_check.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/_close.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/_delete.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/_django.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/_entry_points.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/_exportdb.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/_importdb.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/_register_instance.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/_schema.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/_schema_metadata.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/_set_managed_storage.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/_setup_user.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/_silence_loggers.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/core/__init__.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/core/_aws_credentials.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/core/_aws_storage.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/core/_deprecated.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/core/_docs.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/core/_hub_crud.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/core/_hub_utils.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/core/_private_django_api.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/core/_settings_instance.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/core/_settings_load.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/core/_settings_save.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/core/_settings_storage.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/core/_settings_store.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/core/_setup_bionty_sources.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/core/cloud_sqlite_locker.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/core/exceptions.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/core/hashing.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/core/types.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/lamindb_setup/core/upath.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/tests/hub-cloud/scripts/script-init-pass-user-no-writes.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/tests/hub-cloud/scripts/script-to-fail-managed-storage.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/tests/hub-cloud/test_connect_instance.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/tests/hub-cloud/test_delete_instance.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/tests/hub-cloud/test_fail_managed_storage.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/tests/hub-cloud/test_init_instance.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/tests/hub-cloud/test_init_pass_user_no_writes.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/tests/hub-cloud/test_login.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/tests/hub-cloud/test_migrate.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/tests/hub-cloud/test_set_storage.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/tests/hub-local/conftest.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/tests/hub-local/test_all.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/tests/hub-local/test_update_schema_in_hub.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/tests/hub-prod/conftest.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/tests/hub-prod/test_django.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/tests/hub-prod/test_global_settings.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/tests/hub-prod/test_switch_and_fallback_env.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/tests/hub-prod/test_upath.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/tests/storage/test_entry_point.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/tests/storage/test_hashing.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/tests/storage/test_storage_access.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/tests/storage/test_storage_basis.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/tests/storage/test_storage_stats.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lamindb-setup/tests/storage/test_to_url.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/.github/workflows/build.yml +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/.github/workflows/doc-changes.yml +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/.gitignore +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/.pre-commit-config.yaml +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/CHANGELOG.md +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/LICENSE +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/README.md +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/lnschema_core/ids.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/lnschema_core/migrations/0037_rename_dataset_to_collection.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/lnschema_core/migrations/0038_alter_collection_artifact_alter_collection_artifacts_and_more.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/lnschema_core/migrations/0039_remove_collection_artifacts_collectionartifact_and_more.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/lnschema_core/migrations/0040_alter_transform_type.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/lnschema_core/migrations/0041_remove_transform_short_name_transform_description_and_more.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/lnschema_core/migrations/0042_rename_run_at_run_started_at_run_finished_at.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/lnschema_core/migrations/0043_run_json.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/lnschema_core/migrations/0044_run_replicated_outputs_transform_ulabels_and_more.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/lnschema_core/migrations/0045_rename_replicated_outputs_run_replicated_output_artifacts_and_more.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/lnschema_core/migrations/0046_storage_instance_uid.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/lnschema_core/migrations/0047_featurevalue_artifactfeaturevalue_and_more.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/lnschema_core/migrations/0048_alter_artifactulabel_feature_and_more.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/lnschema_core/migrations/0049_rename_type_feature_dtype_and_more.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/lnschema_core/migrations/0050_artifactfeatureset_feature_ref_is_semantic_and_more.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/lnschema_core/migrations/0051_remove_feature_feature_sets_featuresetfeature_and_more.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/lnschema_core/migrations/0052_rename_feature_value_artifactfeaturevalue_featurevalue_and_more.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/lnschema_core/migrations/0052_squashed.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/lnschema_core/migrations/0053_alter_featureset_hash_alter_paramvalue_created_by_and_more.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/lnschema_core/migrations/0054_alter_feature_previous_runs_and_more.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/lnschema_core/migrations/0055_artifact_type_artifactparamvalue_and_more.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/lnschema_core/migrations/0056_rename_ulabel_ref_is_name_artifactulabel_label_ref_is_name_and_more.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/lnschema_core/migrations/0057_link_models_latest_report_and_others.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/lnschema_core/migrations/0058_artifact__actions_collection__actions.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/lnschema_core/migrations/0059_alter_artifact__accessor_alter_artifact__hash_type_and_more.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/lnschema_core/migrations/0060_alter_artifact__actions.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/lnschema_core/migrations/0061_alter_collection_meta_artifact_alter_run_environment_and_more.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/lnschema_core/migrations/0062_add_is_latest_field.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/lnschema_core/migrations/0063_populate_latest_field.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/lnschema_core/migrations/0064_alter_artifact_version_alter_collection_version_and_more.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/lnschema_core/migrations/0065_remove_collection_feature_sets_and_more.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/lnschema_core/migrations/0066_alter_artifact__feature_values_and_more.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/lnschema_core/migrations/__init__.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/lnschema_core/mocks.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/lnschema_core/types.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/lnschema_core/users.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/noxfile.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/pyproject.toml +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/tests/conftest.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/tests/test_integrity.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/tests/test_models.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/lnschema-core/tests/test_types.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/wetlab/.github/workflows/build.yml +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/wetlab/.github/workflows/doc-changes.yml +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/wetlab/.gitignore +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/wetlab/.pre-commit-config.yaml +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/wetlab/README.md +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/wetlab/docs/changelog.md +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/wetlab/docs/guide/get-started.ipynb +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/wetlab/docs/guide/modeling_perturbations.ipynb +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/wetlab/docs/guide.md +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/wetlab/docs/index.md +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/wetlab/docs/reference.md +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/wetlab/noxfile.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/wetlab/tests/test_integrity.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/wetlab/tests/test_notebooks.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/wetlab/wetlab/migrations/0017_remove_biosample_artifacts.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/wetlab/wetlab/migrations/0018_squashed.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/wetlab/wetlab/migrations/0018_well_created_at_well_created_by_well_updated_at.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/wetlab/wetlab/migrations/0019_alter_treatment_system.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/wetlab/wetlab/migrations/0020_treatmenttarget_pathways_treatmenttarget_proteins_and_more.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/wetlab/wetlab/migrations/0021_alter_compoundtreatment_duration_unit_and_more.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/wetlab/wetlab/migrations/0022_remove_experiment_experiment_type_and_more.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/wetlab/wetlab/migrations/0023_compoundtreatment_duration_and_more.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/wetlab/wetlab/migrations/0024_compound_chembl_id.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/wetlab/wetlab/migrations/__init__.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/sub/wetlab/wetlab/models.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/core/conftest.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/core/test_artifact_folders.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/core/test_cache.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/core/test_can_validate.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/core/test_collection.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/core/test_curate.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/core/test_data.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/core/test_db.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/core/test_delete.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/core/test_feature.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/core/test_feature_set.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/core/test_from_values.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/core/test_label_manager.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/core/test_load.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/core/test_manager.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/core/test_notebooks.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/core/test_parents.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/core/test_queryset.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/core/test_run.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/core/test_save.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/core/test_search.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/core/test_settings.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/core/test_transform.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/core/test_uid.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/core/test_ulabel.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/core/test_view.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/core/test_visibility.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/storage/conftest.py +0 -0
- {lamindb-0.76.9 → lamindb-0.76.10}/tests/storage/test_storage.py +0 -0
@@ -1,18 +1,17 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: lamindb
|
3
|
-
Version: 0.76.
|
3
|
+
Version: 0.76.10
|
4
4
|
Summary: A data framework for biology.
|
5
5
|
Author-email: Lamin Labs <open-source@lamin.ai>
|
6
|
-
Requires-Python: >=3.
|
6
|
+
Requires-Python: >=3.9
|
7
7
|
Description-Content-Type: text/markdown
|
8
|
-
Classifier: Programming Language :: Python :: 3.8
|
9
8
|
Classifier: Programming Language :: Python :: 3.9
|
10
9
|
Classifier: Programming Language :: Python :: 3.10
|
11
10
|
Classifier: Programming Language :: Python :: 3.11
|
12
|
-
Requires-Dist: lnschema_core==0.74.
|
13
|
-
Requires-Dist: lamindb_setup==0.77.
|
14
|
-
Requires-Dist: lamin_utils==0.13.
|
15
|
-
Requires-Dist: lamin_cli==0.17.
|
11
|
+
Requires-Dist: lnschema_core==0.74.6
|
12
|
+
Requires-Dist: lamindb_setup==0.77.6
|
13
|
+
Requires-Dist: lamin_utils==0.13.6
|
14
|
+
Requires-Dist: lamin_cli==0.17.7
|
16
15
|
Requires-Dist: rapidfuzz
|
17
16
|
Requires-Dist: pyarrow
|
18
17
|
Requires-Dist: typing_extensions!=4.6.0
|
@@ -24,7 +23,8 @@ Requires-Dist: pandas
|
|
24
23
|
Requires-Dist: graphviz
|
25
24
|
Requires-Dist: psycopg2-binary
|
26
25
|
Requires-Dist: lamindb_setup[aws] ; extra == "aws"
|
27
|
-
Requires-Dist: bionty==0.
|
26
|
+
Requires-Dist: bionty==0.51.0 ; extra == "bionty"
|
27
|
+
Requires-Dist: line_profiler ; extra == "dev"
|
28
28
|
Requires-Dist: pre-commit ; extra == "dev"
|
29
29
|
Requires-Dist: nox ; extra == "dev"
|
30
30
|
Requires-Dist: laminci>=0.3 ; extra == "dev"
|
@@ -275,7 +275,7 @@
|
|
275
275
|
"source": [
|
276
276
|
"We'd like to load the corresponding records in our in-house registry to annotate a dataset.\n",
|
277
277
|
"\n",
|
278
|
-
"To this end, you'll typically use {class}`~lamindb.core.
|
278
|
+
"To this end, you'll typically use {class}`~lamindb.core.CanValidate.from_values`, which will both validate & retrieve records that match the values."
|
279
279
|
]
|
280
280
|
},
|
281
281
|
{
|
@@ -19,7 +19,7 @@
|
|
19
19
|
},
|
20
20
|
"outputs": [],
|
21
21
|
"source": [
|
22
|
-
"!lamin
|
22
|
+
"!lamin disconnect"
|
23
23
|
]
|
24
24
|
},
|
25
25
|
{
|
@@ -54,7 +54,7 @@
|
|
54
54
|
"outputs": [],
|
55
55
|
"source": [
|
56
56
|
"with pytest.raises(ln._InstanceNotSetupError):\n",
|
57
|
-
" ln.
|
57
|
+
" ln.track()"
|
58
58
|
]
|
59
59
|
},
|
60
60
|
{
|
@@ -82,8 +82,7 @@
|
|
82
82
|
"metadata": {},
|
83
83
|
"outputs": [],
|
84
84
|
"source": [
|
85
|
-
"ln.
|
86
|
-
"ln.context.track()"
|
85
|
+
"ln.track(\"2lhqA4uTKSFP0000\")"
|
87
86
|
]
|
88
87
|
},
|
89
88
|
{
|
@@ -63,7 +63,7 @@
|
|
63
63
|
"cell_type": "markdown",
|
64
64
|
"metadata": {},
|
65
65
|
"source": [
|
66
|
-
"Call `ln.
|
66
|
+
"Call `ln.track()`:"
|
67
67
|
]
|
68
68
|
},
|
69
69
|
{
|
@@ -72,8 +72,7 @@
|
|
72
72
|
"metadata": {},
|
73
73
|
"outputs": [],
|
74
74
|
"source": [
|
75
|
-
"ln.
|
76
|
-
"ln.context.track()"
|
75
|
+
"ln.track(\"Rx2s9aPTMQLY0000\")\n"
|
77
76
|
]
|
78
77
|
},
|
79
78
|
{
|
@@ -0,0 +1,17 @@
|
|
1
|
+
import argparse
|
2
|
+
import lamindb as ln
|
3
|
+
|
4
|
+
if __name__ == "__main__":
|
5
|
+
p = argparse.ArgumentParser()
|
6
|
+
p.add_argument("--input-dir", type=str)
|
7
|
+
p.add_argument("--downsample", action="store_true")
|
8
|
+
p.add_argument("--learning-rate", type=float)
|
9
|
+
args = p.parse_args()
|
10
|
+
params = {
|
11
|
+
"input_dir": args.input_dir,
|
12
|
+
"learning_rate": args.learning_rate,
|
13
|
+
"downsample": args.downsample,
|
14
|
+
}
|
15
|
+
ln.track("JjRF4mACd9m00000", params=params)
|
16
|
+
# your code
|
17
|
+
ln.finish()
|
@@ -111,16 +111,16 @@
|
|
111
111
|
"cell_type": "markdown",
|
112
112
|
"metadata": {},
|
113
113
|
"source": [
|
114
|
-
"##
|
114
|
+
"## Connecting to an instance"
|
115
115
|
]
|
116
116
|
},
|
117
117
|
{
|
118
118
|
"cell_type": "markdown",
|
119
119
|
"metadata": {},
|
120
120
|
"source": [
|
121
|
-
"
|
121
|
+
"Connect to your own instance:\n",
|
122
122
|
"```\n",
|
123
|
-
"lamin
|
123
|
+
"lamin connect <instance_name>\n",
|
124
124
|
"````"
|
125
125
|
]
|
126
126
|
},
|
@@ -128,9 +128,9 @@
|
|
128
128
|
"cell_type": "markdown",
|
129
129
|
"metadata": {},
|
130
130
|
"source": [
|
131
|
-
"
|
131
|
+
"Connect to somebody else's instance:\n",
|
132
132
|
"```\n",
|
133
|
-
"lamin
|
133
|
+
"lamin connect <account_handle/instance_name>\n",
|
134
134
|
"```"
|
135
135
|
]
|
136
136
|
},
|
@@ -170,7 +170,7 @@
|
|
170
170
|
"metadata": {},
|
171
171
|
"outputs": [],
|
172
172
|
"source": [
|
173
|
-
"!lamin
|
173
|
+
"!lamin settings"
|
174
174
|
]
|
175
175
|
},
|
176
176
|
{
|
@@ -225,25 +225,19 @@
|
|
225
225
|
"cell_type": "markdown",
|
226
226
|
"metadata": {},
|
227
227
|
"source": [
|
228
|
-
"## Update default storage"
|
228
|
+
"## Update the default storage"
|
229
229
|
]
|
230
230
|
},
|
231
231
|
{
|
232
232
|
"cell_type": "markdown",
|
233
233
|
"metadata": {},
|
234
234
|
"source": [
|
235
|
-
"It's easiest to see and update default storage in the Python API using {attr}`~lamindb.core.Settings.storage`:\n",
|
235
|
+
"It's easiest to see and update the default storage for the current Python session in the Python API using {attr}`~lamindb.core.Settings.storage`:\n",
|
236
236
|
"\n",
|
237
237
|
"```python\n",
|
238
238
|
"import lamindb as ln\n",
|
239
239
|
"ln.settings.storage # set via ln.settings.storage = \"s3://other-bucket\"\n",
|
240
240
|
"#> s3://default-bucket\n",
|
241
|
-
"```\n",
|
242
|
-
"\n",
|
243
|
-
"You can also change it using the CLI via\n",
|
244
|
-
"\n",
|
245
|
-
"```\n",
|
246
|
-
"lamin set --storage s3://other-bucket\n",
|
247
241
|
"```"
|
248
242
|
]
|
249
243
|
},
|
@@ -291,18 +285,18 @@
|
|
291
285
|
"cell_type": "markdown",
|
292
286
|
"metadata": {},
|
293
287
|
"source": [
|
294
|
-
"##
|
288
|
+
"## Dsiconnect from an instance"
|
295
289
|
]
|
296
290
|
},
|
297
291
|
{
|
298
292
|
"cell_type": "markdown",
|
299
293
|
"metadata": {},
|
300
294
|
"source": [
|
301
|
-
"
|
295
|
+
"Connecting to an instance means loading an environment for managing your data.\n",
|
302
296
|
"\n",
|
303
|
-
"When
|
297
|
+
"When connecting to a new instance, you automatically _disconnect_ from the previously connected instance.\n",
|
304
298
|
"\n",
|
305
|
-
"If you want to
|
299
|
+
"If you want to disconnect from the instance without connecting to a new instance, use `lamin disconnect`"
|
306
300
|
]
|
307
301
|
},
|
308
302
|
{
|
@@ -330,7 +324,7 @@
|
|
330
324
|
"Here is an example:\n",
|
331
325
|
"\n",
|
332
326
|
"```\n",
|
333
|
-
"% lamin
|
327
|
+
"% lamin connect testdb\n",
|
334
328
|
"🔶 \n",
|
335
329
|
"\n",
|
336
330
|
"Your database is not up to date with your installed Python library.\n",
|
@@ -343,7 +337,7 @@
|
|
343
337
|
"\n",
|
344
338
|
"Otherwise, downgrade your Python library to match the database!\n",
|
345
339
|
"\n",
|
346
|
-
"✅
|
340
|
+
"✅ connected lamindb: testuser1/testdb\n",
|
347
341
|
"```\n",
|
348
342
|
":::"
|
349
343
|
]
|
@@ -0,0 +1,364 @@
|
|
1
|
+
{
|
2
|
+
"cells": [
|
3
|
+
{
|
4
|
+
"cell_type": "markdown",
|
5
|
+
"metadata": {},
|
6
|
+
"source": [
|
7
|
+
"# Track notebooks & scripts\n",
|
8
|
+
"\n",
|
9
|
+
"This guide explains how to use {meth}`~lamindb.track` & {meth}`~lamindb.finish` to track notebook & scripts along with their inputs and outputs.\n",
|
10
|
+
"\n",
|
11
|
+
"For tracking data lineage in pipelines, see {doc}`docs:pipelines`."
|
12
|
+
]
|
13
|
+
},
|
14
|
+
{
|
15
|
+
"cell_type": "code",
|
16
|
+
"execution_count": null,
|
17
|
+
"metadata": {
|
18
|
+
"tags": [
|
19
|
+
"hide-output"
|
20
|
+
]
|
21
|
+
},
|
22
|
+
"outputs": [],
|
23
|
+
"source": [
|
24
|
+
"# !pip install 'lamindb[jupyter]'\n",
|
25
|
+
"!lamin init --storage ./test-track"
|
26
|
+
]
|
27
|
+
},
|
28
|
+
{
|
29
|
+
"cell_type": "markdown",
|
30
|
+
"metadata": {},
|
31
|
+
"source": [
|
32
|
+
"## Initiate tracking"
|
33
|
+
]
|
34
|
+
},
|
35
|
+
{
|
36
|
+
"cell_type": "markdown",
|
37
|
+
"metadata": {},
|
38
|
+
"source": [
|
39
|
+
"Call {meth}`~lamindb.track` to register a data transformation and start tracking inputs & outputs of a run. You will find your notebook or script in the {class}`~lamindb.Transform` registry along with pipelines & functions. {class}`~lamindb.Run` stores executions."
|
40
|
+
]
|
41
|
+
},
|
42
|
+
{
|
43
|
+
"cell_type": "code",
|
44
|
+
"execution_count": null,
|
45
|
+
"metadata": {
|
46
|
+
"tags": [
|
47
|
+
"hide-output"
|
48
|
+
]
|
49
|
+
},
|
50
|
+
"outputs": [],
|
51
|
+
"source": [
|
52
|
+
"import lamindb as ln\n",
|
53
|
+
"\n",
|
54
|
+
"# call `ln.track()` to generate a uid that identifies your code\n",
|
55
|
+
"\n",
|
56
|
+
"ln.track(\"9priar0hoE5u0000\") # call `ln.track(uid)` to track a run with inputs & outputs"
|
57
|
+
]
|
58
|
+
},
|
59
|
+
{
|
60
|
+
"cell_type": "markdown",
|
61
|
+
"metadata": {},
|
62
|
+
"source": [
|
63
|
+
"LaminDB now automatically tracks all input and output data of the current run.\n",
|
64
|
+
"\n",
|
65
|
+
"Note: You can access a `requirments.txt` via `ln.context.run.environment`."
|
66
|
+
]
|
67
|
+
},
|
68
|
+
{
|
69
|
+
"cell_type": "markdown",
|
70
|
+
"metadata": {},
|
71
|
+
"source": [
|
72
|
+
"## Track run report & source code"
|
73
|
+
]
|
74
|
+
},
|
75
|
+
{
|
76
|
+
"cell_type": "markdown",
|
77
|
+
"metadata": {},
|
78
|
+
"source": [
|
79
|
+
"If you want to save the run report & source code for a notebook or script, call:\n",
|
80
|
+
"\n",
|
81
|
+
"```python\n",
|
82
|
+
"ln.finish()\n",
|
83
|
+
"```"
|
84
|
+
]
|
85
|
+
},
|
86
|
+
{
|
87
|
+
"cell_type": "markdown",
|
88
|
+
"metadata": {},
|
89
|
+
"source": [
|
90
|
+
"Below is how a notebook with run report looks on the hub.\n",
|
91
|
+
"\n",
|
92
|
+
"<img src=\"https://lamin-site-assets.s3.amazonaws.com/.lamindb/RGXj5wcAf7EAc6J8dJfH.png\" width=\"900px\">"
|
93
|
+
]
|
94
|
+
},
|
95
|
+
{
|
96
|
+
"cell_type": "markdown",
|
97
|
+
"metadata": {},
|
98
|
+
"source": [
|
99
|
+
"## Query & load a notebook or script"
|
100
|
+
]
|
101
|
+
},
|
102
|
+
{
|
103
|
+
"cell_type": "markdown",
|
104
|
+
"metadata": {},
|
105
|
+
"source": [
|
106
|
+
"In the API, filter {class}`~lamindb.Transform` to obtain a transform record:\n",
|
107
|
+
"\n",
|
108
|
+
"```python\n",
|
109
|
+
"transform = ln.Transform.get(name=\"Track notebooks & scripts\")\n",
|
110
|
+
"transform.source_code # source code\n",
|
111
|
+
"transform.latest_run.report # report of latest run\n",
|
112
|
+
"transform.latest_run.environment # environment of latest run\n",
|
113
|
+
"transform.runs # all runs\n",
|
114
|
+
"```"
|
115
|
+
]
|
116
|
+
},
|
117
|
+
{
|
118
|
+
"cell_type": "markdown",
|
119
|
+
"metadata": {},
|
120
|
+
"source": [
|
121
|
+
"On the hub, search or filter the `transform` page and then load a script or notebook on the CLI. For example,\n",
|
122
|
+
"\n",
|
123
|
+
"```bash\n",
|
124
|
+
"lamin load https://lamin.ai/laminlabs/lamindata/transform/13VINnFk89PE0004\n",
|
125
|
+
"```"
|
126
|
+
]
|
127
|
+
},
|
128
|
+
{
|
129
|
+
"cell_type": "markdown",
|
130
|
+
"metadata": {},
|
131
|
+
"source": [
|
132
|
+
"## Sync scripts with GitHub"
|
133
|
+
]
|
134
|
+
},
|
135
|
+
{
|
136
|
+
"cell_type": "markdown",
|
137
|
+
"metadata": {},
|
138
|
+
"source": [
|
139
|
+
"To sync with your git commit, add the following line to your script:\n",
|
140
|
+
"\n",
|
141
|
+
"```python\n",
|
142
|
+
"ln.settings.sync_git_repo = <YOUR-GIT-REPO-URL>\n",
|
143
|
+
"```"
|
144
|
+
]
|
145
|
+
},
|
146
|
+
{
|
147
|
+
"cell_type": "markdown",
|
148
|
+
"metadata": {},
|
149
|
+
"source": [
|
150
|
+
"```{eval-rst}\n",
|
151
|
+
".. literalinclude:: scripts/synced-with-git.py\n",
|
152
|
+
" :language: python\n",
|
153
|
+
" :caption: synced-with-git.py\n",
|
154
|
+
"```"
|
155
|
+
]
|
156
|
+
},
|
157
|
+
{
|
158
|
+
"cell_type": "markdown",
|
159
|
+
"metadata": {},
|
160
|
+
"source": [
|
161
|
+
"You'll now see the GitHub emoji clickable on the hub.\n",
|
162
|
+
"\n",
|
163
|
+
"<img src=\"https://lamin-site-assets.s3.amazonaws.com/.lamindb/IpV8Kiq4xUbgXhzlUYT7.png\" width=\"900px\">\n",
|
164
|
+
"<br>"
|
165
|
+
]
|
166
|
+
},
|
167
|
+
{
|
168
|
+
"cell_type": "markdown",
|
169
|
+
"metadata": {},
|
170
|
+
"source": [
|
171
|
+
"## Track run parameters"
|
172
|
+
]
|
173
|
+
},
|
174
|
+
{
|
175
|
+
"cell_type": "markdown",
|
176
|
+
"metadata": {},
|
177
|
+
"source": [
|
178
|
+
"LaminDB's validation dialogue auto-generates code for run parameters. Here is an example:"
|
179
|
+
]
|
180
|
+
},
|
181
|
+
{
|
182
|
+
"cell_type": "code",
|
183
|
+
"execution_count": null,
|
184
|
+
"metadata": {
|
185
|
+
"tags": [
|
186
|
+
"hide-output"
|
187
|
+
]
|
188
|
+
},
|
189
|
+
"outputs": [],
|
190
|
+
"source": [
|
191
|
+
"ln.Param(name=\"input_dir\", dtype=\"str\").save()\n",
|
192
|
+
"ln.Param(name=\"learning_rate\", dtype=\"float\").save()\n",
|
193
|
+
"ln.Param(name=\"downsample\", dtype=\"bool\").save()"
|
194
|
+
]
|
195
|
+
},
|
196
|
+
{
|
197
|
+
"cell_type": "markdown",
|
198
|
+
"metadata": {},
|
199
|
+
"source": [
|
200
|
+
"```{eval-rst}\n",
|
201
|
+
".. literalinclude:: scripts/run-track-with-params.py\n",
|
202
|
+
" :language: python\n",
|
203
|
+
" :caption: run-track-with-params.py\n",
|
204
|
+
"```"
|
205
|
+
]
|
206
|
+
},
|
207
|
+
{
|
208
|
+
"cell_type": "markdown",
|
209
|
+
"metadata": {},
|
210
|
+
"source": [
|
211
|
+
"Run the script."
|
212
|
+
]
|
213
|
+
},
|
214
|
+
{
|
215
|
+
"cell_type": "code",
|
216
|
+
"execution_count": null,
|
217
|
+
"metadata": {
|
218
|
+
"tags": [
|
219
|
+
"hide-output"
|
220
|
+
]
|
221
|
+
},
|
222
|
+
"outputs": [],
|
223
|
+
"source": [
|
224
|
+
"!python scripts/run-track-with-params.py --input-dir ./mydataset --learning-rate 0.01 --downsample"
|
225
|
+
]
|
226
|
+
},
|
227
|
+
{
|
228
|
+
"cell_type": "markdown",
|
229
|
+
"metadata": {},
|
230
|
+
"source": [
|
231
|
+
"## Query by run parameters"
|
232
|
+
]
|
233
|
+
},
|
234
|
+
{
|
235
|
+
"cell_type": "markdown",
|
236
|
+
"metadata": {},
|
237
|
+
"source": [
|
238
|
+
"Query for all runs that match a certain parameters:"
|
239
|
+
]
|
240
|
+
},
|
241
|
+
{
|
242
|
+
"cell_type": "code",
|
243
|
+
"execution_count": null,
|
244
|
+
"metadata": {
|
245
|
+
"tags": [
|
246
|
+
"hide-output"
|
247
|
+
]
|
248
|
+
},
|
249
|
+
"outputs": [],
|
250
|
+
"source": [
|
251
|
+
"ln.Run.params.filter(learning_rate=0.01, input_dir=\"./mydataset\").df()"
|
252
|
+
]
|
253
|
+
},
|
254
|
+
{
|
255
|
+
"cell_type": "markdown",
|
256
|
+
"metadata": {},
|
257
|
+
"source": [
|
258
|
+
"Look at the parameter values that were used for a given run."
|
259
|
+
]
|
260
|
+
},
|
261
|
+
{
|
262
|
+
"cell_type": "code",
|
263
|
+
"execution_count": null,
|
264
|
+
"metadata": {
|
265
|
+
"tags": [
|
266
|
+
"hide-output"
|
267
|
+
]
|
268
|
+
},
|
269
|
+
"outputs": [],
|
270
|
+
"source": [
|
271
|
+
"run = ln.Run.params.filter(learning_rate=0.01).order_by(\"-started_at\").first()\n",
|
272
|
+
"run.params.get_values()"
|
273
|
+
]
|
274
|
+
},
|
275
|
+
{
|
276
|
+
"cell_type": "markdown",
|
277
|
+
"metadata": {},
|
278
|
+
"source": [
|
279
|
+
"## Manage notebook templates"
|
280
|
+
]
|
281
|
+
},
|
282
|
+
{
|
283
|
+
"cell_type": "markdown",
|
284
|
+
"metadata": {},
|
285
|
+
"source": [
|
286
|
+
"A notebook acts like a template upon using `lamin load` to load it. Consider you run:\n",
|
287
|
+
"\n",
|
288
|
+
"```bash\n",
|
289
|
+
"lamin load https://lamin.ai/account/instance/transform/Akd7gx7Y9oVO0000\n",
|
290
|
+
"```\n",
|
291
|
+
"\n",
|
292
|
+
"Upon running the returned notebook, you'll automatically create a new version and be able to browse it via the version dropdown on the UI.\n",
|
293
|
+
"\n",
|
294
|
+
"Additionally, you can:\n",
|
295
|
+
"\n",
|
296
|
+
"- label using `ULabel`, e.g., `transform.ulabels.add(template_label)`\n",
|
297
|
+
"- tag with an indicative `version` string, e.g., `transform.version = \"T1\"; transform.save()`"
|
298
|
+
]
|
299
|
+
},
|
300
|
+
{
|
301
|
+
"cell_type": "markdown",
|
302
|
+
"metadata": {},
|
303
|
+
"source": [
|
304
|
+
":::{dropdown} Saving a notebook as an artifact\n",
|
305
|
+
"\n",
|
306
|
+
"Sometimes you might want to save a notebook as an artifact. This is how you can do it:\n",
|
307
|
+
"\n",
|
308
|
+
"```bash\n",
|
309
|
+
"lamin save template1.ipynb --key templates/template1.ipynb --description \"Template for analysis type 1\" --registry artifact\n",
|
310
|
+
"```\n",
|
311
|
+
"\n",
|
312
|
+
":::"
|
313
|
+
]
|
314
|
+
},
|
315
|
+
{
|
316
|
+
"cell_type": "code",
|
317
|
+
"execution_count": null,
|
318
|
+
"metadata": {
|
319
|
+
"tags": [
|
320
|
+
"hide-cell"
|
321
|
+
]
|
322
|
+
},
|
323
|
+
"outputs": [],
|
324
|
+
"source": [
|
325
|
+
"assert run.params.get_values() == {'downsample': True, 'input_dir': './mydataset', 'learning_rate': 0.01}\n",
|
326
|
+
"\n",
|
327
|
+
"# clean up test instance\n",
|
328
|
+
"!rm -r ./test-track\n",
|
329
|
+
"!lamin delete --force test-track"
|
330
|
+
]
|
331
|
+
}
|
332
|
+
],
|
333
|
+
"metadata": {
|
334
|
+
"kernelspec": {
|
335
|
+
"display_name": "Python 3 (ipykernel)",
|
336
|
+
"language": "python",
|
337
|
+
"name": "python3"
|
338
|
+
},
|
339
|
+
"language_info": {
|
340
|
+
"codemirror_mode": {
|
341
|
+
"name": "ipython",
|
342
|
+
"version": 3
|
343
|
+
},
|
344
|
+
"file_extension": ".py",
|
345
|
+
"mimetype": "text/x-python",
|
346
|
+
"name": "python",
|
347
|
+
"nbconvert_exporter": "python",
|
348
|
+
"pygments_lexer": "ipython3",
|
349
|
+
"version": "3.10.13"
|
350
|
+
},
|
351
|
+
"nbproject": {
|
352
|
+
"id": "9priar0hoE5u",
|
353
|
+
"parent": null,
|
354
|
+
"pypackage": null,
|
355
|
+
"time_init": "2023-12-04T18:09:49.226879+00:00",
|
356
|
+
"user_handle": null,
|
357
|
+
"user_id": null,
|
358
|
+
"user_name": null,
|
359
|
+
"version": "0"
|
360
|
+
}
|
361
|
+
},
|
362
|
+
"nbformat": 4,
|
363
|
+
"nbformat_minor": 2
|
364
|
+
}
|