## Proposed Changes Clippy 1.67.0 put us on blast for the size of some of our errors, most of them written by me ( 👀 ). This PR shrinks the size of `BeaconChainError` by dropping some extraneous info and boxing an inner error which should only occur infrequently anyway. For the `AttestationSlashInfo` and `BlockSlashInfo` I opted to ignore the lint as they are always used in a `Result<A, Info>` where `A` is a similar size. This means they don't bloat the size of the `Result`, so it's a bit annoying for Clippy to report this as an issue. I also chose to ignore `clippy::uninlined-format-args` because I think the benefit-to-churn ratio is too low. E.g. sometimes we have long identifiers in `format!` args and IMO the non-inlined form is easier to read: ```rust // I prefer this... format!( "{} did {} to {}", REALLY_LONG_CONSTANT_NAME, ANOTHER_REALLY_LONG_CONSTANT_NAME, regular_long_identifier_name ); // To this format!("{REALLY_LONG_CONSTANT_NAME} did {ANOTHER_REALLY_LONG_CONSTANT_NAME} to {regular_long_identifier_name}"); ``` I tried generating an automatic diff with `cargo clippy --fix` but it came out at: ``` 250 files changed, 1209 insertions(+), 1469 deletions(-) ``` Which seems like a bad idea when we'd have to back-merge it to `capella` and `eip4844` 😱 |
||
|---|---|---|
| .. | ||
| account_utils | ||
| clap_utils | ||
| compare_fields | ||
| compare_fields_derive | ||
| deposit_contract | ||
| directory | ||
| eth2 | ||
| eth2_config | ||
| eth2_interop_keypairs | ||
| eth2_network_config | ||
| eth2_wallet_manager | ||
| filesystem | ||
| lighthouse_metrics | ||
| lighthouse_version | ||
| lockfile | ||
| logging | ||
| lru_cache | ||
| malloc_utils | ||
| monitoring_api | ||
| oneshot_broadcast | ||
| sensitive_url | ||
| slot_clock | ||
| system_health | ||
| target_check | ||
| task_executor | ||
| test_random_derive | ||
| unused_port | ||
| validator_dir | ||
| warp_utils | ||
| README.md | ||
eth2
Common crates containing eth2-specific logic.