WIP
Fast, safe implementation of NBLAST, originally published here and implemented here, with python bindings.
This repository acts as a cargo workspace, and contains two crates:
- nblast-rs, a cargo project representing the
nblastrust crate - nblast-py, a maturin project representing the
pynblastpython project (which binds to rust)
In the root directory, cargo build / cargo test will only build/test the crate in nblast-rs.
To build and test the python project in nblast-py (which should not be deployed as a crate), use maturin develop and pytest in the subdirectory.
See crates.io and docs.rs for the rust project, or PyPI and ReadTheDocs for the released projects,
Use rustup to install the rust compiler specified in rust-toolchain.
- Use
cargo build/cargo test/cargo benchetc.
- Install the development dependencies with
pip install -r nblast-py/requirements.txt - Compile the rust component and install locally with
maturin develop(add--releasefor an optimised build)
Installing the python wheel from a source distribution (sdist) is currently not supported and will likely fail. See here for details on how to build locally if wheels are not available for your platform.