lamindb 0.67.1__tar.gz → 0.67.2__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.67.1 → lamindb-0.67.2}/PKG-INFO +2 -2
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/changelog.md +4 -1
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/__init__.py +1 -1
- {lamindb-0.67.1 → lamindb-0.67.2}/noxfile.py +24 -20
- {lamindb-0.67.1 → lamindb-0.67.2}/pyproject.toml +1 -1
- lamindb-0.67.2/sub/lamin-cli/lamin_cli/__init__.py +3 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamin-cli/lamin_cli/__main__.py +10 -2
- lamindb-0.67.2/sub/lamin-cli/lamin_cli/_stage.py +29 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamin-cli/tests/scripts/initialized.py +1 -1
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamin-cli/tests/test_scripts.py +13 -4
- lamindb-0.67.2/sub/lamin-cli/tests/test_stage.py +21 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/docs/changelog.md +2 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/lamindb_setup/dev/upath.py +3 -2
- lamindb-0.67.2/sub/lamindb-setup/tests/prod-only/test_upath.py +18 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/tests/prod-staging/test_load_instance.py +5 -5
- lamindb-0.67.1/sub/lamin-cli/lamin_cli/__init__.py +0 -3
- {lamindb-0.67.1 → lamindb-0.67.2}/.github/workflows/build.yml +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/.github/workflows/latest-changes.jinja2 +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/.github/workflows/latest-changes.yml +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/.gitignore +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/.gitmodules +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/.pre-commit-config.yaml +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/LICENSE +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/README.md +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/annotate.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/bio-registries.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/bionty.md +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/data.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/faq/acid.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/faq/delete.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/faq/idempotency.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/faq/import-schema.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/faq/key.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/faq/reference-field.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/faq/setup.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/faq/test_notebooks.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/faq/track-run-inputs.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/faq/validator.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/faq/visibility.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/faq.md +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/features-lamindb.md +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/features-laminhub.md +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/guide.md +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/index.md +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/installation.md +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/introduction.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/lamin-utils.md +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/lamindb.md +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/lnschema-bionty.md +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/meta.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/nbproject.md +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/query-search.md +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/readfcs.md +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/reference.md +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/schemas.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/setup.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/signup-login.md +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/storage/add-replace-stage.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/storage/anndata-accessor.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/storage/test-files/iris.csv +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/storage/test-files/iris.data +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/storage/test-files/new_iris.csv +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/storage/test_notebooks.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/storage/upload.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/storage.md +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/test_notebooks.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/track.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/transfer.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/tutorial.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/tutorial2.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/docs/validate.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/_artifact.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/_collection.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/_feature.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/_feature_set.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/_filter.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/_from_values.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/_parents.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/_query_manager.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/_query_set.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/_registry.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/_run.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/_save.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/_storage.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/_transform.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/_ulabel.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/_utils.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/_validate.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/_view.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/dev/__init__.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/dev/_data.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/dev/_feature_manager.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/dev/_label_manager.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/dev/_mapped_collection.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/dev/_run_context.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/dev/_settings.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/dev/_track_environment.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/dev/_view_tree.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/dev/datasets/__init__.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/dev/datasets/_core.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/dev/datasets/_fake.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/dev/exceptions.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/dev/fields.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/dev/hashing.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/dev/storage/__init__.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/dev/storage/_anndata_sizes.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/dev/storage/_backed_access.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/dev/storage/_zarr.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/dev/storage/file.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/dev/storage/object.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/dev/types.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/dev/versioning.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/setup/__init__.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/lamindb/setup/dev/__init__.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamin-cli/.gitignore +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamin-cli/.pre-commit-config.yaml +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamin-cli/README.md +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamin-cli/lamin_cli/_transform.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamin-cli/pyproject.toml +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamin-cli/tests/conftest.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamin-cli/tests/notebooks/no-title.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamin-cli/tests/notebooks/not-initialized.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamin-cli/tests/notebooks/with-title-and-initialized-consecutive.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamin-cli/tests/notebooks/with-title-and-initialized-non-consecutive.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamin-cli/tests/scripts/not-initialized.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamin-cli/tests/test_cli.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamin-cli/tests/test_migrate.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamin-cli/tests/test_notebooks.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/.github/workflows/build.yml +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/.github/workflows/latest-changes.jinja2 +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/.github/workflows/latest-changes.yml +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/.gitignore +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/.pre-commit-config.yaml +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/LICENSE +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/README.md +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/docs/index.md +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/docs/notebooks.md +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/docs/prod-only/test-cache-management.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/docs/prod-only/test-empty-init.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/docs/prod-only/test-import-schema.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/docs/prod-only/test-insufficient-user-info.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/docs/prod-only/test-invalid-schema.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/docs/prod-only/test-load-anonymously.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/docs/prod-only/test-load-lock.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/docs/prod-only/test-sqlite-sync.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/docs/prod-only/test_notebooks2.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/docs/prod-staging/01-init-instance.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/docs/prod-staging/02-load-instance.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/docs/prod-staging/03-set-storage.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/docs/prod-staging/04-test-bionty.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/docs/prod-staging/test-multi-session.ipynb +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/docs/prod-staging/test_notebooks.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/docs/reference.md +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/lamindb_setup/__init__.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/lamindb_setup/_cache.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/lamindb_setup/_check.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/lamindb_setup/_check_instance_setup.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/lamindb_setup/_close.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/lamindb_setup/_delete.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/lamindb_setup/_django.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/lamindb_setup/_docstrings.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/lamindb_setup/_export.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/lamindb_setup/_info.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/lamindb_setup/_init_instance.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/lamindb_setup/_init_vault.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/lamindb_setup/_load_instance.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/lamindb_setup/_migrate.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/lamindb_setup/_register_instance.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/lamindb_setup/_schema.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/lamindb_setup/_set.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/lamindb_setup/_settings.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/lamindb_setup/_setup_user.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/lamindb_setup/_silence_loggers.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/lamindb_setup/dev/__init__.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/lamindb_setup/dev/_deprecated.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/lamindb_setup/dev/_docs.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/lamindb_setup/dev/_hub_client.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/lamindb_setup/dev/_hub_core.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/lamindb_setup/dev/_hub_crud.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/lamindb_setup/dev/_hub_utils.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/lamindb_setup/dev/_settings_instance.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/lamindb_setup/dev/_settings_load.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/lamindb_setup/dev/_settings_save.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/lamindb_setup/dev/_settings_storage.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/lamindb_setup/dev/_settings_store.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/lamindb_setup/dev/_settings_user.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/lamindb_setup/dev/_setup_bionty_sources.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/lamindb_setup/dev/cloud_sqlite_locker.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/lamindb_setup/dev/django.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/noxfile.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/pyproject.toml +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/tests/hub-local/conftest.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/tests/hub-local/test_all.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/tests/prod-only/conftest.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/tests/prod-only/test_django.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/tests/prod-only/test_switch_and_fallback_env.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/tests/prod-staging/test_delete_instance.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/tests/prod-staging/test_init_instance.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/tests/prod-staging/test_login.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/tests/prod-staging/test_migrate.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/tests/prod-staging/test_set_storage.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/tests/test_storage_access.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/tests/test_vault.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/.github/workflows/build.yml +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/.github/workflows/latest-changes.jinja2 +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/.github/workflows/latest-changes.yml +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/.gitignore +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/.pre-commit-config.yaml +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/LICENSE +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/README.md +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/docs/changelog.md +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/docs/index.md +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/docs/reference.md +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/lamin-project.yaml +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/lnschema_bionty/__init__.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/lnschema_bionty/_bionty.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/lnschema_bionty/dev/__init__.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/lnschema_bionty/dev/_bionty.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/lnschema_bionty/dev/_settings.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/lnschema_bionty/ids.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/lnschema_bionty/migrations/0001_initial.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/lnschema_bionty/migrations/0001_initial_squashed_0016.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/lnschema_bionty/migrations/0002_rename_gene_type_gene_biotype_and_more.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/lnschema_bionty/migrations/0003_alter_biontysource_entity_alter_biontysource_source_and_more.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/lnschema_bionty/migrations/0004_alter_cellline_bionty_source_and_more.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/lnschema_bionty/migrations/0005_rename_short_name_cellline_abbr_and_more.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/lnschema_bionty/migrations/0006_alter_biontysource_options_alter_cellline_options_and_more.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/lnschema_bionty/migrations/0007_rename_readout_experimental_factor.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/lnschema_bionty/migrations/0008_remove_gene_hgnc_id_remove_gene_mgi_id_and_more.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/lnschema_bionty/migrations/0009_alter_gene_ensembl_gene_id.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/lnschema_bionty/migrations/0010_alter_species_name.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/lnschema_bionty/migrations/0011_cellline_datasets_cellmarker_datasets_and_more.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/lnschema_bionty/migrations/0012_gene_stable_id.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/lnschema_bionty/migrations/0013_alter_cellmarker_species_alter_gene_species_and_more.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/lnschema_bionty/migrations/0014_ethnicity_developmentalstage.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/lnschema_bionty/migrations/0015_migrate_to_integer_pks.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/lnschema_bionty/migrations/0016_export_legacy_data.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/lnschema_bionty/migrations/0017_import_legacy_data.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/lnschema_bionty/migrations/0018_organism_rename_species_biontysource_organism_and_more.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/lnschema_bionty/migrations/0019_rename_taxon_id_organism_ontology_id_and_more.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/lnschema_bionty/migrations/0020_alter_organism_bionty_source.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/lnschema_bionty/migrations/0021_rename_files_cellline_artifacts_and_more.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/lnschema_bionty/migrations/0022_rename_datasets_cellline_collections_and_more.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/lnschema_bionty/migrations/0023_rename_publicsource_encode_uid.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/lnschema_bionty/migrations/__init__.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/lnschema_bionty/models.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/noxfile.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/pyproject.toml +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-bionty/tests/test_integrity.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/.github/workflows/build.yml +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/.github/workflows/latest-changes.jinja2 +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/.github/workflows/latest-changes.yml +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/.gitignore +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/.pre-commit-config.yaml +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/CHANGELOG.md +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/LICENSE +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/README.md +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/__init__.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/ids.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/0001_initial.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/0001_initial_squashed_0023.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/0002_alter_user_name.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/0003_alter_storage_region_alter_transform_short_name.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/0004_rename_folder_tag_alter_project_folders.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/0005_alter_run_inputs_delete_runinput.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/0006_feature_dataset.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/0007_feature_synonyms_featureset_field_and_more.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/0008_file_hash_type_transform_parents.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/0009_remove_featureset_files_feature_unit_and_more.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/0010_dataset_categories_file_categories.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/0011_label_remove_tag_created_by_remove_tag_parents_and_more.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/0012_remove_label_ref_id_remove_label_ref_orm_and_more.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/0013_remove_feature_labels_orm_and_more.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/0014_rename_ref_field_featureset_registry.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/0015_file_initial_version_file_version.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/0016_dataset_input_of_dataset_run_dataset_transform_and_more.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/0017_dataset_initial_version_dataset_version.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/0018_rename_datasetlabel_datasetulabel_and_more.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/0019_dataset_reference_dataset_reference_type_and_more.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/0020_run_report_transform_latest_report_and_more.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/0021_dataset_storage_alter_dataset_file.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/0022_migrate_to_integer_pks.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/0023_export_legacy_data.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/0024_import_legacy_data.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/0025_remove_user_email.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/0026_dataset_visibility_file_visibility.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/0027_file_key_is_virtual.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/0028_alter_dataset_visibility_alter_file_visibility.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/0029_remove_feature_modality_remove_featureset_modality_and_more.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/0030_alter_dataset_visibility_alter_file_visibility.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/0031_rename_file_to_artifact.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/0032_remove_dataset_storage.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/0033_alter_artifact_unique_together_artifact_n_objects_and_more.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/0034_run_environment.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/0035_remove_artifact_initial_version_and_more.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/0036_storage_description.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/0037_rename_dataset_to_collection.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/0038_alter_collection_artifact_alter_collection_artifacts_and_more.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/0039_remove_collection_artifacts_collectionartifact_and_more.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/migrations/__init__.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/mocks.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/models.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/types.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/lnschema_core/users.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/noxfile.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/pyproject.toml +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/sub/lnschema-core/tests/test_integrity.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/tests/conftest.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/tests/test_artifact.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/tests/test_cache.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/tests/test_collection.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/tests/test_data.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/tests/test_db.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/tests/test_delete.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/tests/test_feature.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/tests/test_feature_manager.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/tests/test_feature_set.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/tests/test_from_values.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/tests/test_hashing.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/tests/test_label_manager.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/tests/test_load.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/tests/test_manager.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/tests/test_parents.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/tests/test_queryset.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/tests/test_registry.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/tests/test_run.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/tests/test_run_context.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/tests/test_save.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/tests/test_settings.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/tests/test_storage.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/tests/test_transfer.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/tests/test_transform.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/tests/test_uid.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/tests/test_ulabel.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/tests/test_validate.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/tests/test_versioning.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/tests/test_view.py +0 -0
- {lamindb-0.67.1 → lamindb-0.67.2}/tests/test_visibility.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: lamindb
|
3
|
-
Version: 0.67.
|
3
|
+
Version: 0.67.2
|
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,7 +12,7 @@ Classifier: Programming Language :: Python :: 3.11
|
|
12
12
|
Requires-Dist: lnschema_core==0.61.1
|
13
13
|
Requires-Dist: lamindb_setup==0.64.2
|
14
14
|
Requires-Dist: lamin_utils==0.13.0
|
15
|
-
Requires-Dist: lamin_cli==0.
|
15
|
+
Requires-Dist: lamin_cli==0.7.0
|
16
16
|
Requires-Dist: rapidfuzz
|
17
17
|
Requires-Dist: pyarrow
|
18
18
|
Requires-Dist: typing_extensions!=4.6.0
|
@@ -7,10 +7,13 @@
|
|
7
7
|
|
8
8
|
## 0.67
|
9
9
|
|
10
|
+
### 0.67.2 {small}`2024-01-14`
|
11
|
+
|
12
|
+
- ✨ Enable staging notebooks & code using the CLI [PR](https://github.com/laminlabs/lamindb/pull/1403) [@falexwolf](https://github.com/falexwolf)
|
13
|
+
|
10
14
|
### 0.67.1 {small}`2024-01-12`
|
11
15
|
|
12
16
|
- 🐛 Fix idempotency of `collection.save()` [PR](https://github.com/laminlabs/lamindb/pull/1401) [@falexwolf](https://github.com/falexwolf)
|
13
|
-
- 🩹 Also amend run [PR](https://github.com/laminlabs/lamindb/pull/1399) [@falexwolf](https://github.com/falexwolf)
|
14
17
|
- 🚸 Disallow bulk-delete for Artifact, Transform & Collection [PR](https://github.com/laminlabs/lamindb/pull/1398) [@falexwolf](https://github.com/falexwolf)
|
15
18
|
- 🚸 Init transform versions at 1 [PR](https://github.com/laminlabs/lamindb/pull/1397) [@falexwolf](https://github.com/falexwolf)
|
16
19
|
- ✨ Load json and html files [PR](https://github.com/laminlabs/lamindb/pull/1396) [@falexwolf](https://github.com/falexwolf)
|
@@ -130,37 +130,41 @@ def docs(session):
|
|
130
130
|
if group in {"tutorial", "guide", "biology"}:
|
131
131
|
for path in Path(f"./docs/{group}").glob("*"):
|
132
132
|
path.rename(f"./docs/{path.name}")
|
133
|
-
login_testuser1(session)
|
134
133
|
session.run(*"lamin init --storage ./docsbuild --schema bionty".split())
|
135
134
|
|
136
135
|
def generate_cli_docs(main_parser):
|
137
136
|
page = "# `lamin`\n\nFor a guide, see: {doc}`/setup`.\n\n"
|
138
|
-
|
139
|
-
"login",
|
140
|
-
"
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
"
|
150
|
-
|
137
|
+
command_groups = {
|
138
|
+
"General": ["login", "info"],
|
139
|
+
"Instances": [
|
140
|
+
"init",
|
141
|
+
"load",
|
142
|
+
"close",
|
143
|
+
"delete",
|
144
|
+
"migrate",
|
145
|
+
"set",
|
146
|
+
"schema",
|
147
|
+
],
|
148
|
+
"Transforms": ["track", "save", "stage"],
|
149
|
+
}
|
151
150
|
for action_group in main_parser._action_groups:
|
152
151
|
for group_action in action_group._group_actions:
|
153
152
|
if type(group_action).__name__ == "_SubParsersAction":
|
154
|
-
for
|
155
|
-
|
156
|
-
|
157
|
-
|
158
|
-
|
153
|
+
for command_group, commands in command_groups.items():
|
154
|
+
page += f"## {command_group}\n\n"
|
155
|
+
for command in commands:
|
156
|
+
subparser = group_action.choices[command]
|
157
|
+
# replace the "nox" command with the "lamin" command
|
158
|
+
help_string = subparser.format_help().replace(
|
159
|
+
"nox", "lamin"
|
160
|
+
)
|
161
|
+
page += (
|
162
|
+
f"### `lamin {command}`\n\n```\n{help_string}```\n\n"
|
163
|
+
)
|
159
164
|
Path("./docs/cli.md").write_text(page)
|
160
165
|
|
161
166
|
from lamin_cli import __main__
|
162
167
|
|
163
168
|
generate_cli_docs(__main__.parser)
|
164
|
-
|
165
169
|
build_docs(session, strip_prefix=True, strict=True)
|
166
170
|
upload_docs_artifact(aws=True)
|
@@ -100,8 +100,12 @@ aa("--pypackage", type=str, metavar="pypackage", default=None, help=pypackage_he
|
|
100
100
|
# save
|
101
101
|
save_parser = subparsers.add_parser("save", help="save notebook or script")
|
102
102
|
aa = save_parser.add_argument
|
103
|
-
|
104
|
-
|
103
|
+
aa("filepath", type=str, metavar="filepath", help="filepath to notebook or script")
|
104
|
+
|
105
|
+
# stage
|
106
|
+
save_parser = subparsers.add_parser("stage", help="stage a notebook or script")
|
107
|
+
aa = save_parser.add_argument
|
108
|
+
aa("url", type=str, metavar="url", help="a lamin.ai url")
|
105
109
|
|
106
110
|
# login and logout user
|
107
111
|
login = subparsers.add_parser("login", help="log in")
|
@@ -219,6 +223,10 @@ def main():
|
|
219
223
|
from lamin_cli._transform import save
|
220
224
|
|
221
225
|
return save(args.filepath)
|
226
|
+
elif args.command == "stage":
|
227
|
+
from lamin_cli._stage import stage
|
228
|
+
|
229
|
+
return stage(args.url)
|
222
230
|
elif args.command == "cache":
|
223
231
|
from lamindb_setup._cache import clear_cache_dir, get_cache_dir, set_cache_dir
|
224
232
|
|
@@ -0,0 +1,29 @@
|
|
1
|
+
from typing import Tuple
|
2
|
+
from lamin_utils import logger
|
3
|
+
|
4
|
+
|
5
|
+
def decompose_url(url: str) -> Tuple[str, str, str]:
|
6
|
+
assert "Transform" in url
|
7
|
+
uid = url.split("uid=")[1]
|
8
|
+
instance_identifier = "/".join(url.replace("https://lamin.ai/", "").split("/")[:2])
|
9
|
+
return instance_identifier, "transform", uid
|
10
|
+
|
11
|
+
|
12
|
+
def stage(identifier: str):
|
13
|
+
import lamindb as ln
|
14
|
+
|
15
|
+
ln.settings.verbosity = "success"
|
16
|
+
if identifier.startswith("https://lamin.ai"):
|
17
|
+
instance_identifier, entity, uid = decompose_url(identifier)
|
18
|
+
else:
|
19
|
+
entity, uid = identifier.split()
|
20
|
+
instance_identifier = ln.setup.settings.instance.identifier
|
21
|
+
|
22
|
+
if entity == "transform":
|
23
|
+
transform = ln.Transform.using(instance_identifier).filter(uid=uid).one()
|
24
|
+
filepath_cache = transform.source_code.stage()
|
25
|
+
target_filename = f"{transform.short_name}.ipynb"
|
26
|
+
filepath_cache.rename(target_filename)
|
27
|
+
logger.success(f"staged source code of transform {uid} as {target_filename}")
|
28
|
+
else:
|
29
|
+
raise NotImplementedError
|
@@ -7,6 +7,7 @@ scripts_dir = Path(__file__).parent.resolve() / "scripts"
|
|
7
7
|
|
8
8
|
print(scripts_dir)
|
9
9
|
|
10
|
+
|
10
11
|
def test_initialize():
|
11
12
|
filepath = scripts_dir / "not-initialized.py"
|
12
13
|
print(scripts_dir)
|
@@ -19,16 +20,16 @@ def test_initialize():
|
|
19
20
|
|
20
21
|
with open(filepath) as f:
|
21
22
|
content = f.read()
|
22
|
-
prepend =
|
23
|
+
prepend = '__transform_stem_uid__ = "'
|
23
24
|
assert content.startswith(prepend)
|
24
25
|
|
25
26
|
|
26
|
-
def
|
27
|
+
def test_run_save_stage():
|
27
28
|
env = os.environ
|
28
29
|
env["LAMIN_TESTING"] = "true"
|
29
|
-
|
30
|
+
|
30
31
|
filepath = scripts_dir / "initialized.py"
|
31
|
-
# python sub/lamin-cli/tests/scripts/initialized.py
|
32
|
+
# python sub/lamin-cli/tests/scripts/initialized.py
|
32
33
|
result = subprocess.run(
|
33
34
|
f"python {str(filepath)}",
|
34
35
|
shell=True,
|
@@ -68,3 +69,11 @@ def test_run_and_save():
|
|
68
69
|
)
|
69
70
|
print(result)
|
70
71
|
assert result.returncode == 0
|
72
|
+
|
73
|
+
result = subprocess.run(
|
74
|
+
"lamin stage 'transform m5uCHTTpJnjQ5zKv'",
|
75
|
+
shell=True,
|
76
|
+
capture_output=True,
|
77
|
+
)
|
78
|
+
print(result)
|
79
|
+
assert result.returncode == 0
|
@@ -0,0 +1,21 @@
|
|
1
|
+
from lamin_cli._stage import decompose_url
|
2
|
+
import subprocess
|
3
|
+
|
4
|
+
|
5
|
+
def test_decompose_url():
|
6
|
+
url = "https://lamin.ai/laminlabs/arrayloader-benchmarks/record/core/Transform?uid=1GCKs8zLtkc85zKv" # noqa
|
7
|
+
instance_identifier, entity, uid = decompose_url(url)
|
8
|
+
assert instance_identifier == "laminlabs/arrayloader-benchmarks"
|
9
|
+
assert entity == "transform"
|
10
|
+
assert uid == "1GCKs8zLtkc85zKv"
|
11
|
+
|
12
|
+
|
13
|
+
def test_stage():
|
14
|
+
result = subprocess.run(
|
15
|
+
"lamin stage"
|
16
|
+
" 'https://lamin.ai/laminlabs/arrayloader-benchmarks/record/core/Transform?uid=1GCKs8zLtkc85zKv'", # noqa
|
17
|
+
shell=True,
|
18
|
+
capture_output=True,
|
19
|
+
)
|
20
|
+
print(result)
|
21
|
+
assert result.returncode == 0
|
@@ -3,6 +3,8 @@
|
|
3
3
|
<!-- prettier-ignore -->
|
4
4
|
Name | PR | Developer | Date | Version
|
5
5
|
--- | --- | --- | --- | ---
|
6
|
+
🐛 Fix option inheritance in create_path and add tests | [617](https://github.com/laminlabs/lamindb-setup/pull/617) | [Koncopd](https://github.com/Koncopd) | 2024-01-12 |
|
7
|
+
✅ Update tests relying on laminhub-rest | [616](https://github.com/laminlabs/lamindb-setup/pull/616) | [fredericenard](https://github.com/fredericenard) | 2024-01-12 |
|
6
8
|
🚚 Rename .bionty to .public | [615](https://github.com/laminlabs/lamindb-setup/pull/615) | [sunnyosun](https://github.com/sunnyosun) | 2024-01-10 | 0.64.2
|
7
9
|
🚸 Fix connection timeout | [611](https://github.com/laminlabs/lamindb-setup/pull/611) | [falexwolf](https://github.com/falexwolf) | 2024-01-08 | 0.64.1
|
8
10
|
🚸 Add anonymous access (now works without login) | [610](https://github.com/laminlabs/lamindb-setup/pull/610) | [falexwolf](https://github.com/falexwolf) | 2024-01-06 | 0.64.0
|
@@ -412,8 +412,9 @@ def create_path(pathlike: Union[str, Path, UPath]) -> UPath:
|
|
412
412
|
else:
|
413
413
|
raise ValueError("pathlike should be of type Union[str, Path, UPath]")
|
414
414
|
|
415
|
-
#
|
416
|
-
path
|
415
|
+
# remove trailing slash
|
416
|
+
if path._parts[-1] == "":
|
417
|
+
path._parts = path._parts[:-1]
|
417
418
|
|
418
419
|
if isinstance(path, S3Path):
|
419
420
|
path = UPath(path, cache_regions=True)
|
@@ -0,0 +1,18 @@
|
|
1
|
+
from lamindb_setup.dev.upath import UPath, create_path
|
2
|
+
|
3
|
+
|
4
|
+
def test_create_path():
|
5
|
+
upath = UPath("s3://lndb-setup-ci/xyz/", default_fill_cache=False)
|
6
|
+
assert "default_fill_cache" in upath._kwargs
|
7
|
+
|
8
|
+
upath = create_path(upath)
|
9
|
+
# test option inheritance
|
10
|
+
assert "default_fill_cache" in upath._kwargs
|
11
|
+
# test cache_regions setting for s3
|
12
|
+
assert "cache_regions" in upath._kwargs
|
13
|
+
# test removal of training slash
|
14
|
+
assert upath.as_posix()[-1] != "/"
|
15
|
+
assert (
|
16
|
+
UPath("s3://lndb-setup-ci/xyz").as_posix()
|
17
|
+
== create_path("s3://lndb-setup-ci/xyz/").as_posix()
|
18
|
+
)
|
{lamindb-0.67.1 → lamindb-0.67.2}/sub/lamindb-setup/tests/prod-staging/test_load_instance.py
RENAMED
@@ -1,8 +1,8 @@
|
|
1
1
|
import os
|
2
2
|
|
3
3
|
import pytest
|
4
|
-
from laminhub_rest.
|
5
|
-
from laminhub_rest.
|
4
|
+
from laminhub_rest.core.collaborator._add_collaborator import add_collaborator
|
5
|
+
from laminhub_rest.core.collaborator._delete_collaborator import delete_collaborator
|
6
6
|
|
7
7
|
import lamindb_setup as ln_setup
|
8
8
|
from lamindb_setup.dev._hub_client import connect_hub_with_auth
|
@@ -29,13 +29,13 @@ def test_load_after_revoked_access():
|
|
29
29
|
ln_setup.login(
|
30
30
|
"static-testuser1@lamin.ai", password="static-testuser1-password"
|
31
31
|
)
|
32
|
-
|
32
|
+
admin_hub = connect_hub_with_auth()
|
33
33
|
add_collaborator(
|
34
34
|
"static-testuser2",
|
35
35
|
"laminlabs",
|
36
36
|
"static-testinstance1",
|
37
37
|
"write",
|
38
|
-
|
38
|
+
admin_hub,
|
39
39
|
)
|
40
40
|
ln_setup.login(
|
41
41
|
"static-testuser2@lamin.ai", password="static-testuser2-password"
|
@@ -46,7 +46,7 @@ def test_load_after_revoked_access():
|
|
46
46
|
"laminlabs",
|
47
47
|
"static-testinstance1",
|
48
48
|
ln_setup.settings.user.uuid,
|
49
|
-
|
49
|
+
admin_hub,
|
50
50
|
)
|
51
51
|
with pytest.raises(RuntimeError) as error:
|
52
52
|
ln_setup.load("https://lamin.ai/laminlabs/static-testinstance1", _test=True)
|
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
|
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
|