27个不稳定版本
| 0.15.0-alpha.0 | 2024年5月7日 |
|---|---|
| 0.14.1 | 2023年4月16日 |
| 0.14.0 | 2023年3月17日 |
| 0.12.0 | 2022年12月23日 |
| 0.1.1 | 2021年3月26日 |
164 in 数据结构
94 每月下载量
用于forrustts
1MB
28K SLoC
tskit的Rust绑定 
此软件包提供以下功能
- 对
tskit和kastore的C API的低级绑定。我们使用bindgen自动生成绑定。 - 支持表集合、树序列和树迭代。
- 一个错误处理系统,将
tskit错误代码映射到rust错误,同时保留错误消息。
概述如下
tskit和kastore的C代码包含在subprojects/- 这两个工具被编译进
rust包。 - 然后
bindgen生成绑定。 - 最后,生成整个rust包。
结果是包含这两个C库的静态编译的rust库。此外,rust类型和函数存在于模块名tskit::bindings中,允许unsafe访问低级API。
需要帮助!
快速入门指南
克隆仓库并运行测试套件
git clone https://github.com/tskit-dev/tskit-rust
cd tskit-rust
cargo test --all-features
查看文档
cargo doc --all-features --open
计算代码覆盖率
首先安装tarpaulin
cargo install cargo-tarpaulin
然后,我们使用所有测试、文档测试和示例程序来计算所有可用功能的代码覆盖率
cargo tarpaulin --all-features --doc --tests --examples --exclude-files '*.c' --exclude-files '*.h' --ignore-tests -o html
然后,将您的浏览器指向tarpaulin-report.html。
最后几个标志排除了C代码以及任何仅用于测试的 rust 代码,不将其纳入覆盖率计算的分子中。这里的目的是不是要拥有高 测试 覆盖率,因为这取决于 上游项目。
注意: tarpaulin 可能会变化无常,更改某些标志的顺序可能会使覆盖率运行失败。
变更日志
请参阅这里。
更新变更日志。
审查中
示例
git cliff -u --tag v0.11.0 --date-order -p CHANGELOG.md
依赖关系
~0.5–3.5MB
~70K SLoC