Skip to content

Releases: tskit-dev/tskit-rust

Alpha release

07 May 23:07
94b20ef
Compare
Choose a tag to compare
Alpha release Pre-release
Pre-release

Alpha release of 0.15. The changelog is not updated. This release is a placeholder so that others can pull from crates.io.

0.14.1

16 Apr 19:01
Compare
Choose a tag to compare

[0.14.1] - 2023-04-16

Bug Fixes

  • Tree now tied to TreeSequence lifetime (#497)

Miscellaneous Tasks

  • Update delegate requirement from 0.8.0 to 0.9.0 (#494)

0.14.0

18 Mar 00:00
Compare
Choose a tag to compare

[0.14.0] - 2023-03-17

Documentation

  • Book section on node defaults (#491)

Features

  • Allow use of bookmark in examples/haploid_wright_fisher (#479)
  • Impl Default for row id types (#484)
  • Impl Default for Bookmark (#486)
  • Implement Builder pattern for flags (#487)
  • Support adding nodes with defaults (#488)

Miscellaneous Tasks

  • [breaking] Bump MSRV to 1.60.0 (#478)

Refactor

  • Remove internal impl Deref/DerefMut for edge diff iterator. (#482)
  • Mod table_view is no longer pub (#483)
  • [breaking] TableCollection::simplify now takes &[NodeId] (#485)
  • Replace macros with fn for adding node table rows (#489)
  • Manually impl Default for NodeDefaultsWithMetadata (#490)

0.12.0

23 Dec 22:03
Compare
Choose a tag to compare

[0.12.0] - 2022-12-23

Documentation

  • Book section on lending row iterators (#406)
  • Advanced metadata topics in book (#407)
  • Book chapter on edge differences (#417)

Features

  • TreeSequence::edge_differences_iter (#410)
  • Add convience functions to get usize from row ids. (#413)
  • Tree::total_branch_length now works. (#429)
  • Add getters/setters for Bookmark. (#437)

Miscellaneous Tasks

  • Update bindgen requirement from 0.61.0 to 0.63.0 (#415)

Refactor

  • [breaking] Replace Deref with delegation of TableViews API (#409)
  • [breaking] Remove TskitTypeAccess trait (#411)
  • Allow TreeSequence::edge_differences_iter to Err. (#412)
  • [breaking] Usize to SizeType conversion is now fallible. (#419)
  • Macros only use newtype public API. (#420)
  • Move newtypes into module (#421)
  • The raw_metadata fn for tables now takes Into. (#425)
  • Add low-level table wrappers to sys (#426)
  • Generalize slice building in sys (#427)
  • Remove many unsafe calls from tree_interface.rs (#428)
  • Add sys::LLTreeSeq. (#430)
  • Sys module no longer depends on TskitError (#431)
  • Move Drop details for TreeSequence to sys. (#432)
  • Add low level owning tables to sys (#433)
  • Tidy up table definitions (#434)

Styling

  • [breaking] Rename all OwnedX tables to OwningX. (#408)
  • Replace column access macro with generic fn (#422)
  • Generic fns for ragged column access (#423)
  • Use fn to get array slices from Trees. (#424)

v0.12.0-alpha.1

09 Nov 19:52
Compare
Choose a tag to compare
v0.12.0-alpha.1 Pre-release
Pre-release

[0.12.0-alpha.1] - 2022-11-09

Bug Fixes

  • [breaking] MetadataError::RoundtripError now requires Send + Sync (#396)

Documentation

  • Add haploid WF example to book (#397)

Features

  • Add examples/haploid_wright_fisher.rs (#394)
  • Add lending iterators over table row "views" (#398)
  • Impl PartialEq for table row views. (#400)
  • Add ProvenenceTableRowView (#401)
  • Add row_view() for tables (#402)
  • Column slice getters for tables (#404)

Refactor

  • [breaking] Return &str from provenance table getters (#403)
  • Deprecate NodeTable::flags_array_mut and NodeTable::time_array_mut (#405)

v0.12.0-alpha.0

06 Nov 22:35
Compare
Choose a tag to compare
v0.12.0-alpha.0 Pre-release
Pre-release

[0.12.0-alpha.0] - 2022-11-06

Documentation

  • Add book sections on table data access (#379)
  • Remove chapter number from book intro (#380)
  • Start book sections on tree sequences (#381)
  • Book section on the tree API. (#382)
  • Add book section on misc. ops on treeseqs (#385)
  • Appendix material for book (#386)
  • Rewrite book intro (#389)
  • Show prelude contents as book appendix (#390)
  • Book sections on metadata (#391)
  • Book section on error handling (#393)

Refactor

  • [breaking] Improve Tree iterator ergonomics (#384)
  • [breaking] Improve Tree interface ergonomics (#388)

v0.11.1

04 Nov 22:04
Compare
Choose a tag to compare

[0.11.1] - 2022-11-04

Documentation

Refactor

  • Apply functional style for NodeTable fns (#377)

v0.11.0

04 Nov 19:32
Compare
Choose a tag to compare

[0.11.0] - 2022-11-04

Bug Fixes

  • Derive Debug for all table row types (#361)
  • [breaking] Update generic bounds on metadata getters (#370)
  • Impl DerefMut for "owned" tables. (#371)

Documentation

  • Add migration guide (#376)

Features

  • [breaking] Add TskitError::LibraryError (#342)

Refactor

  • Streamline code for generating table rows. (#340)
  • Replace unwrap with expect in _macros.rs (#341)
  • Replace unwrap with errors in table_collection.rs (#343)
  • Remove unwraps in trees source files. (#344)
  • Streamline building individual table rows (#345)
  • Remove unwraps from node_table.rs (#346)
  • Unwrap to expect in error.rs (#347)
  • Remove type info from Display for newtypes. (#349)
  • [breaking] Return None for out-of-range row indexes. (#350)
  • [breaking] Return None for out-of-range row indexes, part II. (#351)
  • [breaking] Return None for out-of-range row indexes, part III. (#355)
  • Improve safety of tsk array access (#362)
  • Tree now stores tsk_tree_t in MBox. (#367)
  • [breaking] Provenance table getters now return Option (#369)
  • [breaking] Remove lifetime annotation from table types (#373)

Styling

  • Fix lints from rust 1.65.0 (#374)
  • Fix lints from nightly (#375)

Testing

  • Rewrite table API tests (#356)
  • Add doc tests for node table (#359)

v0.10.0

28 Oct 17:55
Compare
Choose a tag to compare

[0.10.0] - 2022-10-28

Documentation

  • Display feature flags in docs.rs (#338)

Miscellaneous Tasks

  • Set msrv to 1.57.0 (result of cargo msrv) (#322)
  • Fix tag_pattern in cliff.toml (#330)
  • Update github actions (#332)
  • Add github actions to monthly dependabot (#333)
  • Update bindgen requirement from 0.60.1 to 0.61.0 (#336)
  • Bump styfle/cancel-workflow-action from 0.6.0 to 0.11.0 (#334)

Performance

  • Use Bookmark in forward simulation example (#318)

Refactor

  • Streamline internal macros for adding nodes (#309)
  • Remove internal ffi module (#310)
  • Panics compatible with earlier rustc (#311)
  • Remove type name from SizeType Display output. (#315)
  • [breaking] TableCollection::simplify returns Option<&[NodeId]> (#316)
  • [breaking] Conversion from row id to usize is now fallible. (#319)
  • Use clap::Parser in example program. (#320)
  • Remove pontential panic! when instantiating table rows. (#329)
  • Examples/tree_traversals.rs now uses clap derive (#337)

Styling

  • Remove unneeded ( ) from match. (#323)
  • Use auto-deref for pointer deref. (#325)
  • Fix +nightly clippy lints for all targets/features. (#326)

Testing

  • Improve test work flow (#331)

[0.10.0-alpha.1] - 2022-07-31

Bug Fixes

  • Replace crate with $crate in macros (#287)

Features

  • Add tskit::OwnedMutationTable (#281)
  • Add tskit::OwnedSiteTable (#283)
  • Add tskit::OwnedIndividualTable (#284)
  • Add tskit::OwnedMigrationTable (#285)
  • Add tskit::provenance::OwnedProvenanceTable (#286)
  • Set tables in collection from owned tables. (#288)
  • [breaking] Impl Send/Sync for TreeSequence (#297)

Miscellaneous Tasks

  • Update to C API 1.1.1 (#304)

Performance

  • [breaking] Implement slice access to individual data (#292)
  • [breaking] Eliminate several copies from C to rust (#293)

Refactor

  • Deduplicate code for adding node table rows. (#278)
  • Use macros to implement adding table rows. (#279)
  • Add new macro to build owned tables (#282)
  • Separate tree ownership from API. (#300)
  • Bring back generic syntax for adding node table rows. (#302)
  • [breaking] Display for new types now omits type name. (#305)
  • Remove MBox for tsk_treeseq_t storage (#306)

[0.10.0-alpha.0] - 2022-07-19

Bug Fixes

  • Fix memory leak in TreeSequence::simplify (#274)
  • Fix leak in TableCollection::deepcopy (#275)
  • Fix leak in TreeSequence::dump_tables (#276)

Documentation

  • Fix warnings from "cargo doc" (#255)

Features

  • Make load from file generic over AsRef (#254)
  • Add tskit::OwnedPopulationTable (#267)
  • Add tskit::OwnedEdgeTable (#268)
  • Add tskit::OwnedNodeTable (#273)

Miscellaneous Tasks

  • Add cliff.toml (config file for git-cliff) (#257)
  • Prefix "chore: " to dependabot.yml (#258)
  • Use cargo-hack to streamline CI. (#259)
  • Add cargo-valgrind CI workflow (#277)

Refactor

  • Macro metadata_to_vector intputs changed. (#263)
  • Add macros to implement owned tables. (#269)

Testing

  • Add another experimental trait idea for metadata. (#261)
  • Redo doctest: TableCollection::new_from_file (#272)

Second alpha release for 0.10.0

31 Jul 21:53
Compare
Choose a tag to compare
v0.10.0-alpha.1

Bump to version 0.10.0-alpha.1