[package]
authors = [
  "Richard Newman <rnewman@twinql.com>",
  "Nan Jiang <najiang@mozilla.com>",
  "Myk Melez <myk@mykzilla.org>",
  "Victor Porof <vporof@mozilla.com>",
  "NikoPLP <info@parlepeuple.fr>"
]
categories = ["database"]
description = "A simple, humane, typed key-value storage solution, with encryption at rest"
documentation = "https://docs.rs/rkv"
edition = "2018"
exclude = ["/tests/envs/*"]
homepage = "https://github.com/mozilla/rkv"
keywords = ["lmdb", "database", "storage"]
license = "Apache-2.0"
name = "rkv"
readme = "README.md"
repository = "https://github.com/nikoPLP/rkv"
version = "0.18.0"
rust-version = "1.58"

[[bin]]
name = "rand"
path = "src/bin/rand.rs"
required-features = ["lmdb"]

[[bin]]
name = "dump"
path = "src/bin/dump.rs"
required-features = ["lmdb"]

[[test]]
name = "env-all"
required-features = ["lmdb"]

[[test]]
name = "env-lmdb"
required-features = ["lmdb"]

[[test]]
name = "env-migration"
required-features = ["lmdb"]

[features]
lmdb = ["lmdb-crypto-rs"]
db-dup-sort = []
db-int-key = []
default = ["db-dup-sort", "db-int-key"]
no-canonicalize-path = []
with-asan = ["lmdb", "lmdb-crypto-rs/with-asan"]
with-fuzzer = ["lmdb", "lmdb-crypto-rs/with-fuzzer"]
with-fuzzer-no-link = ["lmdb", "lmdb-crypto-rs/with-fuzzer-no-link"]

[dependencies]
arrayref = "0.3"
bincode = "1.0"
bitflags = "~1.2"
byteorder = "1"
id-arena = "2.2"
lazy_static = "1.1"
lmdb-crypto-rs = { git = "https://github.com/nikoPLP/lmdb-rs.git", branch = "master", optional = true }
log = "0.4.4"
ordered-float = "3.0.0"
paste = "1.0.6"
# Fixed version.
# See
# https://github.com/serde-rs/serde/issues/2255
# https://github.com/rust-lang/cargo/issues/10954
serde = {version = "=1.0.142", features = ["derive", "rc"]}
serde_derive = "1.0"
thiserror = "1.0"
url = "2.0"
uuid = "0.8"

[dev-dependencies]
byteorder = "1"
tempfile = "3"
