visualize-sqlite 2.0.0

A simple way to draw a diagram from an sqlite database
Documentation
use diesel::prelude::*;
use eyre::{eyre, Context, Result};

use visualize_sqlite::Schema;

fn open_database() -> Result<SqliteConnection> {
    let mut args = std::env::args();
    args.next();

    match args.next() {
        None => Err(eyre!(
            "Please pass an sqlite database file as the first argument"
        )),
        Some(file) => {
            std::fs::metadata(&file).wrap_err("failed to open database")?;
            SqliteConnection::establish(&file).wrap_err("failed to open database")
        }
    }
}

fn main() -> Result<()> {
    println!("{}", Schema::load(&mut open_database()?)?);

    Ok(())
}