htsjdk 2.22.0
The CRAM is finally sane release.
This release overhauls the CRAM code dramatically. This is a culmination of a long period of refactoring and improvement.
CRAM should now be considered a first class citizen of htsjdk. The implementation is now saner, safer, faster, and more complete.
We recommend users give it a try and let us know if they encounter any new problems.
Partial list of CRAM issues fixed: #1422 #1394 #1379 #1367 #1343 #1307 #1301 #1187 #1183 #1088
Compatibility
MANY classes in the package htsjdk.samtools.cram
have breaking changes when compared to 2.21.3. Anyone who is working directly with those classes will need to do substantial work to update. We believe that very few downstream users will be effected (or surprised) by this though since we declared those packages to be volatile a fairly long time ago and we haven't had any feedback. We think the number of clients of those classes is 0.
There are several small breaking changes outside of that package, but these should be low impact for most users.
Complete Change List:
709c9f8 SamLocusAndReferenceIterator fails with leading indels at the start of the reference (#1481)
bd1b739 new interface VCFReader (#1473)
4ea6fa3 Add VCFHeader.getSampleNamesInOrder javadoc (#1469)
43374aa Add another improvement to tribble error code (#1467)
1fd5062 Reduce array copying when writing vcf (#1464)
75716e0 fix a test in VCFFileReaderTest.java (#1468)
9a70c29 better tribble error message when parsing
b24c952 Fix CRAM (#1440)