single-cell-data / TileDB-SOMA

Python and R SOMA APIs using TileDB’s cloud-native format. Ideal for single-cell data at any scale.
https://tiledbsoma.readthedocs.io
MIT License
90 stars 25 forks source link

[python] Remove tiledb-py from unit tests #2883

Closed nguyenv closed 4 days ago

nguyenv commented 2 months ago

Issue and/or context:

This PR is separated out from https://github.com/single-cell-data/TileDB-SOMA/pull/2752

Changes:

nguyenv commented 2 months ago

My idea for the latter conerns: When creating a SOMAArray in C++, we can store the PlatformConfig that's passed in to generate the ArraySchema. Then have a platform_config getter that we can bind in the APIs. In Python, we could return that as a JSON formatted string.

So essentially your first bullet point.

nguyenv commented 2 months ago

I think we should install tiledb-py when running CI. We could have a requirements_ci.txt that pulls everything from requirements_dev.txt with just the additional requirement for tiledb. But yes we'd have to make sure the version of tiledb-py it pulls is compatible with the libtiledbsoma in tiledbsoma-py. I don't know how to deal with that yet but can look into it.

johnkerl commented 2 months ago

My idea for the latter conerns: When creating a SOMAArray in C++, we can store the PlatformConfig that's passed in to generate the ArraySchema. Then have a platform_config getter that we can bind in the APIs. In Python, we could return that as a JSON formatted string.

So essentially your first bullet point.

Hmm, I hadn't thought of that. TBH I don't think this is a good check -- it will be checking a copy of platform config stored somewhere, not checking against readback of the actual core schema that was created. We need to actually read the core schema and do these checks -- if we want to continue doing them at all ...

codecov[bot] commented 1 week ago

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 83.28%. Comparing base (176bbf8) to head (09aa14b). Report is 5 commits behind head on main.

Additional details and impacted files ```diff @@ Coverage Diff @@ ## main #2883 +/- ## ========================================== + Coverage 83.22% 83.28% +0.05% ========================================== Files 51 51 Lines 5462 5462 ========================================== + Hits 4546 4549 +3 + Misses 916 913 -3 ``` | [Flag](https://app.codecov.io/gh/single-cell-data/TileDB-SOMA/pull/2883/flags?src=pr&el=flags&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=single-cell-data) | Coverage Δ | | |---|---|---| | [python](https://app.codecov.io/gh/single-cell-data/TileDB-SOMA/pull/2883/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=single-cell-data) | `83.28% <ø> (+0.05%)` | :arrow_up: | Flags with carried forward coverage won't be shown. [Click here](https://docs.codecov.io/docs/carryforward-flags?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=single-cell-data#carryforward-flags-in-the-pull-request-comment) to find out more. | [Components](https://app.codecov.io/gh/single-cell-data/TileDB-SOMA/pull/2883/components?src=pr&el=components&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=single-cell-data) | Coverage Δ | | |---|---|---| | [python_api](https://app.codecov.io/gh/single-cell-data/TileDB-SOMA/pull/2883/components?src=pr&el=component&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=single-cell-data) | `83.28% <ø> (+0.05%)` | :arrow_up: | | [libtiledbsoma](https://app.codecov.io/gh/single-cell-data/TileDB-SOMA/pull/2883/components?src=pr&el=component&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=single-cell-data) | `∅ <ø> (∅)` | |
nguyenv commented 4 days ago

All changes in this branch have been split out into multiple PRs and merged into main.