Getting started with development #
The easiest way to get started with working on mbf-fastq-processor is to clone the repository:
jj git clone --colocate https://github.com/TyberiusPrime/mbf-fastq-processor
or
git clone https://github.com/TyberiusPrime/mbf-fastq-processor
if you’re not yet convinced that Jujutsu is the better git.
Development environment #
Using nix develop to enter a shell with all the necessary requirements using Nix.
If you don’t use nix, you’re on your own to supply a matching rust compiler, openssl and pkg-config.
Development with Cargo #
During development you can run the CLI straight from the workspace:
cargo run --release -- process path/to/config.toml
–release is optional, but cargo debug builds can be slow.
See the CLI documentation for arguments after
the -- that splits the cargo run arguments from the process arguments.
Running tests #
Run all tests #
cargo test
Run a specific test #
cargo test <test-name-substring>
Run from a test_case folder #
cargo run -- verify
Benchmarking #
bash cargo bench
will get you a (not so) quick benchmark of our individual components.
Manipulating core count #
In addition to the config options in the
input-section
or in the Options section,
you can influence the number of cores used for the automatic decisions on
thread counts by setting the MBF_FASTQ_PROCESSOR_NUM_CPUS environment variable.