Skip to content

Releases: tskit-dev/tskit

C API 0.99.11

16 Mar 11:54
5db28ed
Compare
Choose a tag to compare

Features

Breaking changes

  • Method tsk_individual_table_add_row has an extra arguments parents and parents_length.

  • Add an options argument to tsk_table_collection_subset (@petrelharp, #1108),
    to allow for retaining the order of populations.

  • Mutation error codes have changed

Changes

  • Allow mutations that have the same derived state as their parent mutation.
    (@benjeffery, #1180, #1233)

  • File minor version change to support individual parents

C API 0.99.10

25 Jan 11:49
44f3aea
Compare
Choose a tag to compare

Minor change to internal APIs

C API 0.99.9

22 Jan 22:35
776c464
Compare
Choose a tag to compare

Minor Feature Release

Features

  • Add TSK_KEEP_UNARY_IN_INDIVIDUALS flag to simplify, which allows the user to
    keep unary nodes only if they belong to a tabled individual. This is useful for
    simplification in forwards simulations (@hyanwong, #1113, #1119).

Python 0.3.4

02 Dec 10:03
bdb494e
Compare
Choose a tag to compare

Minor bugfix release.

Bugfixes

  • Reinstate the unused zlib_compression option to tskit.dump, as msprime < 1.0 still uses it (@jeromekelleher, #1067).

Python 0.3.3

27 Nov 13:11
63566d3
Compare
Choose a tag to compare

Minor feature release

Features

  • Add TreeSequence.genetic_relatedness for calculating genetic relatedness between
    pairs of sets of nodes (@brieuclehmann, #1021, #1023, #974, #973, #898).

  • Expose TreeSequence.coiterate() method to allow iteration over 2 sequences
    simultaneously, aiding comparison of trees from two sequences
    (@jeromekelleher, @hyanwong, #1021, #1022).

  • tskit is now supported on, and has wheels for, python3.9
    (@benjeffery, #982, #907).

  • Tree.newick() now has extra option include_branch_lengths to allow branch
    lengths to be omitted (@hyanwong, #931).

  • Added Tree.generate_star static method to create star-topologies (@hyanwong,
    #934).

  • Added Tree.generate_comb and Tree.generate_balanced methods to create
    example trees. (@jeromekelleher, #1026).

  • Added equals method to TreeSequence, TableCollection and each of the tables which
    provides more flexible equality comparisons, for example, allowing
    users to ignore metadata or provenance in the comparison
    (@mufernando, @jeromekelleher, #896, #897,
    #913, #917).

  • Added __eq__ to TreeSequence
    (@benjeffery, #1011, #1020).

  • ts.dump and tskit.load now support reading and writing file objects such as
    FIFOs and sockets (@benjeffery, #657, #909).

  • Added tskit.write_ms for writing to MS format
    (@saurabhbelsare, #727, #854).

  • Added TableCollection.indexes for access to the edge insertion/removal order indexes
    (@benjeffery, #4, #916).

  • The dictionary representation of a TableCollection now contains its index
    (@benjeffery, #870, #921).

  • Added TreeSequence._repr_html_ for use in jupyter notebooks
    (@benjeffery, #872, #923).

  • Added TreeSequence.__str__ to display a summary for terminal usage
    (@benjeffery, #938, #985).

  • Added TableCollection.dump and TableCollection.load. This allows table
    collections that are not valid tree sequences to be manipulated
    (@benjeffery, #14, #986).

  • Added nbytes method to tables, TableCollection and TreeSequence which
    reports the size in bytes of those objects
    (@jeromekelleher, @benjeffery, #54, #871).

  • Added TableCollection.clear to clear data table rows and optionally
    provenances, table schemas and tree-sequence level metadata and schema
    (@benjeffery, #929, #1001).

Bugfixes

  • LightWeightTableCollection.asdict and TableCollection.asdict now return copies
    of arrays (@benjeffery, #1025, #1029).

  • The map_mutations method previously used the Fitch parsimony method, but this
    does not produce parsimonious results on non-binary trees. We now now use the
    Hartigan parsimony algorithm, which does (@jeromekelleher,
    #987, #1030).

  • The flag argument to tables' add_row was treating the value as signed
    (@benjeffery, #1027, #1031).

Breaking changes

  • The argument to ts.dump and tskit.load has been renamed file from path.
  • All arguments to Tree.newick() except precision are now keyword-only.
  • Renamed ts.trait_regression to ts.trait_linear_model.

C API 0.99.8

27 Nov 12:59
63566d3
Compare
Choose a tag to compare

Minor feature release

New features

Breaking changes

  • Added an options argument to tsk_table_collection_equals
    and table equality methods to allow for more flexible equality criteria
    (e.g., ignore top-level metadata and schema or provenance tables).
    Existing code should add an extra final parameter 0 to retain the
    current behaviour (@mufernando, @jeromekelleher,
    #896, #897, #913, #917).

  • Changed default behaviour of tsk_table_collection_clear to not clear
    provenances and added options argument to optionally clear provenances
    and schemas (@benjeffery, #929, #1001).

  • Renamed tsk_treeseq_trait_regression to tsk_treeseq_trait_linear_model.

Python 0.3.2

29 Sep 13:23
8504d2f
Compare
Choose a tag to compare

Minor feature release

Breaking changes

  • Change several methods (simplify(), trees(), Tree()) so most parameters
    are keyword only, not positional. This allows reordering of parameters, so
    that deprecated parameters can be moved, and the parameter order in similar functions,
    e.g. TableCollection.simplify and TreeSequence.simplify() can be made
    consistent (@hyanwong, #374, #846, #851)

Features

  • Tree accessor functions (e.g. ts.first(), ts.at() pass extra parameters such as
    sample_indexes to the underlying Tree constructor; also root_threshold can
    be specified when calling ts.trees() (@hyanwong, #847, #848)

  • Genomic intervals returned by python functions are now namedtuples, allowing .left
    .right and .span usage (@hyanwong, #784, #786, #811)

  • Added include_terminal parameter to edge diffs iterator, to output the last edges
    at the end of a tree sequence (@hyanwong, #783, #787)

  • #832 - Add metadata_bytes method to allow access to raw
    TableCollection metadata (@benjeffery, #842)

  • New tree.is_isolated(u) method (@hyanwong, #443).

  • tskit.is_unknown_time can now check arrays. (@benjeffery, #857).

C API 0.99.7

29 Sep 13:15
8504d2f
Compare
Choose a tag to compare

Minor feature release

  • Added TSK_INCLUDE_TERMINAL option to tsk_diff_iter_init to output the last edges
    at the end of a tree sequence (@hyanwong, #783, #787)

  • Added tsk_bug_assert for assertions that should be compiled into release binaries
    (@benjeffery, #860)

Python 0.3.1

04 Sep 21:27
44178cc
Compare
Choose a tag to compare

Minor bugfix release

Bugfixes

C API 0.99.6

04 Sep 21:16
44178cc
Compare
Choose a tag to compare

Bugfixes

  • #823 - Fix mutation time error when using tsk_table_collection_simplify with TSK_KEEP_INPUT_ROOTS (@petrelharp, #823).