- Add SAM/BAM/CRAM Input Iterator, with RG read group splitting and filtering, and SAM flags filters
- Refactor Variant Input Iterators for ease of use
- Add Variant Input Iterator for Parallel Input
- Refactor Genome Region List to use Interval Tree, and add surrounding functionality
- Rename and refactor Kofler and Karlsson F_ST pool functions for clarity
- Add our unbiased F_ST estimators for pool sequencing data
- Refactor and refine diversity measure settings
- Refactor Window Iterator
- Non-virtual iterator interface
- Base class abstraction for SlidingWindowIterator
- Deprecate SlidingWindowGenerater, use SlidingWindowIterator instead
- Deprecate Vcf Window Generator function
- Add BED Reader
- Add Genome Region List reader for GFF
- Speed improvements and async block buffering for Lambda Iterator
- Refine CMake setup for htslib, improve autotools combatibility
- Add Genome Locus class and comparison operators
- Add Variant Parallel Input Iterator
- Add Variant Input Iterator
- Refine Pileup Reader to allow parsing Variants directly
- Change Window Iterator start position to 1
- Switch to always using local htslib
- Disable htslib libcurl requirement
- Fix EMD computation with zero branch lengths
- Improve tree diameter function for speed and memory efficiency
- Add Simple Newick Reader and Writer
- Add Interval Tree implementation
- Add bare Optional class
- Refactor Lambda Iterator
- Refine Options guess number of threads
- Relax binomial coefficient behaviour to allow for larger numbers
This is a long overdue release that adds a lot of new features, and in particular introduces support for population genetics data, methods, and file formats, and adds an (optional) dependency on htslib.
- Add (optional) support for VCF files by wrapping htslib (which now is an optional dependency)
- Add reading support for (m)pileup, GFF/GTF, and PoPoolation2 sync files
- Add tools to work with alleleic variants (SNPs), genome regions, and sliding windows
- Add pool-sequencing variants of population genetic statistics, such as heterozygosity, Theta Watterson, Theta Pi, Tajima's D, and variants of F_ST, by re-implementing methods of PoPoolation and PoPoolation2
- Add filtering and transforming iterator classes
- Add harmonic mean functions
- Add binomial distribution function and binomial coefficient (n choose k) functions
- Add base64 encoding and decoding functions
- Add natural sorting function
- Add simple pure function cache class
- Add svg image embedding and rendering options
- Add simple thread pool class
- Add GzipBlockOStream class
- Refactor gzip input stream to work on concatenated gzip streams
- Adapt BmpWriter and SequencePrinter to new OutputTarget classes
- Fix placement sample PqueryName filtering functions
- Fix tree bipartition find subtree function
- Fix bug in tuple hash function
- Fix undefined behaviour in GzipStream destructor
- Bug fixes and speed improvements
- Change writer classes to use new output targets functionality
- Add Fastq handling: reading, writing, iterating
- Add phred quality score handling
- Add gzip output support and gzip streams
- Add date/time conversion functions
- Add a lot of refinements to existing functionality
- Improve support and fix issues for build platforms and compilers
- Refine error messages for file handling
- Several speedups, improvements, and bug fixes
This is the release that accompanies the publication of our application note
Genesis and Gappa: processing, analyzing and visualizing phylogenetic (placement) data.
Lucas Czech, Pierre Barbera, and Alexandros Stamatakis.
Bioinformatics, 2020. https://doi.org/10.1093/bioinformatics/btaa070
which is now the official reference to cite when using genesis and gappa.
- Add a lot of more tutorials for all parts of genesis.
- Reduce memory footprint of Squash Clustering.
- Add Robinson-Foulds (RF) distance functions.
- Several bugfixes and refinements.
- Add support for old versions 1 and 2 of the
- Add minimal tree function for easier tree experimentation.
- Fix some issues occurring on Mac and with other compilers.
- Fix issues found by clang sanitizer and similar tools.
- Fix some bugs, refine some code, speed up some functions.
This is a long overdue release that adds a lot of new features, and refactors existing ones. It breaks compatibility with previous releases.
- Refactor design and usage of input reading functions/classes.
- Rename DefaultTree to CommonTree.
- Use dereferencing iterator for Tree members.
- Refactor several smaller classes and functions for usability.
- Add transparent gzib and zlib support for input reading.
- Add adaptation of Phylogenetic Isometric Log-Ratio (PhILR) Transform to phylogenetic placements.
- Add Placement-Factorization, an adaptation of Phylofactorization to phylogenetic placements.
- Add Generalized Linear Models (GLM).
- Add Multi-Dimensional Scaling (MDS).
- Add Taxonomy to Tree functions.
- Add Tree/Sample rerooting and subtree deletion functions.
- Add Subtree class, add iterator support for subtrees.
- Add heat tree / heat map visualization.
- Add several statistics functions.
- Add a lot (!) of smaller auxiliary functions and features.
- Fix several bugs, implement several speedups and improvements.
- Add Sequence abundances.
- Rename and change several Tree functions and classes.
- Refine hashing functions and classes.
- Add several Taxonomy functions.
- Add and change k-means functions.
- Add Matrix Writer class.
- Many bugfixes and refinements.