Skip to content

Releases: brentp/mosdepth

v0.2.1

12 Jan 16:14
Compare
Choose a tag to compare

v0.2.1

  • allow unsorted bed as input to --by
  • allow setting precision with env var, e.g. MOSDEPTH_PRECISION=5
  • moderate performance increase.
  • build using holy-build box to better support systems with older libc.

thresholds argument and CRAM

24 Oct 18:55
Compare
Choose a tag to compare

0.2.0

  • ~2X speed improvement for CRAM by not decoding unused base-qualities.
  • add new --thresholds argument. See README for usage. thresholds and quantization are highly recommended over
  • when using quantize, labels now indicate the range of depths encompassed by that region.
  • for quantize and per-base, mosdepth will output all chromosomes in the bam header, even if they have no alignments.
    this makes it so that mosdepth output for files aligned to the same reference have the same number and order of chromosomes
    and same total base coverage
    per-base output when possible as they are more compact and faster to output.
  • fix bug with dist output for chroms larger than 2.1 billion bases that also affected total output in some cases.

mosdepth prefix

09 Oct 18:08
Compare
Choose a tag to compare

This is a breaking release. A given output will be unchanged, but the command-line usage to get it will be different. I apologize for the change in use, but not for the increase in utility. In order to expose the utility of mosdepth across more (and multiple simultaneous) uses, mosdepth now requires a prefix for outputs rather than sending it to stdout. Usage as of this release looks as below. Where previous usage was e.g.

mosdepth $bam > $output

current usage becomes:

mosdepth $output_prefix $bam

This is explained in more detail in the help:

mosdepth 0.1.9

  Usage: mosdepth [options] <prefix> <BAM-or-CRAM>

Arguments:

  <prefix>       outputs: `{prefix}.mosdepth.dist.txt`
                          `{prefix}.per-base.bed.gz` (unless -n/--no-per-base is specified)
                          `{prefix}.regions.bed.gz` (if --by is specified)
                          `{prefix}.quantized.bed.gz` (if --quantize is specified)

  <BAM-or-CRAM>  the alignment file for which to calculate depth.

Common Options:
  
  -t --threads <threads>     number of BAM decompression threads [default: 0]
  -c --chrom <chrom>         chromosome to restrict depth calculation.
  -b --by <bed|window>       optional BED file or (integer) window-sizes.
  -n --no-per-base           dont output per-base depth (skipping this output will speed execution).
  -f --fasta <fasta>         fasta file for use with CRAM files.

Other options:

  -F --flag <FLAG>            exclude reads with any of the bits in FLAG set [default: 1796]
  -q --quantize <segments>    write quantized output, see docs for description.
  -Q --mapq <mapq>            mapping quality threshold [default: 0]
  -h --help                   show help

better support for beds with non-region lines

08 Sep 13:12
Compare
Choose a tag to compare
  • handle track lines
  • report message on bad bed lines (and skip).

NOTE that the default binary below requires a fairly modern version of GLIBC. If that fails for you with an error like:
/lib64/libc.so.6: version GLIBC_2.14' not found`

then use the mosdepth_old_glibc binary.

remove extra tab

06 Sep 03:22
Compare
Choose a tag to compare

when using --by, there was an extra tab between the chrom and start columns. This fixes that.

bugfixes related to `distribution` and large window sizes

02 Sep 02:32
Compare
Choose a tag to compare
  • fixed when a window-size larger than the chromosome length was specified, windows would be output until overflow.
  • limit size of dist file by only reporting novel values
  • cap memory use even for very deep coverage.

thanks to @tomsasani for reporting several issues.

MT

01 Sep 20:13
Compare
Choose a tag to compare
MT

fix off-by-1 error that affected MT chromosome.

options

29 Aug 19:22
Compare
Choose a tag to compare

see: #3 (comment)

  • new -F flag allows setting exclude flag
  • if --by argument is a bed file with >= 4 columns, the 4th column is transferred to the output.

usability improvements

29 Aug 13:42
Compare
Choose a tag to compare

linux binary below.

mosdepth inital release.

24 Aug 16:35
Compare
Choose a tag to compare

the binary below is for linux.