#bioinformatics #unsafe-bindings #ffi #alignment #parasail #rust

sys libparasail-sys

Unsafe Rust bindings for the parasail C library

7 releases

0.1.6 Apr 17, 2024
0.1.5 Mar 11, 2024
0.1.4 Feb 26, 2024

#217 in Biology

Download history 20/week @ 2024-03-02 186/week @ 2024-03-09 16/week @ 2024-03-16 3/week @ 2024-03-23 27/week @ 2024-03-30 9/week @ 2024-04-06 271/week @ 2024-04-13 13/week @ 2024-04-20 11/week @ 2024-04-27 7/week @ 2024-05-04 1/week @ 2024-05-11 14/week @ 2024-05-18 2/week @ 2024-05-25 5/week @ 2024-06-01 44/week @ 2024-06-08 16/week @ 2024-06-15

70 downloads per month
Used in parasail-rs

BSD-3-Clause

23MB
648K SLoC

C 644K SLoC // 0.0% comments C++ 4K SLoC // 0.1% comments Rust 105 SLoC // 0.0% comments

libparasail-sys

GitHub Actions Workflow Status docs.rs Crates.io Version

This crate provides unsafe Rust bindings for parasail. You might be interested in parasail-rs, which provides safe Rust bindings and a wrapper to parasail.

Note that parasail-sys similarly provides unsafe Rust bindings, but has been archived since 2020. The intention of libparasail-sys is to provide an up to date set of bindings for parasail in case things change in the original library.

Building

Assuming you have cargo setup, you can build libparasail-sys to check that the bindings compile with cargo build. Note that we try and use system parasail by default and then try to build using CMake if no system package is found (see build.rs or the CMake build instructions in the original library repo). To force using system parasail, set the PARASAIL_NO_VENDOR=1 environment variable.

Testing

Bindgen provides tests to check the generated FFI structs. For verification, run cargo test. Assuming no modification has been made to the bindings.rs, this should pass successfully. This crate has been tested with cargo 1.77.0-nightly.

Contributing

Contributions are more than welcome. Please file an issue if you have any trouble with this crate. You can also send an email for other issues or feedback at nsb5 [at] rice.edu.

License

libparasail-sys is licensed under the BSD-3-clause license, however, parasail is licensed under a very similar Batelle BSD-style license and was developed by Jeff Daily along with other contributors.

Nicolas Buitrago <nsb5 [@] rice.edu>

Dependencies