898ee70419
Updating rkv to 0.5 enables us to un-vendor new-ordered-float, as rkv 0.4 is the last crate in the tree that depends on it. It also enables us to un-vendor version 0.5 of uuid. We previously needed that version because multiple third-party crates depended on it, and we have limited control over third-party sub-dependencies. But rkv 0.4 was the last third-party crate that still depended on version 0.5 of uuid; rkv 0.5 depends on version 0.6 of uuid. There would still be two internal crates that depend on version 0.5 of uuid: geckodriver and webrender_bindings. But we have more control over internal sub-dependencies, and we can update those two internal crates to depend on version 0.6 of uuid. This patch does so. To summarize, this patch makes the following changes: * rkv: 0.4 -> 0.5 * new-ordered-float: un-vendored * geckodriver: uuid dependency 0.5 -> 0.6 * webrender_bindings: uuid dependency 0.5 -> 0.6 * uuid 0.5: un-vendored * uuid 0.6: remains in tree Differential Revision: https://phabricator.services.mozilla.com/D9160 --HG-- extra : moz-landing-system : lando |
||
---|---|---|
.. | ||
examples | ||
src | ||
tests | ||
.appveyor.yml | ||
.cargo-checksum.json | ||
.rustfmt.toml | ||
.travis.yml | ||
Cargo.toml | ||
LICENSE | ||
README.md | ||
run-all-examples.sh |
README.md
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.