-
Notifications
You must be signed in to change notification settings - Fork 53
Expand file tree
/
Copy pathCargo.toml
More file actions
125 lines (108 loc) · 4.18 KB
/
Cargo.toml
File metadata and controls
125 lines (108 loc) · 4.18 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
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
[package]
name = "dash-sdk"
version = "2.0.1"
edition = "2021"
[dependencies]
arc-swap = { version = "1.7.1" }
backon = { version = "1.2", default-features = false }
chrono = { version = "0.4.38" }
dpp = { path = "../rs-dpp", default-features = false, features = [
"dash-sdk-features",
] }
dapi-grpc = { path = "../dapi-grpc", default-features = false }
rs-dapi-client = { path = "../rs-dapi-client", default-features = false }
drive = { path = "../rs-drive", default-features = false, features = [
"verify",
] }
drive-proof-verifier = { path = "../rs-drive-proof-verifier", default-features = false }
dapi-grpc-macros = { path = "../rs-dapi-grpc-macros" }
http = { version = "1.1" }
rustls-pemfile = { version = "2.0.0" }
thiserror = "2.0.12"
tokio = { version = "1.40", features = ["macros", "time"] }
tokio-util = { version = "0.7.12" }
async-trait = { version = "0.1.83" }
ciborium = { version = "0.2.2" }
serde = { version = "1.0.219", default-features = false, features = [
"rc",
], optional = true }
serde_json = { version = "1.0", features = ["preserve_order"], optional = true }
tracing = { version = "0.1.40" }
hex = { version = "0.4.3" }
dotenvy = { version = "0.15.7", optional = true }
envy = { version = "0.4.2", optional = true }
futures = { version = "0.3.30" }
derive_more = { version = "1.0", features = ["from"] }
# dashcore-rpc is only needed for core rpc; TODO remove once we have correct core rpc impl
dashcore-rpc = { git = "https://github.com/dashpay/rust-dashcore", tag = "v0.39.6" }
lru = { version = "0.12.5", optional = true }
bip37-bloom-filter = { git = "https://github.com/dashpay/rs-bip37-bloom-filter", branch = "develop" }
zeroize = { version = "1.8", features = ["derive"] }
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
tokio = { version = "1.40", features = ["macros", "time", "rt-multi-thread"] }
[dev-dependencies]
rs-dapi-client = { path = "../rs-dapi-client" }
drive-proof-verifier = { path = "../rs-drive-proof-verifier" }
tokio = { version = "1.40", features = ["macros", "rt-multi-thread"] }
base64 = { version = "0.22.1" }
tracing-subscriber = { version = "0.3.18", features = ["env-filter"] }
dpp = { path = "../rs-dpp", default-features = false, features = [
"client",
"validation",
"random-documents",
] }
data-contracts = { path = "../data-contracts" }
tokio-test = { version = "0.4.4" }
clap = { version = "4.5.4", features = ["derive"] }
sanitize-filename = { version = "0.6.0" }
test-case = { version = "3.3.1" }
assert_matches = "1.5.0"
[features]
# TODO: remove mocks from default features
default = ["mocks", "offline-testing", "dapi-grpc/client", "token_reward_explanations"]
mocks = [
"dep:serde",
"dep:serde_json",
"rs-dapi-client/mocks",
"rs-dapi-client/dump",
"dpp/document-cbor-conversion",
"dpp/random-identities",
"dpp/fixtures-and-mocks",
"drive/serde",
"drive-proof-verifier/mocks",
"dep:dotenvy",
"dep:envy",
"dep:lru",
"zeroize/serde",
]
# Run integration tests using test vectors from `tests/vectors/` instead of connecting to live Dash Platform.
#
# This feature is enabled by default to allow testing without connecting to the Dash Platform as
# part of CI/CD workflows.
#
# If both `offline-testing` and `network-testing` are enabled, "offline-testing" will take precedence.
offline-testing = ["mocks"]
# Run integration tests using a live Dash Platform network.
#
# Requires configuration of Dash Platform connectivity.
# See [README.md] for more details.
#
# Without this feature enabled, tests will use test vectors from `tests/vectors/` instead of connecting to live
# Dash Platform.
#
# If both `offline-testing` and `network-testing` are enabled, "offline-testing" will take precedence.
network-testing = ["mocks"]
# Generate test vectors for offline tests.
#
# This will run tests in `network-testing` mode and
# dump all requests and responses to `tests/vectors/`,
# so that they can be used later for `offline-testing`.
generate-test-vectors = ["network-testing"]
# Have the system data contracts inside the dpp crate
system-data-contracts = ["dpp/data-contracts"]
token_reward_explanations = ["dpp/token-reward-explanations"]
[[example]]
name = "read_contract"
required-features = ["mocks"]
[lib]
crate-type = ["cdylib", "rlib"]