Vcflib v1.0.4 Release Notes

  • ๐Ÿš€ This is a release with some major changes.

    Important changes:

    • vcfwave is introduced and vcfallelicprimitimes is now considered obsolete
    • ๐Ÿ“œ INFO fields output order is now the same as on input parsing

    TODO

    • ๐Ÿ”€ [ ] vcfwave check merging of genotypes - write tests
    • ๐Ÿ”€ [ ] vcfwave recompute AC, AFs from merged record
    • ๐Ÿš€ [ ] RELEASE 1.0.4
    • ๐Ÿ”€ [ ] vcfcreatemulti merge multiple rows
      • [ ] rewrite vcfcreatemulti
      • [ ] check for indels which are really the same
      • [ ] combine vcfwave duplicated functionality
    • ๐Ÿš€ [ ] RELEASE 1.0.5
    • [ ] vcfuniq combine genotypes from non-unique records
    • [ ] vcfwave check polyploids
    • ๐Ÿš€ [ ] RELEASE 1.0.6

    Introduction of O(n) wavefront algorithm WF to replace O(n2) Smith-Waterman SW. Note that the output is different from the original SW implementation. SW is still optionally available but considered obsolete. Use the bi-directional vcfwave instead of vcfallelicprimitives.

    • โž• Added realignment using the wavefront algorithm (now the default). See [vcfwave](./doc/vcfwave.md) (thank you Erik Garrison https://github.com/ekg and Santiago Marco-Sola https://github.com/smarco).
    • ๐Ÿ‘Œ Support longer read inversions in vcfwave!
    • vcfallelicprimitives now considered legacy/obsolete
    • ๐Ÿ‘Œ Improved CMake configuration
    • ๐Ÿ‘€ vcflib compiles with both gcc and clang++ and tests pass, see [guix-clang.scm](./guix-clang.scm) - mind that git submodules such as WFA2-lib still override to gcc
    • ๐Ÿ›  Fixed local build for tabixpp+htslib - note that htslib should be an upstream released version (currently 1.15.1). Unfortunately git submodule does not handle tags.
    • ๐Ÿ›  Fix for -L switch for vcfallelicprimitives
    • โž• Added libasan and lto support
    • โœ‚ Removed useless googletest submodule
    • โž• Added python bindings with pybind11
    • โž• Added python testing framework
    • โž• Added tabixpp back in as a submodule, fixes https://github.com/vcflib/vcflib/issues/305
    • ๐Ÿ›  Optimizations and bug fixes. (thanks @mphschmitt)