quilt-rs 0.13.0

Rust library for accessing Quilt data packages.
Documentation
use clap::Parser;
use std::io;
use tracing::log;

mod cli;
mod perf;

use cli::print;

#[tokio::main]
async fn main() {
    tracing_subscriber::fmt::init();
    let args = cli::Args::parse();
    match cli::init(args).await {
        Ok(result) => {
            let stdout = io::stdout();
            let stderr = io::stderr();
            let mut stdout_handle = stdout.lock();
            let mut stderr_handle = stderr.lock();

            if let Err(err) = print(result, &mut stdout_handle, &mut stderr_handle) {
                log::error!("Failed to print output: {}", err);
                std::process::exit(1);
            }
        }
        Err(err) => {
            log::error!("Failed to run command: {}", err);
            std::process::exit(1);
        }
    }
}