|
1 | 1 | Noteworthy changes in release a.b |
2 | 2 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
3 | 3 |
|
| 4 | +Updates |
| 5 | +------- |
| 6 | + |
| 7 | +* HTSlib 1.22 changed the VCF reader so that it stored GT prefixed phasing |
| 8 | + information, but only for files specifying `fileformat=VCFv4.4` or higher. |
| 9 | + This caused problems when merging files with different versions, so the |
| 10 | + VCF reader will now store prefixed phasing information irrespective of |
| 11 | + the VCF version listed in the file headers. For files up to VCFv4.3, the |
| 12 | + first phasing bit will be set if all other alleles are phased, and cleared |
| 13 | + otherwise (following the rules for VCFv4.4 onwards where no explicit |
| 14 | + phasing symbol is present). This will also happen when reading BCF. |
| 15 | + |
| 16 | + When accessing GT data, it is no longer safe to assume that the phasing |
| 17 | + is set to zero even if the file reports a version earlier than VCFv4.4. |
| 18 | + Interfaces such as `bcf_gt_allele()` should always be used to access |
| 19 | + GT allele data. |
| 20 | + |
| 21 | + For compatibility, prefixed phasing will be stripped when writing VCF |
| 22 | + files with version 4.3 or earlier. |
| 23 | + (PR #1938, fixes #1932) |
| 24 | + |
| 25 | +* Add support for VCFv4.4 / VCFv4.5 "Number=" fields. |
| 26 | + (PR #1874) |
| 27 | + |
| 28 | +* Consolidate and simplify SAM header parsing. This considerably speeds up |
| 29 | + parsing files with many SQ lines. |
| 30 | + (PR #1947. PR #1953 fixes oss-fuzz issues 444492071, 444492076, 444547724, |
| 31 | + 444490034) |
| 32 | + |
| 33 | +* Switch from strtol to hts_str2uint in mod parsing for speed increase. |
| 34 | + (PR #1957. Thanks to Chris Wright) |
| 35 | + |
| 36 | +* Add UMI support to FASTQ input and output. See samtools/samtools#2270. |
| 37 | + (PR #1960, fixes samtools/samtools#2259. Requested by Poshi) |
| 38 | + |
| 39 | +* Removed direct access to htsFile struct members in some sample functions. |
| 40 | + (PR #1963, fixes #1961. Reported by John Marshall) |
| 41 | + |
| 42 | +* Improved operation of filters that work with header data. Filter expressions |
| 43 | + set as an `HTS_OPT_FILTER` on a BAM or CRAM iterator failed to return |
| 44 | + records matching on `rname`, `mrname`, `rnext` or `library`. |
| 45 | + (PR #1959) |
| 46 | + |
| 47 | +* Add Type to the INFO/FORMAT sanity check. This produces a warning on |
| 48 | + incorrect Type usage. |
| 49 | + (PR #1967, fixes #1937 and samtools/bcftools#2431. |
| 50 | + Reported by Jukka Matilainen) |
| 51 | + |
| 52 | +* S3 reading code now reads in `chunks` to limit the amount of data read (and |
| 53 | + therefore egress costs) from the object store when doing a range request. |
| 54 | + Also this combines the reading, writing and authorisation code into a single |
| 55 | + file. |
| 56 | + (PR #1958, fixes #1670. Reported by Stephan Drukewitz) |
| 57 | + |
| 58 | +Build Changes |
| 59 | +------------- |
| 60 | + |
| 61 | +* Change optimisation for -fsanitize=address,undefined test build to counter |
| 62 | + slow build and high compiler memory use. |
| 63 | + (PR #1924) |
| 64 | + |
| 65 | +* Fix compilation failure on MacOS X 10.9 (and likely other very old platforms). |
| 66 | + (PR #1945, fixes #1941. Reported by Ryan Carsten Schmidt) |
| 67 | + |
| 68 | +* Fix htslib.map update due to recent change in nm behaviour. |
| 69 | + (PR #1975, fixes #1971. Reported by John Marshall). |
| 70 | + |
| 71 | +Bug fixes |
| 72 | +--------- |
| 73 | + |
| 74 | +* Fix segfault on an empty valid MM tag. |
| 75 | + (PR #1939, fixes #1936. Reported by John Marshall) |
| 76 | + |
| 77 | +* Fix bam_next_basemod + HTS_MOD_REPORT_UNCHECKED flag. |
| 78 | + (PR #1946, fixes #1943) |
| 79 | + |
| 80 | +* For the VCF rlen calculation, only use SVLEN for DEL, DUP and CNV symbolic |
| 81 | + alleles. A bug is also fixed on big-endian platforms where INFO and FORMAT |
| 82 | + values were being accessed incorrectly. |
| 83 | + (PR #1942, fixes #1940) |
| 84 | + |
| 85 | +* Correct TLEN assignment in CRAM decode. Also improve decoder when dealing |
| 86 | + with multiple secondary alignments. See also samtools/hts-specs#842. |
| 87 | + (PR #1951, fixes #1948. Reported by Matt Sexton) |
| 88 | + |
| 89 | +* Make tabix skip comments (-c) wherever they occur, not just at the start of |
| 90 | + the file. |
| 91 | + (PR #1952, fixes #1950. Reported by Victor Negîrneac) |
| 92 | + |
| 93 | +* Update htscodecs for better AVX2 / AVX512 runtime detection. |
| 94 | + (PR #1954, fixes samtools/samtools#2256. Reported by Ran Fan) |
| 95 | + |
| 96 | +* Fix embed_ref=2 on SEQ * and MD:Z tag. The combination of no sequence and |
| 97 | + MD:Z with embed_ref=2 caused the slice extents to be miscalculated, |
| 98 | + causing invalid CRAM output to be written. |
| 99 | + (PR #1964, fixes samtools/samtools#2277. Reported by fo40225) |
| 100 | + |
| 101 | +* Try to ensure CSI indexes are built with valid parameters. Adjusts the |
| 102 | + min_shift and n_lvls to cover the size of the genome. This may override the |
| 103 | + user setting of min_shift (with warning) if needed. |
| 104 | + (PR #1968, fixes #1966. Reported by Marc Sturm) |
| 105 | + |
| 106 | +* Fix bug where multi-threaded CRAM iterators could drop long alignments |
| 107 | + starting significantly before, but overlapping, the region of interest. |
| 108 | + (PR #1973, fixes samtools/samtools#2285, Reported by Nick Owens) |
| 109 | + |
| 110 | +Documentation updates |
| 111 | +--------------------- |
| 112 | + |
| 113 | +* Added support information and samtools email for security issues. |
| 114 | + (PR #1956) |
| 115 | + |
| 116 | +* Fix spelling in function name in sam.h. |
| 117 | + (PR #1972. Thanks to Jack Turpitt) |
| 118 | + |
4 | 119 | Noteworthy changes in release 1.22.1 (14th July 2025) |
5 | 120 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
6 | 121 |
|
|
0 commit comments