Skip to content

2.5.0

Compare
Choose a tag to compare
@lbergelson lbergelson released this 23 Jun 19:24
· 605 commits to master since this release
2.5.0

Release 2.5.0

This release includes important bug fixes for users of CRAM. If you read CRAM files using htsjdk you should update.
It restores support for using the IntelDeflater which is now provided as as part of the Intel Genomics Kernal Library (Intel-GKL). It is recommended that downstream projects incorporate this library if they want to accelerate bam compression.
This also incorporates important updates to SRA support as well as a number of new small features and quality of life improvements.

This release makes some breaking changes from previous releases, some users may have to make small updates to their code to incorporate it. (breaking changes and their resolution have been noted in italic.)

  • CRAM improvements and critical bug fixes
    This includes a critical bug fix for CRAM queries that were returning incorrect results.
    582ffae write CRAM3 by default
    12b0345 Fixes and tests for CRAM index queries.
    e86f6cd Implement CRAI writing for CRAM (default index remains BAI).
    e332493 SamReaderFactory fixes for CRAMFileReader/SAMTextReader from URL/Stream/SeekableStream SamInputResources.
    f2e1b03 Move a cram to test to its proper place.
  • Improvements to SRA support
    Bug fixes and improvements for SRA f4d8c55
    Automatically downloading code for SRA support has been disabled by default. To enable to enable this set sra_libraries_download=true
  • SamLocusIterator can now include information about indels.
    5196d09 Added indel support to SamLocusIterator (#408)
  • Support for streaming output when using VariantContextWriterBuilder
    b723300 Modified VariantContextWriterBuilder to automatically set output type… (#495)
  • More specific flags for enabling asynchronous reading/writing
    USE_ASYNC_IO replaced with finer grained commands: USE_ASYNC_IO_READ_FOR_SAMTOOLS, USE_ASYNC_IO_WRITE_FOR_SAMTOOLS and USE_ASYNC_IO_WRITE_FOR_TRIBBLE
    Note that async bam reading is not yet enabled.
    f5eb97d
  • Make Histogram.Bin into a static class
    Bin in Histogram<> caused problems with serialization and confused IDEs. It has been made into a parameterized static class which doesn't have these problems
    Replace instances of Histogram<Integer>.Bin with Histogram.Bin<Integer>.
    8f89440 and 84dd0b5
  • OverlapDetector has been revamped to work with Locatable instead of only Interval.
    Methods have changed but conversion should be fairly self explanatory. 0720512
  • IntelDeflater is no longer part of htsdjk (as of 2.4.1) and is now available as part of the Intel GKL
    removed TRY_USE_INTEL_DEFLATER option
    new method SAMFileWriterFactory.setDeflaterFactory allows externally provided deflaters to be used.
    1e02905
  • Removal of deprecated/outdated classes
    0e9f815 remove class Objects -> use java.util.Objects instead
    03c813c deleted 2 deprecated classes: SAMFileReader SAMFileTruncatedReader
  • 3629291 Provide a method that for each source contig gives the set of destination contigs used in liftover.
  • b50b527 Adding the ability to read and write the SAM flag field in various formats, similar to the 'samtools view -X' option. Use the SAM_FLAG_FIELD_FORMAT within the Defaults class to set this.
  • 60b1384 Add SeekablePathStream for java.nio.file.Path.
  • Other bug fixes and maintenance
    f9f3dc9 Move the last dangling test file the old testdata directory.
    6f7ed32 Update VCF header line parser to handle escaping quotes and backslashes
    a53a590 100% coverage for FastqRecord
    95f001e badge for the latest release on maven central, license and language
    791fcdd Fix SamLocusIterator when missing base quality string is provided
    bcc3f4a Removed PollableTreeSet in SortingCollection as it was no longer necessary. (#642)