[package]
name = "diem-types"
version = "0.0.3"
authors = ["Diem Association <opensource@diem.com>"]
description = "Diem types"
repository = "https://github.com/diem/diem"
homepage = "https://diem.com"
license = "Apache-2.0"
publish = ["crates-io"]
edition = "2018"

[dependencies]
aes-gcm = "0.8.0"
anyhow = "1.0.38"
bytes = "1.0.1"
chrono = { version = "0.4.19", default-features = false, features = ["clock"] }
hex = "0.4.3"
itertools = { version = "0.10.0", default-features = false }
once_cell = "1.7.2"
mirai-annotations = "1.10.1"
proptest = { version = "1.0.0", optional = true }
proptest-derive = { version = "0.3.0", default-features = false, optional = true }
rand = "0.8.3"
serde = { version = "1.0.124", default-features = false }
serde_json = "1.0.64"
serde_bytes = "0.11.5"
thiserror = "1.0.24"
tiny-keccak = { version = "2.0.2", default-features = false, features = ["sha3"] }

bcs = "0.1.2"
diem-crypto = { path = "../crypto/crypto", version = "0.0.3" }
diem-crypto-derive = { path = "../crypto/crypto-derive", version = "0.0.3" }
move-core-types = { path = "../language/move-core/types", version = "0.0.3" }

[dev-dependencies]
regex = "1.4.3"
proptest = "1.0.0"
proptest-derive = "0.3.0"
serde_json = "1.0.64"

diem-crypto = { path = "../crypto/crypto", features = ["fuzzing"] }
move-core-types = { path = "../language/move-core/types", features = ["fuzzing"]  }
diem-workspace-hack = { path = "../common/workspace-hack" }

[features]
default = []
fuzzing = ["proptest", "proptest-derive", "diem-crypto/fuzzing", "move-core-types/fuzzing"]
