lamindb 1.0.1__tar.gz → 1.0.3__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-1.0.1 → lamindb-1.0.3}/PKG-INFO +2 -2
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/__init__.py +1 -1
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/_finish.py +19 -13
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/core/_context.py +38 -8
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/curators/__init__.py +3 -7
- lamindb-1.0.3/lamindb/migrations/0080_polish_lamindbv1.py +534 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/models.py +151 -50
- {lamindb-1.0.1 → lamindb-1.0.3}/pyproject.toml +1 -1
- lamindb-1.0.3/sub/lamin-cli/lamin_cli/__init__.py +3 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamin-cli/lamin_cli/_load.py +6 -4
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamin-cli/tests/test_save_scripts.py +1 -1
- lamindb-1.0.1/tests/core/test_zdatatables.py → lamindb-1.0.3/tests/core/test_zflextables.py +2 -2
- lamindb-1.0.1/sub/lamin-cli/lamin_cli/__init__.py +0 -3
- {lamindb-1.0.1 → lamindb-1.0.3}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/.github/ISSUE_TEMPLATE/enhancement.yml +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/.github/ISSUE_TEMPLATE/usage_question.yml +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/.github/workflows/build.yml +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/.github/workflows/doc-changes.yml +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/.gitignore +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/.gitmodules +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/.pre-commit-config.yaml +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/CONTRIBUTING.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/LICENSE +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/README.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/api.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/arrays.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/bio-registries.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/bionty.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/cellregistry.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/changelog.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/clinicore.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/curate-any.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/curate-df.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/curate-subclass.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/curate.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/ehrcurator.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/faq/acid.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/faq/delete.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/faq/idempotency.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/faq/import-modules.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/faq/keep-artifacts-local.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/faq/key.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/faq/reference-field.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/faq/search.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/faq/setup.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/faq/symbol-mapping.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/faq/test_notebooks.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/faq/track-run-inputs.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/faq/validate-fields.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/faq/visibility.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/faq.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/guide.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/includes/installation.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/index.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/lamindb.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/laminr.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/modules.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/omop.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/query-search.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/registries.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/rest.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/scripts/run-track-with-params.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/scripts/synced-with-git.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/setup.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/signup-login.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/storage/add-replace-cache.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/storage/anndata-accessor.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/storage/prepare-transfer-local-to-cloud.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/storage/test-files/iris.csv +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/storage/test-files/iris.data +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/storage/test-files/new_iris.csv +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/storage/test_notebooks.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/storage/transfer-local-to-cloud.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/storage/upload.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/storage/vitessce.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/storage.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/test_notebooks.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/track.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/transfer.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/docs/wetlab.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/_artifact.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/_can_curate.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/_collection.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/_feature.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/_from_values.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/_is_versioned.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/_parents.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/_query_manager.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/_query_set.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/_record.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/_run.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/_save.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/_schema.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/_storage.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/_transform.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/_ulabel.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/_utils.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/_view.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/base/__init__.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/base/fields.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/base/ids.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/base/types.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/base/users.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/base/validation.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/core/__init__.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/core/_data.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/core/_describe.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/core/_django.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/core/_feature_manager.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/core/_label_manager.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/core/_mapped_collection.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/core/_settings.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/core/_sync_git.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/core/_track_environment.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/core/datasets/__init__.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/core/datasets/_core.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/core/datasets/_fake.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/core/datasets/_small.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/core/exceptions.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/core/fields.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/core/loaders.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/core/relations.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/core/storage/__init__.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/core/storage/_anndata_accessor.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/core/storage/_anndata_sizes.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/core/storage/_backed_access.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/core/storage/_pyarrow_dataset.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/core/storage/_tiledbsoma.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/core/storage/_valid_suffixes.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/core/storage/_zarr.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/core/storage/objects.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/core/storage/paths.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/core/subsettings/__init__.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/core/subsettings/_creation_settings.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/core/types.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/core/versioning.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/curators/_spatial.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/integrations/__init__.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/integrations/_vitessce.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/migrations/0052_squashed.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/migrations/0053_alter_featureset_hash_alter_paramvalue_created_by_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/migrations/0054_alter_feature_previous_runs_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/migrations/0055_artifact_type_artifactparamvalue_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/migrations/0056_rename_ulabel_ref_is_name_artifactulabel_label_ref_is_name_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/migrations/0057_link_models_latest_report_and_others.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/migrations/0058_artifact__actions_collection__actions.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/migrations/0059_alter_artifact__accessor_alter_artifact__hash_type_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/migrations/0060_alter_artifact__actions.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/migrations/0061_alter_collection_meta_artifact_alter_run_environment_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/migrations/0062_add_is_latest_field.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/migrations/0063_populate_latest_field.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/migrations/0064_alter_artifact_version_alter_collection_version_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/migrations/0065_remove_collection_feature_sets_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/migrations/0066_alter_artifact__feature_values_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/migrations/0067_alter_featurevalue_unique_together_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/migrations/0068_alter_artifactulabel_unique_together_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/migrations/0069_alter_artifact__accessor_alter_artifact__hash_type_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/migrations/0069_squashed.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/migrations/0070_lamindbv1_migrate_data.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/migrations/0071_lamindbv1_migrate_schema.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/migrations/0072_remove_user__branch_code_remove_user_aux_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/migrations/0073_merge_ourprojects.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/migrations/0074_lamindbv1_part4.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/migrations/0075_lamindbv1_part5.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/migrations/0076_lamindbv1_part6.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/migrations/0077_lamindbv1_part6b.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/migrations/0078_lamindbv1_part6c.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/migrations/0079_alter_rundata_value_json_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/migrations/__init__.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/setup/__init__.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/lamindb/setup/core/__init__.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/noxfile.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/.github/workflows/build.yml +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/.github/workflows/doc-changes.yml +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/.github/workflows/update_ontologies.yml +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/.gitignore +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/.pre-commit-config.yaml +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/LICENSE +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/README.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/__init__.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/_bionty.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/base/__init__.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/base/_display_sources.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/base/_ontology.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/base/_public_ontology.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/base/_settings.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/base/_sync_sources.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/base/dev/__init__.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/base/dev/_handle_sources.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/base/dev/_io.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/base/dev/_md5.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/base/entities/__init__.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/base/entities/_bfxpipeline.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/base/entities/_biosample.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/base/entities/_cellline.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/base/entities/_cellmarker.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/base/entities/_celltype.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/base/entities/_developmentalstage.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/base/entities/_disease.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/base/entities/_drug.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/base/entities/_ethnicity.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/base/entities/_experimentalfactor.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/base/entities/_gene.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/base/entities/_organism.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/base/entities/_pathway.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/base/entities/_phenotype.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/base/entities/_protein.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/base/entities/_shared_docstrings.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/base/entities/_tissue.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/base/scripts/bfxpipelines_info/custom_pipelines.json +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/base/scripts/check_ontologies_reachable.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/base/scripts/determine_md5s.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/base/scripts/generate_bfxpipelines.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/base/scripts/update_new_ontologies.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/base/scripts/upload_new_ontologies.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/base/sources.yaml +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/core/__init__.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/core/_add_ontology.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/core/_bionty.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/core/_settings.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/ids.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/migrations/0028_squashed.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/migrations/0029_alter_cellline_previous_runs_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/migrations/0030_rename_publicsource_source_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/migrations/0031_alter_cellmarker_name_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/migrations/0032_rename_source_name_source_description_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/migrations/0033_alter_artifactcellline_artifact_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/migrations/0034_alter_source_unique_together.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/migrations/0035_alter_protein_gene_symbol.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/migrations/0036_alter_source_artifacts_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/migrations/0037_alter_cellline_source_alter_cellmarker_source_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/migrations/0038_alter_artifactcellline_created_by_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/migrations/0039_alter_cellline_source_alter_cellmarker_source_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/migrations/0040_rename_feature_ref_is_symbol_artifactgene_feature_ref_is_name_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/migrations/0041_alter_artifactcellline_artifact_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/migrations/0041_squashed.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/migrations/0042_lamindbv1.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/migrations/0043_lamindbv2_part2.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/migrations/0044_alter_cellline_space_alter_cellmarker_space_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/migrations/0045_rename_aux_cellline__aux_rename_aux_cellmarker__aux_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/migrations/0046_alter_cellline__aux_alter_cellmarker__aux_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/migrations/0047_lamindbv1_part5.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/migrations/0048_lamindbv1_part6.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/migrations/__init__.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/bionty/models.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/docs/guide/concepts.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/docs/guide/config.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/docs/guide/extend.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/docs/guide/test_notebooks.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/docs/guide.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/docs/index.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/docs/reference.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/noxfile.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/pyproject.toml +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/tests/dev/test_handle_sources.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/tests/dev/test_io.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/tests/entities/test_bfxpipeline.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/tests/entities/test_biosample.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/tests/entities/test_cellline.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/tests/entities/test_cellmarker.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/tests/entities/test_celltype.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/tests/entities/test_developmentalstage.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/tests/entities/test_disease.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/tests/entities/test_drug.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/tests/entities/test_ethnicity.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/tests/entities/test_experimentalfactor.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/tests/entities/test_gene.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/tests/entities/test_organism.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/tests/entities/test_pathway.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/tests/entities/test_phenotype.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/tests/entities/test_protein.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/tests/entities/test_tissue.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/tests/test_bionty.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/tests/test_lamindb.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/tests/test_md5.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/bionty/tests/test_ontology.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/clinicore/.github/workflows/build.yml +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/clinicore/.github/workflows/doc-changes.yml +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/clinicore/.gitignore +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/clinicore/.pre-commit-config.yaml +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/clinicore/LICENSE +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/clinicore/README.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/clinicore/clinicore/__init__.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/clinicore/clinicore/migrations/0001_initial.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/clinicore/clinicore/migrations/0002_biosample_patient_biosample_project.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/clinicore/clinicore/migrations/0003_alter_project_uid.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/clinicore/clinicore/migrations/0004_remove_biosample_project_clinicaltrial_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/clinicore/clinicore/migrations/0005_alter_biosample_created_by_alter_biosample_run_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/clinicore/clinicore/migrations/0006_artifactbiosample_artifactclinicaltrial_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/clinicore/clinicore/migrations/0007_alter_artifactbiosample_artifact_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/clinicore/clinicore/migrations/0008_lamindbv1.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/clinicore/clinicore/migrations/0009_alter_biosample_space_alter_clinicaltrial_space_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/clinicore/clinicore/migrations/0010_rename_aux_biosample__aux_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/clinicore/clinicore/migrations/0011_alter_biosample__aux_alter_clinicaltrial__aux_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/clinicore/clinicore/migrations/0012_lamindbv1_part6.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/clinicore/clinicore/migrations/__init__.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/clinicore/clinicore/models.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/clinicore/docs/changelog.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/clinicore/docs/guide.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/clinicore/docs/index.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/clinicore/docs/quickstart.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/clinicore/docs/reference.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/clinicore/noxfile.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/clinicore/pyproject.toml +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/clinicore/tests/test_notebooks.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamin-cli/.github/workflows/doc-changes.yml +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamin-cli/.gitignore +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamin-cli/.pre-commit-config.yaml +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamin-cli/LICENSE +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamin-cli/README.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamin-cli/lamin_cli/__main__.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamin-cli/lamin_cli/_cache.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamin-cli/lamin_cli/_migration.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamin-cli/lamin_cli/_save.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamin-cli/lamin_cli/_settings.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamin-cli/pyproject.toml +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamin-cli/tests/conftest.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamin-cli/tests/notebooks/not-initialized.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamin-cli/tests/notebooks/with-title-and-initialized-consecutive.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamin-cli/tests/notebooks/with-title-and-initialized-non-consecutive.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamin-cli/tests/scripts/merely-import-lamindb.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamin-cli/tests/scripts/run-track-and-finish-sync-git.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamin-cli/tests/scripts/run-track-and-finish.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamin-cli/tests/scripts/run-track-with-params.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamin-cli/tests/scripts/run-track.R +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamin-cli/tests/scripts/run-track.qmd +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamin-cli/tests/test_cli.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamin-cli/tests/test_load.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamin-cli/tests/test_migrate.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamin-cli/tests/test_multi_process.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamin-cli/tests/test_parse_uid_from_code.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamin-cli/tests/test_save_files.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamin-cli/tests/test_save_notebooks.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamin-cli/tests/test_save_r_code.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/.github/workflows/build.yml +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/.github/workflows/doc-changes.yml +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/.gitignore +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/.pre-commit-config.yaml +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/LICENSE +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/README.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/docs/changelog.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/docs/hub-cloud/01-init-local-instance.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/docs/hub-cloud/02-connect-local-instance.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/docs/hub-cloud/03-add-managed-storage.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/docs/hub-cloud/04-test-bionty.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/docs/hub-cloud/05-init-hosted-instance.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/docs/hub-cloud/06-connect-hosted-instance.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/docs/hub-cloud/07-keep-artifacts-local.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/docs/hub-cloud/08-test-multi-session.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/docs/hub-cloud/test_notebooks.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/docs/hub-prod/test-cache-management.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/docs/hub-prod/test-cloud-sync.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/docs/hub-prod/test-connect-anonymously.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/docs/hub-prod/test-empty-init.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/docs/hub-prod/test-import-schema.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/docs/hub-prod/test-init-load-local-anonymously.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/docs/hub-prod/test-insufficient-user-info.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/docs/hub-prod/test-invalid-schema.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/docs/hub-prod/test-sqlite-lock.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/docs/hub-prod/test_notebooks2.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/docs/index.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/docs/notebooks.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/docs/reference.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/__init__.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/_cache.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/_check.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/_check_setup.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/_close.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/_connect_instance.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/_delete.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/_django.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/_entry_points.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/_exportdb.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/_importdb.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/_init_instance.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/_migrate.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/_register_instance.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/_schema.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/_schema_metadata.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/_set_managed_storage.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/_setup_user.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/_silence_loggers.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/core/__init__.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/core/_aws_credentials.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/core/_aws_storage.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/core/_deprecated.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/core/_docs.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/core/_hub_client.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/core/_hub_core.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/core/_hub_crud.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/core/_hub_utils.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/core/_private_django_api.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/core/_settings.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/core/_settings_instance.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/core/_settings_load.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/core/_settings_save.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/core/_settings_storage.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/core/_settings_store.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/core/_settings_user.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/core/_setup_bionty_sources.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/core/cloud_sqlite_locker.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/core/django.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/core/exceptions.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/core/hashing.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/core/types.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/lamindb_setup/core/upath.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/noxfile.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/pyproject.toml +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/tests/hub-cloud/scripts/script-init-pass-user-no-writes.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/tests/hub-cloud/scripts/script-to-fail-managed-storage.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/tests/hub-cloud/test_connect_instance.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/tests/hub-cloud/test_delete_instance.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/tests/hub-cloud/test_edge_request.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/tests/hub-cloud/test_fail_managed_storage.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/tests/hub-cloud/test_init_instance.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/tests/hub-cloud/test_init_pass_user_no_writes.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/tests/hub-cloud/test_login.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/tests/hub-cloud/test_migrate.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/tests/hub-cloud/test_set_storage.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/tests/hub-local/conftest.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/tests/hub-local/test_all.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/tests/hub-local/test_update_schema_in_hub.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/tests/hub-prod/conftest.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/tests/hub-prod/test_aws_credentials_manager.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/tests/hub-prod/test_django.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/tests/hub-prod/test_global_settings.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/tests/hub-prod/test_switch_and_fallback_env.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/tests/hub-prod/test_upath.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/tests/storage/test_entry_point.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/tests/storage/test_hashing.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/tests/storage/test_storage_access.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/tests/storage/test_storage_basis.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/tests/storage/test_storage_stats.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/lamindb-setup/tests/storage/test_to_url.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/wetlab/.github/workflows/build.yml +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/wetlab/.github/workflows/doc-changes.yml +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/wetlab/.gitignore +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/wetlab/.pre-commit-config.yaml +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/wetlab/README.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/wetlab/docs/changelog.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/wetlab/docs/guide/get-started.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/wetlab/docs/guide/pert-curator.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/wetlab/docs/guide/pert-registries.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/wetlab/docs/guide.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/wetlab/docs/index.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/wetlab/docs/reference.md +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/wetlab/noxfile.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/wetlab/pyproject.toml +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/wetlab/tests/test_integrity.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/wetlab/tests/test_notebooks.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/wetlab/wetlab/__init__.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/wetlab/wetlab/_pert_curator.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/wetlab/wetlab/migrations/0018_squashed.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/wetlab/wetlab/migrations/0019_alter_treatment_system.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/wetlab/wetlab/migrations/0020_treatmenttarget_pathways_treatmenttarget_proteins_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/wetlab/wetlab/migrations/0021_alter_compoundtreatment_duration_unit_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/wetlab/wetlab/migrations/0022_remove_experiment_experiment_type_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/wetlab/wetlab/migrations/0023_compoundtreatment_duration_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/wetlab/wetlab/migrations/0024_compound_chembl_id.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/wetlab/wetlab/migrations/0025_alter_artifactbiosample_artifact_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/wetlab/wetlab/migrations/0025_squashed.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/wetlab/wetlab/migrations/0026_alter_biosample_artifacts_alter_techsample_artifacts.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/wetlab/wetlab/migrations/0027_rename_treatment_add_donor.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/wetlab/wetlab/migrations/0028_remove_combinationperturbation_compounds_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/wetlab/wetlab/migrations/0029_artifactbiologic_biologic_artifactbiologic_biologic.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/wetlab/wetlab/migrations/0030_lamindbv1.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/wetlab/wetlab/migrations/0031_alter_biologic_space_alter_biosample_space_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/wetlab/wetlab/migrations/0032_rename_aux_biologic__aux_rename_aux_biosample__aux_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/wetlab/wetlab/migrations/0033_alter_biologic__aux_alter_biosample__aux_and_more.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/wetlab/wetlab/migrations/0034_lamindbv1_part6.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/wetlab/wetlab/migrations/__init__.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/wetlab/wetlab/models.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/sub/wetlab/wetlab/types.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/conftest.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/notebooks/basic-r-notebook.Rmd.cleaned.html +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/notebooks/basic-r-notebook.Rmd.html +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/notebooks/duplicate/with-title-initialized-consecutive-finish.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/notebooks/no-title.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/notebooks/with-title-initialized-consecutive-finish-not-last-cell.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/notebooks/with-title-initialized-consecutive-finish.ipynb +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/scripts/duplicate1/script-to-test-versioning.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/scripts/duplicate2/script-to-test-versioning.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/scripts/duplicate3/script-to-test-versioning.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/scripts/duplicate4/script-to-test-versioning.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/scripts/script-to-test-filename-change.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/scripts/script-to-test-versioning.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/test_artifact.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/test_artifact_folders.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/test_cache.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/test_can_validate.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/test_collection.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/test_context.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/test_data.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/test_db.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/test_delete.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/test_describe_and_df_calls.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/test_feature.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/test_feature_label_manager.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/test_from_values.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/test_integrity.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/test_load.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/test_manager.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/test_models.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/test_notebooks.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/test_parents.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/test_queryset.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/test_record.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/test_run.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/test_save.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/test_schema.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/test_search.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/test_settings.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/test_transform.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/test_uid.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/test_ulabel.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/test_versioning.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/test_view.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/core/test_visibility.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/curators/conftest.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/curators/test_curator.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/storage/conftest.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/storage/test_storage.py +0 -0
- {lamindb-1.0.1 → lamindb-1.0.3}/tests/storage/test_transfer.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.3
|
2
2
|
Name: lamindb
|
3
|
-
Version: 1.0.
|
3
|
+
Version: 1.0.3
|
4
4
|
Summary: A data framework for biology.
|
5
5
|
Author-email: Lamin Labs <open-source@lamin.ai>
|
6
6
|
Requires-Python: >=3.10,<3.13
|
@@ -9,7 +9,7 @@ Classifier: Programming Language :: Python :: 3.10
|
|
9
9
|
Classifier: Programming Language :: Python :: 3.11
|
10
10
|
Classifier: Programming Language :: Python :: 3.12
|
11
11
|
Requires-Dist: lamin_utils==0.13.10
|
12
|
-
Requires-Dist: lamin_cli==1.0.
|
12
|
+
Requires-Dist: lamin_cli==1.0.4
|
13
13
|
Requires-Dist: lamindb_setup[aws]==1.0.3
|
14
14
|
Requires-Dist: pyarrow
|
15
15
|
Requires-Dist: typing_extensions!=4.6.0
|
@@ -53,7 +53,7 @@ Modules and settings.
|
|
53
53
|
"""
|
54
54
|
|
55
55
|
# denote a release candidate for 0.1.0 with 0.1rc1, 0.1a1, 0.1b1, etc.
|
56
|
-
__version__ = "1.0.
|
56
|
+
__version__ = "1.0.3"
|
57
57
|
|
58
58
|
from lamindb_setup._check_setup import InstanceNotSetupError as _InstanceNotSetupError
|
59
59
|
from lamindb_setup._check_setup import _check_instance_setup
|
@@ -118,9 +118,8 @@ def notebook_to_script(
|
|
118
118
|
def clean_r_notebook_html(file_path: Path) -> tuple[str | None, Path]:
|
119
119
|
import re
|
120
120
|
|
121
|
-
cleaned_content = (
|
122
|
-
|
123
|
-
) # at this point cleaned_content is still raw
|
121
|
+
cleaned_content = file_path.read_text()
|
122
|
+
# remove title from content
|
124
123
|
pattern_title = r"<title>(.*?)</title>"
|
125
124
|
title_match = re.search(pattern_title, cleaned_content)
|
126
125
|
title_text = None
|
@@ -129,9 +128,18 @@ def clean_r_notebook_html(file_path: Path) -> tuple[str | None, Path]:
|
|
129
128
|
pattern_h1 = f"<h1[^>]*>{re.escape(title_text)}</h1>"
|
130
129
|
cleaned_content = re.sub(pattern_title, "", cleaned_content)
|
131
130
|
cleaned_content = re.sub(pattern_h1, "", cleaned_content)
|
132
|
-
|
133
|
-
|
134
|
-
|
131
|
+
# remove error message from content
|
132
|
+
if "NotebookNotSaved" in cleaned_content:
|
133
|
+
orig_error_message = f"NotebookNotSaved: {get_save_notebook_message()}"
|
134
|
+
# coming up with the regex for this is a bit tricky due to all the
|
135
|
+
# escape characters we'd need to insert into the message; hence,
|
136
|
+
# we do this with a replace() instead
|
137
|
+
cleaned_content = cleaned_content.replace(orig_error_message, "")
|
138
|
+
if "NotebookNotSaved" in cleaned_content:
|
139
|
+
orig_error_message = orig_error_message.replace(
|
140
|
+
" `finish()`", "\n`finish()`"
|
141
|
+
) # RStudio might insert a newline
|
142
|
+
cleaned_content = cleaned_content.replace(orig_error_message, "")
|
135
143
|
cleaned_path = file_path.parent / (f"{file_path.stem}.cleaned{file_path.suffix}")
|
136
144
|
cleaned_path.write_text(cleaned_content)
|
137
145
|
return title_text, cleaned_path
|
@@ -151,8 +159,6 @@ def save_context_core(
|
|
151
159
|
format_field_value, # needs to come after lamindb was imported because of CLI use
|
152
160
|
)
|
153
161
|
|
154
|
-
from .core._context import context
|
155
|
-
|
156
162
|
ln.settings.verbosity = "success"
|
157
163
|
|
158
164
|
# for scripts, things are easy
|
@@ -202,7 +208,7 @@ def save_context_core(
|
|
202
208
|
report_path = filepath.with_suffix(".html")
|
203
209
|
else:
|
204
210
|
logger.warning(
|
205
|
-
f"no
|
211
|
+
f"no html report found; to attach one, create an .html export for your {filepath.suffix} file and then run: lamin save {filepath}"
|
206
212
|
)
|
207
213
|
if report_path is not None and not from_cli:
|
208
214
|
if get_seconds_since_modified(report_path) > 2 and not ln_setup._TESTING:
|
@@ -292,10 +298,13 @@ def save_context_core(
|
|
292
298
|
)
|
293
299
|
report_file.save(upload=True, print_progress=False)
|
294
300
|
run.report = report_file
|
301
|
+
if is_r_notebook:
|
302
|
+
# this is the "cleaned" report
|
303
|
+
report_path.unlink()
|
295
304
|
logger.debug(
|
296
305
|
f"saved transform.latest_run.report: {transform.latest_run.report}"
|
297
306
|
)
|
298
|
-
run.
|
307
|
+
run._is_consecutive = is_consecutive
|
299
308
|
|
300
309
|
# save both run & transform records if we arrive here
|
301
310
|
run.save()
|
@@ -324,7 +333,4 @@ def save_context_core(
|
|
324
333
|
logger.important(
|
325
334
|
f"if you want to update your {thing} without re-running it, use `lamin save {filepath}`"
|
326
335
|
)
|
327
|
-
# because run & transform changed, update the global context
|
328
|
-
context._run = run
|
329
|
-
context._transform = transform
|
330
336
|
return None
|
@@ -395,6 +395,11 @@ class Context:
|
|
395
395
|
path = Path(module.__file__)
|
396
396
|
else:
|
397
397
|
path = Path(path)
|
398
|
+
# for Rmd and qmd, we could also extract the title
|
399
|
+
# we don't do this for now as we're setting the title upon `ln.finish()` or `lamin save`
|
400
|
+
# by extracting it from the html while cleaning it: see clean_r_notebook_html()
|
401
|
+
# also see the script_to_notebook() in the CLI _load.py where the title is extracted
|
402
|
+
# from the source code YAML and updated with the transform description
|
398
403
|
transform_type = "notebook" if path.suffix in {".Rmd", ".qmd"} else "script"
|
399
404
|
reference = None
|
400
405
|
reference_type = None
|
@@ -489,14 +494,30 @@ class Context:
|
|
489
494
|
if aux_transform.key in self._path.as_posix():
|
490
495
|
key = aux_transform.key
|
491
496
|
if (
|
497
|
+
# if the transform source code wasn't yet saved
|
492
498
|
aux_transform.source_code is None
|
493
|
-
|
499
|
+
# if the transform source code is unchanged
|
500
|
+
# if aux_transform.type == "notebook", we anticipate the user makes changes to the notebook source code
|
501
|
+
# in an interactive session, hence we *pro-actively bump* the version number by setting `revises`
|
502
|
+
# in the second part of the if condition even though the source code is unchanged at point of running track()
|
503
|
+
or (
|
504
|
+
aux_transform.hash == hash
|
505
|
+
and aux_transform.type != "notebook"
|
506
|
+
)
|
494
507
|
):
|
495
508
|
uid = aux_transform.uid
|
496
509
|
target_transform = aux_transform
|
497
510
|
else:
|
498
511
|
uid = f"{aux_transform.uid[:-4]}{increment_base62(aux_transform.uid[-4:])}"
|
499
|
-
message = f"there already is a
|
512
|
+
message = f"there already is a {aux_transform.type} with `key` '{aux_transform.key}'"
|
513
|
+
if (
|
514
|
+
aux_transform.hash == hash
|
515
|
+
and aux_transform.type == "notebook"
|
516
|
+
):
|
517
|
+
message += " -- notebook source code is unchanged, but anticipating changes during this run"
|
518
|
+
elif aux_transform.hash != hash:
|
519
|
+
message += " -- source code changed"
|
520
|
+
message += f", creating new version '{uid}'"
|
500
521
|
revises = aux_transform
|
501
522
|
found_key = True
|
502
523
|
break
|
@@ -508,7 +529,7 @@ class Context:
|
|
508
529
|
for transform in transforms
|
509
530
|
]
|
510
531
|
)
|
511
|
-
message = f"ignoring transform{plural_s} with same
|
532
|
+
message = f"ignoring transform{plural_s} with same filename:\n{transforms_str}"
|
512
533
|
if message != "":
|
513
534
|
logger.important(message)
|
514
535
|
self.uid, transform = uid, target_transform
|
@@ -581,7 +602,7 @@ class Context:
|
|
581
602
|
# check whether the transform.key is consistent
|
582
603
|
if transform.key != key:
|
583
604
|
raise UpdateContext(get_key_clashing_message(transform, key))
|
584
|
-
elif transform.description != description:
|
605
|
+
elif transform.description != description and description is not None:
|
585
606
|
transform.description = description
|
586
607
|
transform.save()
|
587
608
|
self._logging_message_track += (
|
@@ -597,7 +618,9 @@ class Context:
|
|
597
618
|
# check whether transform source code was already saved
|
598
619
|
if transform_was_saved:
|
599
620
|
bump_revision = False
|
600
|
-
if
|
621
|
+
if transform.type == "notebook":
|
622
|
+
# we anticipate the user makes changes to the notebook source code
|
623
|
+
# in an interactive session, hence we pro-actively bump the version number
|
601
624
|
bump_revision = True
|
602
625
|
else:
|
603
626
|
hash, _ = hash_file(self._path) # ignore hash_type for now
|
@@ -609,12 +632,12 @@ class Context:
|
|
609
632
|
)
|
610
633
|
if bump_revision:
|
611
634
|
change_type = (
|
612
|
-
"re-running saved
|
613
|
-
if
|
635
|
+
"re-running notebook with already-saved source code"
|
636
|
+
if transform.type == "notebook"
|
614
637
|
else "source code changed"
|
615
638
|
)
|
616
639
|
raise UpdateContext(
|
617
|
-
f'✗ {change_type},
|
640
|
+
f'✗ {change_type}, please update the `uid` argument in `track()` to "{uid[:-4]}{increment_base62(uid[-4:])}"'
|
618
641
|
)
|
619
642
|
else:
|
620
643
|
self._logging_message_track += f"loaded Transform('{transform.uid}')"
|
@@ -683,6 +706,13 @@ class Context:
|
|
683
706
|
)
|
684
707
|
if self.transform.type != "notebook":
|
685
708
|
self._stream_tracker.finish()
|
709
|
+
# reset the context attributes so that somebody who runs `track()` after finish
|
710
|
+
# starts fresh
|
711
|
+
self._uid = None
|
712
|
+
self._run = None
|
713
|
+
self._transform = None
|
714
|
+
self._version = None
|
715
|
+
self._description = None
|
686
716
|
|
687
717
|
|
688
718
|
context = Context()
|
@@ -13,6 +13,7 @@ from lamin_utils import colors, logger
|
|
13
13
|
from lamindb_setup.core._docs import doc_args
|
14
14
|
from lamindb_setup.core.upath import UPath
|
15
15
|
|
16
|
+
from lamindb.base.types import FieldAttr # noqa
|
16
17
|
from lamindb.models import (
|
17
18
|
Artifact,
|
18
19
|
Feature,
|
@@ -31,11 +32,6 @@ if TYPE_CHECKING:
|
|
31
32
|
|
32
33
|
from lamindb_setup.core.types import UPathStr
|
33
34
|
from mudata import MuData
|
34
|
-
from spatialdata import SpatialData
|
35
|
-
|
36
|
-
from lamindb.base.types import FieldAttr
|
37
|
-
|
38
|
-
from ._spatial import SpatialDataCurator
|
39
35
|
|
40
36
|
|
41
37
|
class CurateLookup:
|
@@ -1720,7 +1716,7 @@ class Curator(BaseCurator):
|
|
1720
1716
|
@classmethod
|
1721
1717
|
def from_spatialdata(
|
1722
1718
|
cls,
|
1723
|
-
sdata
|
1719
|
+
sdata,
|
1724
1720
|
var_index: dict[str, FieldAttr],
|
1725
1721
|
categoricals: dict[str, dict[str, FieldAttr]] | None = None,
|
1726
1722
|
using_key: str | None = None,
|
@@ -1730,7 +1726,7 @@ class Curator(BaseCurator):
|
|
1730
1726
|
verbosity: str = "hint",
|
1731
1727
|
*,
|
1732
1728
|
sample_metadata_key: str = "sample",
|
1733
|
-
)
|
1729
|
+
):
|
1734
1730
|
"""Curation flow for a ``Spatialdata`` object.
|
1735
1731
|
|
1736
1732
|
See also :class:`~lamindb.Curator`.
|