v2.3.0
salmon 2.3.0 adds genome-alignment quantification, a deterministic alignment mode, and a dependency-graph cleanup. It is fully backward compatible with 2.2.x (CLI, index, and output formats unchanged; RAD reading is back-compatible).
Highlights
Genome-alignment quantification (-a <genome.bam> --annotation <gtf>)
Quantify directly from a genome-aligned, name-grouped BAM (STAR, HISAT2, …) plus an annotation — no second transcriptome alignment. Spliced alignments are projected into transcriptome coordinates with bramble, then quantified through the same RAD/EM/output stack as every other mode.
--genome <fasta>reconstructs transcript sequences so--seqBias/--gcBias/--posBiaswork;--juncMissDiscount <f>penalizes unannotated junctions.- Inherently deterministic (byte-identical across thread counts); composes with
--numBootstraps/--numGibbsSamples,-g/--geneMap, and-l A. - Short-read (Illumina) focused; for long reads use oarfish.
- On simulated data it tracks direct transcriptomic quantification, matching a reference genome→transcriptome projection (e.g. STAR
--quantMode TranscriptomeSAM); the residual read-vs-genome gap is inherent to genome alignment (paralog-locus collapse), not the projection.
See the Genome-alignment quantification guide.
Deterministic alignment mode (-a <txome.bam> --deterministic)
Byte-identical quant.sf across thread counts for transcriptome-aligned BAMs. Placements are scored by the BAM AS tag by default (a single BAM pass).
--errorModel(opt-in, needs-t) trains an order-independent alignment error model — integer transition counts merged across threads, normalized once — restoring the classic error-modeled weighting while staying reproducible (a second BAM pass).- Why AS by default: across every truth-bearing benchmark (uniform and realistic position-dependent Illumina errors, 50 bp and 76 bp), AS scoring is at least as accurate as an error model while being faster.
--errorModelis there for parity with salmon's classic behavior, or aligners that emit no usableAS.
See the deterministic alignment guide.
Dependency-graph unification
noodles (and its sub-crates) and ksw2rs now each resolve to a single version across salmon and its COMBINE-lab dependencies (bramble-rs 0.1.5, libradicl 0.14.2), shrinking the build graph. No user-facing change; the online alignment path is byte-for-byte consistent with 2.2.1.
Compatibility
- CLI, index format, and
quant.sf/quant.genes.sf/inferential-replicate outputs are unchanged from 2.2.x. - The RAD schema gains a backward-compatible
score_kindtag on selective-alignment RAD files; older RAD (salmon or piscem) reads unchanged.
Install salmon-cli 2.3.0
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/COMBINE-lab/salmon/releases/download/v2.3.0/salmon-cli-installer.sh | shDownload salmon-cli 2.3.0
| File | Platform | Checksum |
|---|---|---|
| salmon-cli-aarch64-apple-darwin.tar.xz | Apple Silicon macOS | checksum |
| salmon-cli-x86_64-apple-darwin.tar.xz | Intel macOS | checksum |
| salmon-cli-aarch64-unknown-linux-gnu.tar.xz | ARM64 Linux | checksum |
| salmon-cli-x86_64-unknown-linux-gnu.tar.xz | x64 Linux | checksum |