genesis

A library for working with phylogenetic and population genetic data.

GPL-3.0 License

Stars
56

Bot releases are hidden (Show)

genesis - genesis v0.17.0

Published by lczech almost 7 years ago

Notable Changes

  • Add per-module headers.
  • Better CMake support for using Genesis as a library.
  • Refactor Node Histogram Distance to also use negative axis.
  • Add some helper functions and speedups.
  • Change default out of range behaviour of Histogram.
genesis - genesis v0.16.0

Published by lczech about 7 years ago

Notable Changes

  • Better CMake support for using Genesis as a library.
  • Add Squash Clustering.
  • Add statistics functions (correlation coefficients, ranking, etc).
  • Improvements in Earth Mover's Distance and EdgePCA calculations.
  • Improvements in Tree drawing and Matrix functions.
  • Various bugfixes and speedups.
genesis - genesis v0.15.0

Published by lczech over 7 years ago

Notable Changes

  • Add better multiple Newick trees reading support.
  • Speedup and refinements in Node Histogram Distance and EdgePCA calculation.
  • Add color palettes.
  • Add Genesis version name.
genesis - genesis v0.14.0

Published by lczech over 7 years ago

Notable Changes

  • Add Placement Histograms demo.
  • Add K-means clustering, including K-means++ and empty cluster treatment.
  • Add Attribute Tree, which supports string maps for Nodes and Edges.
  • Add simple k-mer counting functions.
  • Improved EMD and EdgePCA calculations: Faster and more flexible.
  • Tutorials for Basic Tree usage and for Sequences.
genesis - genesis v0.13.0

Published by lczech over 7 years ago

This is an overdue release that contains some major incompatibilities with previous versions.

Important Changes

  • Move all library files to lib/genesis subdirectory, to avoid include conflicts.
  • All binaries are now all compiled into the bin directory and its subdirectories.

Notable Changes

  • Add functions to add Nodes to a Tree.
  • Add Tree reroot and ladderize function.
  • Add labelled tree function and demo.
  • Add EdgePCA function, PCA function and Matrix statistics functions.
  • Add Bitmap, better Svg and better Json support.
  • Add functions for Taxonomies and Sequences, like pruning by entropy and consensus sequences.
  • Refine some functions to work with Sequences, as well as Phylip and Fasta files.
  • Refactor Tree reading and writing. More extensible now, more options available.
  • Refactor the interface of Sample.
  • Major speedups in Earth Movers Distance implementation.

Further Changes

  • Add global option for allowing to overwrite files.
  • All readers now use the new scanners. The old lexer class is gone.
  • Add unity build by default for speedup and better optimization.
  • Better support of Pthreads and OpenMP.
  • Preparations for reactivation of Python bindings with Pybind11.
  • Automatic download of GTest and Pybind11, if needed.
  • Add some documentation for existing code.
genesis - genesis v0.12.1

Published by lczech about 8 years ago

Notable Changes

  • Fix in Tree scaling for "Compare Jplace Files" demo.
  • Add scale_all_branch_lengths() function for Sample.
  • Allow small tolerance in sum of LWRs for validating a Sample.
genesis - genesis v0.12.0

Published by lczech about 8 years ago

Notable Changes

  • Add color gradient information to the "Visualize Placement" demo.
  • Add circular tree drawing functions.
  • Some small fixes and improvements.
genesis - genesis v0.11.1

Published by lczech about 8 years ago

Notable Changes

  • Fix bug in "Compare Jplace Files" demo program.
  • Add some minor functions.
genesis - genesis v0.11.0

Published by lczech about 8 years ago

Notable Changes

  • Add SHA1 calculation, e.g., for Sequence relabelling.
  • Add Expected Distance between Placement Locations (EDPL) functions.
genesis - genesis v0.10.0

Published by lczech about 8 years ago

Notable Changes

  • Add "Compare Jplace Files" demo.
genesis - genesis v0.9.0

Published by lczech about 8 years ago

This release contains some major incompatibilities with previous versions.

Notable Changes

  • Refactor Tree template class into normal class. Thus, data on Nodes and Edges is now dynamic instead of static.
  • Add functions and classes to work with Sequences, e.g., consensus sequences, filtering, sanitizing.
  • Add functionality and algorithms for working with Taxonomies, e.g., iterators, pruning by entropy, arbitrary data on Taxa.
  • Add helper classes and functions that will be important later: SVG, RMQ, TwobitVector and more.
  • Stall Python support. It's too much work to maintain the bindings while working on the library. Will continue once the API is stable.
  • Bugfixes and better C++14 compatibility, plus many internal changes for speedup and improved maintainability.
genesis - genesis v0.8.0

Published by lczech over 8 years ago

Notable Changes

  • Add many Taxonomy functions.
  • Add Taxonomy Reader for CSV files with Taxscriptors.
  • Add functions for Trees and distances.
  • Add some more functions for Sequences and fasta files.
  • Some function renaming for more consistency.
  • Update extract clade placement demo to use CSV file instead of clade directory.
  • Many bugfixes.
genesis - genesis v0.7.0

Published by lczech over 8 years ago

Notable Changes

  • Add Taxonomy class and functions.
  • Add CsvReader class.
  • Move Reader and Writer classes from io to formats.
  • Turn Log Warnings into exceptions where reasonable.
  • Reading formats works with all new line chars now (including Mac and Win).
  • Fix issue with C++14 compiler and make_unique implementation.
genesis - genesis v0.6.0

Published by lczech over 8 years ago

Notable Changes

  • Finish first working version of the Placement Simulator.
  • Speedup for writing Jplace files.
  • Fix some issues with g++ and Boost Python.
genesis - genesis v0.5.1

Published by lczech over 8 years ago

Notable Changes

  • Bugfix in Visualize Placement demo.
genesis - genesis v0.5.0

Published by lczech over 8 years ago

Notable Changes

  • Add example to "Extract Clade Placements" demo.
  • Rename Tree distance functions; add some of their missing implementations.
genesis - genesis v0.4.0

Published by lczech over 8 years ago

Notable Changes

  • Add normalizing step to "Extract Clade Placements" demo.
  • Add Tree::convert_from() function for trees with different template parameters.
  • Add new, more flexible EMD implementation, that also takes multiplicities into account.
  • Make Sample::add_pquery() function work with Pqueries from different Samples.
  • Add some safety measures, documentation etc for some classes.
  • Fix some minor bugs.
genesis - genesis v0.3.0

Published by lczech over 8 years ago

This release contains a major refactoring of the API. One big step towards a clean, consistent
interface.

The API is still not finished yet. There might be breaking changes in the future.

Notable Changes

  • Major API cleanup and changes towards consistency.
    • Major refactoring of many class interfaces.
    • Outsource many class functions to free functions.
    • Move all code into distinct module namespaces.
  • Update Python bindings.
  • Add manual with first tutorials and demos.
  • Make build process ready for release.
  • Add continuous integration.
genesis - genesis v0.2.0

Published by lczech over 8 years ago

(Re-)Release that changes the license from GNU GPL v2 to v3.

This is not an API-breaking change, but a license-breaking one. As GPL v2 and v3 are incompatible, we increase the version number to make that change visible.

genesis - genesis v0.1.1

Published by lczech over 8 years ago

This is a minor release that prepares a change of the license.

Notable Changes

  • Restructure the doc directory.
  • Restructure the tools directory.
  • Move file functions to namespace genesis::utils.