A simple, humane, typed key-value storage solution.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Mozilla-GitHub-Standards 0153e1ebdb Add Mozilla Code of Conduct file 5 years ago
examples Implement clear for stores 5 years ago
src Clippy fixes 5 years ago
tests wrap lmdb-rs transactions in rkv abstraction (#116) 5 years ago
.appveyor.yml add appveyor for CI on windows 6 years ago
.gitignore Initial commit. 6 years ago
.rustfmt.toml align dependencies with Gecko (#57) 6 years ago
.travis.yml use a known-to-have-rustfmt version of the nightly toolchain 5 years ago
CODE_OF_CONDUCT.md Add Mozilla Code of Conduct file 5 years ago
Cargo.toml update patch version for 0.9.4 release 5 years ago
LICENSE Initial commit. 6 years ago
README.md correct instructions for running tests and examples 6 years ago
run-all-examples.sh run examples in travis 6 years ago

README.md

Travis CI Build Status Appveyor Build Status Documentation Crate

rkv

The rkv Rust crate is a simple, humane, typed Rust interface to LMDB.

Use

Comprehensive information about using rkv is available in its online documentation, which you can also generate for local consumption:

cargo doc --open

Build

Build this project as you would build other Rust crates:

cargo build

If you specify the backtrace feature, backtraces will be enabled in failure errors. This feature is disabled by default.

Test

Test this project as you would test other Rust crates:

cargo test

The project includes unit and doc tests embedded in the src/ files, integration tests in the tests/ subdirectory, and usage examples in the examples/ subdirectory. To ensure your changes don't break examples, also run them via the run-all-examples.sh shell script:

./run-all-examples.sh

Contribute

Of the various open source archetypes described in A Framework for Purposeful Open Source, the rkv project most closely resembles the Specialty Library, and we welcome contributions. Please report problems or ask questions using this repo's GitHub issue tracker and submit pull requests for code and documentation changes.

rkv relies on the latest rustfmt for code formatting, so please make sure your pull request passes the rustfmt before submitting it for review. See rustfmt's quick start for installation details.

We follow Mozilla's Community Participation Guidelines while contributing to this project.

License

The rkv source code is licensed under the Apache License, Version 2.0, as described in the LICENSE file.