-
Notifications
You must be signed in to change notification settings - Fork 11
Expand file tree
/
Copy pathCargo.toml
More file actions
94 lines (85 loc) · 3.8 KB
/
Cargo.toml
File metadata and controls
94 lines (85 loc) · 3.8 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
[package]
name = "dashcore"
version = { workspace = true }
authors = [
"Samuel Westrich <sam@dash.org>",
"Anton Suprunchuk <anton@dash.org>",
"Dmitrii Golubev <dmitrii.golubev@dash.org>"
]
license = "CC0-1.0"
homepage = "https://github.com/dashevo/rust-dashcore/"
repository = "https://github.com/dashevo/rust-dashcore/"
documentation = "https://dashcore.readme.io/docs"
description = "General purpose library for using and interoperating with Dash Core payment chain."
categories = ["cryptography::cryptocurrencies"]
keywords = [ "crypto", "dash" ]
readme = "../README.md"
exclude = ["tests", "contrib"]
edition = "2024"
# Please don't forget to add relevant features to docs.rs below
[features]
default = [ "std", "secp-recovery", "bincode" ]
base64 = [ "base64-compat" ]
rand-std = ["secp256k1/rand"]
rand = ["secp256k1/rand"]
serde = ["actual-serde", "dashcore_hashes/serde", "secp256k1/serde", "key-wallet/serde"]
secp-lowmemory = ["secp256k1/lowmemory"]
secp-recovery = ["secp256k1/recovery"]
signer = ["secp-recovery", "rand", "base64"]
core-block-hash-use-x11 = ["dashcore_hashes/x11"]
bls = ["blsful"]
eddsa = ["ed25519-dalek"]
quorum_validation = ["bls", "bls-signatures"]
message_verification = ["bls"]
bincode = [ "dep:bincode", "dep:bincode_derive", "dashcore_hashes/bincode" ]
# At least one of std, no-std must be enabled.
#
# The no-std feature doesn't disable std - you need to turn off the std feature for that by disabling default.
# Instead no-std enables additional features required for this crate to be usable without std.
# As a result, both can be enabled without conflict.
std = ["secp256k1/std", "dashcore_hashes/std", "bech32/std", "internals/std", "key-wallet/std"]
no-std = ["core2", "dashcore_hashes/alloc", "dashcore_hashes/core2", "secp256k1/alloc"]
[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]
[dependencies]
internals = { path = "../internals", package = "dashcore-private" }
bech32 = { version = "0.9.1", default-features = false }
dashcore_hashes = { path = "../hashes", default-features = false }
secp256k1 = { default-features = false, features = ["hashes"], version= "0.30.0" }
key-wallet = { path = "../key-wallet", default-features = false, features = ["std"] }
core2 = { version = "0.4.0", optional = true, features = ["alloc"], default-features = false }
rustversion = { version="1.0.20"}
# Do NOT use this as a feature! Use the `serde` feature instead.
actual-serde = { package = "serde", version = "1.0.219", default-features = false, features = [ "derive", "alloc" ], optional = true }
base64-compat = { version = "1.0.0", optional = true }
bitcoinconsensus = { version = "0.20.2-0.5.0", default-features = false, optional = true }
hex_lit = "0.1.1"
anyhow = { version= "1.0" }
hex = { version= "0.4" }
bincode = { version= "=2.0.0-rc.3", optional = true }
bincode_derive = { version= "=2.0.0-rc.3", optional = true }
bitflags = "2.9.0"
blsful = { version = "3.0.0-pre8", optional = true }
ed25519-dalek = { version = "2.1", features = ["rand_core"], optional = true }
blake3 = "1.8.1"
thiserror = "2"
# version 1.3.5 is 0bb5c5b03249c463debb5cef5f7e52ee66f3aaab
bls-signatures = { git = "https://github.com/dashpay/bls-signatures", rev = "0bb5c5b03249c463debb5cef5f7e52ee66f3aaab", optional = true }
[dev-dependencies]
serde_json = "1.0.140"
serde_test = "1.0.177"
serde_derive = "1.0.219"
secp256k1 = { features = [ "recovery", "rand", "hashes" ], version="0.30.0" }
bincode = { version= "=2.0.0-rc.3" }
assert_matches = "1.5.0"
dashcore = { path = ".", features = ["core-block-hash-use-x11", "message_verification", "quorum_validation", "signer"] }
[[example]]
name = "handshake"
required-features = ["std"]
[[example]]
name = "ecdsa-psbt"
required-features = ["std", "bitcoinconsensus"]
[[example]]
name = "taproot-psbt"
required-features = ["std", "rand-std", "bitcoinconsensus"]