2021-09-29 22:14:15 +00:00
|
|
|
[package]
|
|
|
|
name = "execution_layer"
|
|
|
|
version = "0.1.0"
|
2023-09-22 04:30:56 +00:00
|
|
|
edition = { workspace = true }
|
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]
|
2023-09-22 04:30:56 +00:00
|
|
|
types = { workspace = true }
|
|
|
|
tokio = { workspace = true }
|
2021-09-29 22:14:15 +00:00
|
|
|
async-trait = "0.1.51"
|
2023-09-22 04:30:56 +00:00
|
|
|
slog = { workspace = true }
|
|
|
|
futures = { workspace = true }
|
|
|
|
sensitive_url = { workspace = true }
|
|
|
|
reqwest = { workspace = true }
|
|
|
|
ethereum_serde_utils = { workspace = true }
|
|
|
|
serde_json = { workspace = true }
|
|
|
|
serde = { workspace = true }
|
|
|
|
warp = { workspace = true }
|
2022-03-08 06:46:24 +00:00
|
|
|
jsonwebtoken = "8"
|
2023-09-22 04:30:56 +00:00
|
|
|
environment = { workspace = true }
|
|
|
|
bytes = { workspace = true }
|
|
|
|
task_executor = { workspace = true }
|
|
|
|
hex = { workspace = true }
|
|
|
|
ethereum_ssz = { workspace = true }
|
|
|
|
ssz_types = { workspace = true }
|
|
|
|
eth2 = { workspace = true }
|
|
|
|
state_processing = { workspace = true }
|
|
|
|
superstruct = { workspace = true }
|
|
|
|
lru = { workspace = true }
|
|
|
|
exit-future = { workspace = true }
|
|
|
|
tree_hash = { workspace = true }
|
|
|
|
tree_hash_derive = { workspace = true }
|
|
|
|
parking_lot = { workspace = true }
|
|
|
|
slot_clock = { workspace = true }
|
|
|
|
tempfile = { workspace = true }
|
|
|
|
rand = { workspace = true }
|
|
|
|
zeroize = { workspace = true }
|
|
|
|
lighthouse_metrics = { workspace = true }
|
|
|
|
lazy_static = { workspace = true }
|
|
|
|
ethers-core = { workspace = true }
|
2022-07-01 01:15:19 +00:00
|
|
|
builder_client = { path = "../builder_client" }
|
2023-09-22 04:30:56 +00:00
|
|
|
fork_choice = { workspace = true }
|
|
|
|
tokio-stream = { workspace = true }
|
|
|
|
strum = { workspace = true }
|
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"
|
2023-09-22 04:30:56 +00:00
|
|
|
pretty_reqwest_error = { workspace = true }
|
Prevent port re-use in HTTP API tests (#4745)
## Issue Addressed
CI is plagued by `AddrAlreadyInUse` failures, which are caused by race conditions in allocating free ports.
This PR removes all usages of the `unused_port` crate for Lighthouse's HTTP API, in favour of passing `:0` as the listen address. As a result, the listen address isn't known ahead of time and must be read from the listening socket after it binds. This requires tying some self-referential knots, which is a little disruptive, but hopefully doesn't clash too much with Deneb :crossed_fingers:
There are still a few usages of `unused_tcp4_port` left in cases where we start external processes, like the `watch` Postgres DB, Anvil, Geth, Nethermind, etc. Removing these usages is non-trivial because it's hard to read the port back from an external process after starting it with `--port 0`. We might be able to do something on Linux where we read from `/proc/`, but I'll leave that for future work.
2023-09-20 01:19:03 +00:00
|
|
|
arc-swap = "1.6.0"
|