codemp/Cargo.toml

57 lines
1.6 KiB
TOML

[package]
name = "codemp"
version = "0.6.2"
edition = "2021"
[lib]
name = "codemp"
crate-type = ["cdylib"]
[dependencies]
# core
tracing = "0.1"
thiserror = "1.0"
async-trait = "0.1"
# crdt
diamond-types = "1.0"
# proto
codemp-proto = { git = "ssh://git@github.com/hexedtech/codemp-proto.git", rev = "f2863537c84fccb2f84b634fb8e76392b75442da" }
uuid = { version = "1.7", features = ["v4"] }
tonic = { version = "0.12", features = ["tls", "tls-roots"] }
# api
tokio = { version = "1.0", features = ["macros", "rt-multi-thread", "sync"] }
xxhash-rust = { version = "0.8", features = ["xxh3"] }
# client
tokio-stream = "0.1"
dashmap = "5.5"
# glue (multiple)
tracing-subscriber = { version = "0.3", optional = true }
# glue (java)
lazy_static = { version = "1.4", optional = true }
jni = { version = "0.21", features = ["invocation"], optional = true }
# glue (lua)
mlua = { version = "0.10.0-beta.1", features = ["module", "luajit", "send"], optional = true }
# glue (js)
napi = { version = "2.16", features = ["full"], optional = true }
napi-derive = { version="2.16", optional = true}
# glue (python)
pyo3 = { version = "0.22", features = ["extension-module", "experimental-async"], optional = true}
[build-dependencies]
# glue (js)
napi-build = { version = "2", optional = true }
# glue (python)
pyo3-build-config = { version = "0.19", optional = true }
[features]
default = []
rust = [] # used for ci matrix
lua = ["mlua", "tracing-subscriber"]
java = ["lazy_static", "jni", "tracing-subscriber"]
js = ["napi-build", "tracing-subscriber", "napi", "napi-derive"]
python = ["pyo3", "tracing-subscriber", "pyo3-build-config"]