lamindb 0.77.0__tar.gz → 0.77.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.
Files changed (583) hide show
  1. lamindb-0.77.2/.github/ISSUE_TEMPLATE/bug_report.yml +15 -0
  2. {lamindb-0.77.0 → lamindb-0.77.2}/.github/ISSUE_TEMPLATE/config.yml +2 -2
  3. lamindb-0.77.2/.github/ISSUE_TEMPLATE/enhancement.yml +12 -0
  4. lamindb-0.77.2/.github/ISSUE_TEMPLATE/usage_question.yml +14 -0
  5. {lamindb-0.77.0 → lamindb-0.77.2}/.gitignore +1 -0
  6. {lamindb-0.77.0 → lamindb-0.77.2}/.pre-commit-config.yaml +5 -1
  7. {lamindb-0.77.0 → lamindb-0.77.2}/PKG-INFO +7 -8
  8. {lamindb-0.77.0 → lamindb-0.77.2}/docs/arrays.ipynb +1 -1
  9. {lamindb-0.77.0 → lamindb-0.77.2}/docs/bio-registries.ipynb +1 -1
  10. {lamindb-0.77.0 → lamindb-0.77.2}/docs/curate-df.ipynb +137 -44
  11. {lamindb-0.77.0 → lamindb-0.77.2}/docs/curate-subclass.ipynb +2 -2
  12. {lamindb-0.77.0 → lamindb-0.77.2}/docs/ehrcurator.py +1 -1
  13. {lamindb-0.77.0 → lamindb-0.77.2}/docs/faq/search.ipynb +53 -41
  14. {lamindb-0.77.0 → lamindb-0.77.2}/docs/faq/symbol-mapping.ipynb +16 -13
  15. {lamindb-0.77.0 → lamindb-0.77.2}/docs/faq/track-run-inputs.ipynb +27 -0
  16. {lamindb-0.77.0 → lamindb-0.77.2}/docs/guide.md +0 -9
  17. {lamindb-0.77.0 → lamindb-0.77.2}/docs/registries.ipynb +239 -125
  18. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/__init__.py +1 -1
  19. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/_artifact.py +6 -3
  20. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/_can_curate.py +3 -1
  21. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/_collection.py +1 -1
  22. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/_curate.py +387 -318
  23. lamindb-0.77.2/lamindb/_feature.py +180 -0
  24. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/_feature_set.py +6 -4
  25. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/_finish.py +68 -13
  26. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/_from_values.py +10 -6
  27. lamindb-0.77.2/lamindb/_query_set.py +632 -0
  28. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/_record.py +5 -3
  29. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/_save.py +1 -0
  30. lamindb-0.77.2/lamindb/_view.py +168 -0
  31. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/core/__init__.py +2 -2
  32. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/core/_context.py +9 -13
  33. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/core/_data.py +58 -88
  34. lamindb-0.77.2/lamindb/core/_describe.py +139 -0
  35. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/core/_django.py +5 -6
  36. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/core/_feature_manager.py +408 -198
  37. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/core/_label_manager.py +147 -109
  38. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/core/datasets/__init__.py +31 -2
  39. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/core/datasets/_core.py +0 -27
  40. lamindb-0.77.2/lamindb/core/datasets/_small.py +100 -0
  41. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/core/exceptions.py +1 -1
  42. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/core/storage/paths.py +9 -4
  43. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/core/types.py +12 -2
  44. {lamindb-0.77.0 → lamindb-0.77.2}/noxfile.py +4 -4
  45. {lamindb-0.77.0 → lamindb-0.77.2}/pyproject.toml +6 -8
  46. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/.gitignore +5 -0
  47. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/__init__.py +2 -3
  48. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/base/_public_ontology.py +15 -14
  49. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/pyproject.toml +2 -1
  50. {lamindb-0.77.0 → lamindb-0.77.2}/sub/cellregistry/cellregistry/__init__.py +1 -1
  51. {lamindb-0.77.0 → lamindb-0.77.2}/sub/cellregistry/cellregistry/models.py +4 -4
  52. {lamindb-0.77.0 → lamindb-0.77.2}/sub/cellregistry/pyproject.toml +1 -1
  53. {lamindb-0.77.0 → lamindb-0.77.2}/sub/clinicore/clinicore/__init__.py +1 -1
  54. {lamindb-0.77.0 → lamindb-0.77.2}/sub/clinicore/clinicore/migrations/0007_alter_artifactbiosample_artifact_and_more.py +0 -1
  55. {lamindb-0.77.0 → lamindb-0.77.2}/sub/clinicore/clinicore/models.py +19 -27
  56. {lamindb-0.77.0 → lamindb-0.77.2}/sub/clinicore/docs/quickstart.ipynb +12 -10
  57. {lamindb-0.77.0 → lamindb-0.77.2}/sub/clinicore/pyproject.toml +5 -5
  58. {lamindb-0.77.0 → lamindb-0.77.2}/sub/findrefs/findrefs/__init__.py +1 -1
  59. {lamindb-0.77.0 → lamindb-0.77.2}/sub/findrefs/pyproject.toml +1 -1
  60. lamindb-0.77.2/sub/lamin-cli/lamin_cli/__init__.py +3 -0
  61. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamin-cli/lamin_cli/_load.py +33 -13
  62. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamin-cli/lamin_cli/_save.py +17 -18
  63. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamin-cli/pyproject.toml +0 -3
  64. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamin-cli/tests/test_save_scripts.py +0 -3
  65. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/docs/hub-cloud/05-init-hosted-instance.ipynb +21 -1
  66. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/docs/hub-cloud/06-connect-hosted-instance.ipynb +55 -2
  67. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/__init__.py +1 -1
  68. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/core/_setup_bionty_sources.py +18 -3
  69. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/core/upath.py +2 -0
  70. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/tests/hub-cloud/test_fail_managed_storage.py +1 -7
  71. lamindb-0.77.2/sub/lamindb-setup/tests/hub-cloud/test_init_pass_user_no_writes.py +31 -0
  72. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/lnschema_core/__init__.py +1 -1
  73. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/lnschema_core/fields.py +1 -0
  74. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/lnschema_core/mocks.py +1 -1
  75. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/lnschema_core/models.py +213 -162
  76. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/lnschema_core/types.py +11 -0
  77. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/lnschema_core/validation.py +5 -1
  78. {lamindb-0.77.0 → lamindb-0.77.2}/sub/omop/docs/changelog.md +1 -0
  79. {lamindb-0.77.0 → lamindb-0.77.2}/sub/omop/omop/__init__.py +1 -1
  80. {lamindb-0.77.0 → lamindb-0.77.2}/sub/omop/omop/models.py +293 -376
  81. {lamindb-0.77.0 → lamindb-0.77.2}/sub/omop/pyproject.toml +1 -1
  82. {lamindb-0.77.0 → lamindb-0.77.2}/sub/ourprojects/.github/workflows/doc-changes.yml +1 -1
  83. {lamindb-0.77.0 → lamindb-0.77.2}/sub/ourprojects/.gitignore +2 -0
  84. {lamindb-0.77.0 → lamindb-0.77.2}/sub/ourprojects/ourprojects/__init__.py +4 -2
  85. lamindb-0.77.2/sub/ourprojects/ourprojects/migrations/0001_initial.py +501 -0
  86. lamindb-0.77.2/sub/ourprojects/ourprojects/models.py +199 -0
  87. {lamindb-0.77.0 → lamindb-0.77.2}/sub/ourprojects/pyproject.toml +1 -1
  88. {lamindb-0.77.0 → lamindb-0.77.2}/sub/wetlab/docs/guide/modeling_perturbations.ipynb +3 -3
  89. {lamindb-0.77.0 → lamindb-0.77.2}/sub/wetlab/pyproject.toml +1 -2
  90. {lamindb-0.77.0 → lamindb-0.77.2}/sub/wetlab/wetlab/__init__.py +1 -1
  91. {lamindb-0.77.0 → lamindb-0.77.2}/sub/wetlab/wetlab/models.py +2 -2
  92. lamindb-0.77.2/tests/core/notebooks/basic-r-notebook.Rmd.cleaned.html +42 -0
  93. lamindb-0.77.2/tests/core/notebooks/basic-r-notebook.Rmd.html +42 -0
  94. {lamindb-0.77.0 → lamindb-0.77.2}/tests/core/test_artifact.py +8 -0
  95. {lamindb-0.77.0 → lamindb-0.77.2}/tests/core/test_collection.py +3 -1
  96. {lamindb-0.77.0 → lamindb-0.77.2}/tests/core/test_context.py +26 -13
  97. {lamindb-0.77.0 → lamindb-0.77.2}/tests/core/test_curate.py +122 -18
  98. lamindb-0.77.2/tests/core/test_curate_annotate_df.py +145 -0
  99. {lamindb-0.77.0 → lamindb-0.77.2}/tests/core/test_feature.py +53 -62
  100. lamindb-0.77.0/tests/core/test_feature_manager.py → lamindb-0.77.2/tests/core/test_feature_label_manager.py +217 -58
  101. {lamindb-0.77.0 → lamindb-0.77.2}/tests/core/test_feature_set.py +1 -1
  102. {lamindb-0.77.0 → lamindb-0.77.2}/tests/core/test_queryset.py +23 -38
  103. lamindb-0.77.0/.github/ISSUE_TEMPLATE/bug_report.yml +0 -95
  104. lamindb-0.77.0/.github/ISSUE_TEMPLATE/feature_request.yml +0 -20
  105. lamindb-0.77.0/.github/ISSUE_TEMPLATE/usage_question.yml +0 -20
  106. lamindb-0.77.0/docs/includes/features-lamindb.md +0 -1
  107. lamindb-0.77.0/docs/includes/features-laminhub.md +0 -1
  108. lamindb-0.77.0/docs/introduction.ipynb +0 -34
  109. lamindb-0.77.0/docs/tutorial.ipynb +0 -962
  110. lamindb-0.77.0/docs/tutorial2.ipynb +0 -864
  111. lamindb-0.77.0/lamindb/_feature.py +0 -154
  112. lamindb-0.77.0/lamindb/_query_set.py +0 -413
  113. lamindb-0.77.0/lamindb/_view.py +0 -72
  114. lamindb-0.77.0/sub/bionty/lamin-project.yaml +0 -5
  115. lamindb-0.77.0/sub/lamin-cli/lamin_cli/__init__.py +0 -3
  116. lamindb-0.77.0/sub/lamindb-setup/tests/hub-cloud/test_init_pass_user_no_writes.py +0 -17
  117. lamindb-0.77.0/sub/ourprojects/ourprojects/migrations/0001_initial.py +0 -139
  118. lamindb-0.77.0/sub/ourprojects/ourprojects/migrations/0002_alter_artifactproject_artifact_and_more.py +0 -162
  119. lamindb-0.77.0/sub/ourprojects/ourprojects/models.py +0 -68
  120. lamindb-0.77.0/tests/core/test_label_manager.py +0 -53
  121. {lamindb-0.77.0 → lamindb-0.77.2}/.github/workflows/build.yml +0 -0
  122. {lamindb-0.77.0 → lamindb-0.77.2}/.github/workflows/doc-changes.yml +0 -0
  123. {lamindb-0.77.0 → lamindb-0.77.2}/.gitmodules +0 -0
  124. {lamindb-0.77.0 → lamindb-0.77.2}/CONTRIBUTING.md +0 -0
  125. {lamindb-0.77.0 → lamindb-0.77.2}/LICENSE +0 -0
  126. {lamindb-0.77.0 → lamindb-0.77.2}/README.md +0 -0
  127. {lamindb-0.77.0 → lamindb-0.77.2}/docs/api.md +0 -0
  128. {lamindb-0.77.0 → lamindb-0.77.2}/docs/bionty.md +0 -0
  129. {lamindb-0.77.0 → lamindb-0.77.2}/docs/cellregistry.md +0 -0
  130. {lamindb-0.77.0 → lamindb-0.77.2}/docs/changelog.md +0 -0
  131. {lamindb-0.77.0 → lamindb-0.77.2}/docs/clinicore.md +0 -0
  132. {lamindb-0.77.0 → lamindb-0.77.2}/docs/curate-any.ipynb +0 -0
  133. {lamindb-0.77.0 → lamindb-0.77.2}/docs/curate.md +0 -0
  134. {lamindb-0.77.0 → lamindb-0.77.2}/docs/faq/acid.ipynb +0 -0
  135. {lamindb-0.77.0 → lamindb-0.77.2}/docs/faq/delete.ipynb +0 -0
  136. {lamindb-0.77.0 → lamindb-0.77.2}/docs/faq/idempotency.ipynb +0 -0
  137. {lamindb-0.77.0 → lamindb-0.77.2}/docs/faq/import-schema.ipynb +0 -0
  138. {lamindb-0.77.0 → lamindb-0.77.2}/docs/faq/keep-artifacts-local.ipynb +0 -0
  139. {lamindb-0.77.0 → lamindb-0.77.2}/docs/faq/key.ipynb +0 -0
  140. {lamindb-0.77.0 → lamindb-0.77.2}/docs/faq/reference-field.ipynb +0 -0
  141. {lamindb-0.77.0 → lamindb-0.77.2}/docs/faq/setup.ipynb +0 -0
  142. {lamindb-0.77.0 → lamindb-0.77.2}/docs/faq/test_notebooks.py +0 -0
  143. {lamindb-0.77.0 → lamindb-0.77.2}/docs/faq/validate-fields.ipynb +0 -0
  144. {lamindb-0.77.0 → lamindb-0.77.2}/docs/faq/visibility.ipynb +0 -0
  145. {lamindb-0.77.0 → lamindb-0.77.2}/docs/faq.md +0 -0
  146. {lamindb-0.77.0 → lamindb-0.77.2}/docs/findrefs.md +0 -0
  147. {lamindb-0.77.0 → lamindb-0.77.2}/docs/includes/installation.md +0 -0
  148. {lamindb-0.77.0 → lamindb-0.77.2}/docs/index.md +0 -0
  149. {lamindb-0.77.0 → lamindb-0.77.2}/docs/lamindb.md +0 -0
  150. {lamindb-0.77.0 → lamindb-0.77.2}/docs/laminr.md +0 -0
  151. {lamindb-0.77.0 → lamindb-0.77.2}/docs/omop.md +0 -0
  152. {lamindb-0.77.0 → lamindb-0.77.2}/docs/ourprojects.md +0 -0
  153. {lamindb-0.77.0 → lamindb-0.77.2}/docs/query-search.md +0 -0
  154. {lamindb-0.77.0 → lamindb-0.77.2}/docs/rest.md +0 -0
  155. {lamindb-0.77.0 → lamindb-0.77.2}/docs/schemas.ipynb +0 -0
  156. {lamindb-0.77.0 → lamindb-0.77.2}/docs/scripts/run-track-with-params.py +0 -0
  157. {lamindb-0.77.0 → lamindb-0.77.2}/docs/scripts/synced-with-git.py +0 -0
  158. {lamindb-0.77.0 → lamindb-0.77.2}/docs/setup.ipynb +0 -0
  159. {lamindb-0.77.0 → lamindb-0.77.2}/docs/signup-login.md +0 -0
  160. {lamindb-0.77.0 → lamindb-0.77.2}/docs/storage/add-replace-cache.ipynb +0 -0
  161. {lamindb-0.77.0 → lamindb-0.77.2}/docs/storage/anndata-accessor.ipynb +0 -0
  162. {lamindb-0.77.0 → lamindb-0.77.2}/docs/storage/prepare-transfer-local-to-cloud.ipynb +0 -0
  163. {lamindb-0.77.0 → lamindb-0.77.2}/docs/storage/test-files/iris.csv +0 -0
  164. {lamindb-0.77.0 → lamindb-0.77.2}/docs/storage/test-files/iris.data +0 -0
  165. {lamindb-0.77.0 → lamindb-0.77.2}/docs/storage/test-files/new_iris.csv +0 -0
  166. {lamindb-0.77.0 → lamindb-0.77.2}/docs/storage/test_notebooks.py +0 -0
  167. {lamindb-0.77.0 → lamindb-0.77.2}/docs/storage/transfer-local-to-cloud.ipynb +0 -0
  168. {lamindb-0.77.0 → lamindb-0.77.2}/docs/storage/upload.ipynb +0 -0
  169. {lamindb-0.77.0 → lamindb-0.77.2}/docs/storage/vitessce.ipynb +0 -0
  170. {lamindb-0.77.0 → lamindb-0.77.2}/docs/storage.md +0 -0
  171. {lamindb-0.77.0 → lamindb-0.77.2}/docs/test_notebooks.py +0 -0
  172. {lamindb-0.77.0 → lamindb-0.77.2}/docs/track.ipynb +0 -0
  173. {lamindb-0.77.0 → lamindb-0.77.2}/docs/transfer.ipynb +0 -0
  174. {lamindb-0.77.0 → lamindb-0.77.2}/docs/wetlab.md +0 -0
  175. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/_is_versioned.py +0 -0
  176. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/_parents.py +0 -0
  177. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/_query_manager.py +0 -0
  178. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/_run.py +0 -0
  179. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/_storage.py +0 -0
  180. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/_transform.py +0 -0
  181. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/_ulabel.py +0 -0
  182. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/_utils.py +0 -0
  183. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/core/_mapped_collection.py +0 -0
  184. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/core/_settings.py +0 -0
  185. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/core/_sync_git.py +0 -0
  186. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/core/_track_environment.py +0 -0
  187. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/core/datasets/_fake.py +0 -0
  188. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/core/fields.py +0 -0
  189. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/core/loaders.py +0 -0
  190. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/core/schema.py +0 -0
  191. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/core/storage/__init__.py +0 -0
  192. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/core/storage/_anndata_accessor.py +0 -0
  193. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/core/storage/_anndata_sizes.py +0 -0
  194. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/core/storage/_backed_access.py +0 -0
  195. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/core/storage/_pyarrow_dataset.py +0 -0
  196. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/core/storage/_tiledbsoma.py +0 -0
  197. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/core/storage/_valid_suffixes.py +0 -0
  198. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/core/storage/_zarr.py +0 -0
  199. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/core/storage/objects.py +0 -0
  200. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/core/subsettings/__init__.py +0 -0
  201. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/core/subsettings/_creation_settings.py +0 -0
  202. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/core/subsettings/_transform_settings.py +0 -0
  203. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/core/versioning.py +0 -0
  204. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/integrations/__init__.py +0 -0
  205. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/integrations/_vitessce.py +0 -0
  206. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/setup/__init__.py +0 -0
  207. {lamindb-0.77.0 → lamindb-0.77.2}/lamindb/setup/core/__init__.py +0 -0
  208. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/.github/workflows/build.yml +0 -0
  209. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/.github/workflows/doc-changes.yml +0 -0
  210. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/.github/workflows/update_ontologies.yml +0 -0
  211. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/.pre-commit-config.yaml +0 -0
  212. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/LICENSE +0 -0
  213. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/README.md +0 -0
  214. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/_bionty.py +0 -0
  215. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/base/__init__.py +0 -0
  216. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/base/_display_sources.py +0 -0
  217. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/base/_ontology.py +0 -0
  218. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/base/_settings.py +0 -0
  219. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/base/_sync_sources.py +0 -0
  220. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/base/dev/__init__.py +0 -0
  221. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/base/dev/_handle_sources.py +0 -0
  222. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/base/dev/_io.py +0 -0
  223. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/base/dev/_md5.py +0 -0
  224. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/base/entities/__init__.py +0 -0
  225. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/base/entities/_bfxpipeline.py +0 -0
  226. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/base/entities/_biosample.py +0 -0
  227. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/base/entities/_cellline.py +0 -0
  228. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/base/entities/_cellmarker.py +0 -0
  229. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/base/entities/_celltype.py +0 -0
  230. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/base/entities/_developmentalstage.py +0 -0
  231. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/base/entities/_disease.py +0 -0
  232. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/base/entities/_drug.py +0 -0
  233. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/base/entities/_ethnicity.py +0 -0
  234. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/base/entities/_experimentalfactor.py +0 -0
  235. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/base/entities/_gene.py +0 -0
  236. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/base/entities/_organism.py +0 -0
  237. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/base/entities/_pathway.py +0 -0
  238. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/base/entities/_phenotype.py +0 -0
  239. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/base/entities/_protein.py +0 -0
  240. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/base/entities/_shared_docstrings.py +0 -0
  241. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/base/entities/_tissue.py +0 -0
  242. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/base/scripts/bfxpipelines_info/custom_pipelines.json +0 -0
  243. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/base/scripts/check_ontologies_reachable.py +0 -0
  244. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/base/scripts/determine_md5s.py +0 -0
  245. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/base/scripts/generate_bfxpipelines.py +0 -0
  246. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/base/scripts/update_new_ontologies.py +0 -0
  247. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/base/scripts/upload_new_ontologies.py +0 -0
  248. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/base/sources.yaml +0 -0
  249. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/core/__init__.py +0 -0
  250. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/core/_add_ontology.py +0 -0
  251. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/core/_bionty.py +0 -0
  252. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/core/_settings.py +0 -0
  253. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/ids.py +0 -0
  254. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/migrations/0028_squashed.py +0 -0
  255. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/migrations/0029_alter_cellline_previous_runs_and_more.py +0 -0
  256. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/migrations/0030_rename_publicsource_source_and_more.py +0 -0
  257. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/migrations/0031_alter_cellmarker_name_and_more.py +0 -0
  258. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/migrations/0032_rename_source_name_source_description_and_more.py +0 -0
  259. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/migrations/0033_alter_artifactcellline_artifact_and_more.py +0 -0
  260. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/migrations/0034_alter_source_unique_together.py +0 -0
  261. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/migrations/0035_alter_protein_gene_symbol.py +0 -0
  262. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/migrations/0036_alter_source_artifacts_and_more.py +0 -0
  263. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/migrations/0037_alter_cellline_source_alter_cellmarker_source_and_more.py +0 -0
  264. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/migrations/0038_alter_artifactcellline_created_by_and_more.py +0 -0
  265. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/migrations/0039_alter_cellline_source_alter_cellmarker_source_and_more.py +0 -0
  266. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/migrations/0040_rename_feature_ref_is_symbol_artifactgene_feature_ref_is_name_and_more.py +0 -0
  267. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/migrations/0041_alter_artifactcellline_artifact_and_more.py +0 -0
  268. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/migrations/0041_squashed.py +0 -0
  269. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/migrations/__init__.py +0 -0
  270. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/bionty/models.py +0 -0
  271. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/docs/guide/concepts.md +0 -0
  272. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/docs/guide/config.md +0 -0
  273. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/docs/guide/extend.md +0 -0
  274. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/docs/guide/test_notebooks.py +0 -0
  275. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/docs/guide.md +0 -0
  276. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/docs/index.md +0 -0
  277. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/docs/reference.md +0 -0
  278. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/noxfile.py +0 -0
  279. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/tests/dev/test_handle_sources.py +0 -0
  280. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/tests/dev/test_io.py +0 -0
  281. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/tests/entities/test_bfxpipeline.py +0 -0
  282. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/tests/entities/test_biosample.py +0 -0
  283. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/tests/entities/test_cellline.py +0 -0
  284. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/tests/entities/test_cellmarker.py +0 -0
  285. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/tests/entities/test_celltype.py +0 -0
  286. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/tests/entities/test_developmentalstage.py +0 -0
  287. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/tests/entities/test_disease.py +0 -0
  288. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/tests/entities/test_drug.py +0 -0
  289. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/tests/entities/test_ethnicity.py +0 -0
  290. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/tests/entities/test_experimentalfactor.py +0 -0
  291. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/tests/entities/test_gene.py +0 -0
  292. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/tests/entities/test_organism.py +0 -0
  293. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/tests/entities/test_pathway.py +0 -0
  294. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/tests/entities/test_phenotype.py +0 -0
  295. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/tests/entities/test_protein.py +0 -0
  296. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/tests/entities/test_tissue.py +0 -0
  297. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/tests/test_bionty.py +0 -0
  298. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/tests/test_lamindb.py +0 -0
  299. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/tests/test_md5.py +0 -0
  300. {lamindb-0.77.0 → lamindb-0.77.2}/sub/bionty/tests/test_ontology.py +0 -0
  301. {lamindb-0.77.0 → lamindb-0.77.2}/sub/cellregistry/.github/workflows/build.yml +0 -0
  302. {lamindb-0.77.0 → lamindb-0.77.2}/sub/cellregistry/.github/workflows/doc-changes.yml +0 -0
  303. {lamindb-0.77.0 → lamindb-0.77.2}/sub/cellregistry/.gitignore +0 -0
  304. {lamindb-0.77.0 → lamindb-0.77.2}/sub/cellregistry/.pre-commit-config.yaml +0 -0
  305. {lamindb-0.77.0 → lamindb-0.77.2}/sub/cellregistry/LICENSE +0 -0
  306. {lamindb-0.77.0 → lamindb-0.77.2}/sub/cellregistry/README.md +0 -0
  307. {lamindb-0.77.0 → lamindb-0.77.2}/sub/cellregistry/cellregistry/migrations/0001_initial.py +0 -0
  308. {lamindb-0.77.0 → lamindb-0.77.2}/sub/cellregistry/cellregistry/migrations/0002_alter_artifactcell_artifact_alter_artifactcell_cell_and_more.py +0 -0
  309. {lamindb-0.77.0 → lamindb-0.77.2}/sub/cellregistry/cellregistry/migrations/__init__.py +0 -0
  310. {lamindb-0.77.0 → lamindb-0.77.2}/sub/cellregistry/noxfile.py +0 -0
  311. {lamindb-0.77.0 → lamindb-0.77.2}/sub/cellregistry/tests/test_integrity.py +0 -0
  312. {lamindb-0.77.0 → lamindb-0.77.2}/sub/clinicore/.github/workflows/build.yml +0 -0
  313. {lamindb-0.77.0 → lamindb-0.77.2}/sub/clinicore/.github/workflows/doc-changes.yml +0 -0
  314. {lamindb-0.77.0 → lamindb-0.77.2}/sub/clinicore/.gitignore +0 -0
  315. {lamindb-0.77.0 → lamindb-0.77.2}/sub/clinicore/.pre-commit-config.yaml +0 -0
  316. {lamindb-0.77.0 → lamindb-0.77.2}/sub/clinicore/LICENSE +0 -0
  317. {lamindb-0.77.0 → lamindb-0.77.2}/sub/clinicore/README.md +0 -0
  318. {lamindb-0.77.0 → lamindb-0.77.2}/sub/clinicore/clinicore/migrations/0001_initial.py +0 -0
  319. {lamindb-0.77.0 → lamindb-0.77.2}/sub/clinicore/clinicore/migrations/0002_biosample_patient_biosample_project.py +0 -0
  320. {lamindb-0.77.0 → lamindb-0.77.2}/sub/clinicore/clinicore/migrations/0003_alter_project_uid.py +0 -0
  321. {lamindb-0.77.0 → lamindb-0.77.2}/sub/clinicore/clinicore/migrations/0004_remove_biosample_project_clinicaltrial_and_more.py +0 -0
  322. {lamindb-0.77.0 → lamindb-0.77.2}/sub/clinicore/clinicore/migrations/0005_alter_biosample_created_by_alter_biosample_run_and_more.py +0 -0
  323. {lamindb-0.77.0 → lamindb-0.77.2}/sub/clinicore/clinicore/migrations/0006_artifactbiosample_artifactclinicaltrial_and_more.py +0 -0
  324. {lamindb-0.77.0 → lamindb-0.77.2}/sub/clinicore/clinicore/migrations/__init__.py +0 -0
  325. {lamindb-0.77.0 → lamindb-0.77.2}/sub/clinicore/docs/changelog.md +0 -0
  326. {lamindb-0.77.0 → lamindb-0.77.2}/sub/clinicore/docs/guide.md +0 -0
  327. {lamindb-0.77.0 → lamindb-0.77.2}/sub/clinicore/docs/index.md +0 -0
  328. {lamindb-0.77.0 → lamindb-0.77.2}/sub/clinicore/docs/reference.md +0 -0
  329. {lamindb-0.77.0 → lamindb-0.77.2}/sub/clinicore/noxfile.py +0 -0
  330. {lamindb-0.77.0 → lamindb-0.77.2}/sub/clinicore/tests/test_notebooks.py +0 -0
  331. {lamindb-0.77.0 → lamindb-0.77.2}/sub/findrefs/.github/workflows/build.yml +0 -0
  332. {lamindb-0.77.0 → lamindb-0.77.2}/sub/findrefs/.github/workflows/doc-changes.yml +0 -0
  333. {lamindb-0.77.0 → lamindb-0.77.2}/sub/findrefs/.gitignore +0 -0
  334. {lamindb-0.77.0 → lamindb-0.77.2}/sub/findrefs/.pre-commit-config.yaml +0 -0
  335. {lamindb-0.77.0 → lamindb-0.77.2}/sub/findrefs/LICENSE +0 -0
  336. {lamindb-0.77.0 → lamindb-0.77.2}/sub/findrefs/README.md +0 -0
  337. {lamindb-0.77.0 → lamindb-0.77.2}/sub/findrefs/findrefs/migrations/0001_initial.py +0 -0
  338. {lamindb-0.77.0 → lamindb-0.77.2}/sub/findrefs/findrefs/migrations/0002_alter_artifactreference_artifact_and_more.py +0 -0
  339. {lamindb-0.77.0 → lamindb-0.77.2}/sub/findrefs/findrefs/migrations/__init__.py +0 -0
  340. {lamindb-0.77.0 → lamindb-0.77.2}/sub/findrefs/findrefs/models.py +0 -0
  341. {lamindb-0.77.0 → lamindb-0.77.2}/sub/findrefs/noxfile.py +0 -0
  342. {lamindb-0.77.0 → lamindb-0.77.2}/sub/findrefs/tests/test_integrity.py +0 -0
  343. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamin-cli/.github/workflows/doc-changes.yml +0 -0
  344. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamin-cli/.gitignore +0 -0
  345. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamin-cli/.pre-commit-config.yaml +0 -0
  346. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamin-cli/LICENSE +0 -0
  347. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamin-cli/README.md +0 -0
  348. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamin-cli/lamin_cli/__main__.py +0 -0
  349. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamin-cli/lamin_cli/_cache.py +0 -0
  350. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamin-cli/lamin_cli/_migration.py +0 -0
  351. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamin-cli/lamin_cli/_settings.py +0 -0
  352. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamin-cli/tests/conftest.py +0 -0
  353. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamin-cli/tests/notebooks/not-initialized.ipynb +0 -0
  354. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamin-cli/tests/notebooks/with-title-and-initialized-consecutive.ipynb +0 -0
  355. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamin-cli/tests/notebooks/with-title-and-initialized-non-consecutive.ipynb +0 -0
  356. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamin-cli/tests/scripts/merely-import-lamindb.py +0 -0
  357. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamin-cli/tests/scripts/run-track-and-finish-sync-git.py +0 -0
  358. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamin-cli/tests/scripts/run-track-and-finish.py +0 -0
  359. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamin-cli/tests/scripts/run-track-with-params.py +0 -0
  360. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamin-cli/tests/scripts/run-track.R +0 -0
  361. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamin-cli/tests/scripts/run-track.qmd +0 -0
  362. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamin-cli/tests/test_cli.py +0 -0
  363. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamin-cli/tests/test_load.py +0 -0
  364. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamin-cli/tests/test_migrate.py +0 -0
  365. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamin-cli/tests/test_multi_process.py +0 -0
  366. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamin-cli/tests/test_parse_uid_from_code.py +0 -0
  367. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamin-cli/tests/test_save_files.py +0 -0
  368. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamin-cli/tests/test_save_notebooks.py +0 -0
  369. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamin-cli/tests/test_save_r_code.py +0 -0
  370. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/.github/workflows/build.yml +0 -0
  371. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/.github/workflows/doc-changes.yml +0 -0
  372. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/.gitignore +0 -0
  373. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/.pre-commit-config.yaml +0 -0
  374. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/LICENSE +0 -0
  375. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/README.md +0 -0
  376. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/docs/changelog.md +0 -0
  377. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/docs/hub-cloud/01-init-local-instance.ipynb +0 -0
  378. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/docs/hub-cloud/02-connect-local-instance.ipynb +0 -0
  379. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/docs/hub-cloud/03-add-managed-storage.ipynb +0 -0
  380. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/docs/hub-cloud/04-test-bionty.ipynb +0 -0
  381. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/docs/hub-cloud/07-keep-artifacts-local.ipynb +0 -0
  382. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/docs/hub-cloud/08-test-multi-session.ipynb +0 -0
  383. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/docs/hub-cloud/test_notebooks.py +0 -0
  384. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/docs/hub-prod/test-cache-management.ipynb +0 -0
  385. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/docs/hub-prod/test-cloud-sync.ipynb +0 -0
  386. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/docs/hub-prod/test-connect-anonymously.ipynb +0 -0
  387. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/docs/hub-prod/test-empty-init.ipynb +0 -0
  388. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/docs/hub-prod/test-import-schema.ipynb +0 -0
  389. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/docs/hub-prod/test-init-load-local-anonymously.ipynb +0 -0
  390. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/docs/hub-prod/test-insufficient-user-info.ipynb +0 -0
  391. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/docs/hub-prod/test-invalid-schema.ipynb +0 -0
  392. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/docs/hub-prod/test-sqlite-lock.ipynb +0 -0
  393. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/docs/hub-prod/test_notebooks2.py +0 -0
  394. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/docs/index.md +0 -0
  395. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/docs/notebooks.md +0 -0
  396. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/docs/reference.md +0 -0
  397. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/_cache.py +0 -0
  398. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/_check.py +0 -0
  399. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/_check_setup.py +0 -0
  400. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/_close.py +0 -0
  401. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/_connect_instance.py +0 -0
  402. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/_delete.py +0 -0
  403. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/_django.py +0 -0
  404. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/_entry_points.py +0 -0
  405. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/_exportdb.py +0 -0
  406. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/_importdb.py +0 -0
  407. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/_init_instance.py +0 -0
  408. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/_migrate.py +0 -0
  409. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/_register_instance.py +0 -0
  410. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/_schema.py +0 -0
  411. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/_schema_metadata.py +0 -0
  412. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/_set_managed_storage.py +0 -0
  413. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/_setup_user.py +0 -0
  414. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/_silence_loggers.py +0 -0
  415. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/core/__init__.py +0 -0
  416. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/core/_aws_credentials.py +0 -0
  417. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/core/_aws_storage.py +0 -0
  418. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/core/_deprecated.py +0 -0
  419. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/core/_docs.py +0 -0
  420. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/core/_hub_client.py +0 -0
  421. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/core/_hub_core.py +0 -0
  422. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/core/_hub_crud.py +0 -0
  423. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/core/_hub_utils.py +0 -0
  424. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/core/_private_django_api.py +0 -0
  425. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/core/_settings.py +0 -0
  426. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/core/_settings_instance.py +0 -0
  427. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/core/_settings_load.py +0 -0
  428. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/core/_settings_save.py +0 -0
  429. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/core/_settings_storage.py +0 -0
  430. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/core/_settings_store.py +0 -0
  431. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/core/_settings_user.py +0 -0
  432. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/core/cloud_sqlite_locker.py +0 -0
  433. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/core/django.py +0 -0
  434. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/core/exceptions.py +0 -0
  435. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/core/hashing.py +0 -0
  436. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/lamindb_setup/core/types.py +0 -0
  437. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/noxfile.py +0 -0
  438. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/pyproject.toml +0 -0
  439. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/tests/hub-cloud/scripts/script-init-pass-user-no-writes.py +0 -0
  440. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/tests/hub-cloud/scripts/script-to-fail-managed-storage.py +0 -0
  441. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/tests/hub-cloud/test_connect_instance.py +0 -0
  442. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/tests/hub-cloud/test_delete_instance.py +0 -0
  443. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/tests/hub-cloud/test_edge_request.py +0 -0
  444. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/tests/hub-cloud/test_init_instance.py +0 -0
  445. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/tests/hub-cloud/test_login.py +0 -0
  446. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/tests/hub-cloud/test_migrate.py +0 -0
  447. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/tests/hub-cloud/test_set_storage.py +0 -0
  448. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/tests/hub-local/conftest.py +0 -0
  449. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/tests/hub-local/test_all.py +0 -0
  450. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/tests/hub-local/test_update_schema_in_hub.py +0 -0
  451. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/tests/hub-prod/conftest.py +0 -0
  452. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/tests/hub-prod/test_aws_credentials_manager.py +0 -0
  453. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/tests/hub-prod/test_django.py +0 -0
  454. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/tests/hub-prod/test_global_settings.py +0 -0
  455. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/tests/hub-prod/test_switch_and_fallback_env.py +0 -0
  456. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/tests/hub-prod/test_upath.py +0 -0
  457. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/tests/storage/test_entry_point.py +0 -0
  458. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/tests/storage/test_hashing.py +0 -0
  459. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/tests/storage/test_storage_access.py +0 -0
  460. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/tests/storage/test_storage_basis.py +0 -0
  461. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/tests/storage/test_storage_stats.py +0 -0
  462. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lamindb-setup/tests/storage/test_to_url.py +0 -0
  463. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/.github/workflows/build.yml +0 -0
  464. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/.github/workflows/doc-changes.yml +0 -0
  465. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/.gitignore +0 -0
  466. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/.pre-commit-config.yaml +0 -0
  467. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/CHANGELOG.md +0 -0
  468. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/LICENSE +0 -0
  469. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/README.md +0 -0
  470. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/lnschema_core/ids.py +0 -0
  471. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/lnschema_core/migrations/0052_squashed.py +0 -0
  472. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/lnschema_core/migrations/0053_alter_featureset_hash_alter_paramvalue_created_by_and_more.py +0 -0
  473. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/lnschema_core/migrations/0054_alter_feature_previous_runs_and_more.py +0 -0
  474. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/lnschema_core/migrations/0055_artifact_type_artifactparamvalue_and_more.py +0 -0
  475. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/lnschema_core/migrations/0056_rename_ulabel_ref_is_name_artifactulabel_label_ref_is_name_and_more.py +0 -0
  476. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/lnschema_core/migrations/0057_link_models_latest_report_and_others.py +0 -0
  477. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/lnschema_core/migrations/0058_artifact__actions_collection__actions.py +0 -0
  478. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/lnschema_core/migrations/0059_alter_artifact__accessor_alter_artifact__hash_type_and_more.py +0 -0
  479. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/lnschema_core/migrations/0060_alter_artifact__actions.py +0 -0
  480. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/lnschema_core/migrations/0061_alter_collection_meta_artifact_alter_run_environment_and_more.py +0 -0
  481. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/lnschema_core/migrations/0062_add_is_latest_field.py +0 -0
  482. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/lnschema_core/migrations/0063_populate_latest_field.py +0 -0
  483. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/lnschema_core/migrations/0064_alter_artifact_version_alter_collection_version_and_more.py +0 -0
  484. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/lnschema_core/migrations/0065_remove_collection_feature_sets_and_more.py +0 -0
  485. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/lnschema_core/migrations/0066_alter_artifact__feature_values_and_more.py +0 -0
  486. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/lnschema_core/migrations/0067_alter_featurevalue_unique_together_and_more.py +0 -0
  487. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/lnschema_core/migrations/0068_alter_artifactulabel_unique_together_and_more.py +0 -0
  488. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/lnschema_core/migrations/0069_alter_artifact__accessor_alter_artifact__hash_type_and_more.py +0 -0
  489. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/lnschema_core/migrations/0069_squashed.py +0 -0
  490. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/lnschema_core/migrations/__init__.py +0 -0
  491. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/lnschema_core/users.py +0 -0
  492. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/noxfile.py +0 -0
  493. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/pyproject.toml +0 -0
  494. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/tests/conftest.py +0 -0
  495. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/tests/test_integrity.py +0 -0
  496. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/tests/test_models.py +1 -1
  497. {lamindb-0.77.0 → lamindb-0.77.2}/sub/lnschema-core/tests/test_types.py +0 -0
  498. {lamindb-0.77.0 → lamindb-0.77.2}/sub/omop/.github/workflows/build.yml +0 -0
  499. {lamindb-0.77.0 → lamindb-0.77.2}/sub/omop/.github/workflows/latest-changes.jinja2 +0 -0
  500. {lamindb-0.77.0 → lamindb-0.77.2}/sub/omop/.github/workflows/latest-changes.yml +0 -0
  501. {lamindb-0.77.0 → lamindb-0.77.2}/sub/omop/.gitignore +0 -0
  502. {lamindb-0.77.0 → lamindb-0.77.2}/sub/omop/.pre-commit-config.yaml +0 -0
  503. {lamindb-0.77.0 → lamindb-0.77.2}/sub/omop/LICENSE +0 -0
  504. {lamindb-0.77.0 → lamindb-0.77.2}/sub/omop/README.md +0 -0
  505. {lamindb-0.77.0 → lamindb-0.77.2}/sub/omop/docs/guide.md +0 -0
  506. {lamindb-0.77.0 → lamindb-0.77.2}/sub/omop/docs/index.md +0 -0
  507. {lamindb-0.77.0 → lamindb-0.77.2}/sub/omop/docs/notes/inspectdb.ipynb +0 -0
  508. {lamindb-0.77.0 → lamindb-0.77.2}/sub/omop/docs/notes.md +0 -0
  509. {lamindb-0.77.0 → lamindb-0.77.2}/sub/omop/docs/quickstart.ipynb +0 -0
  510. {lamindb-0.77.0 → lamindb-0.77.2}/sub/omop/docs/reference.md +0 -0
  511. {lamindb-0.77.0 → lamindb-0.77.2}/sub/omop/lamin-project.yaml +0 -0
  512. {lamindb-0.77.0 → lamindb-0.77.2}/sub/omop/noxfile.py +0 -0
  513. {lamindb-0.77.0 → lamindb-0.77.2}/sub/omop/omop/migrations/0001_initial.py +0 -0
  514. {lamindb-0.77.0 → lamindb-0.77.2}/sub/omop/omop/migrations/0002_alter_caresite_options_alter_cdmsource_options_and_more.py +0 -0
  515. {lamindb-0.77.0 → lamindb-0.77.2}/sub/omop/omop/migrations/__init__.py +0 -0
  516. {lamindb-0.77.0 → lamindb-0.77.2}/sub/omop/tests/test_integrity.py +0 -0
  517. {lamindb-0.77.0 → lamindb-0.77.2}/sub/omop/tests/test_notebooks.py +0 -0
  518. {lamindb-0.77.0 → lamindb-0.77.2}/sub/ourprojects/.github/workflows/build.yml +0 -0
  519. {lamindb-0.77.0 → lamindb-0.77.2}/sub/ourprojects/.pre-commit-config.yaml +0 -0
  520. {lamindb-0.77.0 → lamindb-0.77.2}/sub/ourprojects/LICENSE +0 -0
  521. {lamindb-0.77.0 → lamindb-0.77.2}/sub/ourprojects/README.md +0 -0
  522. {lamindb-0.77.0 → lamindb-0.77.2}/sub/ourprojects/noxfile.py +0 -0
  523. {lamindb-0.77.0 → lamindb-0.77.2}/sub/ourprojects/ourprojects/migrations/__init__.py +0 -0
  524. {lamindb-0.77.0 → lamindb-0.77.2}/sub/ourprojects/tests/test_integrity.py +0 -0
  525. {lamindb-0.77.0 → lamindb-0.77.2}/sub/wetlab/.github/workflows/build.yml +0 -0
  526. {lamindb-0.77.0 → lamindb-0.77.2}/sub/wetlab/.github/workflows/doc-changes.yml +0 -0
  527. {lamindb-0.77.0 → lamindb-0.77.2}/sub/wetlab/.gitignore +0 -0
  528. {lamindb-0.77.0 → lamindb-0.77.2}/sub/wetlab/.pre-commit-config.yaml +0 -0
  529. {lamindb-0.77.0 → lamindb-0.77.2}/sub/wetlab/README.md +0 -0
  530. {lamindb-0.77.0 → lamindb-0.77.2}/sub/wetlab/docs/changelog.md +0 -0
  531. {lamindb-0.77.0 → lamindb-0.77.2}/sub/wetlab/docs/guide/get-started.ipynb +0 -0
  532. {lamindb-0.77.0 → lamindb-0.77.2}/sub/wetlab/docs/guide.md +0 -0
  533. {lamindb-0.77.0 → lamindb-0.77.2}/sub/wetlab/docs/index.md +0 -0
  534. {lamindb-0.77.0 → lamindb-0.77.2}/sub/wetlab/docs/reference.md +0 -0
  535. {lamindb-0.77.0 → lamindb-0.77.2}/sub/wetlab/noxfile.py +0 -0
  536. {lamindb-0.77.0 → lamindb-0.77.2}/sub/wetlab/tests/test_integrity.py +0 -0
  537. {lamindb-0.77.0 → lamindb-0.77.2}/sub/wetlab/tests/test_notebooks.py +0 -0
  538. {lamindb-0.77.0 → lamindb-0.77.2}/sub/wetlab/wetlab/migrations/0018_squashed.py +0 -0
  539. {lamindb-0.77.0 → lamindb-0.77.2}/sub/wetlab/wetlab/migrations/0019_alter_treatment_system.py +0 -0
  540. {lamindb-0.77.0 → lamindb-0.77.2}/sub/wetlab/wetlab/migrations/0020_treatmenttarget_pathways_treatmenttarget_proteins_and_more.py +0 -0
  541. {lamindb-0.77.0 → lamindb-0.77.2}/sub/wetlab/wetlab/migrations/0021_alter_compoundtreatment_duration_unit_and_more.py +0 -0
  542. {lamindb-0.77.0 → lamindb-0.77.2}/sub/wetlab/wetlab/migrations/0022_remove_experiment_experiment_type_and_more.py +0 -0
  543. {lamindb-0.77.0 → lamindb-0.77.2}/sub/wetlab/wetlab/migrations/0023_compoundtreatment_duration_and_more.py +0 -0
  544. {lamindb-0.77.0 → lamindb-0.77.2}/sub/wetlab/wetlab/migrations/0024_compound_chembl_id.py +0 -0
  545. {lamindb-0.77.0 → lamindb-0.77.2}/sub/wetlab/wetlab/migrations/0025_alter_artifactbiosample_artifact_and_more.py +0 -0
  546. {lamindb-0.77.0 → lamindb-0.77.2}/sub/wetlab/wetlab/migrations/0025_squashed.py +0 -0
  547. {lamindb-0.77.0 → lamindb-0.77.2}/sub/wetlab/wetlab/migrations/__init__.py +0 -0
  548. {lamindb-0.77.0 → lamindb-0.77.2}/tests/core/conftest.py +0 -0
  549. {lamindb-0.77.0 → lamindb-0.77.2}/tests/core/notebooks/duplicate/with-title-initialized-consecutive-finish.ipynb +0 -0
  550. {lamindb-0.77.0 → lamindb-0.77.2}/tests/core/notebooks/no-title.ipynb +0 -0
  551. {lamindb-0.77.0 → lamindb-0.77.2}/tests/core/notebooks/not-initialized.ipynb +0 -0
  552. {lamindb-0.77.0 → lamindb-0.77.2}/tests/core/notebooks/with-title-initialized-consecutive-finish-not-last-cell.ipynb +0 -0
  553. {lamindb-0.77.0 → lamindb-0.77.2}/tests/core/notebooks/with-title-initialized-consecutive-finish.ipynb +0 -0
  554. {lamindb-0.77.0 → lamindb-0.77.2}/tests/core/scripts/duplicate1/script-to-test-versioning.py +0 -0
  555. {lamindb-0.77.0 → lamindb-0.77.2}/tests/core/scripts/duplicate2/script-to-test-versioning.py +0 -0
  556. {lamindb-0.77.0 → lamindb-0.77.2}/tests/core/scripts/duplicate3/script-to-test-versioning.py +0 -0
  557. {lamindb-0.77.0 → lamindb-0.77.2}/tests/core/scripts/script-to-test-filename-change.py +0 -0
  558. {lamindb-0.77.0 → lamindb-0.77.2}/tests/core/scripts/script-to-test-versioning.py +0 -0
  559. {lamindb-0.77.0 → lamindb-0.77.2}/tests/core/test_artifact_folders.py +0 -0
  560. {lamindb-0.77.0 → lamindb-0.77.2}/tests/core/test_cache.py +0 -0
  561. {lamindb-0.77.0 → lamindb-0.77.2}/tests/core/test_can_validate.py +0 -0
  562. {lamindb-0.77.0 → lamindb-0.77.2}/tests/core/test_data.py +0 -0
  563. {lamindb-0.77.0 → lamindb-0.77.2}/tests/core/test_db.py +0 -0
  564. {lamindb-0.77.0 → lamindb-0.77.2}/tests/core/test_delete.py +0 -0
  565. {lamindb-0.77.0 → lamindb-0.77.2}/tests/core/test_from_values.py +0 -0
  566. {lamindb-0.77.0 → lamindb-0.77.2}/tests/core/test_load.py +0 -0
  567. {lamindb-0.77.0 → lamindb-0.77.2}/tests/core/test_manager.py +0 -0
  568. {lamindb-0.77.0 → lamindb-0.77.2}/tests/core/test_notebooks.py +0 -0
  569. {lamindb-0.77.0 → lamindb-0.77.2}/tests/core/test_parents.py +0 -0
  570. {lamindb-0.77.0 → lamindb-0.77.2}/tests/core/test_record.py +0 -0
  571. {lamindb-0.77.0 → lamindb-0.77.2}/tests/core/test_run.py +0 -0
  572. {lamindb-0.77.0 → lamindb-0.77.2}/tests/core/test_save.py +0 -0
  573. {lamindb-0.77.0 → lamindb-0.77.2}/tests/core/test_search.py +0 -0
  574. {lamindb-0.77.0 → lamindb-0.77.2}/tests/core/test_settings.py +0 -0
  575. {lamindb-0.77.0 → lamindb-0.77.2}/tests/core/test_transform.py +0 -0
  576. {lamindb-0.77.0 → lamindb-0.77.2}/tests/core/test_uid.py +0 -0
  577. {lamindb-0.77.0 → lamindb-0.77.2}/tests/core/test_ulabel.py +0 -0
  578. {lamindb-0.77.0 → lamindb-0.77.2}/tests/core/test_versioning.py +0 -0
  579. {lamindb-0.77.0 → lamindb-0.77.2}/tests/core/test_view.py +0 -0
  580. {lamindb-0.77.0 → lamindb-0.77.2}/tests/core/test_visibility.py +0 -0
  581. {lamindb-0.77.0 → lamindb-0.77.2}/tests/storage/conftest.py +0 -0
  582. {lamindb-0.77.0 → lamindb-0.77.2}/tests/storage/test_storage.py +0 -0
  583. {lamindb-0.77.0 → lamindb-0.77.2}/tests/storage/test_transfer.py +0 -0
@@ -0,0 +1,15 @@
1
+ name: Report a bug
2
+ description: Report a bug.
3
+ labels:
4
+ - ":bug: bug"
5
+ body:
6
+ - type: textarea
7
+ id: report
8
+ attributes:
9
+ label: Add a description
10
+ placeholder: |
11
+ Describe and consider providing version information. Please ensure you're on the latest version of lamindb.
12
+ This is a public repository!
13
+ Do not reveal any internal information.
14
+ validations:
15
+ required: true
@@ -2,7 +2,7 @@ blank_issues_enabled: true
2
2
  contact_links:
3
3
  - name: LaminHub issues
4
4
  url: https://github.com/laminlabs/laminhub-public
5
- about: If you have issues with LaminHub, please report them here.
5
+ about: If you have issues with the GUI/web app at lamin.ai, please report them here.
6
6
  - name: Enterprise support
7
7
  url: https://lamin.ai/contact
8
- about: If you have non-technical inquiries, please contact us directly.
8
+ about: If you have other questions, contact us directly.
@@ -0,0 +1,12 @@
1
+ name: Propose an enhancement
2
+ description: Propose an enhancement.
3
+ body:
4
+ - type: textarea
5
+ id: description
6
+ attributes:
7
+ label: Add a description
8
+ placeholder: |
9
+ This is a public repository!
10
+ Do not reveal any internal information.
11
+ validations:
12
+ required: true
@@ -0,0 +1,14 @@
1
+ name: Ask a usage question
2
+ description: Ask a usage question.
3
+ labels:
4
+ - "usage question"
5
+ body:
6
+ - type: textarea
7
+ id: description
8
+ attributes:
9
+ label: Add a description
10
+ placeholder: |
11
+ This is a public repository!
12
+ Do not reveal any internal information.
13
+ validations:
14
+ required: true
@@ -20,6 +20,7 @@ lamin-tutorial/
20
20
  mytest/
21
21
  rds/
22
22
  mydb/
23
+ docs/test-registries/
23
24
  docs/test-annotate-flexible/
24
25
  docs/lamindb.*
25
26
  lamin_sphinx
@@ -12,7 +12,7 @@ repos:
12
12
  - id: prettier
13
13
  exclude: |
14
14
  (?x)(
15
- docs/changelog.md|.github/ISSUE_TEMPLATE/config.yml
15
+ docs/changelog.md|.github/ISSUE_TEMPLATE/config.yml|tests/core/notebooks/basic-r-notebook.Rmd.cleaned.html
16
16
  )
17
17
  - repo: https://github.com/kynan/nbstripout
18
18
  rev: 0.6.1
@@ -42,6 +42,10 @@ repos:
42
42
  - id: mixed-line-ending
43
43
  args: [--fix=lf]
44
44
  - id: trailing-whitespace
45
+ exclude: |
46
+ (?x)(
47
+ tests/core/notebooks/basic-r-notebook.Rmd.cleaned.html
48
+ )
45
49
  - id: check-case-conflict
46
50
  - repo: https://github.com/pre-commit/mirrors-mypy
47
51
  rev: v1.7.1
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: lamindb
3
- Version: 0.77.0
3
+ Version: 0.77.2
4
4
  Summary: A data framework for biology.
5
5
  Author-email: Lamin Labs <open-source@lamin.ai>
6
6
  Requires-Python: >=3.9,<3.13
@@ -9,11 +9,10 @@ Classifier: Programming Language :: Python :: 3.9
9
9
  Classifier: Programming Language :: Python :: 3.10
10
10
  Classifier: Programming Language :: Python :: 3.11
11
11
  Classifier: Programming Language :: Python :: 3.12
12
- Requires-Dist: lnschema_core==0.77.0
13
- Requires-Dist: lamin_utils==0.13.8
14
- Requires-Dist: lamin_cli==0.21.3
15
- Requires-Dist: lamindb_setup
16
- Requires-Dist: rapidfuzz
12
+ Requires-Dist: lnschema_core==0.77.1
13
+ Requires-Dist: lamin_utils==0.13.9
14
+ Requires-Dist: lamin_cli==0.22.0
15
+ Requires-Dist: lamindb_setup==0.81.2
17
16
  Requires-Dist: pyarrow
18
17
  Requires-Dist: typing_extensions!=4.6.0
19
18
  Requires-Dist: python-dateutil
@@ -22,7 +21,7 @@ Requires-Dist: fsspec
22
21
  Requires-Dist: graphviz
23
22
  Requires-Dist: psycopg2-binary
24
23
  Requires-Dist: lamindb_setup[aws] ; extra == "aws"
25
- Requires-Dist: bionty==0.53.1 ; extra == "bionty"
24
+ Requires-Dist: bionty==0.53.2 ; extra == "bionty"
26
25
  Requires-Dist: cellregistry ; extra == "cellregistry"
27
26
  Requires-Dist: clinicore ; extra == "clinicore"
28
27
  Requires-Dist: line_profiler ; extra == "dev"
@@ -41,7 +40,7 @@ Requires-Dist: findrefs ; extra == "findrefs"
41
40
  Requires-Dist: lamindb_setup[gcp] ; extra == "gcp"
42
41
  Requires-Dist: nbproject==0.10.5 ; extra == "jupyter"
43
42
  Requires-Dist: jupytext ; extra == "jupyter"
44
- Requires-Dist: nbconvert ; extra == "jupyter"
43
+ Requires-Dist: nbconvert>=7.2.1 ; extra == "jupyter"
45
44
  Requires-Dist: omop ; extra == "omop"
46
45
  Requires-Dist: ourprojects ; extra == "ourprojects"
47
46
  Requires-Dist: wetlab ; extra == "wetlab"
@@ -11,7 +11,7 @@
11
11
  "cell_type": "markdown",
12
12
  "metadata": {},
13
13
  "source": [
14
- "# Query arrays"
14
+ "# Slice arrays"
15
15
  ]
16
16
  },
17
17
  {
@@ -697,7 +697,7 @@
697
697
  "source": [
698
698
  "Sometimes, the default source doesn't contain the ontology term you are looking for.\n",
699
699
  "\n",
700
- "You can then specify to create a record from a non-default source. For instance, instead of using untyped labels for iris organisms as {doc}`/tutorial2`, we can use the `ncbitaxon` ontology:"
700
+ "You can then specify to create a record from a non-default source. For instance, we can use the `ncbitaxon` ontology:"
701
701
  ]
702
702
  },
703
703
  {
@@ -7,19 +7,76 @@
7
7
  "source": [
8
8
  "# Curate DataFrames and AnnDatas\n",
9
9
  "\n",
10
- "Curating datasets typically means three things:\n",
10
+ "Curating a dataset with LaminDB means three things:\n",
11
11
  "\n",
12
- "1. Validate: ensure a dataset meets predefined _validation criteria_\n",
13
- "2. Standardize: transform a dataset so that it meets validation criteria, e.g., by fixing typos or using standardized identifiers\n",
14
- "3. Annotate: link a dataset against metadata records\n",
12
+ "1. **Validate:** ensure the dataset meets predefined _validation criteria_\n",
13
+ "2. **Standardize:** transform the dataset so that it meets validation criteria, e.g., by fixing typos or using standard instead of ad hoc identifiers\n",
14
+ "3. **Annotate:** link the dataset against validated metadata so that it becomes queryable\n",
15
15
  "\n",
16
- "In LaminDB, valid metadata is metadata that's stored in a metadata registry and _validation criteria_ merely defines a mapping onto a field of a registry.\n",
16
+ "If a dataset passes validation, curating it takes two lines of code:\n",
17
17
  "\n",
18
- "```{admonition} Example\n",
18
+ "```python\n",
19
+ "curator = ln.Curator.from_df(df, ...) # create a Curator and pass criteria in \"...\"\n",
20
+ "curator.save_artifact() # validates the content of the dataset and saves it as annotated artifact\n",
21
+ "```\n",
19
22
  "\n",
20
- "`\"Experiment 1\"` is a valid value for `ULabel.name` if a record with this name exists in the {class}`~lamindb.ULabel` registry.\n",
23
+ "Beyond having valid content, the curated dataset is now queryable via metadata identifiers found in the dataset because they have been validated & linked against LaminDB registries.\n",
21
24
  "\n",
22
- "```"
25
+ ":::{admonition} Definition: valid metadata identifier\n",
26
+ "\n",
27
+ "An identifier like `\"Experiment 1\"` is a valid value for `ULabel.name` if a record with `name` `\"Experiment 1\"` exists in the {class}`~lamindb.ULabel` registry.\n",
28
+ "\n",
29
+ "```python\n",
30
+ "categoricals = {\"experiment\": ln.ULabel.name} # the validation constraint\n",
31
+ "curator = ln.Curator.from_df(df, categoricals=categoricals)\n",
32
+ "curator.validate()\n",
33
+ "```\n",
34
+ "\n",
35
+ "The DataFrame validates if \n",
36
+ "\n",
37
+ "- there is a column with name `\"experiment\"` in the dataframe whose values are all found in the `name` field of the {class}`~lamindb.ULabel` registry\n",
38
+ "- the column name `\"experiment\"` is found in the `name` field of the {class}`~lamindb.Feature` registry\n",
39
+ "\n",
40
+ ":::\n",
41
+ "\n",
42
+ "Beyond validating metadata identifiers, LaminDB also validates data types and dataset schema.\n",
43
+ "\n",
44
+ ":::{dropdown} How does validation in LaminDB compare to validation in pandera?\n",
45
+ "\n",
46
+ "Like LaminDB, [pandera](https://pandera.readthedocs.io/) validates the _dataset schema_ (i.e., column names and `dtype`s).\n",
47
+ "\n",
48
+ "`pandera` is only available for `DataFrame`-like datasets and cannot annotate datasets; i.e., can't make datasets queryable.\n",
49
+ "\n",
50
+ "However, it offers an API for range-checks, both for numerical and string-like data. If you need such checks, you can combine LaminDB and pandera-based validation.\n",
51
+ "\n",
52
+ "```python\n",
53
+ "import pandas as pd\n",
54
+ "import pandera as pa\n",
55
+ "\n",
56
+ "# data to validate\n",
57
+ "df = pd.DataFrame({\n",
58
+ " \"column1\": [1, 4, 0, 10, 9],\n",
59
+ " \"column2\": [-1.3, -1.4, -2.9, -10.1, -20.4],\n",
60
+ " \"column3\": [\"value_1\", \"value_2\", \"value_3\", \"value_2\", \"value_1\"],\n",
61
+ "})\n",
62
+ "\n",
63
+ "# define schema\n",
64
+ "schema = pa.DataFrameSchema({\n",
65
+ " \"column1\": pa.Column(int, checks=pa.Check.le(10)),\n",
66
+ " \"column2\": pa.Column(float, checks=pa.Check.lt(-1.2)),\n",
67
+ " \"column3\": pa.Column(str, checks=[\n",
68
+ " pa.Check.str_startswith(\"value_\"),\n",
69
+ " # define custom checks as functions that take a series as input and\n",
70
+ " # outputs a boolean or boolean Series\n",
71
+ " pa.Check(lambda s: s.str.split(\"_\", expand=True).shape[1] == 2)\n",
72
+ " ]),\n",
73
+ "})\n",
74
+ "\n",
75
+ "validated_df = schema(df) # this corresponds to curator.validate() in LaminDB\n",
76
+ "print(validated_df)\n",
77
+ "```\n",
78
+ "\n",
79
+ ":::"
23
80
  ]
24
81
  },
25
82
  {
@@ -42,7 +99,7 @@
42
99
  "id": "946a3371",
43
100
  "metadata": {},
44
101
  "source": [
45
- "## Validate a DataFrame"
102
+ "## Curate a DataFrame"
46
103
  ]
47
104
  },
48
105
  {
@@ -72,7 +129,7 @@
72
129
  "df = pd.DataFrame(\n",
73
130
  " {\n",
74
131
  " \"temperature\": [37.2, 36.3, 38.2],\n",
75
- " \"cell_type\": [\"cerebral pyramidal neuron\", \"astrocyte\", \"oligodendrocyte\"],\n",
132
+ " \"cell_type\": [\"cerebral pyramidal neuron\", \"astrocytic glia\", \"oligodendrocyte\"],\n",
76
133
  " \"assay_ontology_id\": [\"EFO:0008913\", \"EFO:0008913\", \"EFO:0008913\"],\n",
77
134
  " \"donor\": [\"D0001\", \"D0002\", \"D0003\"]\n",
78
135
  " },\n",
@@ -134,22 +191,54 @@
134
191
  "curate.validate()"
135
192
  ]
136
193
  },
194
+ {
195
+ "cell_type": "code",
196
+ "execution_count": null,
197
+ "id": "e7acf0d2",
198
+ "metadata": {},
199
+ "outputs": [],
200
+ "source": [
201
+ "# check the non-validated terms\n",
202
+ "curate.non_validated"
203
+ ]
204
+ },
137
205
  {
138
206
  "cell_type": "markdown",
139
- "id": "7c157df6",
207
+ "id": "8c2417c7",
140
208
  "metadata": {},
141
209
  "source": [
142
- "## Register new metadata values\n",
210
+ "For `cell_type`, we saw that \"cerebral pyramidal neuron\", \"astrocytic glia\" are not validated.\n",
143
211
  "\n",
144
- "If you see \"non-validated\" values, you'll need to decide whether to add them to your registries or \"fix\" them in your dataset."
212
+ "First, let's standardize synonym \"astrocytic glia\" as suggested"
213
+ ]
214
+ },
215
+ {
216
+ "cell_type": "code",
217
+ "execution_count": null,
218
+ "id": "35b3ce8e",
219
+ "metadata": {},
220
+ "outputs": [],
221
+ "source": [
222
+ "curate.standardize(\"cell_type\")"
223
+ ]
224
+ },
225
+ {
226
+ "cell_type": "code",
227
+ "execution_count": null,
228
+ "id": "336293ac",
229
+ "metadata": {},
230
+ "outputs": [],
231
+ "source": [
232
+ "# now we have only one non-validated term left\n",
233
+ "curate.non_validated"
145
234
  ]
146
235
  },
147
236
  {
148
237
  "cell_type": "markdown",
149
- "id": "8c2417c7",
238
+ "id": "c1bfe41c",
150
239
  "metadata": {},
151
240
  "source": [
152
- "For `cell_type`, we saw that 'cerebral pyramidal neuron' is not validated, let's understand which cell type in the public ontology might be the actual match."
241
+ "For \"cerebral pyramidal neuron\", let's understand which cell type in the public ontology might be the actual match."
153
242
  ]
154
243
  },
155
244
  {
@@ -235,8 +324,35 @@
235
324
  "outputs": [],
236
325
  "source": [
237
326
  "# validate again\n",
238
- "validated = curate.validate()\n",
239
- "validated"
327
+ "curate.validate()"
328
+ ]
329
+ },
330
+ {
331
+ "cell_type": "markdown",
332
+ "id": "ab7cfff0",
333
+ "metadata": {},
334
+ "source": [
335
+ "Save a curated artifact."
336
+ ]
337
+ },
338
+ {
339
+ "cell_type": "code",
340
+ "execution_count": null,
341
+ "id": "9e7e6372",
342
+ "metadata": {},
343
+ "outputs": [],
344
+ "source": [
345
+ "artifact = curate.save_artifact(description=\"My curated dataframe\")"
346
+ ]
347
+ },
348
+ {
349
+ "cell_type": "code",
350
+ "execution_count": null,
351
+ "id": "74f91cc8",
352
+ "metadata": {},
353
+ "outputs": [],
354
+ "source": [
355
+ "artifact.describe(print_types=True)"
240
356
  ]
241
357
  },
242
358
  {
@@ -244,7 +360,7 @@
244
360
  "id": "b9d09a10",
245
361
  "metadata": {},
246
362
  "source": [
247
- "## Validate an AnnData\n",
363
+ "## Curate an AnnData\n",
248
364
  "\n",
249
365
  "Here we additionally specify which `var_index` to validate against."
250
366
  ]
@@ -271,9 +387,8 @@
271
387
  " \"ENSG00000153563\": [13, 14, 15],\n",
272
388
  " \"ENSGcorrupted\": [16, 17, 18]\n",
273
389
  " }, \n",
274
- " index=df.index\n",
390
+ " index=df.index # because we already curated the dataframe above, it will validate \n",
275
391
  ")\n",
276
- "\n",
277
392
  "adata = ad.AnnData(X=X, obs=df)\n",
278
393
  "adata"
279
394
  ]
@@ -294,20 +409,7 @@
294
409
  " var_index=bt.Gene.ensembl_gene_id, # validate var.index against Gene.ensembl_gene_id\n",
295
410
  " categoricals=categoricals, \n",
296
411
  " organism=\"human\",\n",
297
- ")"
298
- ]
299
- },
300
- {
301
- "cell_type": "code",
302
- "execution_count": null,
303
- "id": "e8d8cee5",
304
- "metadata": {
305
- "tags": [
306
- "hide-output"
307
- ]
308
- },
309
- "outputs": [],
310
- "source": [
412
+ ")\n",
311
413
  "curate.validate()"
312
414
  ]
313
415
  },
@@ -376,18 +478,9 @@
376
478
  " categoricals=categoricals, \n",
377
479
  " organism=\"human\",\n",
378
480
  ")\n",
379
- "\n",
380
481
  "curate.validate()"
381
482
  ]
382
483
  },
383
- {
384
- "cell_type": "markdown",
385
- "id": "38a30170",
386
- "metadata": {},
387
- "source": [
388
- "## Save a curated artifact"
389
- ]
390
- },
391
484
  {
392
485
  "cell_type": "markdown",
393
486
  "id": "a814ef37",
@@ -466,7 +559,7 @@
466
559
  "name": "python",
467
560
  "nbconvert_exporter": "python",
468
561
  "pygments_lexer": "ipython3",
469
- "version": "3.10.13"
562
+ "version": "3.10.15"
470
563
  },
471
564
  "nbproject": {
472
565
  "id": "WOK3vP0bNGLx",
@@ -95,8 +95,8 @@
95
95
  "source": [
96
96
  "# create example DataFrame that has all mandatory columns but one ('patient_age') is wrongly named\n",
97
97
  "data = {\n",
98
- " 'disease': ['Alzheimer disease', 'Diabetes mellitus', 'Breast cancer', 'Hypertension', 'Asthma'],\n",
99
- " 'phenotype': ['Cognitive decline', 'Hyperglycemia', 'Tumor growth', 'Increased blood pressure', 'Airway inflammation'],\n",
98
+ " 'disease': ['Alzheimer disease', 'diabetes mellitus', 'breast cancer', 'Hypertension', 'asthma'],\n",
99
+ " 'phenotype': ['Mental deterioration', 'Hyperglycemia', 'Tumor growth', 'Increased blood pressure', 'Airway inflammation'],\n",
100
100
  " 'developmental_stage': ['Adult', 'Adult', 'Adult', 'Adult', 'Child'],\n",
101
101
  " 'patient_age': [70, 55, 60, 65, 12],\n",
102
102
  "}\n",
@@ -46,7 +46,7 @@ class EHRCurator(DataFrameCurator):
46
46
  if col not in self.data.columns:
47
47
  self.data[col] = default
48
48
  else:
49
- self.data[col].fillna(default, inplace=True)
49
+ self.data[col] = self.data[col].fillna(default)
50
50
 
51
51
  super().__init__(
52
52
  df=self.data,
@@ -8,33 +8,19 @@
8
8
  "# How does search work?"
9
9
  ]
10
10
  },
11
- {
12
- "cell_type": "code",
13
- "execution_count": null,
14
- "id": "955b6253",
15
- "metadata": {},
16
- "outputs": [],
17
- "source": [
18
- "from laminci.db import setup_local_test_postgres"
19
- ]
20
- },
21
- {
22
- "cell_type": "code",
23
- "execution_count": null,
24
- "id": "7f312433",
25
- "metadata": {},
26
- "outputs": [],
27
- "source": [
28
- "pgurl = setup_local_test_postgres()"
29
- ]
30
- },
31
11
  {
32
12
  "cell_type": "code",
33
13
  "execution_count": null,
34
14
  "id": "286aeebc",
35
- "metadata": {},
15
+ "metadata": {
16
+ "tags": [
17
+ "hide-cell"
18
+ ]
19
+ },
36
20
  "outputs": [],
37
21
  "source": [
22
+ "from laminci.db import setup_local_test_postgres\n",
23
+ "pgurl = setup_local_test_postgres()\n",
38
24
  "!lamin init --name benchmark_search --db {pgurl} --schema bionty --storage ./benchmark_search"
39
25
  ]
40
26
  },
@@ -43,7 +29,7 @@
43
29
  "id": "40234d47",
44
30
  "metadata": {},
45
31
  "source": [
46
- "Here we show how to perform text search on `Record` and evaluate some search queries."
32
+ "Here we show how to perform text search on `Record` and evaluate some search queries for the {class}`bionty.CellType` ontology."
47
33
  ]
48
34
  },
49
35
  {
@@ -54,36 +40,32 @@
54
40
  "outputs": [],
55
41
  "source": [
56
42
  "import lamindb as ln\n",
57
- "import bionty as bt"
58
- ]
59
- },
60
- {
61
- "cell_type": "code",
62
- "execution_count": null,
63
- "id": "83a46a9a",
64
- "metadata": {},
65
- "outputs": [],
66
- "source": [
43
+ "import bionty as bt\n",
44
+ "\n",
45
+ "SEARCH_QUERIES_EXACT = (\"t cell\", \"stem cell\", \"b cell\", \"regulatory B cell\", \"Be2 cell\", \"adipocyte\")\n",
46
+ "SEARCH_QUERIES_CONTAINS = (\"t cel\", \"t-cel\", \"neural\", \"kidney\", \"kidne\")\n",
47
+ "TOP_N = 20\n",
48
+ "\n",
67
49
  "bt.CellType.import_source()"
68
50
  ]
69
51
  },
70
52
  {
71
- "cell_type": "code",
72
- "execution_count": null,
73
- "id": "7991a73f",
53
+ "cell_type": "markdown",
54
+ "id": "799b528e",
74
55
  "metadata": {},
75
- "outputs": [],
76
56
  "source": [
77
- "SEARCH_QUERIES_EXACT = (\"t cell\", \"stem cell\", \"b cell\", \"regulatory B cell\", \"Be2 cell\", \"adipocyte\")\n",
78
- "SEARCH_QUERIES_CONTAINS = (\"t cel\", \"t-cel\", \"neural\", \"kidney\", \"kidne\")\n",
79
- "TOP_N = 20"
57
+ "## Search the registry"
80
58
  ]
81
59
  },
82
60
  {
83
61
  "cell_type": "code",
84
62
  "execution_count": null,
85
63
  "id": "682fcd2f",
86
- "metadata": {},
64
+ "metadata": {
65
+ "tags": [
66
+ "hide-output"
67
+ ]
68
+ },
87
69
  "outputs": [],
88
70
  "source": [
89
71
  "for query in SEARCH_QUERIES_EXACT:\n",
@@ -98,7 +80,11 @@
98
80
  "cell_type": "code",
99
81
  "execution_count": null,
100
82
  "id": "ee059b0d",
101
- "metadata": {},
83
+ "metadata": {
84
+ "tags": [
85
+ "hide-output"
86
+ ]
87
+ },
102
88
  "outputs": [],
103
89
  "source": [
104
90
  "for query in SEARCH_QUERIES_CONTAINS:\n",
@@ -111,6 +97,32 @@
111
97
  " assert query in top_record.name.lower() or query in top_record.synonyms.lower()"
112
98
  ]
113
99
  },
100
+ {
101
+ "cell_type": "markdown",
102
+ "id": "f4e41c9b",
103
+ "metadata": {},
104
+ "source": [
105
+ "## Search the public ontology"
106
+ ]
107
+ },
108
+ {
109
+ "cell_type": "code",
110
+ "execution_count": null,
111
+ "id": "d42c3594",
112
+ "metadata": {
113
+ "tags": [
114
+ "hide-output"
115
+ ]
116
+ },
117
+ "outputs": [],
118
+ "source": [
119
+ "ct_public = bt.CellType.public()\n",
120
+ "\n",
121
+ "df = ct_public.search(\"b cell\", limit=20)\n",
122
+ "assert df.iloc[0][\"name\"] == \"B cell\"\n",
123
+ "df"
124
+ ]
125
+ },
114
126
  {
115
127
  "cell_type": "code",
116
128
  "execution_count": null,
@@ -4,14 +4,14 @@
4
4
  "cell_type": "markdown",
5
5
  "metadata": {},
6
6
  "source": [
7
- "# Why should I validate against gene symbols?"
7
+ "# Why should I not index datasets with gene symbols?"
8
8
  ]
9
9
  },
10
10
  {
11
11
  "cell_type": "markdown",
12
12
  "metadata": {},
13
13
  "source": [
14
- "Gene symbols are widely used in count data for readability, particularly for visualization. However, storing and validating gene symbols presents challenges:\n",
14
+ "Gene symbols are widely used for readability, particularly for visualization. However, indexing datasets with gene symbols presents challenges:\n",
15
15
  "\n",
16
16
  "- A single gene may have multiple symbols or aliases.\n",
17
17
  "- Gene symbols change over time (e.g., *BRCA2* was once *FACD*) without version tracking.\n",
@@ -55,6 +55,8 @@
55
55
  },
56
56
  "outputs": [],
57
57
  "source": [
58
+ "import lamindb as ln\n",
59
+ "import bionty as bt\n",
58
60
  "import numpy as np\n",
59
61
  "import pandas as pd\n",
60
62
  "import anndata as ad\n",
@@ -77,15 +79,14 @@
77
79
  },
78
80
  "outputs": [],
79
81
  "source": [
80
- "import lamindb as ln\n",
81
- "import bionty as bt\n",
82
- "\n",
83
82
  "# map Gene symbols to ENSEMBL IDs\n",
84
- "gene_mapper = bt.Gene.standardize(adata.var.index,\n",
85
- " field=bt.Gene.symbol,\n",
86
- " return_field=bt.Gene.ensembl_gene_id,\n",
87
- " return_mapper=True,\n",
88
- " organism=\"human\")\n",
83
+ "gene_mapper = bt.Gene.standardize(\n",
84
+ " adata.var.index,\n",
85
+ " field=bt.Gene.symbol,\n",
86
+ " return_field=bt.Gene.ensembl_gene_id,\n",
87
+ " return_mapper=True,\n",
88
+ " organism=\"human\"\n",
89
+ ")\n",
89
90
  "adata.var[\"ensembl_id\"] = adata.var.index.map(gene_mapper)\n",
90
91
  "adata.var\n"
91
92
  ]
@@ -100,9 +101,11 @@
100
101
  },
101
102
  "outputs": [],
102
103
  "source": [
103
- "standardized_genes = bt.Gene.from_values(['ENSG00000141510', 'ENSG00000133703', 'ENSG00000111640', 'ENSG00000171862', 'ENSG00000204490', 'ENSG00000112715', 'ENSG00000146648', 'ENSG00000136997', 'ENSG00000012048', 'ENSG00000136244'],\n",
104
- " field=bt.Gene.ensembl_gene_id,\n",
105
- " organism=\"human\")\n",
104
+ "standardized_genes = bt.Gene.from_values(\n",
105
+ " ['ENSG00000141510', 'ENSG00000133703', 'ENSG00000111640', 'ENSG00000171862', 'ENSG00000204490', 'ENSG00000112715', 'ENSG00000146648', 'ENSG00000136997', 'ENSG00000012048', 'ENSG00000136244'],\n",
106
+ " field=bt.Gene.ensembl_gene_id,\n",
107
+ " organism=\"human\"\n",
108
+ ")\n",
106
109
  "ln.save(standardized_genes)"
107
110
  ]
108
111
  },