sequintools 0.11.1

A suite of tools for manipulating and reporting on NGS data that has sequins added to the sample.
Documentation
use std::env;
use std::process::Command;

fn main() {
    let git_version = match env::var("SEQUINTOOLS_GIT_VERSION") {
        Ok(version) => version,
        Err(_) => {
            let version = env::var("CARGO_PKG_VERSION").unwrap();
            let git_output = Command::new("git")
                .args(["describe", "--tags", "--dirty", "--always"])
                .output()
                .ok()
                .and_then(|o| String::from_utf8(o.stdout).ok())
                .and_then(|s| {
                    let trimmed = s.trim();
                    if trimmed.is_empty() {
                        None
                    } else {
                        Some(trimmed.to_string())
                    }
                })
                .unwrap_or_else(|| version.clone());
            git_output
        }
    };
    println!("cargo:rustc-env=GIT_VERSION={}", git_version);
}