lamindb 0.66.1__tar.gz → 0.67.1__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 (336) hide show
  1. {lamindb-0.66.1 → lamindb-0.67.1}/PKG-INFO +6 -6
  2. {lamindb-0.66.1 → lamindb-0.67.1}/docs/annotate.ipynb +2 -2
  3. {lamindb-0.66.1 → lamindb-0.67.1}/docs/bio-registries.ipynb +38 -31
  4. {lamindb-0.66.1 → lamindb-0.67.1}/docs/changelog.md +14 -0
  5. {lamindb-0.66.1 → lamindb-0.67.1}/docs/introduction.ipynb +4 -4
  6. {lamindb-0.66.1 → lamindb-0.67.1}/docs/transfer.ipynb +1 -1
  7. {lamindb-0.66.1 → lamindb-0.67.1}/docs/validate.ipynb +3 -3
  8. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/__init__.py +15 -15
  9. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/_artifact.py +4 -3
  10. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/_collection.py +5 -1
  11. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/_from_values.py +17 -17
  12. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/_query_manager.py +3 -6
  13. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/_query_set.py +17 -1
  14. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/_registry.py +3 -3
  15. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/_run.py +23 -0
  16. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/_transform.py +26 -1
  17. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/_validate.py +6 -6
  18. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/dev/_label_manager.py +1 -1
  19. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/dev/_run_context.py +2 -2
  20. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/dev/datasets/_core.py +9 -9
  21. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/dev/storage/file.py +33 -1
  22. {lamindb-0.66.1 → lamindb-0.67.1}/pyproject.toml +5 -5
  23. lamindb-0.67.1/sub/lamin-cli/lamin_cli/__init__.py +3 -0
  24. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamin-cli/lamin_cli/_transform.py +2 -2
  25. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/docs/changelog.md +1 -0
  26. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/docs/prod-staging/04-test-bionty.ipynb +3 -3
  27. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/lamindb_setup/__init__.py +1 -1
  28. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/lamindb_setup/_export.py +1 -1
  29. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/lamindb_setup/dev/_setup_bionty_sources.py +8 -8
  30. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/docs/changelog.md +7 -0
  31. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/lnschema_bionty/__init__.py +7 -6
  32. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/lnschema_bionty/_bionty.py +40 -26
  33. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/lnschema_bionty/dev/__init__.py +4 -3
  34. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/lnschema_bionty/dev/_bionty.py +8 -8
  35. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/lnschema_bionty/dev/_settings.py +2 -2
  36. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/lnschema_bionty/ids.py +8 -13
  37. lamindb-0.67.1/sub/lnschema-bionty/lnschema_bionty/migrations/0023_rename_publicsource_encode_uid.py +138 -0
  38. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/lnschema_bionty/models.py +89 -88
  39. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/pyproject.toml +1 -1
  40. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/CHANGELOG.md +2 -0
  41. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/__init__.py +1 -1
  42. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/models.py +8 -8
  43. {lamindb-0.66.1 → lamindb-0.67.1}/tests/test_artifact.py +61 -15
  44. {lamindb-0.66.1 → lamindb-0.67.1}/tests/test_collection.py +2 -9
  45. {lamindb-0.66.1 → lamindb-0.67.1}/tests/test_delete.py +1 -2
  46. {lamindb-0.66.1 → lamindb-0.67.1}/tests/test_feature_manager.py +1 -1
  47. {lamindb-0.66.1 → lamindb-0.67.1}/tests/test_from_values.py +11 -11
  48. lamindb-0.67.1/tests/test_load.py +39 -0
  49. {lamindb-0.66.1 → lamindb-0.67.1}/tests/test_queryset.py +1 -1
  50. {lamindb-0.66.1 → lamindb-0.67.1}/tests/test_transfer.py +13 -13
  51. {lamindb-0.66.1 → lamindb-0.67.1}/tests/test_transform.py +53 -6
  52. lamindb-0.67.1/tests/test_uid.py +23 -0
  53. {lamindb-0.66.1 → lamindb-0.67.1}/tests/test_validate.py +9 -9
  54. lamindb-0.66.1/lamindb/_delete.py +0 -65
  55. lamindb-0.66.1/sub/lamin-cli/lamin_cli/__init__.py +0 -3
  56. {lamindb-0.66.1 → lamindb-0.67.1}/.github/workflows/build.yml +0 -0
  57. {lamindb-0.66.1 → lamindb-0.67.1}/.github/workflows/latest-changes.jinja2 +0 -0
  58. {lamindb-0.66.1 → lamindb-0.67.1}/.github/workflows/latest-changes.yml +0 -0
  59. {lamindb-0.66.1 → lamindb-0.67.1}/.gitignore +0 -0
  60. {lamindb-0.66.1 → lamindb-0.67.1}/.gitmodules +0 -0
  61. {lamindb-0.66.1 → lamindb-0.67.1}/.pre-commit-config.yaml +0 -0
  62. {lamindb-0.66.1 → lamindb-0.67.1}/LICENSE +0 -0
  63. {lamindb-0.66.1 → lamindb-0.67.1}/README.md +0 -0
  64. {lamindb-0.66.1 → lamindb-0.67.1}/docs/bionty.md +0 -0
  65. {lamindb-0.66.1 → lamindb-0.67.1}/docs/data.ipynb +0 -0
  66. {lamindb-0.66.1 → lamindb-0.67.1}/docs/faq/acid.ipynb +0 -0
  67. {lamindb-0.66.1 → lamindb-0.67.1}/docs/faq/delete.ipynb +0 -0
  68. {lamindb-0.66.1 → lamindb-0.67.1}/docs/faq/idempotency.ipynb +0 -0
  69. {lamindb-0.66.1 → lamindb-0.67.1}/docs/faq/import-schema.ipynb +0 -0
  70. {lamindb-0.66.1 → lamindb-0.67.1}/docs/faq/key.ipynb +0 -0
  71. {lamindb-0.66.1 → lamindb-0.67.1}/docs/faq/reference-field.ipynb +0 -0
  72. {lamindb-0.66.1 → lamindb-0.67.1}/docs/faq/setup.ipynb +0 -0
  73. {lamindb-0.66.1 → lamindb-0.67.1}/docs/faq/test_notebooks.py +0 -0
  74. {lamindb-0.66.1 → lamindb-0.67.1}/docs/faq/track-run-inputs.ipynb +0 -0
  75. {lamindb-0.66.1 → lamindb-0.67.1}/docs/faq/validator.ipynb +0 -0
  76. {lamindb-0.66.1 → lamindb-0.67.1}/docs/faq/visibility.ipynb +0 -0
  77. {lamindb-0.66.1 → lamindb-0.67.1}/docs/faq.md +0 -0
  78. {lamindb-0.66.1 → lamindb-0.67.1}/docs/features-lamindb.md +0 -0
  79. {lamindb-0.66.1 → lamindb-0.67.1}/docs/features-laminhub.md +0 -0
  80. {lamindb-0.66.1 → lamindb-0.67.1}/docs/guide.md +0 -0
  81. {lamindb-0.66.1 → lamindb-0.67.1}/docs/index.md +0 -0
  82. {lamindb-0.66.1 → lamindb-0.67.1}/docs/installation.md +0 -0
  83. {lamindb-0.66.1 → lamindb-0.67.1}/docs/lamin-utils.md +0 -0
  84. {lamindb-0.66.1 → lamindb-0.67.1}/docs/lamindb.md +0 -0
  85. {lamindb-0.66.1 → lamindb-0.67.1}/docs/lnschema-bionty.md +0 -0
  86. {lamindb-0.66.1 → lamindb-0.67.1}/docs/meta.ipynb +0 -0
  87. {lamindb-0.66.1 → lamindb-0.67.1}/docs/nbproject.md +0 -0
  88. {lamindb-0.66.1 → lamindb-0.67.1}/docs/query-search.md +0 -0
  89. {lamindb-0.66.1 → lamindb-0.67.1}/docs/readfcs.md +0 -0
  90. {lamindb-0.66.1 → lamindb-0.67.1}/docs/reference.md +0 -0
  91. {lamindb-0.66.1 → lamindb-0.67.1}/docs/schemas.ipynb +0 -0
  92. {lamindb-0.66.1 → lamindb-0.67.1}/docs/setup.ipynb +0 -0
  93. {lamindb-0.66.1 → lamindb-0.67.1}/docs/signup-login.md +0 -0
  94. {lamindb-0.66.1 → lamindb-0.67.1}/docs/storage/add-replace-stage.ipynb +0 -0
  95. {lamindb-0.66.1 → lamindb-0.67.1}/docs/storage/anndata-accessor.ipynb +0 -0
  96. {lamindb-0.66.1 → lamindb-0.67.1}/docs/storage/test-files/iris.csv +0 -0
  97. {lamindb-0.66.1 → lamindb-0.67.1}/docs/storage/test-files/iris.data +0 -0
  98. {lamindb-0.66.1 → lamindb-0.67.1}/docs/storage/test-files/new_iris.csv +0 -0
  99. {lamindb-0.66.1 → lamindb-0.67.1}/docs/storage/test_notebooks.py +0 -0
  100. {lamindb-0.66.1 → lamindb-0.67.1}/docs/storage/upload.ipynb +0 -0
  101. {lamindb-0.66.1 → lamindb-0.67.1}/docs/storage.md +0 -0
  102. {lamindb-0.66.1 → lamindb-0.67.1}/docs/test_notebooks.py +0 -0
  103. {lamindb-0.66.1 → lamindb-0.67.1}/docs/track.ipynb +0 -0
  104. {lamindb-0.66.1 → lamindb-0.67.1}/docs/tutorial.ipynb +0 -0
  105. {lamindb-0.66.1 → lamindb-0.67.1}/docs/tutorial2.ipynb +0 -0
  106. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/_feature.py +0 -0
  107. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/_feature_set.py +0 -0
  108. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/_filter.py +0 -0
  109. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/_parents.py +0 -0
  110. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/_save.py +0 -0
  111. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/_storage.py +0 -0
  112. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/_ulabel.py +0 -0
  113. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/_utils.py +0 -0
  114. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/_view.py +0 -0
  115. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/dev/__init__.py +0 -0
  116. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/dev/_data.py +0 -0
  117. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/dev/_feature_manager.py +0 -0
  118. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/dev/_mapped_collection.py +0 -0
  119. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/dev/_settings.py +0 -0
  120. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/dev/_track_environment.py +0 -0
  121. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/dev/_view_tree.py +0 -0
  122. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/dev/datasets/__init__.py +0 -0
  123. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/dev/datasets/_fake.py +0 -0
  124. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/dev/exceptions.py +0 -0
  125. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/dev/fields.py +0 -0
  126. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/dev/hashing.py +0 -0
  127. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/dev/storage/__init__.py +0 -0
  128. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/dev/storage/_anndata_sizes.py +0 -0
  129. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/dev/storage/_backed_access.py +0 -0
  130. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/dev/storage/_zarr.py +0 -0
  131. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/dev/storage/object.py +0 -0
  132. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/dev/types.py +0 -0
  133. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/dev/versioning.py +0 -0
  134. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/setup/__init__.py +0 -0
  135. {lamindb-0.66.1 → lamindb-0.67.1}/lamindb/setup/dev/__init__.py +0 -0
  136. {lamindb-0.66.1 → lamindb-0.67.1}/noxfile.py +0 -0
  137. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamin-cli/.gitignore +0 -0
  138. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamin-cli/.pre-commit-config.yaml +0 -0
  139. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamin-cli/README.md +0 -0
  140. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamin-cli/lamin_cli/__main__.py +0 -0
  141. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamin-cli/pyproject.toml +0 -0
  142. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamin-cli/tests/conftest.py +0 -0
  143. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamin-cli/tests/notebooks/no-title.ipynb +0 -0
  144. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamin-cli/tests/notebooks/not-initialized.ipynb +0 -0
  145. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamin-cli/tests/notebooks/with-title-and-initialized-consecutive.ipynb +0 -0
  146. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamin-cli/tests/notebooks/with-title-and-initialized-non-consecutive.ipynb +0 -0
  147. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamin-cli/tests/scripts/initialized.py +0 -0
  148. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamin-cli/tests/scripts/not-initialized.py +0 -0
  149. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamin-cli/tests/test_cli.py +0 -0
  150. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamin-cli/tests/test_migrate.py +0 -0
  151. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamin-cli/tests/test_notebooks.py +0 -0
  152. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamin-cli/tests/test_scripts.py +0 -0
  153. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/.github/workflows/build.yml +0 -0
  154. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/.github/workflows/latest-changes.jinja2 +0 -0
  155. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/.github/workflows/latest-changes.yml +0 -0
  156. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/.gitignore +0 -0
  157. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/.pre-commit-config.yaml +0 -0
  158. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/LICENSE +0 -0
  159. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/README.md +0 -0
  160. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/docs/index.md +0 -0
  161. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/docs/notebooks.md +0 -0
  162. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/docs/prod-only/test-cache-management.ipynb +0 -0
  163. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/docs/prod-only/test-empty-init.ipynb +0 -0
  164. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/docs/prod-only/test-import-schema.ipynb +0 -0
  165. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/docs/prod-only/test-insufficient-user-info.ipynb +0 -0
  166. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/docs/prod-only/test-invalid-schema.ipynb +0 -0
  167. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/docs/prod-only/test-load-anonymously.ipynb +0 -0
  168. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/docs/prod-only/test-load-lock.ipynb +0 -0
  169. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/docs/prod-only/test-sqlite-sync.ipynb +0 -0
  170. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/docs/prod-only/test_notebooks2.py +0 -0
  171. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/docs/prod-staging/01-init-instance.ipynb +0 -0
  172. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/docs/prod-staging/02-load-instance.ipynb +0 -0
  173. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/docs/prod-staging/03-set-storage.ipynb +0 -0
  174. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/docs/prod-staging/test-multi-session.ipynb +0 -0
  175. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/docs/prod-staging/test_notebooks.py +0 -0
  176. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/docs/reference.md +0 -0
  177. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/lamindb_setup/_cache.py +0 -0
  178. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/lamindb_setup/_check.py +0 -0
  179. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/lamindb_setup/_check_instance_setup.py +0 -0
  180. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/lamindb_setup/_close.py +0 -0
  181. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/lamindb_setup/_delete.py +0 -0
  182. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/lamindb_setup/_django.py +0 -0
  183. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/lamindb_setup/_docstrings.py +0 -0
  184. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/lamindb_setup/_info.py +0 -0
  185. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/lamindb_setup/_init_instance.py +0 -0
  186. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/lamindb_setup/_init_vault.py +0 -0
  187. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/lamindb_setup/_load_instance.py +0 -0
  188. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/lamindb_setup/_migrate.py +0 -0
  189. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/lamindb_setup/_register_instance.py +0 -0
  190. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/lamindb_setup/_schema.py +0 -0
  191. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/lamindb_setup/_set.py +0 -0
  192. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/lamindb_setup/_settings.py +0 -0
  193. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/lamindb_setup/_setup_user.py +0 -0
  194. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/lamindb_setup/_silence_loggers.py +0 -0
  195. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/lamindb_setup/dev/__init__.py +0 -0
  196. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/lamindb_setup/dev/_deprecated.py +0 -0
  197. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/lamindb_setup/dev/_docs.py +0 -0
  198. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/lamindb_setup/dev/_hub_client.py +0 -0
  199. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/lamindb_setup/dev/_hub_core.py +0 -0
  200. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/lamindb_setup/dev/_hub_crud.py +0 -0
  201. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/lamindb_setup/dev/_hub_utils.py +0 -0
  202. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/lamindb_setup/dev/_settings_instance.py +0 -0
  203. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/lamindb_setup/dev/_settings_load.py +0 -0
  204. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/lamindb_setup/dev/_settings_save.py +0 -0
  205. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/lamindb_setup/dev/_settings_storage.py +0 -0
  206. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/lamindb_setup/dev/_settings_store.py +0 -0
  207. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/lamindb_setup/dev/_settings_user.py +0 -0
  208. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/lamindb_setup/dev/cloud_sqlite_locker.py +0 -0
  209. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/lamindb_setup/dev/django.py +0 -0
  210. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/lamindb_setup/dev/upath.py +0 -0
  211. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/noxfile.py +0 -0
  212. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/pyproject.toml +0 -0
  213. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/tests/hub-local/conftest.py +0 -0
  214. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/tests/hub-local/test_all.py +0 -0
  215. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/tests/prod-only/conftest.py +0 -0
  216. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/tests/prod-only/test_django.py +0 -0
  217. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/tests/prod-only/test_switch_and_fallback_env.py +0 -0
  218. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/tests/prod-staging/test_delete_instance.py +0 -0
  219. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/tests/prod-staging/test_init_instance.py +0 -0
  220. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/tests/prod-staging/test_load_instance.py +0 -0
  221. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/tests/prod-staging/test_login.py +0 -0
  222. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/tests/prod-staging/test_migrate.py +0 -0
  223. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/tests/prod-staging/test_set_storage.py +0 -0
  224. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/tests/test_storage_access.py +0 -0
  225. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lamindb-setup/tests/test_vault.py +0 -0
  226. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/.github/workflows/build.yml +0 -0
  227. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/.github/workflows/latest-changes.jinja2 +0 -0
  228. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/.github/workflows/latest-changes.yml +0 -0
  229. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/.gitignore +0 -0
  230. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/.pre-commit-config.yaml +0 -0
  231. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/LICENSE +0 -0
  232. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/README.md +0 -0
  233. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/docs/index.md +0 -0
  234. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/docs/reference.md +0 -0
  235. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/lamin-project.yaml +0 -0
  236. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/lnschema_bionty/migrations/0001_initial.py +0 -0
  237. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/lnschema_bionty/migrations/0001_initial_squashed_0016.py +0 -0
  238. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/lnschema_bionty/migrations/0002_rename_gene_type_gene_biotype_and_more.py +0 -0
  239. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/lnschema_bionty/migrations/0003_alter_biontysource_entity_alter_biontysource_source_and_more.py +0 -0
  240. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/lnschema_bionty/migrations/0004_alter_cellline_bionty_source_and_more.py +0 -0
  241. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/lnschema_bionty/migrations/0005_rename_short_name_cellline_abbr_and_more.py +0 -0
  242. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/lnschema_bionty/migrations/0006_alter_biontysource_options_alter_cellline_options_and_more.py +0 -0
  243. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/lnschema_bionty/migrations/0007_rename_readout_experimental_factor.py +0 -0
  244. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/lnschema_bionty/migrations/0008_remove_gene_hgnc_id_remove_gene_mgi_id_and_more.py +0 -0
  245. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/lnschema_bionty/migrations/0009_alter_gene_ensembl_gene_id.py +0 -0
  246. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/lnschema_bionty/migrations/0010_alter_species_name.py +0 -0
  247. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/lnschema_bionty/migrations/0011_cellline_datasets_cellmarker_datasets_and_more.py +0 -0
  248. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/lnschema_bionty/migrations/0012_gene_stable_id.py +0 -0
  249. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/lnschema_bionty/migrations/0013_alter_cellmarker_species_alter_gene_species_and_more.py +0 -0
  250. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/lnschema_bionty/migrations/0014_ethnicity_developmentalstage.py +0 -0
  251. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/lnschema_bionty/migrations/0015_migrate_to_integer_pks.py +0 -0
  252. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/lnschema_bionty/migrations/0016_export_legacy_data.py +0 -0
  253. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/lnschema_bionty/migrations/0017_import_legacy_data.py +0 -0
  254. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/lnschema_bionty/migrations/0018_organism_rename_species_biontysource_organism_and_more.py +0 -0
  255. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/lnschema_bionty/migrations/0019_rename_taxon_id_organism_ontology_id_and_more.py +0 -0
  256. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/lnschema_bionty/migrations/0020_alter_organism_bionty_source.py +0 -0
  257. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/lnschema_bionty/migrations/0021_rename_files_cellline_artifacts_and_more.py +0 -0
  258. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/lnschema_bionty/migrations/0022_rename_datasets_cellline_collections_and_more.py +0 -0
  259. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/lnschema_bionty/migrations/__init__.py +0 -0
  260. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/noxfile.py +0 -0
  261. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-bionty/tests/test_integrity.py +0 -0
  262. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/.github/workflows/build.yml +0 -0
  263. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/.github/workflows/latest-changes.jinja2 +0 -0
  264. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/.github/workflows/latest-changes.yml +0 -0
  265. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/.gitignore +0 -0
  266. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/.pre-commit-config.yaml +0 -0
  267. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/LICENSE +0 -0
  268. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/README.md +0 -0
  269. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/ids.py +0 -0
  270. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/0001_initial.py +0 -0
  271. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/0001_initial_squashed_0023.py +0 -0
  272. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/0002_alter_user_name.py +0 -0
  273. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/0003_alter_storage_region_alter_transform_short_name.py +0 -0
  274. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/0004_rename_folder_tag_alter_project_folders.py +0 -0
  275. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/0005_alter_run_inputs_delete_runinput.py +0 -0
  276. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/0006_feature_dataset.py +0 -0
  277. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/0007_feature_synonyms_featureset_field_and_more.py +0 -0
  278. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/0008_file_hash_type_transform_parents.py +0 -0
  279. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/0009_remove_featureset_files_feature_unit_and_more.py +0 -0
  280. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/0010_dataset_categories_file_categories.py +0 -0
  281. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/0011_label_remove_tag_created_by_remove_tag_parents_and_more.py +0 -0
  282. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/0012_remove_label_ref_id_remove_label_ref_orm_and_more.py +0 -0
  283. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/0013_remove_feature_labels_orm_and_more.py +0 -0
  284. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/0014_rename_ref_field_featureset_registry.py +0 -0
  285. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/0015_file_initial_version_file_version.py +0 -0
  286. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/0016_dataset_input_of_dataset_run_dataset_transform_and_more.py +0 -0
  287. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/0017_dataset_initial_version_dataset_version.py +0 -0
  288. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/0018_rename_datasetlabel_datasetulabel_and_more.py +0 -0
  289. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/0019_dataset_reference_dataset_reference_type_and_more.py +0 -0
  290. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/0020_run_report_transform_latest_report_and_more.py +0 -0
  291. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/0021_dataset_storage_alter_dataset_file.py +0 -0
  292. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/0022_migrate_to_integer_pks.py +0 -0
  293. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/0023_export_legacy_data.py +0 -0
  294. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/0024_import_legacy_data.py +0 -0
  295. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/0025_remove_user_email.py +0 -0
  296. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/0026_dataset_visibility_file_visibility.py +0 -0
  297. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/0027_file_key_is_virtual.py +0 -0
  298. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/0028_alter_dataset_visibility_alter_file_visibility.py +0 -0
  299. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/0029_remove_feature_modality_remove_featureset_modality_and_more.py +0 -0
  300. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/0030_alter_dataset_visibility_alter_file_visibility.py +0 -0
  301. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/0031_rename_file_to_artifact.py +0 -0
  302. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/0032_remove_dataset_storage.py +0 -0
  303. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/0033_alter_artifact_unique_together_artifact_n_objects_and_more.py +0 -0
  304. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/0034_run_environment.py +0 -0
  305. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/0035_remove_artifact_initial_version_and_more.py +0 -0
  306. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/0036_storage_description.py +0 -0
  307. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/0037_rename_dataset_to_collection.py +0 -0
  308. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/0038_alter_collection_artifact_alter_collection_artifacts_and_more.py +0 -0
  309. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/0039_remove_collection_artifacts_collectionartifact_and_more.py +0 -0
  310. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/migrations/__init__.py +0 -0
  311. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/mocks.py +0 -0
  312. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/types.py +0 -0
  313. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/lnschema_core/users.py +0 -0
  314. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/noxfile.py +0 -0
  315. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/pyproject.toml +0 -0
  316. {lamindb-0.66.1 → lamindb-0.67.1}/sub/lnschema-core/tests/test_integrity.py +0 -0
  317. {lamindb-0.66.1 → lamindb-0.67.1}/tests/conftest.py +0 -0
  318. {lamindb-0.66.1 → lamindb-0.67.1}/tests/test_cache.py +0 -0
  319. {lamindb-0.66.1 → lamindb-0.67.1}/tests/test_data.py +0 -0
  320. {lamindb-0.66.1 → lamindb-0.67.1}/tests/test_db.py +0 -0
  321. {lamindb-0.66.1 → lamindb-0.67.1}/tests/test_feature.py +0 -0
  322. {lamindb-0.66.1 → lamindb-0.67.1}/tests/test_feature_set.py +0 -0
  323. {lamindb-0.66.1 → lamindb-0.67.1}/tests/test_hashing.py +0 -0
  324. {lamindb-0.66.1 → lamindb-0.67.1}/tests/test_label_manager.py +0 -0
  325. {lamindb-0.66.1 → lamindb-0.67.1}/tests/test_manager.py +0 -0
  326. {lamindb-0.66.1 → lamindb-0.67.1}/tests/test_parents.py +0 -0
  327. {lamindb-0.66.1 → lamindb-0.67.1}/tests/test_registry.py +0 -0
  328. {lamindb-0.66.1 → lamindb-0.67.1}/tests/test_run.py +0 -0
  329. {lamindb-0.66.1 → lamindb-0.67.1}/tests/test_run_context.py +0 -0
  330. {lamindb-0.66.1 → lamindb-0.67.1}/tests/test_save.py +0 -0
  331. {lamindb-0.66.1 → lamindb-0.67.1}/tests/test_settings.py +0 -0
  332. {lamindb-0.66.1 → lamindb-0.67.1}/tests/test_storage.py +0 -0
  333. {lamindb-0.66.1 → lamindb-0.67.1}/tests/test_ulabel.py +0 -0
  334. {lamindb-0.66.1 → lamindb-0.67.1}/tests/test_versioning.py +0 -0
  335. {lamindb-0.66.1 → lamindb-0.67.1}/tests/test_view.py +0 -0
  336. {lamindb-0.66.1 → lamindb-0.67.1}/tests/test_visibility.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: lamindb
3
- Version: 0.66.1
3
+ Version: 0.67.1
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.61.0
13
- Requires-Dist: lamindb_setup==0.64.1
12
+ Requires-Dist: lnschema_core==0.61.1
13
+ Requires-Dist: lamindb_setup==0.64.2
14
14
  Requires-Dist: lamin_utils==0.13.0
15
- Requires-Dist: lamin_cli==0.6.0
15
+ Requires-Dist: lamin_cli==0.6.1
16
16
  Requires-Dist: rapidfuzz
17
17
  Requires-Dist: pyarrow
18
18
  Requires-Dist: typing_extensions!=4.6.0
@@ -28,7 +28,7 @@ Requires-Dist: boto3==1.28.17 ; extra == "aws"
28
28
  Requires-Dist: aiobotocore==2.5.4 ; extra == "aws"
29
29
  Requires-Dist: fsspec[s3]==2023.9.0 ; extra == "aws"
30
30
  Requires-Dist: s3fs>=2023.9.0 ; extra == "aws"
31
- Requires-Dist: lnschema_bionty==0.37.2 ; extra == "bionty"
31
+ Requires-Dist: lnschema_bionty==0.39.0 ; extra == "bionty"
32
32
  Requires-Dist: pandas<2 ; extra == "dev"
33
33
  Requires-Dist: pre-commit ; extra == "dev"
34
34
  Requires-Dist: nox ; extra == "dev"
@@ -42,7 +42,7 @@ Requires-Dist: lamin_vault ; extra == "dev"
42
42
  Requires-Dist: django-schema-graph ; extra == "erdiagram"
43
43
  Requires-Dist: readfcs>=1.1.7 ; extra == "fcs"
44
44
  Requires-Dist: fsspec[gs]==2023.9.0 ; extra == "gcp"
45
- Requires-Dist: nbproject==0.9.2 ; extra == "jupyter"
45
+ Requires-Dist: nbproject==0.10.0 ; extra == "jupyter"
46
46
  Requires-Dist: nbstripout ; extra == "jupyter"
47
47
  Requires-Dist: nbconvert ; extra == "jupyter"
48
48
  Requires-Dist: zarr>=2.16.0 ; extra == "zarr"
@@ -311,7 +311,7 @@
311
311
  "metadata": {},
312
312
  "outputs": [],
313
313
  "source": [
314
- "organism = lb.Organism.from_bionty(name=external_meta[\"organism\"])\n",
314
+ "organism = lb.Organism.from_public(name=external_meta[\"organism\"])\n",
315
315
  "organism.save()\n",
316
316
  "organism"
317
317
  ]
@@ -322,7 +322,7 @@
322
322
  "metadata": {},
323
323
  "outputs": [],
324
324
  "source": [
325
- "assay = lb.ExperimentalFactor.from_bionty(name=external_meta[\"assay\"])\n",
325
+ "assay = lb.ExperimentalFactor.from_public(name=external_meta[\"assay\"])\n",
326
326
  "assay.save()\n",
327
327
  "assay"
328
328
  ]
@@ -24,7 +24,7 @@
24
24
  "\n",
25
25
  "In LaminDB, registries are standard SQL tables, equipped with [mechanisms that avoid typos & duplicated data](/faq/idempotency).\n",
26
26
  "\n",
27
- "In addition, LaminDB makes it easy to import records from public ontologies, based on plug-in {mod}`lnschema_bionty`.\n",
27
+ "In addition, LaminDB makes it easy to import records from public biological ontologies, based on plug-in {mod}`lnschema_bionty`.\n",
28
28
  "\n",
29
29
  "In this notebook, you'll see how to manage an in-house ontology anchored in public knowledge.\n",
30
30
  "\n",
@@ -43,7 +43,7 @@
43
43
  "cell_type": "markdown",
44
44
  "metadata": {},
45
45
  "source": [
46
- "Let us create an instance that has {mod}`lnschema_bionty` mounted:"
46
+ "Let us create an instance that has {mod}`lnschema_bionty` mounted, which extends to include biological registries:"
47
47
  ]
48
48
  },
49
49
  {
@@ -95,8 +95,8 @@
95
95
  },
96
96
  "outputs": [],
97
97
  "source": [
98
- "lb.Organism.from_bionty(name=\"human\").save()\n",
99
- "lb.CellType.from_bionty(name=\"T cell\").save()\n",
98
+ "lb.Organism.from_public(name=\"human\").save()\n",
99
+ "lb.CellType.from_public(name=\"T cell\").save()\n",
100
100
  "lb.CellType(name=\"my T cell subtype\").save()"
101
101
  ]
102
102
  },
@@ -115,13 +115,11 @@
115
115
  "source": [
116
116
  "We start with a public ontology for cell types.\n",
117
117
  "\n",
118
- "[Bionty](https://lamin.ai/docs/bionty/bionty.bionty) - short for \"biological entity\" - is a class for accessing public ontologies.\n",
118
+ "`.public()` gives you access to the `ReferenceTable`, a class for accessing public ontologies.\n",
119
119
  "\n",
120
- "Bionty provides simple access to curated public ontologies that Lamin hosts for reliable and performant access. For most Bionty objects, you can access the underlying ontology through [Pronto](https://github.com/althonos/pronto).\n",
120
+ "`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",
121
121
  "\n",
122
- "(If you don't need to manage in-house registries, you can also use the [bionty](https://lamin.ai/docs/bionty) package standalone.)\n",
123
- "\n",
124
- "Let's create a `Bionty` object:"
122
+ "Let's create a `ReferenceTable` object:"
125
123
  ]
126
124
  },
127
125
  {
@@ -134,7 +132,7 @@
134
132
  },
135
133
  "outputs": [],
136
134
  "source": [
137
- "bionty = lb.CellType.bionty()"
135
+ "public = lb.CellType.public()"
138
136
  ]
139
137
  },
140
138
  {
@@ -143,7 +141,7 @@
143
141
  "metadata": {},
144
142
  "outputs": [],
145
143
  "source": [
146
- "bionty"
144
+ "public"
147
145
  ]
148
146
  },
149
147
  {
@@ -160,7 +158,7 @@
160
158
  "metadata": {},
161
159
  "outputs": [],
162
160
  "source": [
163
- "bionty.search(\"gamma delta T cell\").head(3)"
161
+ "public.search(\"gamma delta T cell\").head(3)"
164
162
  ]
165
163
  },
166
164
  {
@@ -177,7 +175,7 @@
177
175
  "metadata": {},
178
176
  "outputs": [],
179
177
  "source": [
180
- "lookup = bionty.lookup()\n",
178
+ "lookup = public.lookup()\n",
181
179
  "lookup.gamma_delta_t_cell"
182
180
  ]
183
181
  },
@@ -206,11 +204,20 @@
206
204
  "gdt_cell = lb.CellType(lookup.gamma_delta_t_cell)"
207
205
  ]
208
206
  },
207
+ {
208
+ "cell_type": "code",
209
+ "execution_count": null,
210
+ "metadata": {},
211
+ "outputs": [],
212
+ "source": [
213
+ "gdt_cell"
214
+ ]
215
+ },
209
216
  {
210
217
  "cell_type": "markdown",
211
218
  "metadata": {},
212
219
  "source": [
213
- "(Alternatively, we could construct the gamma delta T cell via {meth}`~lnschema_bionty.dev.BioRegistry.from_bionty`, which is synonyms-aware.)"
220
+ "(Alternatively, we could construct the gamma delta T cell via {meth}`~lnschema_bionty.dev.BioRegistry.from_public`, which is synonyms-aware.)"
214
221
  ]
215
222
  },
216
223
  {
@@ -219,7 +226,7 @@
219
226
  "metadata": {},
220
227
  "outputs": [],
221
228
  "source": [
222
- "gdt_cell"
229
+ "lb.CellType.from_public(ontology_id=\"CL:0000798\")"
223
230
  ]
224
231
  },
225
232
  {
@@ -405,7 +412,7 @@
405
412
  "\n",
406
413
  "1. If registry records match the values, load these records\n",
407
414
  "2. If values match synonyms of registry records, load these records\n",
408
- "3. (`lnschema_bionty`-only) If no record in the registry matches, attempt to load records from a public reference through Bionty\n",
415
+ "3. (`lnschema_bionty`-only) If no record in the registry matches, attempt to load records from a public reference\n",
409
416
  "4. (`lnschema_bionty`-only) Same as 3. but based on synonyms\n",
410
417
  "\n",
411
418
  "No records will be returned if input field values aren't mappable.\n",
@@ -416,9 +423,9 @@
416
423
  "celltype_names = [\n",
417
424
  " \"gamma-delta T cell\", # existing record with the same name\n",
418
425
  " \"T lymphocyte\", # existing record with synonym\n",
419
- " \"hepatocyte\", # Bionty record with the same name\n",
420
- " \"HSC\", # Bionty record with synonym\n",
421
- " \"my new cell type\", # Not exist in DB, not exist in Bionty\n",
426
+ " \"hepatocyte\", # public record with the same name\n",
427
+ " \"HSC\", # public record with synonym\n",
428
+ " \"my new cell type\", # Not exist in in-house registry, not exist in public reference\n",
422
429
  "]\n",
423
430
  "lb.CellType.from_values(celltype_names)\n",
424
431
  "```\n",
@@ -699,7 +706,7 @@
699
706
  "metadata": {},
700
707
  "outputs": [],
701
708
  "source": [
702
- "lb.Gene.from_bionty(symbol=\"TCF7\", organism=\"human\")"
709
+ "lb.Gene.from_public(symbol=\"TCF7\", organism=\"human\")"
703
710
  ]
704
711
  },
705
712
  {
@@ -751,7 +758,7 @@
751
758
  "metadata": {},
752
759
  "outputs": [],
753
760
  "source": [
754
- "lb.Gene.from_bionty(symbol=\"Ap5b1\")"
761
+ "lb.Gene.from_public(symbol=\"Ap5b1\")"
755
762
  ]
756
763
  },
757
764
  {
@@ -780,7 +787,7 @@
780
787
  },
781
788
  "outputs": [],
782
789
  "source": [
783
- "lb.BiontySource.filter(currently_used=True).df()"
790
+ "lb.PublicSource.filter(currently_used=True).df()"
784
791
  ]
785
792
  },
786
793
  {
@@ -788,7 +795,7 @@
788
795
  "cell_type": "markdown",
789
796
  "metadata": {},
790
797
  "source": [
791
- "Each record is linked to a versioned bionty source (if it was created from bionty):"
798
+ "Each record is linked to a versioned public source (if it was created from public):"
792
799
  ]
793
800
  },
794
801
  {
@@ -798,7 +805,7 @@
798
805
  "outputs": [],
799
806
  "source": [
800
807
  "hepatocyte = lb.CellType.filter(name=\"hepatocyte\").one()\n",
801
- "hepatocyte.bionty_source"
808
+ "hepatocyte.public_source"
802
809
  ]
803
810
  },
804
811
  {
@@ -807,7 +814,7 @@
807
814
  "source": [
808
815
  "## Create records from specific public ontologies\n",
809
816
  "\n",
810
- "By default, records are created from the `\"currently_used\"` Bionty sources which are configured during the instance initialization, e.g.:"
817
+ "By default, records are created from the `\"currently_used\"` public sources which are configured during the instance initialization, e.g.:"
811
818
  ]
812
819
  },
813
820
  {
@@ -816,7 +823,7 @@
816
823
  "metadata": {},
817
824
  "outputs": [],
818
825
  "source": [
819
- "lb.Phenotype.bionty()"
826
+ "lb.Phenotype.public()"
820
827
  ]
821
828
  },
822
829
  {
@@ -838,8 +845,8 @@
838
845
  },
839
846
  "outputs": [],
840
847
  "source": [
841
- "bionty_source = lb.BiontySource.filter(entity=\"Organism\", source=\"ncbitaxon\").one()\n",
842
- "iris_setosa = lb.Organism.from_bionty(name=\"iris setosa\", bionty_source=bionty_source)\n",
848
+ "public_source = lb.PublicSource.filter(entity=\"Organism\", source=\"ncbitaxon\").one()\n",
849
+ "iris_setosa = lb.Organism.from_public(name=\"iris setosa\", public_source=public_source)\n",
843
850
  "iris_setosa.save()"
844
851
  ]
845
852
  },
@@ -858,7 +865,7 @@
858
865
  "metadata": {},
859
866
  "outputs": [],
860
867
  "source": [
861
- "iris_setosa.bionty_source"
868
+ "iris_setosa.public_source"
862
869
  ]
863
870
  },
864
871
  {
@@ -874,7 +881,7 @@
874
881
  "cell_type": "markdown",
875
882
  "metadata": {},
876
883
  "source": [
877
- "Analogously, you can pass `bionty_source` to bulk-create records from a non-default source:"
884
+ "Analogously, you can pass `public_source` to bulk-create records from a non-default source:"
878
885
  ]
879
886
  },
880
887
  {
@@ -888,7 +895,7 @@
888
895
  "outputs": [],
889
896
  "source": [
890
897
  "records = lb.Organism.from_values(\n",
891
- " [\"iris setosa\", \"iris versicolor\", \"iris virginica\"], bionty_source=bionty_source\n",
898
+ " [\"iris setosa\", \"iris versicolor\", \"iris virginica\"], public_source=public_source\n",
892
899
  ")\n",
893
900
  "ln.save(records)"
894
901
  ]
@@ -5,6 +5,20 @@
5
5
  .. role:: small
6
6
  ```
7
7
 
8
+ ## 0.67
9
+
10
+ ### 0.67.1 {small}`2024-01-12`
11
+
12
+ - 🐛 Fix idempotency of `collection.save()` [PR](https://github.com/laminlabs/lamindb/pull/1401) [@falexwolf](https://github.com/falexwolf)
13
+ - 🩹 Also amend run [PR](https://github.com/laminlabs/lamindb/pull/1399) [@falexwolf](https://github.com/falexwolf)
14
+ - 🚸 Disallow bulk-delete for Artifact, Transform & Collection [PR](https://github.com/laminlabs/lamindb/pull/1398) [@falexwolf](https://github.com/falexwolf)
15
+ - 🚸 Init transform versions at 1 [PR](https://github.com/laminlabs/lamindb/pull/1397) [@falexwolf](https://github.com/falexwolf)
16
+ - ✨ Load json and html files [PR](https://github.com/laminlabs/lamindb/pull/1396) [@falexwolf](https://github.com/falexwolf)
17
+
18
+ ### 0.67.0 {small}`2024-01-11`
19
+
20
+ - 🚚 Rename `.bionty` to `.public`, `.from_bionty` to `.from_public` [PR](https://github.com/laminlabs/lamindb/pull/1394) [@sunnyosun](https://github.com/sunnyosun)
21
+
8
22
  ## 0.66
9
23
 
10
24
  ### 0.66.1 {small}`2024-01-09`
@@ -751,7 +751,7 @@
751
751
  "metadata": {},
752
752
  "outputs": [],
753
753
  "source": [
754
- "lb.Tissue.bionty().search(\"umbilical blood\").head(2)"
754
+ "lb.Tissue.public().search(\"umbilical blood\").head(2)"
755
755
  ]
756
756
  },
757
757
  {
@@ -769,7 +769,7 @@
769
769
  },
770
770
  "outputs": [],
771
771
  "source": [
772
- "tissue = lb.Tissue.from_bionty(name=\"umbilical cord blood\")\n",
772
+ "tissue = lb.Tissue.from_public(name=\"umbilical cord blood\")\n",
773
773
  "tissue.save()\n",
774
774
  "tissue.view_parents(distance=2)"
775
775
  ]
@@ -897,7 +897,7 @@
897
897
  "metadata": {},
898
898
  "outputs": [],
899
899
  "source": [
900
- "lb.Gene.from_bionty(symbol=\"CD38\", organism=\"human\").save()\n",
900
+ "lb.Gene.from_public(symbol=\"CD38\", organism=\"human\").save()\n",
901
901
  "artifact2 = ln.Artifact.from_anndata(\n",
902
902
  " adata, description=\"my RNA-seq batch 2\", field=lb.Gene.symbol, organism=\"human\"\n",
903
903
  ")\n",
@@ -1038,7 +1038,7 @@
1038
1038
  "import lnschema_bionty as lb\n",
1039
1039
  "\n",
1040
1040
  "# create an ontology-coupled cell type record and save it\n",
1041
- "lb.CellType.from_bionty(name=\"neuron\").save()\n",
1041
+ "lb.CellType.from_public(name=\"neuron\").save()\n",
1042
1042
  "\n",
1043
1043
  "# create a record to track a new cell state\n",
1044
1044
  "new_cell_state = lb.CellType(name=\"my neuron cell state\", description=\"explains X\")\n",
@@ -167,11 +167,11 @@
167
167
  "name": "python3"
168
168
  },
169
169
  "language_info": {
170
- "artifact_extension": ".py",
171
170
  "codemirror_mode": {
172
171
  "name": "ipython",
173
172
  "version": 3
174
173
  },
174
+ "file_extension": ".py",
175
175
  "mimetype": "text/x-python",
176
176
  "name": "python",
177
177
  "nbconvert_exporter": "python",
@@ -38,7 +38,7 @@
38
38
  "\n",
39
39
  "{class}`~lamindb.dev.CanValidate` methods validate against the registries in your LaminDB instance.\n",
40
40
  "\n",
41
- "In {doc}`./bio-registries`, you'll see how to extend standard validation to validation against _public references_ using a {meth}`~lnschema_bionty.dev.BioRegistry.bionty` ontology object: `bionty_object = Registry.bionty()`.\n",
41
+ "In {doc}`./bio-registries`, you'll see how to extend standard validation to validation against _public references_ using a `ReferenceTable` ontology object: `public = Registry.public()`.\n",
42
42
  "\n",
43
43
  "By default, {meth}`~lamindb.dev.Registry.from_values` considers a match in a public reference a validated value for any {mod}`lnschema_bionty` entity.\n",
44
44
  "\n",
@@ -114,7 +114,7 @@
114
114
  "ln.Artifact(df, description=\"test data\").save()\n",
115
115
  "ln.ULabel(name=\"Project A\").save()\n",
116
116
  "ln.ULabel(name=\"Project B\").save()\n",
117
- "lb.Disease.from_bionty(ontology_id=\"MONDO:0004975\").save()"
117
+ "lb.Disease.from_public(ontology_id=\"MONDO:0004975\").save()"
118
118
  ]
119
119
  },
120
120
  {
@@ -153,7 +153,7 @@
153
153
  "source": [
154
154
  "Bulk creating records using {meth}`~lamindb.dev.Registry.from_values` only returns validated records:\n",
155
155
  "\n",
156
- "Note: Bionty-validated terms are also created with `.from_values`, see {doc}`/bio-registries` for details."
156
+ "Note: Terms validated with public reference are also created with `.from_values`, see {doc}`/bio-registries` for details."
157
157
  ]
158
158
  },
159
159
  {
@@ -54,7 +54,7 @@ Modules & settings:
54
54
 
55
55
  """
56
56
 
57
- __version__ = "0.66.1" # denote a release candidate for 0.1.0 with 0.1rc1
57
+ __version__ = "0.67.1" # denote a release candidate for 0.1.0 with 0.1rc1
58
58
 
59
59
  import os as _os
60
60
 
@@ -102,20 +102,20 @@ if _INSTANCE_SETUP:
102
102
  User,
103
103
  )
104
104
 
105
- File = Artifact # backward compat
106
- from . import _artifact # noqa
107
- from . import _collection
108
- from . import _feature
109
- from . import _feature_set
110
- from . import _parents
111
- from . import _registry
112
- from . import _run
113
- from . import _storage
114
- from . import _transform
115
- from . import _ulabel
116
- from . import _validate
117
- from . import dev
118
- from ._delete import delete
105
+ from . import (
106
+ _artifact,
107
+ _collection,
108
+ _feature,
109
+ _feature_set,
110
+ _parents,
111
+ _registry,
112
+ _run,
113
+ _storage,
114
+ _transform,
115
+ _ulabel,
116
+ _validate,
117
+ dev,
118
+ )
119
119
  from ._save import save
120
120
  from ._view import view
121
121
  from .dev._run_context import run_context
@@ -911,13 +911,13 @@ def delete(
911
911
  self, permanent: Optional[bool] = None, storage: Optional[bool] = None
912
912
  ) -> None:
913
913
  # by default, we only move artifacts into the trash
914
- if self.visibility > VisibilityChoice.trash.value and permanent is not True:
914
+ if self.visibility > -1 and permanent is not True:
915
915
  if storage is not None:
916
916
  logger.warning("moving artifact to trash, storage arg is ignored")
917
917
  # move to trash
918
- self.visibility = VisibilityChoice.trash.value
918
+ self.visibility = -1
919
919
  self.save()
920
- logger.warning("moved artifact to trash")
920
+ logger.warning("moved artifact to trash (visibility = -1)")
921
921
  return
922
922
 
923
923
  # if the artifact is already in the trash
@@ -929,6 +929,7 @@ def delete(
929
929
  )
930
930
  delete_record = response == "y"
931
931
  else:
932
+ # this second option doesn't feel very intuitive
932
933
  delete_record = permanent
933
934
 
934
935
  if delete_record:
@@ -424,8 +424,12 @@ def save(self, *args, **kwargs) -> None:
424
424
  self.artifact.save()
425
425
  # we don't need to save feature sets again
426
426
  save_feature_sets(self)
427
+ state_was_adding = self._state.adding
427
428
  super(Collection, self).save()
428
- if hasattr(self, "_artifacts"):
429
+ # we don't allow updating the collection of artifacts
430
+ # if users want to update the set of artifacts, they
431
+ # have to create a new collection
432
+ if state_was_adding and hasattr(self, "_artifacts"):
429
433
  if self._artifacts is not None and len(self._artifacts) > 0:
430
434
  links = [
431
435
  CollectionArtifact(collection_id=self.id, artifact_id=artifact.id)
@@ -14,7 +14,7 @@ def get_or_create_records(
14
14
  iterable: ListLike,
15
15
  field: StrField,
16
16
  *,
17
- from_bionty: bool = False,
17
+ from_public: bool = False,
18
18
  **kwargs,
19
19
  ) -> List[Registry]:
20
20
  """Get or create records from iterables."""
@@ -32,14 +32,14 @@ def get_or_create_records(
32
32
 
33
33
  # new records to be created based on new values
34
34
  if len(nonexist_values) > 0:
35
- if from_bionty:
36
- records_bionty, unmapped_values = create_records_from_bionty(
35
+ if from_public:
36
+ records_bionty, unmapped_values = create_records_from_public(
37
37
  iterable_idx=nonexist_values, field=field, msg=msg, **kwargs
38
38
  )
39
39
  if len(records_bionty) > 0:
40
40
  msg = ""
41
41
  for record in records_bionty:
42
- record._from_bionty = True
42
+ record._from_public = True
43
43
  records += records_bionty
44
44
  else:
45
45
  unmapped_values = nonexist_values
@@ -81,8 +81,8 @@ def get_existing_records(
81
81
  model = field.field.model
82
82
  condition: Dict = {} if len(kwargs) == 0 else kwargs.copy()
83
83
  # existing records matching is agnostic to the bionty source
84
- if "bionty_source" in condition:
85
- condition.pop("bionty_source")
84
+ if "public_source" in condition:
85
+ condition.pop("public_source")
86
86
 
87
87
  if _has_organism_field(model):
88
88
  from lnschema_bionty._bionty import create_or_get_organism_record
@@ -160,7 +160,7 @@ def get_existing_records(
160
160
  return records, nonexist_values, msg
161
161
 
162
162
 
163
- def create_records_from_bionty(
163
+ def create_records_from_public(
164
164
  iterable_idx: pd.Index,
165
165
  field: StrField,
166
166
  msg: str = "",
@@ -169,24 +169,24 @@ def create_records_from_bionty(
169
169
  model = field.field.model
170
170
  records: List = []
171
171
  # populate additional fields from bionty
172
- from lnschema_bionty._bionty import get_bionty_source_record
172
+ from lnschema_bionty._bionty import get_public_source_record
173
173
 
174
174
  # create the corresponding bionty object from model
175
175
  try:
176
- bionty_object = model.bionty(
177
- organism=kwargs.get("organism"), bionty_source=kwargs.get("bionty_source")
176
+ public_ontology = model.public(
177
+ organism=kwargs.get("organism"), public_source=kwargs.get("public_source")
178
178
  )
179
179
  except Exception:
180
180
  # for custom records that are not created from bionty sources
181
181
  return records, iterable_idx
182
- # add bionty_source record to the kwargs
183
- kwargs.update({"bionty_source": get_bionty_source_record(bionty_object)})
182
+ # add public_source record to the kwargs
183
+ kwargs.update({"public_source": get_public_source_record(public_ontology)})
184
184
 
185
185
  # filter the columns in bionty df based on fields
186
- bionty_df = _filter_bionty_df_columns(model=model, bionty_object=bionty_object)
186
+ bionty_df = _filter_bionty_df_columns(model=model, public_ontology=public_ontology)
187
187
 
188
188
  # standardize in the bionty reference
189
- result = bionty_object.inspect(iterable_idx, field=field.field.name, mute=True)
189
+ result = public_ontology.inspect(iterable_idx, field=field.field.name, mute=True)
190
190
  syn_mapper = result.synonyms_mapper
191
191
 
192
192
  msg_syn: str = ""
@@ -254,13 +254,13 @@ def _print_values(names: List, n: int = 20) -> str:
254
254
  return print_values
255
255
 
256
256
 
257
- def _filter_bionty_df_columns(model: Registry, bionty_object: Any) -> pd.DataFrame:
257
+ def _filter_bionty_df_columns(model: Registry, public_ontology: Any) -> pd.DataFrame:
258
258
  bionty_df = pd.DataFrame()
259
- if bionty_object is not None:
259
+ if public_ontology is not None:
260
260
  model_field_names = {i.name for i in model._meta.fields}
261
261
  # parents needs to be added here as relationships aren't in fields
262
262
  model_field_names.add("parents")
263
- bionty_df = bionty_object.df().reset_index()
263
+ bionty_df = public_ontology.df().reset_index()
264
264
  if model.__name__ == "Gene":
265
265
  # groupby ensembl_gene_id and concat ncbi_gene_ids
266
266
  groupby_id_col = (
@@ -46,14 +46,11 @@ class QueryManager(models.Manager):
46
46
 
47
47
  Examples:
48
48
  >>> ln.save(ln.ULabel.from_values(["ULabel1", "ULabel2", "ULabel3"], field="name"))
49
- >>> labels = ln.ULabel.filter(name__icontains = "label").all()
49
+ >>> labels = ln.ULabel.filter(name__icontains="label").all()
50
50
  >>> ln.ULabel(name="ULabel1").save()
51
51
  >>> label = ln.ULabel.filter(name="ULabel1").one()
52
52
  >>> label.parents.set(labels)
53
53
  >>> label.parents.list()
54
- [ULabel(id=sFMcPepC, name=ULabel1, updated_at=2023-07-19 19:45:17, created_by_id=DzTjkKse), # noqa
55
- ULabel(id=2SscQvsM, name=ULabel2, updated_at=2023-07-19 19:45:17, created_by_id=DzTjkKse), # noqa
56
- ULabel(id=lecV87vi, name=ULabel3, updated_at=2023-07-19 19:45:17, created_by_id=DzTjkKse)] # noqa
57
54
  >>> label.parents.list("name")
58
55
  ['ULabel1', 'ULabel2', 'ULabel3']
59
56
  """
@@ -76,7 +73,7 @@ class QueryManager(models.Manager):
76
73
  For `**kwargs`, see :meth:`lamindb.dev.QuerySet.df`.
77
74
  """
78
75
  self._track_run_input_manager()
79
- return self.all_base_class()
76
+ return self._all_base_class()
80
77
 
81
78
  @doc_args(Registry.search.__doc__)
82
79
  def search(self, string: str, **kwargs):
@@ -115,5 +112,5 @@ models.Manager.__getitem__ = QueryManager.__getitem__
115
112
  models.Manager._track_run_input_manager = QueryManager._track_run_input_manager
116
113
  # the two lines below would be easy if we could actually inherit; like this,
117
114
  # they're suboptimal
118
- models.Manager.all_base_class = models.Manager.all
115
+ models.Manager._all_base_class = models.Manager.all
119
116
  models.Manager.all = QueryManager.all
@@ -4,7 +4,14 @@ from typing import Dict, Iterable, List, NamedTuple, Optional, Union
4
4
  import pandas as pd
5
5
  from django.db import models
6
6
  from lamindb_setup.dev._docs import doc_args
7
- from lnschema_core.models import CanValidate, IsTree, Registry
7
+ from lnschema_core.models import (
8
+ Artifact,
9
+ CanValidate,
10
+ Collection,
11
+ IsTree,
12
+ Registry,
13
+ Transform,
14
+ )
8
15
  from lnschema_core.types import ListLike, StrField
9
16
 
10
17
 
@@ -147,6 +154,13 @@ class QuerySet(models.QuerySet, CanValidate, IsTree):
147
154
  df.rename(columns={values_expression: expression}, inplace=True)
148
155
  return df
149
156
 
157
+ def delete(self, *args, **kwargs):
158
+ if self.model in {Artifact, Collection, Transform}:
159
+ for record in self:
160
+ record.delete(*args, **kwargs)
161
+ else:
162
+ self._delete_base_class(*args, **kwargs)
163
+
150
164
  def list(self, field: Optional[str] = None) -> List[Registry]:
151
165
  """Populate a list with the results.
152
166
 
@@ -282,3 +296,5 @@ models.QuerySet.lookup = QuerySet.lookup
282
296
  models.QuerySet.validate = QuerySet.validate
283
297
  models.QuerySet.inspect = QuerySet.inspect
284
298
  models.QuerySet.standardize = QuerySet.standardize
299
+ models.QuerySet._delete_base_class = models.QuerySet.delete
300
+ models.QuerySet.delete = QuerySet.delete
@@ -129,12 +129,12 @@ def from_values(
129
129
  cls, values: ListLike, field: Optional[StrField] = None, **kwargs
130
130
  ) -> List["Registry"]:
131
131
  """{}."""
132
- from_bionty = True if cls.__module__.startswith("lnschema_bionty.") else False
132
+ from_public = True if cls.__module__.startswith("lnschema_bionty.") else False
133
133
  field_str = get_default_str_field(cls, field=field)
134
134
  return get_or_create_records(
135
135
  iterable=values,
136
136
  field=getattr(cls, field_str),
137
- from_bionty=from_bionty,
137
+ from_public=from_public,
138
138
  **kwargs,
139
139
  )
140
140
 
@@ -412,7 +412,7 @@ def update_fk_to_default_db(
412
412
  def transfer_fk_to_default_db_bulk(records: Union[List, QuerySet]):
413
413
  for fk in [
414
414
  "organism",
415
- "bionty_source",
415
+ "public_source",
416
416
  "initial_version",
417
417
  "latest_report", # Transform
418
418
  "source_code", # Transform