Skip to content

Commit 8b5cc2f

Browse files
committed
featuer: move consensus out of node
1 parent b4689cb commit 8b5cc2f

41 files changed

Lines changed: 2152 additions & 911 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

Cargo.toml

Lines changed: 29 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,11 @@ members = [
66
"crates/node",
77
"crates/protocol",
88
"crates/types",
9-
"crates/oracle", "crates/abci", "messenger", "crates/grpc",
9+
"crates/oracle",
10+
"crates/abci",
11+
"messenger",
12+
"crates/grpc",
13+
"crates/consensus",
1014
]
1115
resolver = "2"
1216

@@ -64,6 +68,30 @@ prost-types = "0.13.5"
6468
tempfile = "3.20.0"
6569
uuid = { version = "1.7.0", features = ["v4", "serde"] }
6670
tracing = "0.1"
71+
72+
# Additional common dependencies
73+
derive_more = { version = "2.0.1", features = ["full"] }
74+
tonic-build = "0.13"
75+
metrics = "0.24"
76+
metrics-exporter-prometheus = { version = "0.17", features = ["http-listener"] }
77+
actix-web = "4"
78+
tracing-subscriber = { version = "0.3", features = ["env-filter", "json", "fmt"] }
79+
tracing-appender = "0.2"
80+
aes-gcm = "0.10"
81+
argon2 = "0.5"
82+
rpassword = "7.3"
83+
directories = "6.0.0"
84+
serde_yaml = "0.9.34"
85+
num-traits = "0.2.19"
86+
clap = { version = "4.4", features = ["derive"] }
87+
bs58 = "0.5"
88+
dyn-clone = "1.0.19"
89+
log = "0.4.27"
90+
assert_cmd = "2.0"
91+
predicates = "3.0"
92+
assert_matches = "1.5"
93+
94+
# Local crates
6795
grpc = { path = "crates/grpc" }
6896

6997
[workspace.lints.rust]

bin/cli/Cargo.toml

Lines changed: 24 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,35 +1,36 @@
11
[package]
22
name = "cli"
33
description = "Command-line interface for the Threshold network"
4-
version = "0.1.0"
5-
edition = "2024"
6-
repository = "https://github.com/onthreshold/threshold/"
7-
license = "MIT"
8-
keywords = ["bitcoin", "cryptocurrency", "wallet", "cli"]
9-
categories = ["cryptography", "blockchain"]
4+
version.workspace = true
5+
edition.workspace = true
6+
license.workspace = true
7+
keywords.workspace = true
8+
categories.workspace = true
9+
readme.workspace = true
1010

1111
[dependencies]
12-
tokio = { workspace = true, features = ["full", "macros", "rt-multi-thread"] }
12+
tokio.workspace = true
13+
libp2p.workspace = true
14+
rand.workspace = true
15+
serde.workspace = true
16+
serde_json.workspace = true
17+
clap.workspace = true
18+
bs58.workspace = true
19+
directories.workspace = true
20+
argon2.workspace = true
21+
aes-gcm.workspace = true
22+
base64.workspace = true
23+
rpassword.workspace = true
24+
dotenvy.workspace = true
25+
derive_more.workspace = true
26+
tonic.workspace = true
27+
1328
node = { path = "../../crates/node" }
1429
types = { path = "../../crates/types" }
15-
libp2p = { workspace = true }
16-
rand = { workspace = true }
17-
serde = { workspace = true, features = ["derive"] }
18-
serde_json = { workspace = true }
19-
clap = { version = "4.4", features = ["derive"] }
20-
bs58 = "0.5"
21-
directories = "6.0.0"
22-
argon2 = "0.5"
23-
aes-gcm = "0.10"
24-
base64 = "0.22.1"
25-
rpassword = "7.2"
26-
dotenvy = "0.15.7"
27-
derive_more = { version = "2.0.1", features = ["full"] }
28-
tonic = { workspace = true }
2930

3031
[dev-dependencies]
31-
tempfile = "3.8"
32-
assert_matches = "1.5"
32+
tempfile.workspace = true
33+
assert_matches.workspace = true
3334

3435
[lints]
3536
workspace = true

bin/utxo-spend/Cargo.toml

Lines changed: 16 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,29 @@
11
[package]
22
name = "utxo-spend"
33
description = "Utxo spend service for the Threshold network"
4-
version = "0.1.0"
5-
edition = "2024"
6-
repository = "https://github.com/onthreshold/threshold/"
7-
license = "MIT"
8-
keywords = ["bitcoin", "cryptocurrency", "wallet", "cli"]
9-
categories = ["cryptography", "blockchain"]
4+
version.workspace = true
5+
edition.workspace = true
6+
license.workspace = true
7+
keywords.workspace = true
8+
categories.workspace = true
9+
readme.workspace = true
1010

1111
[dependencies]
12-
bitcoin = { workspace = true }
13-
tokio = { workspace = true, features = ["full"] }
14-
bip39 = { workspace = true }
15-
tonic = { workspace = true }
16-
esplora-client = { version = "0.12.0", features = ["async"] }
17-
hex = { workspace = true }
18-
dotenvy = { workspace = true }
12+
bitcoin.workspace = true
13+
tokio.workspace = true
14+
bip39.workspace = true
15+
tonic.workspace = true
16+
esplora-client.workspace = true
17+
hex.workspace = true
18+
dotenvy.workspace = true
19+
1920
node = { path = "../../crates/node" }
2021
protocol = { path = "../../crates/protocol" }
2122
oracle = { path = "../../crates/oracle" }
2223

2324
[dev-dependencies]
24-
tempfile = "3.8"
25-
assert_matches = "1.5"
25+
tempfile.workspace = true
26+
assert_matches.workspace = true
2627

2728
[lints]
2829
workspace = true

crates/consensus/Cargo.toml

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
[package]
2+
name = "consensus"
3+
version.workspace = true
4+
edition.workspace = true
5+
description.workspace = true
6+
license.workspace = true
7+
keywords.workspace = true
8+
categories.workspace = true
9+
readme.workspace = true
10+
11+
[dependencies]
12+
tokio.workspace = true
13+
serde.workspace = true
14+
futures.workspace = true
15+
serde_json.workspace = true
16+
libp2p.workspace = true
17+
hex.workspace = true
18+
rand.workspace = true
19+
bincode.workspace = true
20+
sha2.workspace = true
21+
async-trait.workspace = true
22+
tracing.workspace = true
23+
uuid.workspace = true
24+
metrics.workspace = true
25+
26+
types = { path = "../types" }
27+
protocol = { path = "../protocol" }
28+
messenger = { path = "../../messenger" }
29+
abci = { path = "../abci" }
30+
31+
[lints]
32+
workspace = true

0 commit comments

Comments
 (0)