Conversation
…dataR into keller-mark/zarr
…milar to HDF5AnnData
Simplify how obs and var names handled in ZarrAnnData
More zarr-related changes
Update comments
rcannood
left a comment
There was a problem hiding this comment.
Fantastic work @keller-mark and @Artur-man !
I went through the PR for a first time and left some minor comments. I will review the code by running it a couple of times next :)
- Use uv comments for dependencies - Update dependencies to latest stable versions - Add progress messages - Use Ruff for formatting
|
@lazappi I think I did not check before finishing the hackathon. Do you set the default zarr version for write methods now ? or do you write only zarr v2 or v3 ? Again here is the parameter from would be nice to do that too if we are not rushing bioc release. |
|
Ok I took another look at it. The roundtrip tests and write tests do not have zarr v3 tests but thats fine for now I think. What is more important is that we can read both versions. Since this is gonna stay as the devel branch for another 6 months I can throw another PR later. Lets not overdo it. UPDATE: I wrote a version of |
|
I thought there was something that was missing from {Rarr} that was blocking writing v3 but I forgot to open an issue and come back to it. If you think the extra tests are passing do you want to push them here? |
Fixes #91
These changes are from both me and @Artur-man
The main public-facing changes here are:
ZarrAnnDataclassread_zarrandwrite_zarrtop-level functionsfrom_Seurat(output_class="ZarrAnnData")from_SingleCellExperiment(output_class="ZarrAnnData")Internally:
read_zarr_helpers.Ris the zarr analog ofread_h5ad_helpers.Rwrite_zarr_helpers.Ris the zarr analog ofwrite_h5ad_helpers.Rinst/extdata/example.zarr(this makes the diff noisy, apologies)test-Zarr-read.R(35 new tests)test-Zarr-write.R(70)test-ZarrAnnData.R(26)test-h5ad-zarr.R(17)A number of these functions generate warnings in the R console that are intended to be followed up on to improve the code (and should probably be resolved as end users may not appreciate them), but the tests still pass despite these warnings.
Known things that are not implemented here:
recarraysmode = c("r", "r+", "a", "w", "w-", "x")parameter value