20 releases (6 breaking)

✓ Uses Rust 2018 edition

0.7.0 Oct 10, 2019
0.6.0 Aug 30, 2019
0.5.0 Jun 1, 2019
0.4.0 Mar 3, 2019
0.1.1 Jun 11, 2017

#34 in Database implementations

Download history 156/week @ 2019-06-27 79/week @ 2019-07-04 16/week @ 2019-07-11 17/week @ 2019-07-18 7/week @ 2019-07-25 26/week @ 2019-08-01 19/week @ 2019-08-08 12/week @ 2019-08-15 231/week @ 2019-08-22 82/week @ 2019-08-29 101/week @ 2019-09-05 50/week @ 2019-09-12 248/week @ 2019-09-19 48/week @ 2019-09-26 38/week @ 2019-10-03

294 downloads per month
Used in 3 crates

MPL-2.0 license

350KB
9K SLoC

Persy

build status coverage report

Persy is a transactional storage engine written in rust.

persy.rs crate.io docs.rs Mastodon

COMPILING THE SOURCE

Checkout the source code:

git clone https://gitlab.com/tglman/persy.git

Compile and Test

cargo test

INSTALL

Add it as dependency of your project:

[dependencies]
persy="0.7"

USAGE EXAMPLE

Create a new persy file save some data in it and scan it.

use persy::{Persy,Config};
//...
Persy::create("./open.persy")?;
let persy = Persy::open("./open.persy",Config::new())?;
let mut tx = persy.begin()?;
persy.create_segment(&mut tx, "seg")?;
let data = vec![1;20];
persy.insert_record(&mut tx, "seg", &data)?;
let prepared = persy.prepare_commit(tx)?;
persy.commit(prepared)?;
for (_id, content) in persy.scan("seg")? {
    assert_eq!(content[0], 20);
    //....
}

CONTRIBUTION

There are a few option for contribute to persy, you can start from reviewing and suggesting API changes, jump directly to hacking the code or just playing a bit with docs. If you want a list of possibility you can start from the list of new contributor friendly issues If you would like to contact the developers send a mail to user dev on the persy.rs domain ( spam safety :) ).

Dependencies

~735KB
~11K SLoC