[package]
name = "diflouroborane"
version = "0.2.0"
authors = [ "Gregor Reitzenstein <me@dequbed.space>"
          , "Kai Jan Kriegel <kai@kjkriegel.de>"
          , "Joseph Langosch <thejoklla@gmail.com>"
          , "Jannis Rieger <omniskopus@gmail.com>"
          ]
license = "GPL-3.0"
edition = "2018"

[features]
default = ["lmdb"]

# Use LMDB for internal kv-stores
lmdb = []

[dependencies]
futures = { version = "0.3.16", features = ["thread-pool", "compat"] }
futures-util = "0.3.16"
futures-signals = "0.3.22"

smol = "1.2.5"

signal-hook = "0.3.9"

slog = { version = "2.7.0", features = ["max_level_trace"] }
slog-term = "2.8.0"
slog-async = "2.7.0"

capnp = "0.14.3"
capnp-rpc = "0.14.1"
capnp-futures = "0.14.1"

serde = { version = "1.0.130", features = ["derive"] }
toml = "0.5.8"
flexbuffers = "2.0.0"
bincode = "2.0.0-dev"

serde_dhall = { version = "0.10.1", default-features = false }

uuid = { version = "0.8.2", features = ["serde", "v4"] }

clap = "2.33.3"

# TODO update this if bindgen breaks (again)
rsasl = "1.4.0"
#rsasl = { path = "../../rsasl" }

# rumqtt needs tokio which I'm trying to get away from
paho-mqtt = { git = "https://github.com/dequbed/paho.mqtt.rust.git", branch = "master", features = ["build_bindgen"] }

#mlua = { version = "0.4", features = ["async", "luajit"] }

libc = "0.2.101"
lmdb-rkv = "0.14.0"

async-trait = "0.1.51"

lazy_static = "1.4.0"

rust-argon2 = "0.8.3"
rand = "0.8.4"

async-channel = "1.6.1"
easy-parallel = "3.1.0"
genawaiter = "0.99.1"

[build-dependencies]
capnpc = "0.14.4"
# Used in build.rs to iterate over all files in schema/
walkdir = "2.3.2"

[dev-dependencies]
futures-test = "0.3.16"
tempfile = "3.2"

[patch.crates-io]
bincode = { git = "https://github.com/dequbed/bincode.git", branch = "feature/in_place_buffer" }