Crates.io | fqtk |
lib.rs | fqtk |
version | 0.3.0 |
source | src |
created_at | 2023-01-05 20:04:32.964819 |
updated_at | 2023-07-28 17:00:21.494538 |
description | A toolkit for working with FASTQ files. |
homepage | https://github.com/fulcrumgenomics/fqtk |
repository | https://github.com/fulcrumgenomics/fqtk |
max_upload_size | |
id | 751775 |
size | 162,173 |
A toolkit for working with FASTQ files, written in Rust.
conda
To install with conda you must first install conda. Then, in your command line (and with the environment you wish to install fqtk into active) run:
conda install -c bioconda fqtk
cargo
To install with cargo you must first install rust. Which (On Mac OS and Linux) can be done with the command:
curl https://sh.rustup.rs -sSf | sh
Then, to install fqtk
run:
cargo install fqtk
First, clone the git repo:
git clone https://github.com/fulcrumgenomics/fqtk.git
Secondly, if you do not already have rust development tools installed, install via rustup:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
Then build the toolkit in release mode:
cd fqtk
cargo build --release
./target/release/fqtk --help
fqtk is developed in Rust and follows the conventions of using rustfmt
and clippy
to ensure both code quality and standardized formatting.
When working on fqtk, before pushing any commits, please first run ./ci/check.sh
and resolve any issues that are reported.
Install cargo-release
cargo install cargo-release
Create a release that will not try to push to crates.io
and verify the command:
cargo release [major,minor,patch,release,rc...] --no-publish
Note: "dry-run" is the default for cargo release.
See the cargo-release
reference documentation for more information
This tool follows Semantic Versioning. In brief:
To create a major release:
cargo release major --execute
This will remove any pre-release extension, create a new tag and push it to github, and push the release to creates.io.
Upon success, move the version to the next candidate release.
Finally, make sure to create a new release on GitHub.
To create a minor (patch) release, follow the Major Release instructions substituting major
with minor
(patch
):
cargo release minor --execute
To move to the next release candidate:
cargo release rc --no-tag --no-publish --execute
This will create or bump the pre-release version and push the changes to the main branch on github.
This will not tag and publish the release candidate.
If you would like to tag the release candidate on github, remove --no-tag
to create a new tag and push it to github.