Application SingleRust as an ecosystem package - #349
Conversation
|
Dear @ianfd, thanks for submitting the package, great to see more rust taken up in the community!
Could you please also tag the releases in git, or use Github's "releases" feature?
The test coverage seems quite low. In fact, the only tests I could find are in the differential expression module. In the CI script, three test commands are commented out. |
|
Hey @grst, thanks a lot for the quick feedback — really appreciate it. Regarding releases: absolutely, I’ll start tagging versions in git and use GitHub Releases going forward to make versioning more transparent. On testing: that’s a fair point. At the moment, most of the tests live in a separate internal repository where they’re tied into a larger benchmarking and validation pipeline that runs on dedicated infrastructure. However, I understand that from the outside this makes coverage and reliability hard to assess. I’ll move a representative subset of these tests into the main repository and enable them in CI so that core functionality is covered and visible. I’ll also make sure the CI runs all relevant test commands on each push/PR. Thanks for pointing this out. I'll address these points shortly. |
…y, language) Update packages/singlerust/meta.yaml to conform to the schema changes in scverse#392: - map tags to (new) controlled vocabulary (scRNA-seq, preprocessing, differential expression) - add required fields: primary_category: scRNA-seq, language: Rust
|
Hi @ianfd, just wanted to share a quick update. We recently tightened the registry schema (#392: controlled-vocabulary tags + new required primary_category and language fields). Since that's our registry metadata, I've gone ahead and updated packages/singlerust/meta.yaml for you (tags mapped to the vocabulary (scRNA-seq, preprocessing, differential expression), primary_category: scRNA-seq, language: Rust). No action needed from your end but please feel free to let us know if you think a different tag/primary_category better fits. The earlier points still look outstanding, and remain the main things needed though! Happy to have another look once those land. |
Name of the tool: SingleRust
Short description: A toolkit to build high-performance single-cell workflows within the Rust programming language. It features several lower-level ecosystem libraries like single-algebra, single-statistics, etc...
How does the package use scverse data structures (please describe in a few sentences): It uses the already established anndata-rs and implements a pure in-memory implementation of the AnnData-structure for high-performance operations (anndata-memory).
The code is publicly available under an OSI-approved license
The package provides versioned releases
The package can be installed from a standard registry (e.g. PyPI, conda-forge, bioconda, crates.io)
Automated tests cover essential functions of the package and a reasonable range of inputs and conditions [^1]
Continuous integration (CI) automatically executes these tests on each push or pull request [^2]
The package provides API documentation via a website or README[^3]
The package uses scverse datastructures where appropriate (i.e. AnnData, MuData or SpatialData and their modality-specific extensions)
I am an author or maintainer of the tool and agree on listing the package on the scverse website
Please announce this package on scverse communication channels (zulip, discourse, twitter)
Please tag the author(s) these announcements. Handles (e.g.
@scverse_team) to include are:The package provides tutorials (or "vignettes") that help getting users started quickly
The package uses the scverse cookiecutter template.