2021-09-29 22:14:15 +00:00
|
|
|
[package]
|
|
|
|
name = "execution_layer"
|
|
|
|
version = "0.1.0"
|
2022-02-25 00:10:17 +00:00
|
|
|
edition = "2021"
|
2021-09-29 22:14:15 +00:00
|
|
|
|
|
|
|
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
|
|
|
|
|
|
|
[dependencies]
|
|
|
|
types = { path = "../../consensus/types"}
|
|
|
|
tokio = { version = "1.10.0", features = ["full"] }
|
|
|
|
async-trait = "0.1.51"
|
|
|
|
slog = "2.5.2"
|
|
|
|
futures = "0.3.7"
|
|
|
|
sensitive_url = { path = "../../common/sensitive_url" }
|
|
|
|
reqwest = { version = "0.11.0", features = ["json","stream"] }
|
2023-04-28 01:15:40 +00:00
|
|
|
ethereum_serde_utils = "0.5.0"
|
2021-09-29 22:14:15 +00:00
|
|
|
serde_json = "1.0.58"
|
|
|
|
serde = { version = "1.0.116", features = ["derive"] }
|
2022-04-04 00:26:16 +00:00
|
|
|
warp = { version = "0.3.2", features = ["tls"] }
|
2022-03-08 06:46:24 +00:00
|
|
|
jsonwebtoken = "8"
|
2021-09-29 22:14:15 +00:00
|
|
|
environment = { path = "../../lighthouse/environment" }
|
|
|
|
bytes = "1.1.0"
|
|
|
|
task_executor = { path = "../../common/task_executor" }
|
|
|
|
hex = "0.4.2"
|
2023-04-28 01:15:40 +00:00
|
|
|
ethereum_ssz = "0.5.0"
|
2023-06-27 01:06:49 +00:00
|
|
|
ssz_types = "0.5.3"
|
2022-06-29 09:07:09 +00:00
|
|
|
eth2 = { path = "../../common/eth2" }
|
|
|
|
state_processing = { path = "../../consensus/state_processing" }
|
2022-10-26 19:15:26 +00:00
|
|
|
superstruct = "0.6.0"
|
2021-12-22 06:17:14 +00:00
|
|
|
lru = "0.7.1"
|
2021-09-29 22:14:15 +00:00
|
|
|
exit-future = "0.2.0"
|
2023-04-28 01:15:40 +00:00
|
|
|
tree_hash = "0.5.0"
|
|
|
|
tree_hash_derive = "0.5.0"
|
2022-04-04 00:26:16 +00:00
|
|
|
parking_lot = "0.12.0"
|
2021-10-06 10:21:21 +00:00
|
|
|
slot_clock = { path = "../../common/slot_clock" }
|
2022-03-08 06:46:24 +00:00
|
|
|
tempfile = "3.1.0"
|
2022-04-04 00:26:16 +00:00
|
|
|
rand = "0.8.5"
|
2022-03-08 06:46:24 +00:00
|
|
|
zeroize = { version = "1.4.2", features = ["zeroize_derive"] }
|
2022-03-09 00:42:05 +00:00
|
|
|
lighthouse_metrics = { path = "../../common/lighthouse_metrics" }
|
2022-04-01 00:58:59 +00:00
|
|
|
lazy_static = "1.4.0"
|
2023-01-09 03:11:59 +00:00
|
|
|
ethers-core = "1.0.2"
|
2022-07-01 01:15:19 +00:00
|
|
|
builder_client = { path = "../builder_client" }
|
2022-07-21 05:45:37 +00:00
|
|
|
fork_choice = { path = "../../consensus/fork_choice" }
|
2023-02-10 19:30:14 +00:00
|
|
|
mev-rs = { git = "https://github.com/ralexstokes/mev-rs" }
|
|
|
|
ethereum-consensus = { git = "https://github.com/ralexstokes/ethereum-consensus" }
|
|
|
|
ssz-rs = { git = "https://github.com/ralexstokes/ssz-rs" }
|
2022-08-24 23:34:56 +00:00
|
|
|
tokio-stream = { version = "0.1.9", features = [ "sync" ] }
|
2022-08-19 04:27:23 +00:00
|
|
|
strum = "0.24.0"
|
2023-01-09 03:11:59 +00:00
|
|
|
keccak-hash = "0.10.0"
|
|
|
|
hash256-std-hasher = "0.15.2"
|
|
|
|
triehash = "0.8.4"
|
|
|
|
hash-db = "0.15.2"
|
Tidy formatting of `Reqwest` errors (#4336)
## Issue Addressed
NA
## Proposed Changes
Implements the `PrettyReqwestError` to wrap a `reqwest::Error` and give nicer `Debug` formatting. It also wraps the `Url` component in a `SensitiveUrl` to avoid leaking sensitive info in logs.
### Before
```
Reqwest(reqwest::Error { kind: Request, url: Url { scheme: "http", cannot_be_a_base: false, username: "", password: None, host: Some(Domain("localhost")), port: Some(9999), path: "/eth/v1/node/version", query: None, fragment: None }, source: hyper::Error(Connect, ConnectError("tcp connect error", Os { code: 61, kind: ConnectionRefused, message: "Connection refused" })) })
```
### After
```
HttpClient(url: http://localhost:9999/, kind: request, detail: error trying to connect: tcp connect error: Connection refused (os error 61))
```
## Additional Info
I've also renamed the `Reqwest` error enum variants to `HttpClient`, to give people a better chance at knowing what's going on. Reqwest is pretty odd and looks like a typo.
I've implemented it in the `eth2` and `execution_layer` crates. This should affect most logs in the VC and EE-related ones in the BN.
I think the last crate that could benefit from the is the `beacon_node/eth1` crate. I haven't updated it in this PR since its error type is not so amenable to it (everything goes into a `String`). I don't have a whole lot of time to jig around with that at the moment and I feel that this PR as it stands is a significant enough improvement to merge on its own. Leaving it as-is is fine for the time being and we can always come back for it later (or implement in-protocol deposits!).
2023-06-27 01:06:50 +00:00
|
|
|
pretty_reqwest_error = { path = "../../common/pretty_reqwest_error" }
|