13 releases

0.3.0 Dec 27, 2022
0.2.0 Sep 19, 2022
0.1.9 Jun 1, 2021
0.1.6 May 31, 2021

#210 in Database interfaces

Download history 3/week @ 2022-11-21 1/week @ 2022-12-05 1/week @ 2022-12-12 12/week @ 2022-12-19 24/week @ 2022-12-26 4/week @ 2023-01-02 5/week @ 2023-01-09 1/week @ 2023-01-16 4/week @ 2023-01-23 6/week @ 2023-01-30 14/week @ 2023-02-06 34/week @ 2023-02-13 24/week @ 2023-02-20 2/week @ 2023-02-27 1/week @ 2023-03-06

62 downloads per month

MIT/Apache

215KB
6K SLoC

rucash

The Rust for Gnucash


rucash provides a simple interface to GnuCash files stored in xml and SQL (sqlite3, PostgreSQL and MySQL).

Example

#[cfg(feature = "sqlite")]
{
    use rucash::SqliteBook;

    #[tokio::main]
    async fn main() {
        let book = SqliteBook::new("sqlite://tests/db/sqlite/complex_sample.gnucash?mode=ro").await.unwrap();
        let accounts = book.accounts();
    }
}

Install

# Cargo.toml
[dependencies]
rucash = { version = "0.3", features = [ "sqlite", "decimal" ] }

Cargo Feature Flags

  • sqlite: Add support for the self-contained SQLite database engine.
  • postgres: Add support for the Postgres database server.
  • mysql: Add support for the MySQL database server.
  • xml: Add support for xml.
  • decimal: Add support for Decimal.

Dependencies

~4–16MB
~280K SLoC