mirror of
https://github.com/darkrenaissance/darkfi.git
synced 2026-01-07 22:04:03 -05:00
375 lines
7.6 KiB
TOML
375 lines
7.6 KiB
TOML
[package]
|
|
name = "darkfi"
|
|
version = "0.3.0"
|
|
homepage = "https://dark.fi"
|
|
description = "Anonymous. Uncensored. Sovereign."
|
|
authors = ["darkfi <dev@dark.fi>"]
|
|
repository = "https://github.com/darkrenaissance/darkfi"
|
|
license = "AGPL-3.0-only"
|
|
edition = "2021"
|
|
|
|
[lib]
|
|
name = "darkfi"
|
|
|
|
#[profile.release]
|
|
#debug = true
|
|
#lto = "fat"
|
|
#codegen-units = 1
|
|
|
|
[workspace]
|
|
members = [
|
|
"bin/zkas",
|
|
#"bin/cashierd",
|
|
"bin/darkfid",
|
|
"bin/darkotc",
|
|
"bin/drk",
|
|
"bin/faucetd",
|
|
"bin/fud/fu",
|
|
"bin/fud/fud",
|
|
"bin/ircd",
|
|
"bin/ircd2",
|
|
"bin/dnetview",
|
|
"bin/dao/daod",
|
|
"bin/dao/dao-cli",
|
|
"bin/tau/taud",
|
|
"bin/tau/tau-cli",
|
|
"bin/darkwiki/darkwikid",
|
|
"bin/darkwiki/darkwiki-cli",
|
|
"bin/vanityaddr",
|
|
"bin/lilith",
|
|
|
|
"src/sdk",
|
|
"src/serial",
|
|
"src/serial/derive",
|
|
"src/serial/derive-internal",
|
|
|
|
"example/dchat",
|
|
]
|
|
|
|
[dependencies]
|
|
# Hard dependencies
|
|
libc = "0.2.134"
|
|
log = "0.4.17"
|
|
thiserror = "1.0.37"
|
|
|
|
# async-runtime
|
|
async-std = {version = "1.12.0", features = ["attributes"], optional = true}
|
|
async-trait = {version = "0.1.57", optional = true}
|
|
futures = {version = "0.3.24", optional = true}
|
|
smol = {version = "1.2.5", optional = true}
|
|
|
|
# Networking
|
|
futures-rustls = {version = "0.22.2", features = ["dangerous_configuration"], optional = true}
|
|
iprange = {version = "0.6.7", optional = true}
|
|
ipnet = {version = "2.5.0", optional = true}
|
|
socket2 = {version = "0.4.7", optional = true}
|
|
|
|
# TLS cert utilities
|
|
ed25519-compact = {version = "1.0.16", features = ["pem"], optional = true}
|
|
rcgen = {version = "0.10.0", features = ["pem"], optional = true}
|
|
rustls-pemfile = {version = "1.0.1", optional = true}
|
|
|
|
# Encoding
|
|
bs58 = {version = "0.4.0", optional = true}
|
|
hex = {version = "0.4.3", optional = true}
|
|
serde_json = {version = "1.0.85", optional = true}
|
|
serde = {version = "1.0.145", features = ["derive"], optional = true}
|
|
structopt = {version= "0.3.26", optional = true}
|
|
structopt-toml = {version= "0.5.1", optional = true}
|
|
toml = {version = "0.5.9", optional = true}
|
|
|
|
# Utilities
|
|
# TODO: check chrono usage and impl our own
|
|
chrono = {version = "0.4.22", optional = true}
|
|
darkfi-serial = {path = "src/serial", optional = true}
|
|
darkfi-derive = {path = "src/serial/derive", optional = true}
|
|
darkfi-derive-internal = {path = "src/serial/derive-internal", optional = true}
|
|
fxhash = {version = "0.2.1", optional = true}
|
|
indexmap = {version = "1.9.1", optional = true}
|
|
itertools = {version = "0.10.5", optional = true}
|
|
lazy-init = {version = "0.5.1", optional = true}
|
|
lazy_static = {version = "1.4.0", optional = true}
|
|
subtle = {version = "2.4.1", optional = true}
|
|
# TODO: Test without serde
|
|
url = {version = "2.3.1", features = ["serde"], optional = true}
|
|
|
|
# Misc
|
|
# TODO: Implement something simple and kill these deps
|
|
indicatif = {version = "0.17.1", optional = true}
|
|
simplelog = {version = "0.12.0", optional = true}
|
|
termion = {version = "1.5.6", optional = true}
|
|
|
|
# Websockets
|
|
async-tungstenite = {version = "0.17.2", optional = true}
|
|
tungstenite = {version = "0.17.3", optional = true}
|
|
|
|
# socks5
|
|
fast-socks5 = {version = "0.4.3", optional = true}
|
|
|
|
# Crypto
|
|
rand = {version = "0.8.5", optional = true}
|
|
blake2b_simd = {version = "1.0.0", optional = true}
|
|
blake3 = {version = "1.3.1", optional = true}
|
|
chacha20poly1305 = {version = "0.10.1", optional = true}
|
|
halo2_proofs = {version = "0.2.0", optional = true}
|
|
halo2_gadgets = {version = "0.2.0", optional = true}
|
|
incrementalmerkletree = {version = "0.3.0", optional = true}
|
|
num-bigint = {version = "0.4.3", optional = true}
|
|
num-traits = {version = "0.2.15", optional = true}
|
|
pasta_curves = {version = "0.4.0", optional = true}
|
|
sha2 = {version = "0.10.6", optional = true}
|
|
|
|
# Smart contract runtime
|
|
darkfi-sdk = {path = "src/sdk", optional = true}
|
|
wasmer = {version = "2.3.0", optional = true}
|
|
wasmer-compiler-singlepass = {version = "2.3.0", optional = true}
|
|
wasmer-middlewares = {version = "2.3.0", optional = true}
|
|
|
|
# Wallet management
|
|
libsqlite3-sys = {version = "0.24.2", features = ["bundled-sqlcipher"], optional = true }
|
|
sqlx = {version = "0.6.2", features = ["runtime-async-std-native-tls", "sqlite"], optional = true}
|
|
|
|
# Blockchain store
|
|
sled = {version = "0.34.7", optional = true}
|
|
|
|
# big float
|
|
dashu = { version = "0.2.0", git = "https://github.com/ertosns/dashu" }
|
|
|
|
[dev-dependencies]
|
|
clap = {version = "3.2.20", features = ["derive"]}
|
|
halo2_proofs = {version = "0.2.0", features = ["dev-graph", "gadget-traces", "sanity-checks"]}
|
|
halo2_gadgets = {version = "0.2.0", features = ["dev-graph", "test-dependencies"]}
|
|
plotters = "0.3.4"
|
|
env_logger = "0.9.1"
|
|
easy-parallel = "3.2.0"
|
|
|
|
|
|
# -----BEGIN LIBRARY FEATURES-----
|
|
[features]
|
|
async-runtime = [
|
|
"async-std",
|
|
"async-trait",
|
|
"futures",
|
|
"smol",
|
|
]
|
|
|
|
blockchain = [
|
|
"blake3",
|
|
"chrono",
|
|
"halo2_gadgets",
|
|
"halo2_proofs",
|
|
"incrementalmerkletree",
|
|
"lazy-init",
|
|
"lazy_static",
|
|
"pasta_curves",
|
|
"rand",
|
|
"sled",
|
|
"url",
|
|
|
|
"async-runtime",
|
|
"crypto",
|
|
"darkfi-sdk",
|
|
"darkfi-serial",
|
|
"net",
|
|
"tx",
|
|
"node",
|
|
"util",
|
|
]
|
|
|
|
crypto = [
|
|
"blake2b_simd",
|
|
"blake3",
|
|
"bs58",
|
|
"chacha20poly1305",
|
|
"fxhash",
|
|
"halo2_gadgets",
|
|
"halo2_proofs",
|
|
"hex",
|
|
"incrementalmerkletree",
|
|
"lazy_static",
|
|
"num-bigint",
|
|
"num-traits",
|
|
"pasta_curves",
|
|
"rand",
|
|
"serde",
|
|
"serde_json",
|
|
"sha2",
|
|
"subtle",
|
|
|
|
"darkfi-sdk",
|
|
"darkfi-serial",
|
|
"darkfi-serial/crypto",
|
|
"util",
|
|
"zkas",
|
|
]
|
|
|
|
dht = [
|
|
"blake3",
|
|
"chrono",
|
|
"rand",
|
|
|
|
"async-runtime",
|
|
"darkfi-serial",
|
|
"darkfi-serial/collections",
|
|
"darkfi-serial/hash",
|
|
"net",
|
|
]
|
|
|
|
net = [
|
|
"fxhash",
|
|
"ed25519-compact",
|
|
"fast-socks5",
|
|
"futures-rustls",
|
|
"hex",
|
|
"iprange",
|
|
"ipnet",
|
|
"structopt",
|
|
"structopt-toml",
|
|
"rand",
|
|
"rcgen",
|
|
"rustls-pemfile",
|
|
"serde",
|
|
"serde_json",
|
|
"socket2",
|
|
"url",
|
|
|
|
"async-runtime",
|
|
"darkfi-serial",
|
|
"darkfi-serial/async",
|
|
"darkfi-serial/url",
|
|
"system",
|
|
"util",
|
|
]
|
|
|
|
node = [
|
|
"bs58",
|
|
"incrementalmerkletree",
|
|
"lazy-init",
|
|
|
|
"async-runtime",
|
|
"blockchain",
|
|
"crypto",
|
|
"darkfi-serial",
|
|
"tx",
|
|
"wallet",
|
|
]
|
|
|
|
raft = [
|
|
"chrono",
|
|
"fxhash",
|
|
"rand",
|
|
"sled",
|
|
|
|
"async-runtime",
|
|
"darkfi-serial",
|
|
"net",
|
|
"util",
|
|
]
|
|
|
|
rpc = [
|
|
"hex",
|
|
"rand",
|
|
"serde",
|
|
"serde_json",
|
|
"url",
|
|
|
|
"async-runtime",
|
|
"darkfi-serial",
|
|
"net",
|
|
]
|
|
|
|
system = [
|
|
"fxhash",
|
|
"rand",
|
|
|
|
"async-runtime",
|
|
]
|
|
|
|
tx = [
|
|
"incrementalmerkletree",
|
|
"rand",
|
|
|
|
"darkfi-serial",
|
|
"crypto",
|
|
]
|
|
|
|
util = [
|
|
"chrono",
|
|
"indicatif",
|
|
"rand",
|
|
"simplelog",
|
|
"serde",
|
|
"serde_json",
|
|
"termion",
|
|
"toml",
|
|
"url",
|
|
|
|
"darkfi-serial",
|
|
]
|
|
|
|
wallet = [
|
|
"async-std",
|
|
"bs58",
|
|
"rand",
|
|
"sqlx",
|
|
"incrementalmerkletree",
|
|
"libsqlite3-sys",
|
|
|
|
"crypto",
|
|
"darkfi-serial",
|
|
"util",
|
|
]
|
|
|
|
wasm-runtime = [
|
|
"wasmer",
|
|
"wasmer-compiler-singlepass",
|
|
"wasmer-middlewares",
|
|
|
|
"darkfi-sdk",
|
|
"node",
|
|
]
|
|
|
|
websockets = [
|
|
"async-tungstenite",
|
|
"tungstenite",
|
|
]
|
|
|
|
zkas = [
|
|
"termion",
|
|
"indexmap",
|
|
"itertools",
|
|
|
|
"darkfi-serial",
|
|
]
|
|
# -----END LIBRARY FEATURES-----
|
|
|
|
[[example]]
|
|
name = "net"
|
|
path = "example/net.rs"
|
|
required-features = ["async-runtime", "net"]
|
|
|
|
[[example]]
|
|
name = "tx"
|
|
path = "example/tx.rs"
|
|
required-features = ["node"]
|
|
|
|
[[example]]
|
|
name = "zk"
|
|
path = "example/zk.rs"
|
|
required-features = ["crypto"]
|
|
|
|
[[example]]
|
|
name = "dao"
|
|
path = "example/dao/src/dao.rs"
|
|
required-features = ["crypto", "rpc"]
|
|
|
|
[[example]]
|
|
name = "lead"
|
|
path = "example/lead.rs"
|
|
required-features = ["node"]
|
|
|
|
[[example]]
|
|
name = "crypsinous"
|
|
path = "example/crypsinous.rs"
|
|
required-features = ["node"]
|