1
1
[package ]
2
- name = " hermes"
3
- version = " 0.1.12"
4
- edition = " 2021"
2
+ name = " hermes"
3
+ version = " 0.1.12"
4
+ edition = " 2021"
5
5
6
6
[dependencies ]
7
- anyhow = { version = " 1.0.69" }
8
- axum = { version = " 0.6.20" , features = [" json" , " ws" , " macros" ] }
9
- axum-macros = { version = " 0.3.8" }
10
- base64 = { version = " 0.21.0" }
11
- borsh = { version = " 0.10.3" }
12
- byteorder = { version = " 1.4.3" }
13
- dashmap = { version = " 5.4.0" }
14
- derive_more = { version = " 0.99.17" }
15
- env_logger = { version = " 0.10.0" }
16
- futures = { version = " 0.3.28" }
17
- hex = { version = " 0.4.3" }
18
- humantime = { version = " 2.1.0" }
19
- lazy_static = { version = " 1.4.0" }
20
- libc = { version = " 0.2.140" }
7
+ anyhow = { version = " 1.0.69" }
8
+ axum = { version = " 0.6.20" , features = [" json" , " ws" , " macros" ] }
9
+ axum-macros = { version = " 0.3.8" }
10
+ base64 = { version = " 0.21.0" }
11
+ borsh = { version = " 0.10.3" }
12
+ byteorder = { version = " 1.4.3" }
13
+ dashmap = { version = " 5.4.0" }
14
+ derive_more = { version = " 0.99.17" }
15
+ env_logger = { version = " 0.10.0" }
16
+ futures = { version = " 0.3.28" }
17
+ hex = { version = " 0.4.3" }
18
+ humantime = { version = " 2.1.0" }
19
+ lazy_static = { version = " 1.4.0" }
20
+ libc = { version = " 0.2.140" }
21
+ log = { version = " 0.4.17" }
22
+ mock_instant = { version = " 0.3.1" , features = [" sync" ] }
23
+ prometheus-client = { version = " 0.21.1" }
24
+ pyth-sdk = { version = " 0.8.0" }
25
+ pythnet-sdk = { path = " ../pythnet/pythnet_sdk/" , version = " 2.0.0" , features = [" strum" ] }
26
+ rand = { version = " 0.8.5" }
27
+ reqwest = { version = " 0.11.14" , features = [" blocking" , " json" ] }
28
+ secp256k1 = { version = " 0.27.0" , features = [" rand" , " recovery" , " serde" ] }
29
+ serde = { version = " 1.0.152" , features = [" derive" ] }
30
+ serde_json = { version = " 1.0.93" }
31
+ serde_qs = { version = " 0.12.0" , features = [" axum" ] }
32
+ serde_wormhole = { git = " https://github.com/wormhole-foundation/wormhole" , tag = " v2.17.1" }
33
+ sha3 = { version = " 0.10.4" }
34
+ structopt = { version = " 0.3.26" }
35
+ strum = { version = " 0.24.1" , features = [" derive" ] }
36
+ tokio = { version = " 1.26.0" , features = [" full" ] }
37
+ tower-http = { version = " 0.4.0" , features = [" cors" ] }
38
+ utoipa = { version = " 3.4.0" , features = [" axum_extras" ] }
39
+ utoipa-swagger-ui = { version = " 3.1.4" , features = [" axum" ] }
40
+ wormhole-sdk = { git = " https://github.com/wormhole-foundation/wormhole" , tag = " v2.17.1" }
21
41
22
42
# Setup LibP2P. Unfortunately the dependencies required by libp2p are shared
23
- # with the dependencies required by solana's geyser plugin . This means that we
43
+ # with the dependencies required by many Solana components . This means that we
24
44
# would have to use the same version of libp2p as solana. Luckily we don't need
25
- # to do this yet but it's something to keep in mind.
26
- libp2p = { version = " 0.42.2" , features = [
45
+ # to worry about this until we want to hoist the libp2p portion of Hermes into
46
+ # Rust land.
47
+ libp2p = { version = " 0.42.2" , features = [
27
48
" gossipsub" ,
28
49
" identify" ,
29
50
" mplex" ,
@@ -33,36 +54,14 @@ libp2p = { version = "0.42.2", features = [
33
54
" yamux" ,
34
55
]}
35
56
36
- log = { version = " 0.4.17" }
37
- mock_instant = { version = " 0.3.1" , features = [" sync" ] }
38
- prometheus-client = { version = " 0.21.1" }
39
- pyth-sdk = { version = " 0.8.0" }
40
-
41
- # Parse Wormhole attester price attestations.
42
- pythnet-sdk = { path = " ../pythnet/pythnet_sdk/" , version = " 2.0.0" , features = [" strum" ] }
43
-
44
- rand = { version = " 0.8.5" }
45
- reqwest = { version = " 0.11.14" , features = [" blocking" , " json" ] }
46
- secp256k1 = { version = " 0.27.0" , features = [" rand" , " recovery" , " serde" ] }
47
- serde = { version = " 1.0.152" , features = [" derive" ] }
48
- serde_json = { version = " 1.0.93" }
49
- serde_qs = { version = " 0.12.0" , features = [" axum" ] }
50
- serde_wormhole = { git = " https://github.com/wormhole-foundation/wormhole" , tag = " v2.17.1" }
51
- sha3 = { version = " 0.10.4" }
52
-
53
- # We are bound to this version because of pyth-oracle
57
+ # We are bound to this Solana version in order to match pyth-oracle.
54
58
solana-client = { version = " =1.13.3" }
55
59
solana-sdk = { version = " =1.13.3" }
56
60
solana-account-decoder = { version = " =1.13.3" }
57
61
58
- structopt = { version = " 0.3.26" }
59
- strum = { version = " 0.24.1" , features = [" derive" ] }
60
- tokio = { version = " 1.26.0" , features = [" full" ] }
61
- tower-http = { version = " 0.4.0" , features = [" cors" ] }
62
- utoipa = { version = " 3.4.0" , features = [" axum_extras" ] }
63
- utoipa-swagger-ui = { version = " 3.1.4" , features = [" axum" ] }
64
- wormhole-sdk = { git = " https://github.com/wormhole-foundation/wormhole" , tag = " v2.17.1" }
65
-
62
+ # Wormhole uses patching to resolve some of its own dependencies. We need to
63
+ # make sure that we use the same patch instead of simply pointing the original
64
+ # dependency at git otherwise those relative imports will fail.
66
65
[patch .crates-io ]
67
66
serde_wormhole = { git = " https://github.com/wormhole-foundation/wormhole" , tag = " v2.17.1" }
68
67
0 commit comments