RustQC currently reimplements 8 of RSeQC's tools (bam_stat, infer_experiment, read_duplication, read_distribution, junction_annotation, junction_saturation, inner_distance, TIN) alongside dupRadar, featureCounts, preseq, samtools stats, and Qualimap — genuinely great coverage. But two commonly-used RSeQC tools are still missing: geneBody_coverage.py and read_GC.py.
Why these two matter:
geneBody_coverage.py measures read coverage uniformity across the gene body (5'→3'), which is the standard way to detect RNA degradation and 3'-end bias in RNA-seq libraries — a core RNA-seq QC signal that none of the currently-implemented 8 tools cover.
read_GC.py measures the GC-content distribution of mapped reads, the standard check for GC bias introduced by library prep or sequencing — also not covered by any currently-implemented tool.
Concrete motivation: We evaluated RustQC as a drop-in replacement for the RSeQC/Qualimap/samtools QC steps in a production Snakemake RNA-seq pipeline. Every other RSeQC tool the pipeline uses has a direct RustQC equivalent, and RustQC's single-pass design would let it retire a whole separate RSeQC container/dependency entirely — except for these two tools. Right now that means keeping RSeQC installed just for two tools, which significantly undercuts RustQC's core value proposition of replacing "14+ separate QC tool invocations with a single CLI command." Adding these two would let pipelines fully consolidate onto RustQC instead of maintaining both.
Ask: Please consider adding geneBody_coverage and read_GC (or an equivalent combined implementation) as an enhancement. Happy to help validate against RSeQC's original output on real data if that's useful — we already have a test harness comparing byte-level agreement between RustQC and upstream tools.
RustQC currently reimplements 8 of RSeQC's tools (
bam_stat,infer_experiment,read_duplication,read_distribution,junction_annotation,junction_saturation,inner_distance,TIN) alongside dupRadar, featureCounts, preseq, samtools stats, and Qualimap — genuinely great coverage. But two commonly-used RSeQC tools are still missing:geneBody_coverage.pyandread_GC.py.Why these two matter:
geneBody_coverage.pymeasures read coverage uniformity across the gene body (5'→3'), which is the standard way to detect RNA degradation and 3'-end bias in RNA-seq libraries — a core RNA-seq QC signal that none of the currently-implemented 8 tools cover.read_GC.pymeasures the GC-content distribution of mapped reads, the standard check for GC bias introduced by library prep or sequencing — also not covered by any currently-implemented tool.Concrete motivation: We evaluated RustQC as a drop-in replacement for the RSeQC/Qualimap/samtools QC steps in a production Snakemake RNA-seq pipeline. Every other RSeQC tool the pipeline uses has a direct RustQC equivalent, and RustQC's single-pass design would let it retire a whole separate RSeQC container/dependency entirely — except for these two tools. Right now that means keeping RSeQC installed just for two tools, which significantly undercuts RustQC's core value proposition of replacing "14+ separate QC tool invocations with a single CLI command." Adding these two would let pipelines fully consolidate onto RustQC instead of maintaining both.
Ask: Please consider adding
geneBody_coverageandread_GC(or an equivalent combined implementation) as an enhancement. Happy to help validate against RSeQC's original output on real data if that's useful — we already have a test harness comparing byte-level agreement between RustQC and upstream tools.