lamindb 0.69.4__tar.gz → 0.69.6__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 (382) hide show
  1. {lamindb-0.69.4 → lamindb-0.69.6}/PKG-INFO +4 -4
  2. {lamindb-0.69.4 → lamindb-0.69.6}/docs/annotate.ipynb +41 -187
  3. {lamindb-0.69.4 → lamindb-0.69.6}/docs/bio-registries.ipynb +2 -2
  4. {lamindb-0.69.4 → lamindb-0.69.6}/docs/changelog.md +9 -0
  5. {lamindb-0.69.4 → lamindb-0.69.6}/docs/introduction.ipynb +60 -111
  6. {lamindb-0.69.4 → lamindb-0.69.6}/docs/tutorial.ipynb +1 -1
  7. {lamindb-0.69.4 → lamindb-0.69.6}/docs/tutorial2.ipynb +1 -1
  8. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/__init__.py +1 -1
  9. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/_annotate.py +244 -173
  10. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/_finish.py +4 -3
  11. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/integrations/_vitessce.py +4 -1
  12. {lamindb-0.69.4 → lamindb-0.69.6}/noxfile.py +1 -1
  13. {lamindb-0.69.4 → lamindb-0.69.6}/pyproject.toml +3 -3
  14. {lamindb-0.69.4 → lamindb-0.69.6}/sub/bionty/bionty/__init__.py +1 -1
  15. lamindb-0.69.6/sub/lamin-cli/lamin_cli/__init__.py +3 -0
  16. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamin-cli/lamin_cli/__main__.py +16 -31
  17. lamindb-0.69.4/sub/lamin-cli/lamin_cli/_stage.py → lamindb-0.69.6/sub/lamin-cli/lamin_cli/_get.py +13 -13
  18. lamindb-0.69.4/sub/lamin-cli/tests/test_stage.py → lamindb-0.69.6/sub/lamin-cli/tests/test_get.py +3 -3
  19. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamin-cli/tests/test_save_scripts.py +3 -1
  20. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/docs/changelog.md +2 -0
  21. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/lamindb_setup/__init__.py +1 -2
  22. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/lamindb_setup/_connect_instance.py +5 -5
  23. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/lamindb_setup/core/upath.py +7 -3
  24. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/CHANGELOG.md +2 -0
  25. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/__init__.py +1 -1
  26. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/models.py +28 -0
  27. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/types.py +1 -1
  28. lamindb-0.69.6/sub/lnschema-core/tests/test_types.py +14 -0
  29. {lamindb-0.69.4 → lamindb-0.69.6}/tests/test_annotate.py +10 -10
  30. {lamindb-0.69.4 → lamindb-0.69.6}/tests/test_from_values.py +4 -4
  31. {lamindb-0.69.4 → lamindb-0.69.6}/tests/test_queryset.py +2 -22
  32. {lamindb-0.69.4 → lamindb-0.69.6}/tests/test_run_context.py +1 -1
  33. {lamindb-0.69.4 → lamindb-0.69.6}/tests/test_transfer.py +2 -2
  34. {lamindb-0.69.4 → lamindb-0.69.6}/tests/test_versioning.py +26 -0
  35. lamindb-0.69.4/sub/lamin-cli/lamin_cli/__init__.py +0 -3
  36. {lamindb-0.69.4 → lamindb-0.69.6}/.github/workflows/build.yml +0 -0
  37. {lamindb-0.69.4 → lamindb-0.69.6}/.github/workflows/latest-changes.jinja2 +0 -0
  38. {lamindb-0.69.4 → lamindb-0.69.6}/.github/workflows/latest-changes.yml +0 -0
  39. {lamindb-0.69.4 → lamindb-0.69.6}/.gitignore +0 -0
  40. {lamindb-0.69.4 → lamindb-0.69.6}/.gitmodules +0 -0
  41. {lamindb-0.69.4 → lamindb-0.69.6}/.pre-commit-config.yaml +0 -0
  42. {lamindb-0.69.4 → lamindb-0.69.6}/LICENSE +0 -0
  43. {lamindb-0.69.4 → lamindb-0.69.6}/README.md +0 -0
  44. {lamindb-0.69.4 → lamindb-0.69.6}/docs/annotate-for-developers.ipynb +0 -0
  45. {lamindb-0.69.4 → lamindb-0.69.6}/docs/bionty-base.md +0 -0
  46. {lamindb-0.69.4 → lamindb-0.69.6}/docs/bionty.md +0 -0
  47. {lamindb-0.69.4 → lamindb-0.69.6}/docs/can-validate.ipynb +0 -0
  48. {lamindb-0.69.4 → lamindb-0.69.6}/docs/data.ipynb +0 -0
  49. {lamindb-0.69.4 → lamindb-0.69.6}/docs/faq/acid.ipynb +0 -0
  50. {lamindb-0.69.4 → lamindb-0.69.6}/docs/faq/delete.ipynb +0 -0
  51. {lamindb-0.69.4 → lamindb-0.69.6}/docs/faq/idempotency.ipynb +0 -0
  52. {lamindb-0.69.4 → lamindb-0.69.6}/docs/faq/import-schema.ipynb +0 -0
  53. {lamindb-0.69.4 → lamindb-0.69.6}/docs/faq/key.ipynb +0 -0
  54. {lamindb-0.69.4 → lamindb-0.69.6}/docs/faq/reference-field.ipynb +0 -0
  55. {lamindb-0.69.4 → lamindb-0.69.6}/docs/faq/setup.ipynb +0 -0
  56. {lamindb-0.69.4 → lamindb-0.69.6}/docs/faq/test_notebooks.py +0 -0
  57. {lamindb-0.69.4 → lamindb-0.69.6}/docs/faq/track-run-inputs.ipynb +0 -0
  58. {lamindb-0.69.4 → lamindb-0.69.6}/docs/faq/visibility.ipynb +0 -0
  59. {lamindb-0.69.4 → lamindb-0.69.6}/docs/faq.md +0 -0
  60. {lamindb-0.69.4 → lamindb-0.69.6}/docs/features-lamindb.md +0 -0
  61. {lamindb-0.69.4 → lamindb-0.69.6}/docs/features-laminhub.md +0 -0
  62. {lamindb-0.69.4 → lamindb-0.69.6}/docs/guide.md +0 -0
  63. {lamindb-0.69.4 → lamindb-0.69.6}/docs/index.md +0 -0
  64. {lamindb-0.69.4 → lamindb-0.69.6}/docs/installation.md +0 -0
  65. {lamindb-0.69.4 → lamindb-0.69.6}/docs/lamin-utils.md +0 -0
  66. {lamindb-0.69.4 → lamindb-0.69.6}/docs/lamindb.md +0 -0
  67. {lamindb-0.69.4 → lamindb-0.69.6}/docs/meta.ipynb +0 -0
  68. {lamindb-0.69.4 → lamindb-0.69.6}/docs/nbproject.md +0 -0
  69. {lamindb-0.69.4 → lamindb-0.69.6}/docs/query-search.md +0 -0
  70. {lamindb-0.69.4 → lamindb-0.69.6}/docs/readfcs.md +0 -0
  71. {lamindb-0.69.4 → lamindb-0.69.6}/docs/reference.md +0 -0
  72. {lamindb-0.69.4 → lamindb-0.69.6}/docs/schemas.ipynb +0 -0
  73. {lamindb-0.69.4 → lamindb-0.69.6}/docs/setup.ipynb +0 -0
  74. {lamindb-0.69.4 → lamindb-0.69.6}/docs/signup-login.md +0 -0
  75. {lamindb-0.69.4 → lamindb-0.69.6}/docs/storage/add-replace-stage.ipynb +0 -0
  76. {lamindb-0.69.4 → lamindb-0.69.6}/docs/storage/anndata-accessor.ipynb +0 -0
  77. {lamindb-0.69.4 → lamindb-0.69.6}/docs/storage/prepare-transfer-local-to-cloud.ipynb +0 -0
  78. {lamindb-0.69.4 → lamindb-0.69.6}/docs/storage/test-files/iris.csv +0 -0
  79. {lamindb-0.69.4 → lamindb-0.69.6}/docs/storage/test-files/iris.data +0 -0
  80. {lamindb-0.69.4 → lamindb-0.69.6}/docs/storage/test-files/new_iris.csv +0 -0
  81. {lamindb-0.69.4 → lamindb-0.69.6}/docs/storage/test_notebooks.py +0 -0
  82. {lamindb-0.69.4 → lamindb-0.69.6}/docs/storage/transfer-local-to-cloud.ipynb +0 -0
  83. {lamindb-0.69.4 → lamindb-0.69.6}/docs/storage/upload.ipynb +0 -0
  84. {lamindb-0.69.4 → lamindb-0.69.6}/docs/storage.md +0 -0
  85. {lamindb-0.69.4 → lamindb-0.69.6}/docs/test_notebooks.py +0 -0
  86. {lamindb-0.69.4 → lamindb-0.69.6}/docs/track.ipynb +0 -0
  87. {lamindb-0.69.4 → lamindb-0.69.6}/docs/transfer.ipynb +0 -0
  88. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/_artifact.py +0 -0
  89. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/_can_validate.py +0 -0
  90. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/_collection.py +0 -0
  91. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/_feature.py +0 -0
  92. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/_feature_set.py +0 -0
  93. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/_filter.py +0 -0
  94. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/_from_values.py +0 -0
  95. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/_is_versioned.py +0 -0
  96. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/_parents.py +0 -0
  97. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/_query_manager.py +0 -0
  98. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/_query_set.py +0 -0
  99. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/_registry.py +0 -0
  100. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/_run.py +0 -0
  101. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/_save.py +0 -0
  102. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/_storage.py +0 -0
  103. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/_transform.py +0 -0
  104. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/_ulabel.py +0 -0
  105. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/_utils.py +0 -0
  106. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/_view.py +0 -0
  107. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/core/__init__.py +0 -0
  108. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/core/_data.py +0 -0
  109. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/core/_feature_manager.py +0 -0
  110. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/core/_label_manager.py +0 -0
  111. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/core/_mapped_collection.py +0 -0
  112. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/core/_run_context.py +0 -0
  113. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/core/_settings.py +0 -0
  114. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/core/_sync_git.py +0 -0
  115. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/core/_track_environment.py +0 -0
  116. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/core/_transform_settings.py +0 -0
  117. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/core/_view_tree.py +0 -0
  118. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/core/datasets/__init__.py +0 -0
  119. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/core/datasets/_core.py +0 -0
  120. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/core/datasets/_fake.py +0 -0
  121. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/core/exceptions.py +0 -0
  122. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/core/fields.py +0 -0
  123. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/core/storage/__init__.py +0 -0
  124. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/core/storage/_anndata_sizes.py +0 -0
  125. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/core/storage/_backed_access.py +0 -0
  126. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/core/storage/_zarr.py +0 -0
  127. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/core/storage/file.py +0 -0
  128. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/core/storage/object.py +0 -0
  129. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/core/types.py +0 -0
  130. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/core/versioning.py +0 -0
  131. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/integrations/__init__.py +0 -0
  132. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/setup/__init__.py +0 -0
  133. {lamindb-0.69.4 → lamindb-0.69.6}/lamindb/setup/core/__init__.py +0 -0
  134. {lamindb-0.69.4 → lamindb-0.69.6}/sub/bionty/.github/workflows/build.yml +0 -0
  135. {lamindb-0.69.4 → lamindb-0.69.6}/sub/bionty/.github/workflows/latest-changes.jinja2 +0 -0
  136. {lamindb-0.69.4 → lamindb-0.69.6}/sub/bionty/.github/workflows/latest-changes.yml +0 -0
  137. {lamindb-0.69.4 → lamindb-0.69.6}/sub/bionty/.gitignore +0 -0
  138. {lamindb-0.69.4 → lamindb-0.69.6}/sub/bionty/.pre-commit-config.yaml +0 -0
  139. {lamindb-0.69.4 → lamindb-0.69.6}/sub/bionty/LICENSE +0 -0
  140. {lamindb-0.69.4 → lamindb-0.69.6}/sub/bionty/README.md +0 -0
  141. {lamindb-0.69.4 → lamindb-0.69.6}/sub/bionty/bionty/core/__init__.py +0 -0
  142. {lamindb-0.69.4 → lamindb-0.69.6}/sub/bionty/docs/changelog.md +0 -0
  143. {lamindb-0.69.4 → lamindb-0.69.6}/sub/bionty/docs/index.md +0 -0
  144. {lamindb-0.69.4 → lamindb-0.69.6}/sub/bionty/docs/reference.md +0 -0
  145. {lamindb-0.69.4 → lamindb-0.69.6}/sub/bionty/lamin-project.yaml +0 -0
  146. {lamindb-0.69.4 → lamindb-0.69.6}/sub/bionty/noxfile.py +0 -0
  147. {lamindb-0.69.4 → lamindb-0.69.6}/sub/bionty/pyproject.toml +0 -0
  148. {lamindb-0.69.4 → lamindb-0.69.6}/sub/bionty/tests/test_notebooks.py +0 -0
  149. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamin-cli/.gitignore +0 -0
  150. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamin-cli/.pre-commit-config.yaml +0 -0
  151. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamin-cli/README.md +0 -0
  152. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamin-cli/lamin_cli/_cache.py +0 -0
  153. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamin-cli/lamin_cli/_migration.py +0 -0
  154. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamin-cli/lamin_cli/_save.py +0 -0
  155. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamin-cli/pyproject.toml +0 -0
  156. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamin-cli/tests/conftest.py +0 -0
  157. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamin-cli/tests/notebooks/not-initialized.ipynb +0 -0
  158. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamin-cli/tests/notebooks/with-title-and-initialized-consecutive.ipynb +0 -0
  159. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamin-cli/tests/notebooks/with-title-and-initialized-non-consecutive.ipynb +0 -0
  160. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamin-cli/tests/scripts/initialized.py +0 -0
  161. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamin-cli/tests/test_cli.py +0 -0
  162. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamin-cli/tests/test_migrate.py +0 -0
  163. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamin-cli/tests/test_save_notebooks.py +0 -0
  164. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/.github/workflows/build.yml +0 -0
  165. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/.github/workflows/latest-changes.jinja2 +0 -0
  166. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/.github/workflows/latest-changes.yml +0 -0
  167. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/.gitignore +0 -0
  168. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/.pre-commit-config.yaml +0 -0
  169. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/LICENSE +0 -0
  170. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/README.md +0 -0
  171. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/docs/hub-cloud/01-init-on-prem-instance.ipynb +0 -0
  172. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/docs/hub-cloud/02-connect-on-prem-instance.ipynb +0 -0
  173. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/docs/hub-cloud/03-set-storage.ipynb +0 -0
  174. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/docs/hub-cloud/04-test-bionty.ipynb +0 -0
  175. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/docs/hub-cloud/05-init-hosted-instance.ipynb +0 -0
  176. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/docs/hub-cloud/06-connect-hosted-instance.ipynb +0 -0
  177. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/docs/hub-cloud/test-multi-session.ipynb +0 -0
  178. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/docs/hub-cloud/test_notebooks.py +0 -0
  179. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/docs/hub-prod/test-cache-management.ipynb +0 -0
  180. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/docs/hub-prod/test-cloud-sync.ipynb +0 -0
  181. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/docs/hub-prod/test-connect-anonymously.ipynb +0 -0
  182. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/docs/hub-prod/test-empty-init.ipynb +0 -0
  183. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/docs/hub-prod/test-import-schema.ipynb +0 -0
  184. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/docs/hub-prod/test-insufficient-user-info.ipynb +0 -0
  185. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/docs/hub-prod/test-invalid-schema.ipynb +0 -0
  186. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/docs/hub-prod/test-sqlite-lock.ipynb +0 -0
  187. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/docs/hub-prod/test_notebooks2.py +0 -0
  188. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/docs/index.md +0 -0
  189. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/docs/notebooks.md +0 -0
  190. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/docs/reference.md +0 -0
  191. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/lamindb_setup/_add_remote_storage.py +0 -0
  192. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/lamindb_setup/_cache.py +0 -0
  193. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/lamindb_setup/_check.py +0 -0
  194. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/lamindb_setup/_check_setup.py +0 -0
  195. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/lamindb_setup/_close.py +0 -0
  196. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/lamindb_setup/_delete.py +0 -0
  197. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/lamindb_setup/_django.py +0 -0
  198. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/lamindb_setup/_exportdb.py +0 -0
  199. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/lamindb_setup/_importdb.py +0 -0
  200. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/lamindb_setup/_init_instance.py +0 -0
  201. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/lamindb_setup/_migrate.py +0 -0
  202. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/lamindb_setup/_register_instance.py +0 -0
  203. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/lamindb_setup/_schema.py +0 -0
  204. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/lamindb_setup/_setup_user.py +0 -0
  205. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/lamindb_setup/_silence_loggers.py +0 -0
  206. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/lamindb_setup/core/__init__.py +0 -0
  207. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/lamindb_setup/core/_aws_storage.py +0 -0
  208. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/lamindb_setup/core/_deprecated.py +0 -0
  209. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/lamindb_setup/core/_docs.py +0 -0
  210. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/lamindb_setup/core/_hub_client.py +0 -0
  211. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/lamindb_setup/core/_hub_core.py +0 -0
  212. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/lamindb_setup/core/_hub_crud.py +0 -0
  213. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/lamindb_setup/core/_hub_utils.py +0 -0
  214. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/lamindb_setup/core/_settings.py +0 -0
  215. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/lamindb_setup/core/_settings_instance.py +0 -0
  216. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/lamindb_setup/core/_settings_load.py +0 -0
  217. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/lamindb_setup/core/_settings_save.py +0 -0
  218. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/lamindb_setup/core/_settings_storage.py +0 -0
  219. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/lamindb_setup/core/_settings_store.py +0 -0
  220. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/lamindb_setup/core/_settings_user.py +0 -0
  221. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/lamindb_setup/core/_setup_bionty_sources.py +0 -0
  222. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/lamindb_setup/core/cloud_sqlite_locker.py +0 -0
  223. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/lamindb_setup/core/django.py +0 -0
  224. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/lamindb_setup/core/exceptions.py +0 -0
  225. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/lamindb_setup/core/hashing.py +0 -0
  226. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/lamindb_setup/core/types.py +0 -0
  227. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/noxfile.py +0 -0
  228. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/pyproject.toml +0 -0
  229. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/tests/hub-cloud/test_connect_instance.py +0 -0
  230. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/tests/hub-cloud/test_delete_instance.py +0 -0
  231. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/tests/hub-cloud/test_init_instance.py +0 -0
  232. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/tests/hub-cloud/test_login.py +0 -0
  233. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/tests/hub-cloud/test_migrate.py +0 -0
  234. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/tests/hub-cloud/test_set_storage.py +0 -0
  235. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/tests/hub-local/conftest.py +0 -0
  236. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/tests/hub-local/test_all.py +0 -0
  237. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/tests/hub-local/test_check_s3_storage_empty.py +0 -0
  238. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/tests/hub-local/test_hosted_instance_deletion_gate.py +0 -0
  239. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/tests/hub-prod/conftest.py +0 -0
  240. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/tests/hub-prod/test_auto_connect.py +0 -0
  241. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/tests/hub-prod/test_django.py +0 -0
  242. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/tests/hub-prod/test_switch_and_fallback_env.py +0 -0
  243. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/tests/hub-prod/test_upath.py +0 -0
  244. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/tests/storage/test_hashing.py +0 -0
  245. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/tests/storage/test_storage_access.py +0 -0
  246. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/tests/storage/test_storage_basis.py +0 -0
  247. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lamindb-setup/tests/storage/test_storage_stats.py +0 -0
  248. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/.github/workflows/build.yml +0 -0
  249. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/.github/workflows/latest-changes.jinja2 +0 -0
  250. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/.github/workflows/latest-changes.yml +0 -0
  251. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/.gitignore +0 -0
  252. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/.pre-commit-config.yaml +0 -0
  253. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/LICENSE +0 -0
  254. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/README.md +0 -0
  255. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/docs/changelog.md +0 -0
  256. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/docs/index.md +0 -0
  257. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/docs/reference.md +0 -0
  258. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/lamin-project.yaml +0 -0
  259. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/lnschema_bionty/__init__.py +0 -0
  260. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/lnschema_bionty/_bionty.py +0 -0
  261. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/lnschema_bionty/core/__init__.py +0 -0
  262. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/lnschema_bionty/core/_bionty.py +0 -0
  263. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/lnschema_bionty/core/_settings.py +0 -0
  264. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/lnschema_bionty/ids.py +0 -0
  265. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/lnschema_bionty/migrations/0001_initial.py +0 -0
  266. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/lnschema_bionty/migrations/0001_initial_squashed_0016.py +0 -0
  267. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/lnschema_bionty/migrations/0002_rename_gene_type_gene_biotype_and_more.py +0 -0
  268. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/lnschema_bionty/migrations/0003_alter_biontysource_entity_alter_biontysource_source_and_more.py +0 -0
  269. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/lnschema_bionty/migrations/0004_alter_cellline_bionty_source_and_more.py +0 -0
  270. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/lnschema_bionty/migrations/0005_rename_short_name_cellline_abbr_and_more.py +0 -0
  271. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/lnschema_bionty/migrations/0006_alter_biontysource_options_alter_cellline_options_and_more.py +0 -0
  272. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/lnschema_bionty/migrations/0007_rename_readout_experimental_factor.py +0 -0
  273. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/lnschema_bionty/migrations/0008_remove_gene_hgnc_id_remove_gene_mgi_id_and_more.py +0 -0
  274. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/lnschema_bionty/migrations/0009_alter_gene_ensembl_gene_id.py +0 -0
  275. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/lnschema_bionty/migrations/0010_alter_species_name.py +0 -0
  276. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/lnschema_bionty/migrations/0011_cellline_datasets_cellmarker_datasets_and_more.py +0 -0
  277. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/lnschema_bionty/migrations/0012_gene_stable_id.py +0 -0
  278. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/lnschema_bionty/migrations/0013_alter_cellmarker_species_alter_gene_species_and_more.py +0 -0
  279. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/lnschema_bionty/migrations/0014_ethnicity_developmentalstage.py +0 -0
  280. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/lnschema_bionty/migrations/0015_migrate_to_integer_pks.py +0 -0
  281. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/lnschema_bionty/migrations/0016_export_legacy_data.py +0 -0
  282. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/lnschema_bionty/migrations/0017_import_legacy_data.py +0 -0
  283. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/lnschema_bionty/migrations/0018_organism_rename_species_biontysource_organism_and_more.py +0 -0
  284. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/lnschema_bionty/migrations/0019_rename_taxon_id_organism_ontology_id_and_more.py +0 -0
  285. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/lnschema_bionty/migrations/0020_alter_organism_bionty_source.py +0 -0
  286. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/lnschema_bionty/migrations/0021_rename_files_cellline_artifacts_and_more.py +0 -0
  287. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/lnschema_bionty/migrations/0022_rename_datasets_cellline_collections_and_more.py +0 -0
  288. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/lnschema_bionty/migrations/0023_rename_publicsource_encode_uid.py +0 -0
  289. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/lnschema_bionty/migrations/__init__.py +0 -0
  290. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/lnschema_bionty/models.py +0 -0
  291. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/noxfile.py +0 -0
  292. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/pyproject.toml +0 -0
  293. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-bionty/tests/test_integrity.py +0 -0
  294. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/.github/workflows/build.yml +0 -0
  295. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/.github/workflows/latest-changes.jinja2 +0 -0
  296. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/.github/workflows/latest-changes.yml +0 -0
  297. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/.gitignore +0 -0
  298. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/.pre-commit-config.yaml +0 -0
  299. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/LICENSE +0 -0
  300. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/README.md +0 -0
  301. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/ids.py +0 -0
  302. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0001_initial.py +0 -0
  303. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0001_initial_squashed_0023.py +0 -0
  304. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0002_alter_user_name.py +0 -0
  305. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0003_alter_storage_region_alter_transform_short_name.py +0 -0
  306. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0004_rename_folder_tag_alter_project_folders.py +0 -0
  307. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0005_alter_run_inputs_delete_runinput.py +0 -0
  308. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0006_feature_dataset.py +0 -0
  309. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0007_feature_synonyms_featureset_field_and_more.py +0 -0
  310. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0008_file_hash_type_transform_parents.py +0 -0
  311. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0009_remove_featureset_files_feature_unit_and_more.py +0 -0
  312. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0010_dataset_categories_file_categories.py +0 -0
  313. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0011_label_remove_tag_created_by_remove_tag_parents_and_more.py +0 -0
  314. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0012_remove_label_ref_id_remove_label_ref_orm_and_more.py +0 -0
  315. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0013_remove_feature_labels_orm_and_more.py +0 -0
  316. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0014_rename_ref_field_featureset_registry.py +0 -0
  317. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0015_file_initial_version_file_version.py +0 -0
  318. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0016_dataset_input_of_dataset_run_dataset_transform_and_more.py +0 -0
  319. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0017_dataset_initial_version_dataset_version.py +0 -0
  320. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0018_rename_datasetlabel_datasetulabel_and_more.py +0 -0
  321. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0019_dataset_reference_dataset_reference_type_and_more.py +0 -0
  322. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0020_run_report_transform_latest_report_and_more.py +0 -0
  323. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0021_dataset_storage_alter_dataset_file.py +0 -0
  324. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0022_migrate_to_integer_pks.py +0 -0
  325. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0023_export_legacy_data.py +0 -0
  326. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0024_import_legacy_data.py +0 -0
  327. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0025_remove_user_email.py +0 -0
  328. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0026_dataset_visibility_file_visibility.py +0 -0
  329. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0027_file_key_is_virtual.py +0 -0
  330. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0028_alter_dataset_visibility_alter_file_visibility.py +0 -0
  331. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0029_remove_feature_modality_remove_featureset_modality_and_more.py +0 -0
  332. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0030_alter_dataset_visibility_alter_file_visibility.py +0 -0
  333. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0031_rename_file_to_artifact.py +0 -0
  334. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0032_remove_dataset_storage.py +0 -0
  335. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0033_alter_artifact_unique_together_artifact_n_objects_and_more.py +0 -0
  336. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0034_run_environment.py +0 -0
  337. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0035_remove_artifact_initial_version_and_more.py +0 -0
  338. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0036_storage_description.py +0 -0
  339. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0037_rename_dataset_to_collection.py +0 -0
  340. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0038_alter_collection_artifact_alter_collection_artifacts_and_more.py +0 -0
  341. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0039_remove_collection_artifacts_collectionartifact_and_more.py +0 -0
  342. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0040_alter_transform_type.py +0 -0
  343. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0041_remove_transform_short_name_transform_description_and_more.py +0 -0
  344. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0042_rename_run_at_run_started_at_run_finished_at.py +0 -0
  345. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/0043_run_json.py +0 -0
  346. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/migrations/__init__.py +0 -0
  347. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/mocks.py +0 -0
  348. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/lnschema_core/users.py +0 -0
  349. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/noxfile.py +0 -0
  350. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/pyproject.toml +0 -0
  351. {lamindb-0.69.4 → lamindb-0.69.6}/sub/lnschema-core/tests/test_integrity.py +0 -0
  352. {lamindb-0.69.4 → lamindb-0.69.6}/tests/conftest.py +0 -0
  353. {lamindb-0.69.4 → lamindb-0.69.6}/tests/notebooks/initialized-with-nbproject.ipynb +0 -0
  354. {lamindb-0.69.4 → lamindb-0.69.6}/tests/notebooks/no-title.ipynb +0 -0
  355. {lamindb-0.69.4 → lamindb-0.69.6}/tests/notebooks/not-initialized.ipynb +0 -0
  356. {lamindb-0.69.4 → lamindb-0.69.6}/tests/notebooks/with-title-initialized-consecutive-finish-not-last-cell.ipynb +0 -0
  357. {lamindb-0.69.4 → lamindb-0.69.6}/tests/notebooks/with-title-initialized-consecutive-finish.ipynb +0 -0
  358. {lamindb-0.69.4 → lamindb-0.69.6}/tests/test_artifact.py +0 -0
  359. {lamindb-0.69.4 → lamindb-0.69.6}/tests/test_cache.py +0 -0
  360. {lamindb-0.69.4 → lamindb-0.69.6}/tests/test_can_validate.py +0 -0
  361. {lamindb-0.69.4 → lamindb-0.69.6}/tests/test_collection.py +0 -0
  362. {lamindb-0.69.4 → lamindb-0.69.6}/tests/test_data.py +0 -0
  363. {lamindb-0.69.4 → lamindb-0.69.6}/tests/test_db.py +0 -0
  364. {lamindb-0.69.4 → lamindb-0.69.6}/tests/test_delete.py +0 -0
  365. {lamindb-0.69.4 → lamindb-0.69.6}/tests/test_feature.py +0 -0
  366. {lamindb-0.69.4 → lamindb-0.69.6}/tests/test_feature_manager.py +0 -0
  367. {lamindb-0.69.4 → lamindb-0.69.6}/tests/test_feature_set.py +0 -0
  368. {lamindb-0.69.4 → lamindb-0.69.6}/tests/test_label_manager.py +0 -0
  369. {lamindb-0.69.4 → lamindb-0.69.6}/tests/test_load.py +0 -0
  370. {lamindb-0.69.4 → lamindb-0.69.6}/tests/test_manager.py +0 -0
  371. {lamindb-0.69.4 → lamindb-0.69.6}/tests/test_notebooks.py +0 -0
  372. {lamindb-0.69.4 → lamindb-0.69.6}/tests/test_parents.py +0 -0
  373. {lamindb-0.69.4 → lamindb-0.69.6}/tests/test_registry.py +0 -0
  374. {lamindb-0.69.4 → lamindb-0.69.6}/tests/test_run.py +0 -0
  375. {lamindb-0.69.4 → lamindb-0.69.6}/tests/test_save.py +0 -0
  376. {lamindb-0.69.4 → lamindb-0.69.6}/tests/test_settings.py +0 -0
  377. {lamindb-0.69.4 → lamindb-0.69.6}/tests/test_storage.py +0 -0
  378. {lamindb-0.69.4 → lamindb-0.69.6}/tests/test_transform.py +0 -0
  379. {lamindb-0.69.4 → lamindb-0.69.6}/tests/test_uid.py +0 -0
  380. {lamindb-0.69.4 → lamindb-0.69.6}/tests/test_ulabel.py +0 -0
  381. {lamindb-0.69.4 → lamindb-0.69.6}/tests/test_view.py +0 -0
  382. {lamindb-0.69.4 → lamindb-0.69.6}/tests/test_visibility.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: lamindb
3
- Version: 0.69.4
3
+ Version: 0.69.6
4
4
  Summary: A data framework for biology.
5
5
  Author-email: Lamin Labs <open-source@lamin.ai>
6
6
  Requires-Python: >=3.8
@@ -9,10 +9,10 @@ Classifier: Programming Language :: Python :: 3.8
9
9
  Classifier: Programming Language :: Python :: 3.9
10
10
  Classifier: Programming Language :: Python :: 3.10
11
11
  Classifier: Programming Language :: Python :: 3.11
12
- Requires-Dist: lnschema_core==0.64.1
13
- Requires-Dist: lamindb_setup==0.68.2
12
+ Requires-Dist: lnschema_core==0.64.4
13
+ Requires-Dist: lamindb_setup==0.68.4
14
14
  Requires-Dist: lamin_utils==0.13.1
15
- Requires-Dist: lamin_cli==0.10.2
15
+ Requires-Dist: lamin_cli==0.11.0
16
16
  Requires-Dist: rapidfuzz
17
17
  Requires-Dist: pyarrow
18
18
  Requires-Dist: typing_extensions!=4.6.0
@@ -5,24 +5,19 @@
5
5
  "id": "1d2cd769",
6
6
  "metadata": {},
7
7
  "source": [
8
- "# Annotate data\n",
8
+ "# Validate, standardize & annotate\n",
9
9
  "\n",
10
- "This guide shows how to annotate data, including defining clear validation criteria, validating & curating metadata, registering annotated artifacts, within a few minutes.\n",
10
+ "We'll walk you through the following flow: \n",
11
+ "1. define validation criteria\n",
12
+ "2. validate & standardize metadata\n",
13
+ "3. save validated & annotated artifacts\n",
11
14
  "\n",
12
- "By the end, you'll have validated data objects empowered by LaminDB registries.\n",
15
+ ":::{dropdown} How do we validate metadata?\n",
13
16
  "\n",
14
- ":::{dropdown} What does \"validating a categorical variable based on registries\" mean?\n",
15
- "\n",
16
- "The records in your LaminDB instance define the validated reference values for any entity managed in your schema.\n",
17
- "\n",
18
- "Validated categorical values are stored in a field of a registry; a column of the registry table.\n",
19
- "\n",
20
- "The default field to label an entity record is the `name` field.\n",
17
+ "Registries in your database define the \"truth\" for metadata.\n",
21
18
  "\n",
22
19
  "For instance, if \"Experiment 1\" has been registered as the `name` of a `ULabel` record, it is a validated value for field `ULabel.name`.\n",
23
20
  "\n",
24
- "{class}`~lamindb.core.CanValidate` methods {meth}`~lamindb.core.CanValidate.validate`, {meth}`~lamindb.core.CanValidate.inspect`, {meth}`~lamindb.core.CanValidate.standardize`, {meth}`~lamindb.core.Registry.from_values` take 2 important parameters: `values` and `field`. The parameter `values` takes an iterable of input categorical values, and the parameter `field` takes a typed field of a registry.\n",
25
- "\n",
26
21
  ":::\n",
27
22
  "\n",
28
23
  "```{toctree}\n",
@@ -34,14 +29,6 @@
34
29
  "```"
35
30
  ]
36
31
  },
37
- {
38
- "cell_type": "markdown",
39
- "id": "553332e1",
40
- "metadata": {},
41
- "source": [
42
- "## Set up"
43
- ]
44
- },
45
32
  {
46
33
  "cell_type": "code",
47
34
  "execution_count": null,
@@ -71,20 +58,12 @@
71
58
  "ln.settings.verbosity = \"hint\""
72
59
  ]
73
60
  },
74
- {
75
- "cell_type": "markdown",
76
- "id": "65c71f2f",
77
- "metadata": {},
78
- "source": [
79
- "## A DataFrame with labels"
80
- ]
81
- },
82
61
  {
83
62
  "cell_type": "markdown",
84
63
  "id": "52bbbac2",
85
64
  "metadata": {},
86
65
  "source": [
87
- "Let's start with a DataFrame object that we'd like to validate and curate:"
66
+ "Let's start with a DataFrame that we'd like to validate:"
88
67
  ]
89
68
  },
90
69
  {
@@ -95,6 +74,7 @@
95
74
  "outputs": [],
96
75
  "source": [
97
76
  "df = pd.DataFrame({\n",
77
+ " \"temperature\": [37.2, 36.3, 38.2],\n",
98
78
  " \"cell_type\": [\"cerebral pyramidal neuron\", \"astrocyte\", \"oligodendrocyte\"],\n",
99
79
  " \"assay_ontology_id\": [\"EFO:0008913\", \"EFO:0008913\", \"EFO:0008913\"],\n",
100
80
  " \"donor\": [\"D0001\", \"D0002\", \"DOOO3\"],\n",
@@ -107,15 +87,7 @@
107
87
  "id": "946a3371",
108
88
  "metadata": {},
109
89
  "source": [
110
- "## Validate and curate metadata"
111
- ]
112
- },
113
- {
114
- "cell_type": "markdown",
115
- "id": "abc3aafa",
116
- "metadata": {},
117
- "source": [
118
- "Define validation criteria for the columns:"
90
+ "## Validate and standardize metadata"
119
91
  ]
120
92
  },
121
93
  {
@@ -125,48 +97,16 @@
125
97
  "metadata": {},
126
98
  "outputs": [],
127
99
  "source": [
128
- "fields = {\n",
100
+ "# define validation criteria for the categoricals\n",
101
+ "categoricals = {\n",
129
102
  " \"cell_type\": bt.CellType.name,\n",
130
103
  " \"assay_ontology_id\": bt.ExperimentalFactor.ontology_id,\n",
131
104
  " \"donor\": ln.ULabel.name,\n",
132
- "}"
133
- ]
134
- },
135
- {
136
- "cell_type": "markdown",
137
- "id": "acdb45d8",
138
- "metadata": {},
139
- "source": [
140
- "Validate the Pandas DataFrame:"
141
- ]
142
- },
143
- {
144
- "cell_type": "code",
145
- "execution_count": null,
146
- "id": "15137652",
147
- "metadata": {},
148
- "outputs": [],
149
- "source": [
150
- "annotate = ln.Annotate.from_df(df, fields=fields)"
151
- ]
152
- },
153
- {
154
- "cell_type": "code",
155
- "execution_count": null,
156
- "id": "24e00633",
157
- "metadata": {},
158
- "outputs": [],
159
- "source": [
160
- "validated = annotate.validate()"
161
- ]
162
- },
163
- {
164
- "cell_type": "code",
165
- "execution_count": null,
166
- "id": "f75d3f15",
167
- "metadata": {},
168
- "outputs": [],
169
- "source": [
105
+ "}\n",
106
+ "# create an object to guide validation and annotation\n",
107
+ "annotate = ln.Annotate.from_df(df, categoricals=categoricals)\n",
108
+ "# validate\n",
109
+ "validated = annotate.validate()\n",
170
110
  "validated"
171
111
  ]
172
112
  },
@@ -177,12 +117,9 @@
177
117
  "source": [
178
118
  "## Validate using registries in another instance\n",
179
119
  "\n",
180
- "Sometimes you want to validate against existing registries others might have created.\n",
181
- "\n",
182
- "Here we use the [cellxgene instance](https://lamin.ai/laminlabs/cellxgene) registries to curate against. You will notice more terms are validated than above.\n",
120
+ "Sometimes you want to validate against other existing registries, for instance [cellxgene](https://lamin.ai/laminlabs/cellxgene).\n",
183
121
  "\n",
184
- "This allows us to register values that are currently missing in our instance from the [cellxgene instance](https://lamin.ai/laminlabs/cellxgene) directly.\n",
185
- "By having our own registry but also validating against the [cellxgene instance](https://lamin.ai/laminlabs/cellxgene), we enable the addition of new registry values while keeping the [cellxgene instance](https://lamin.ai/laminlabs/cellxgene) focused on the [cellxgene schema](https://github.com/chanzuckerberg/single-cell-curation/tree/main/schema)."
122
+ "This allows us to directly transfer values that are currently missing in our registries from the [cellxgene instance](https://lamin.ai/laminlabs/cellxgene)."
186
123
  ]
187
124
  },
188
125
  {
@@ -194,9 +131,9 @@
194
131
  "source": [
195
132
  "annotate = ln.Annotate.from_df(\n",
196
133
  " df, \n",
197
- " fields=fields, \n",
134
+ " categoricals=categoricals,\n",
198
135
  " using=\"laminlabs/cellxgene\", # pass the instance slug\n",
199
- " )\n",
136
+ ")\n",
200
137
  "annotate.validate()"
201
138
  ]
202
139
  },
@@ -207,9 +144,7 @@
207
144
  "source": [
208
145
  "## Register new metadata labels\n",
209
146
  "\n",
210
- "Following the suggestions above to register labels that aren't present in the current instance:\n",
211
- "\n",
212
- "(Note that our current instance is empty. Once you filled up the registries, registering new labels won't be frequently needed)"
147
+ "Our current database instance is empty. Once you populated its registries, saving new labels will only rarely be needed. You'll mostly use your lamindb instance to validate any incoming new data and annotate it."
213
148
  ]
214
149
  },
215
150
  {
@@ -219,15 +154,7 @@
219
154
  "metadata": {},
220
155
  "outputs": [],
221
156
  "source": [
222
- "annotate.update_registry(\"cell_type\")"
223
- ]
224
- },
225
- {
226
- "cell_type": "markdown",
227
- "id": "2dcd5a3d",
228
- "metadata": {},
229
- "source": [
230
- "Fix typo and register again:"
157
+ "annotate.add_validated_from(df.cell_type.name)"
231
158
  ]
232
159
  },
233
160
  {
@@ -239,16 +166,7 @@
239
166
  "source": [
240
167
  "# use a lookup object to get the correct spelling of categories from public reference\n",
241
168
  "# pass \"public\" to use the public reference\n",
242
- "lookup = annotate.lookup()"
243
- ]
244
- },
245
- {
246
- "cell_type": "code",
247
- "execution_count": null,
248
- "id": "24a56369",
249
- "metadata": {},
250
- "outputs": [],
251
- "source": [
169
+ "lookup = annotate.lookup()\n",
252
170
  "lookup"
253
171
  ]
254
172
  },
@@ -259,7 +177,7 @@
259
177
  "metadata": {},
260
178
  "outputs": [],
261
179
  "source": [
262
- "cell_types = lookup[\"cell_type\"]"
180
+ "cell_types = lookup[df.cell_type.name]"
263
181
  ]
264
182
  },
265
183
  {
@@ -280,9 +198,9 @@
280
198
  "outputs": [],
281
199
  "source": [
282
200
  "# fix the typo\n",
283
- "df[\"cell_type\"] = df[\"cell_type\"].replace({\"cerebral pyramidal neuron\": cell_types.cerebral_cortex_pyramidal_neuron.name})\n",
201
+ "df.cell_type = df.cell_type.replace({\"cerebral pyramidal neuron\": cell_types.cerebral_cortex_pyramidal_neuron.name})\n",
284
202
  "\n",
285
- "annotate.update_registry(\"cell_type\")"
203
+ "annotate.add_validated_from(df.cell_type.name)"
286
204
  ]
287
205
  },
288
206
  {
@@ -292,33 +210,8 @@
292
210
  "metadata": {},
293
211
  "outputs": [],
294
212
  "source": [
295
- "annotate.update_registry(\"donor\")"
296
- ]
297
- },
298
- {
299
- "cell_type": "markdown",
300
- "id": "b182af1c",
301
- "metadata": {},
302
- "source": [
303
- "To register non-validated terms, pass `validated_only=False`:"
304
- ]
305
- },
306
- {
307
- "cell_type": "code",
308
- "execution_count": null,
309
- "id": "b393accf",
310
- "metadata": {},
311
- "outputs": [],
312
- "source": [
313
- "annotate.update_registry(\"donor\", validated_only=False)"
314
- ]
315
- },
316
- {
317
- "cell_type": "markdown",
318
- "id": "1f3cd3a9",
319
- "metadata": {},
320
- "source": [
321
- "Let's validate it again:"
213
+ "# register non-validated terms\n",
214
+ "annotate.add_new_from(df.donor.name)"
322
215
  ]
323
216
  },
324
217
  {
@@ -328,16 +221,8 @@
328
221
  "metadata": {},
329
222
  "outputs": [],
330
223
  "source": [
331
- "validated = annotate.validate()"
332
- ]
333
- },
334
- {
335
- "cell_type": "code",
336
- "execution_count": null,
337
- "id": "55b9b30e",
338
- "metadata": {},
339
- "outputs": [],
340
- "source": [
224
+ "# validate again\n",
225
+ "validated = annotate.validate()\n",
341
226
  "validated"
342
227
  ]
343
228
  },
@@ -348,8 +233,6 @@
348
233
  "source": [
349
234
  "## Validate an AnnData object\n",
350
235
  "\n",
351
- "We offer an AnnData specific annotate that is aware of the variables in addition to the observations DataFrame.\n",
352
- "\n",
353
236
  "Here we specify which `var_fields` and `obs_fields` to validate against."
354
237
  ]
355
238
  },
@@ -377,10 +260,10 @@
377
260
  "source": [
378
261
  "annotate = ln.Annotate.from_anndata(\n",
379
262
  " adata, \n",
380
- " obs_fields=fields, \n",
381
- " var_field=bt.Gene.symbol, # specify the field for the var\n",
263
+ " var_index=bt.Gene.symbol,\n",
264
+ " categoricals=categoricals, \n",
382
265
  " organism=\"human\",\n",
383
- " )"
266
+ ")"
384
267
  ]
385
268
  },
386
269
  {
@@ -400,7 +283,7 @@
400
283
  "metadata": {},
401
284
  "outputs": [],
402
285
  "source": [
403
- "annotate.update_registry(\"all\")"
286
+ "annotate.add_validated_from(\"all\")"
404
287
  ]
405
288
  },
406
289
  {
@@ -418,7 +301,7 @@
418
301
  "id": "38a30170",
419
302
  "metadata": {},
420
303
  "source": [
421
- "## Register file"
304
+ "## Save an artifact"
422
305
  ]
423
306
  },
424
307
  {
@@ -426,19 +309,7 @@
426
309
  "id": "a814ef37",
427
310
  "metadata": {},
428
311
  "source": [
429
- "The validated object can be subsequently registered as an {class}`~lamindb.Artifact` in your LaminDB instance:"
430
- ]
431
- },
432
- {
433
- "cell_type": "code",
434
- "execution_count": null,
435
- "id": "a70fe66d",
436
- "metadata": {},
437
- "outputs": [],
438
- "source": [
439
- "ln.transform.stem_uid = \"WOK3vP0bNGLx\"\n",
440
- "ln.transform.version = \"0\"\n",
441
- "ln.track()"
312
+ "The validated object can be subsequently saved as an {class}`~lamindb.Artifact`:"
442
313
  ]
443
314
  },
444
315
  {
@@ -451,14 +322,6 @@
451
322
  "artifact = annotate.save_artifact(description=\"test AnnData\")"
452
323
  ]
453
324
  },
454
- {
455
- "cell_type": "markdown",
456
- "id": "4fc354e4",
457
- "metadata": {},
458
- "source": [
459
- "View the registered artifact with metadata:"
460
- ]
461
- },
462
325
  {
463
326
  "cell_type": "code",
464
327
  "execution_count": null,
@@ -474,7 +337,7 @@
474
337
  "id": "1aa82222",
475
338
  "metadata": {},
476
339
  "source": [
477
- "## Register collection"
340
+ "## Save a collection"
478
341
  ]
479
342
  },
480
343
  {
@@ -498,7 +361,8 @@
498
361
  " name=\"Experiment X in brain\", # title of the publication\n",
499
362
  " description=\"10.1126/science.xxxxx\", # DOI of the publication\n",
500
363
  " reference=\"E-MTAB-xxxxx\", # accession number (e.g. GSE#, E-MTAB#, etc.)\n",
501
- " reference_type=\"ArrayExpress\") # source type (e.g. GEO, ArrayExpress, SRA, etc.)"
364
+ " reference_type=\"ArrayExpress\" # source type (e.g. GEO, ArrayExpress, SRA, etc.)\n",
365
+ ")"
502
366
  ]
503
367
  },
504
368
  {
@@ -508,17 +372,7 @@
508
372
  "metadata": {},
509
373
  "outputs": [],
510
374
  "source": [
511
- "collection.artifacts"
512
- ]
513
- },
514
- {
515
- "cell_type": "code",
516
- "execution_count": null,
517
- "id": "2a46e57a",
518
- "metadata": {},
519
- "outputs": [],
520
- "source": [
521
- "artifact.collections"
375
+ "collection.artifacts.df()"
522
376
  ]
523
377
  }
524
378
  ],
@@ -111,7 +111,7 @@
111
111
  "\n",
112
112
  "`.public()` gives you access to the `ReferenceTable`, a class for accessing public ontologies.\n",
113
113
  "\n",
114
- "`ReferenceTable` provides simple access to curated public ontologies that Lamin hosts for reliable and performant access. For most `ReferenceTable` objects, you can access the underlying ontology through [Pronto](https://github.com/althonos/pronto).\n",
114
+ "`ReferenceTable` provides simple access to standardized public ontologies that Lamin hosts for reliable and performant access. For most `ReferenceTable` objects, you can access the underlying ontology through [Pronto](https://github.com/althonos/pronto).\n",
115
115
  "\n",
116
116
  "Let's create a `ReferenceTable` object:"
117
117
  ]
@@ -337,7 +337,7 @@
337
337
  "cell_type": "markdown",
338
338
  "metadata": {},
339
339
  "source": [
340
- "When accessing data sources, one often encounters bulk references to entities that might be corrupted or curated using different standardization schemes.\n",
340
+ "When accessing data sources, one often encounters bulk references to entities that might be corrupted or standardized using different standardization schemes.\n",
341
341
  "\n",
342
342
  "Let's consider an example based on an `AnnData` object:"
343
343
  ]
@@ -6,6 +6,15 @@
6
6
 
7
7
  ## 0.69
8
8
 
9
+ ### 0.69.6 {small}`2024-04-02`
10
+
11
+ - 🚑️ Temp fix region for non-hosted buckets [PR](https://github.com/laminlabs/lamindb/pull/1543) [@sunnyosun](https://github.com/sunnyosun)
12
+
13
+ ### 0.69.5 {small}`2024-03-30`
14
+
15
+ - ♻️ Improve Annotate API [PR](https://github.com/laminlabs/lamindb/pull/1542) [PR](https://github.com/laminlabs/lamindb/pull/1539) [@sunnyosun](https://github.com/sunnyosun) [@falexwolf](https://github.com/falexwolf)
16
+ - ✨ Introduce `Registry.get()` and `lamin get` (replaces `lamin stage`) [PR](https://github.com/laminlabs/lamindb/pull/1538) [@falexwolf](https://github.com/falexwolf)
17
+
9
18
  ### 0.69.4 {small}`2024-03-30`
10
19
 
11
20
  - ♻️ Add Vitessce integration [PR](https://github.com/laminlabs/lamindb/pull/1532) [@falexwolf](https://github.com/falexwolf)