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

[r] Timestamp write and read of data frame and array objects #2926

Closed eddelbuettel closed 1 month ago

eddelbuettel commented 1 month ago

Issue and/or context:

This PR adds the ability to write, and read, at given time stamps covering the key SOMA object data frame as well as sparse and dense arrays.

There is a corresponding follow-up PR #2925 which exposes time points (as before) as well as range (begin and end) as taken by the C++ API.

Changes:

Code changes as well as a new test file. It also contains two additional smaller PRs (#2866, #2871).

Notes for Reviewer:

SC 52516

The branch had been open for two-plus weeks and has been rebased a few times so the final commit timestamps are not from the initial commits.

codecov[bot] commented 1 month ago

Codecov Report

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

Project coverage is 89.88%. Comparing base (331a1b6) to head (af225dc). Report is 2 commits behind head on main.

Additional details and impacted files ```diff @@ Coverage Diff @@ ## main #2926 +/- ## ======================================= Coverage 89.88% 89.88% ======================================= Files 37 37 Lines 3925 3925 ======================================= Hits 3528 3528 Misses 397 397 ``` | [Flag](https://app.codecov.io/gh/single-cell-data/TileDB-SOMA/pull/2926/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/2926/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=single-cell-data) | `89.88% <ø> (ø)` | | 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/2926/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/2926/components?src=pr&el=component&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=single-cell-data) | `89.88% <ø> (ø)` | | | [libtiledbsoma](https://app.codecov.io/gh/single-cell-data/TileDB-SOMA/pull/2926/components?src=pr&el=component&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=single-cell-data) | `∅ <ø> (∅)` | |
eddelbuettel commented 1 month ago

I put one microfix in following review but as discussed in parallel it maybe beneficial to attach this in parallel.

eddelbuettel commented 1 month ago

Thanks for #2929 and the follow-up comments here.