ethers-rs/ethers-core/Cargo.toml

78 lines
2.3 KiB
TOML

[package]
name = "ethers-core"
authors = ["Georgios Konstantopoulos <me@gakonst.com>"]
readme = "README.md"
description = "Ethereum data types, cryptography and utilities"
version.workspace = true
edition.workspace = true
rust-version.workspace = true
license.workspace = true
documentation.workspace = true
repository.workspace = true
homepage.workspace = true
categories.workspace = true
keywords.workspace = true
exclude.workspace = true
[package.metadata.docs.rs]
all-features = true
rustc-args = ["--cfg", "docsrs"]
rustdoc-args = ["--cfg", "docsrs"]
[package.metadata.playground]
all-features = true
[dependencies]
# abi
open-fastrlp = { version = "0.1.4", features = ["std", "derive", "ethereum-types"] }
rlp = { version = "0.5", features = ["derive"] }
ethabi = { version = "18.0.0", default-features = false, features = ["full-serde", "rlp"] }
arrayvec = { version = "0.7", default-features = false }
# crypto
elliptic-curve.workspace = true
generic-array.workspace = true
k256 = { workspace = true, features = ["ecdsa", "std"] }
tiny-keccak.workspace = true
rand.workspace = true
# misc
chrono = { version = "0.4", default-features = false }
serde.workspace = true
serde_json = { workspace = true, features = ["arbitrary_precision"] }
thiserror.workspace = true
bytes = { workspace = true, features = ["serde"] }
hex.workspace = true
once_cell = { workspace = true, optional = true }
unicode-xid = "0.2"
strum = { version = "0.24", features = ["derive"] }
num_enum = "0.5"
# macros feature enabled dependencies
cargo_metadata = { version = "0.15.3", optional = true }
# eip712 feature enabled dependencies
convert_case = { version = "0.6.0", optional = true }
syn = { workspace = true, optional = true }
proc-macro2 = { workspace = true, optional = true }
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
tempfile.workspace = true
[target.'cfg(target_arch = "wasm32")'.dependencies]
# NOTE: this enables wasm compatibility for getrandom indirectly
getrandom.workspace = true
[dev-dependencies]
bincode = { version = "1.3.3", default-features = false }
once_cell.workspace = true
hex-literal.workspace = true
rand.workspace = true
[features]
celo = ["legacy"] # celo support extends the transaction format with extra fields
legacy = []
eip712 = ["convert_case", "syn", "proc-macro2"]
macros = ["syn", "cargo_metadata", "once_cell"]