Breaking changes:
- Due to a major upgrade of the `anndata-rs` package. The `AnnData` object generated by older versions is no longer compatible with the new version.
- All dataframes in backed mode are now indexless.
- The `pp.call_doublets` and `pl.scrublet` has been removed. `pp.scrublet` now automatically calls doublets.
- Rename the argument `gff_file` to `gene_anno` in `pp.import_data` and `pp.make_gene_matrix`. Because the gene annotation file is no longer required to be a GFF file.
Features:
- Updates to `tl.spectral`:
1. Change the default similarity metric to the cosine similarity.
2. Significantly improve the scalability of the algorithm when using the cosine similarity. Both the time and space complexity are now linear!
3. The returned eigenvectors are now weighted by eigenvalues so that using the elbow method to select the number of eigenvectors is no longer necessary. To restore the old behavior, set `weighted_by_sd=False`.
- Implement `tl.multi_spectral` to perform dimension reduction on multiple modalities simultaneously.
- Most preprocessing functions can now take a list of `AnnData` objects as input, and process them in parallel.
- `pp.make_tile_matrix`: allow excluding certain chromosomes by setting `exclude_chroms`.
Bugs fixed:
- Fix a bug in `pp.call_doublets` that leads to incorrect thresholds for certain datasets.
- Fix 80, 97, 102, 103, 109, 110.