mirror of
https://github.com/sigp/lighthouse.git
synced 2026-03-09 19:51:47 +00:00
Remove certain dependencies from `eth2`, and feature-gate others which are only used by certain endpoints. | Removed | Optional | Dev only | | -------- | -------- | -------- | | `either` `enr` `libp2p-identity` `multiaddr` | `protoarray` `eth2_keystore` `eip_3076` `zeroize` `reqwest-eventsource` `futures` `futures-util` | `rand` `test_random_derive` | This is done by adding an `events` feature which enables the events endpoint and its associated dependencies. The `lighthouse` feature also enables its associated dependencies making them optional. The networking-adjacent dependencies were removed by just having certain fields use a `String` instead of an explicit network type. This means the user should handle conversion at the call site instead. This is a bit spicy, but I believe `PeerId`, `Enr` and `Multiaddr` are easily converted to and from `String`s so I think it's fine and reduces our dependency space by a lot. The alternative is to feature gate these types behind a `network` feature instead. Co-Authored-By: Mac L <mjladson@pm.me>
59 lines
1.8 KiB
TOML
59 lines
1.8 KiB
TOML
[package]
|
|
name = "http_api"
|
|
version = "0.1.0"
|
|
authors = ["Paul Hauner <paul@paulhauner.com>"]
|
|
edition = { workspace = true }
|
|
autotests = false # using a single test binary compiles faster
|
|
|
|
[dependencies]
|
|
beacon_chain = { workspace = true }
|
|
beacon_processor = { workspace = true }
|
|
bs58 = "0.4.0"
|
|
bytes = { workspace = true }
|
|
directory = { workspace = true }
|
|
either = { workspace = true }
|
|
eth2 = { workspace = true, features = ["lighthouse"] }
|
|
ethereum_serde_utils = { workspace = true }
|
|
ethereum_ssz = { workspace = true }
|
|
execution_layer = { workspace = true }
|
|
futures = { workspace = true }
|
|
health_metrics = { workspace = true }
|
|
hex = { workspace = true }
|
|
lighthouse_network = { workspace = true }
|
|
lighthouse_tracing = { workspace = true }
|
|
lighthouse_version = { workspace = true }
|
|
logging = { workspace = true }
|
|
lru = { workspace = true }
|
|
metrics = { workspace = true }
|
|
network = { workspace = true }
|
|
network_utils = { workspace = true }
|
|
operation_pool = { workspace = true }
|
|
parking_lot = { workspace = true }
|
|
proto_array = { workspace = true }
|
|
rand = { workspace = true }
|
|
safe_arith = { workspace = true }
|
|
sensitive_url = { workspace = true }
|
|
serde = { workspace = true }
|
|
serde_json = { workspace = true }
|
|
slot_clock = { workspace = true }
|
|
state_processing = { workspace = true }
|
|
store = { workspace = true }
|
|
sysinfo = { workspace = true }
|
|
system_health = { path = "../../common/system_health" }
|
|
task_executor = { workspace = true }
|
|
tokio = { workspace = true }
|
|
tokio-stream = { workspace = true }
|
|
tracing = { workspace = true }
|
|
tree_hash = { workspace = true }
|
|
types = { workspace = true }
|
|
warp = { workspace = true }
|
|
warp_utils = { workspace = true }
|
|
|
|
[dev-dependencies]
|
|
genesis = { workspace = true }
|
|
proto_array = { workspace = true }
|
|
|
|
[[test]]
|
|
name = "bn_http_api_tests"
|
|
path = "tests/main.rs"
|