Skip to content
Compare
Choose a tag to compare

Notable Changes

  • 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
Compare
Choose a tag to compare

Notable Changes

  • This is mostly a version bump because the version.hpp file did not get updated properly with genesis v0.26.0 due to the new year, but also:
  • Add pendant length filters for placements
Compare
Choose a tag to compare

Notable Changes

Population:

  • 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

Tree:

  • Fix EMD computation with zero branch lengths
  • Improve tree diameter function for speed and memory efficiency
  • Add Simple Newick Reader and Writer

Utils:

  • 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
Compare
Choose a tag to compare

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.

Important Changes

  • 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

Notable Changes

  • 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
Compare
Choose a tag to compare

Notable Changes

  • 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

Further Changes

  • 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
Compare
Choose a tag to compare

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.

Notable Changes

  • 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.
Compare
Choose a tag to compare

Notable Changes

  • Refine input stream reading.
  • Refine phylip reading.
Compare
Choose a tag to compare

Notable Changes

  • Add support for old versions 1 and 2 of the jplace standard.
  • 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.
Compare
Choose a tag to compare

This is a long overdue release that adds a lot of new features, and refactors existing ones. It breaks compatibility with previous releases.

Important Changes

  • 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.

Notable Changes

  • 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.

Further Changes

  • 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.
Compare
Choose a tag to compare

Notable Changes

  • 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.