Skip to content

This library provides HTSlib bindings and a high level Rust API for reading and writing BAM files.

License

Notifications You must be signed in to change notification settings

sjackman/rust-htslib

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Crates.io Crates.io Crates.io docs.rs Travis

HTSlib bindings for Rust

This library provides HTSlib bindings and a high level Rust API for reading and writing BAM files.

To clone this repository, issue

git clone --recursive https://github.com/rust-bio/rust-htslib.git

ensuring that the HTSlib submodule is fetched, too. If you only want to use the library, there is no need to clone the repository. Go on to the Usage section in this case.

Requirements

To compile this crate you need the development headers of zlib, bzip2 and xz.

Usage

Add this to your Cargo.toml:

[dependencies]
rust-htslib = "*"

By default rust-htslib links to bzip2-sys and lzma-sys for full CRAM support. If you do not need CRAM support, or you do need to support CRAM files with these compression methods, you can deactivate these features to reduce you dependency count:

[dependencies]
rust-htslib = { version = "*", default-features = false }

rust-htslib also has optional support for serde, to allow (de)serialization of bam::Record via any serde-supported format:

[dependencies]
rust-htslib = { version = "*", features = ["serde"] }

For more information, please see the docs.

Authors

For other contributors, see here.

License

Licensed under the MIT license http://opensource.org/licenses/MIT. This project may not be copied, modified, or distributed except according to those terms.

About

This library provides HTSlib bindings and a high level Rust API for reading and writing BAM files.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Rust 99.8%
  • Other 0.2%