Resolves#7091
The `prometheus` crate pulls in `protobuf 2.x` which fails cargo audit. We actually dont use any `protobuf` related features in LH. By disabling default features for `prometheus`, we no longer pull in the `protobuf` crate
Run `cargo update` to address [RUSTSEC-2025-0004](https://rustsec.org/advisories/RUSTSEC-2025-0004), a vulnerability in `openssl`. I don't think we are affected, but this PR is required for us to pass `cargo audit` and unblock CI.
Update cargo dependencies while keeping `rust_eth_kzg` pinned to `0.5.1` due to the regression described in:
- https://github.com/sigp/lighthouse/pull/6608
The changes from that PR were not sufficient to actually pin the dependencies of `rust_eth_kzg`, because the dependencies from the workspace Cargo.toml file were not being used anywhere. To fix this, I've added them as explicit dependencies in `crypto/kzg/Cargo.toml`. With this change, `cargo update` no longer tries to update them.
* pass slots_per_epoch at runtime
* remove generic E from unrequired types
* move `validator_store` to `lighthouse_validator_store`
* make validator_store into a trait
* further reduce dependencies
* remove `environment` dependency on `beacon_node_fallback`
* Manually pull in some changes from tracing-integration (thanks sayan!)
Co-authored-by: ThreeHrSleep <threehrsleep@gmail.com>
* remove `environment` from `validator_services`
* unify boost factor accessors
* add builder for DutiesService
* Manually merge tracing PR for beacon_node_fallback
Co-authored-by: ThreeHrSleep <threehrsleep@gmail.com>
* Fix chain_spec for BlockService
* address review
* remove PhantomData from SyncDutiesMap
* fix tests
* correct test
* Add `E` to `ValidatorStore` as associated type
* fix tests
* derive Clone for ValidatorStore's Error and required sub-errors
* switch to enum for block signing to allow differing types
---------
Co-authored-by: João Oliveira <hello@jxs.pt>
Co-authored-by: ThreeHrSleep <threehrsleep@gmail.com>
Co-authored-by: Jimmy Chen <jimmy@sigmaprime.io>
* Use reqwest eventsource for get_events api
* await for Event::Open before returning stream
* fmt
* Merge branch 'unstable' into sse-client-fix
* Ignore lint
* Add cli flag for HTTP API token path (VC)
* Add http_token_path_flag test
* Add pre-check for directory case & Fix test utils
* Update docs
* Apply review: move http_token_path into validator_http_api config
* Lint
* Make diff lesser to replace PK_FILENAME
* Merge branch 'unstable' into feature/cli-token-path
* Applt review: help_vc.md
Co-authored-by: chonghe <44791194+chong-he@users.noreply.github.com>
* Fix help for cli
* Fix issues on ci
* Merge branch 'unstable' into feature/cli-token-path
* Merge branch 'unstable' into feature/cli-token-path
* Merge branch 'unstable' into feature/cli-token-path
* Merge branch 'unstable' into feature/cli-token-path
* Remove ZeroizeString in favour of Zeroizing<String>
* cargo fmt
* remove unrelated line that slipped in
* Update beacon_node/store/Cargo.toml
thanks michael!
Co-authored-by: Michael Sproul <micsproul@gmail.com>
* Merge branch 'unstable' into remove-zeroizedstring
* Validator manager commands for standard key-manager APIs
* Merge latest unstable
* Fix Some in lib.rs
* Replace Arg::with_name with Arg::new
* Update takes_value
* Remove clap::App
* Change App to Command
* Add command in use
* Remove generic in ArgMatches
* Fix matches.get_flag
* Fixes
* fix error handling
* SetTrue in import
* Fix
* Fix builder-proposal flag (will delete the flag later)
* Minor fix
* Fix prefer_builder_proposals
* Remove unwrap
* Error handling from Michael
* Add cli help text
* Use None in import to simplify
* Delete unwrap
* Revert flags option
* Simplify help command code
* Remove flag header in move
* Merge remote-tracking branch 'origin/unstable' into pahor/validator-manager-standard-keystore
* Add log in VC when keystore is deleted
* Delete duplicated log when validator does not exist
* Simplify log code
* Rename remove to delete
* cargo-fmt
* Try to remove a function
* make-cli
* Error handling
* Merge branch 'vm' of https://github.com/chong-he/lighthouse into vm
* Update CLI hel text
* make-cli
* Fix checks
* Merge branch 'vm' of https://github.com/chong-he/lighthouse into vm
* Try to fix check errors
* Fix test
* Remove changes
* Update flag name
* CLI display order
* Move builde_proposals flag
* Add doc
* mdlint
* Update validator_manager/src/list_validators.rs
Co-authored-by: Mac L <mjladson@pm.me>
* Delete empty line
* Fix list
* Simplify delete
* Add support to delete more validators
* Fix test
* Rename response
* Add (s)
* Add test to delete multiple validators
* Book and cli
* Make cli
* Only log when keystore is deleted
* Revise deletion log
* Add validator pubkey to error message
* Merge import
* Thank you Mac
* Test
* Add flags
* Error handling for password
* make cli
* Merge remote-tracking branch 'origin/unstable' into vm
* make cli
* Fix test
* Merge branch 'vm' of https://github.com/chong-he/lighthouse into vm
* Fix test
* vm test
* Debug trait thank you Michael
* Fix test
* Merge branch 'unstable' into vm
* test
* testing
* Combine import validator(s)
* make cli
* Add requires
* Update book
* mdlint
* Only show import log when import is successful
* delete testing
* Test for standard format
* Test standard format
* Test
* fix builder_proposals flag
* Fix test for standard format
* Add requires
* Fix vm test
* make cli
* Remove flag header
* Merge branch 'vm' of https://github.com/chong-he/lighthouse into vm
* make cli
* Delete space
* Merge branch 'vm' of https://github.com/chong-he/lighthouse into vm
* Merge branch 'unstable' into vm
* Rename delete_validator to delete_validators
* Rearrange
* Remove pub in run function
* Fix grammar
* Apply suggestions from code review
Co-authored-by: Michael Sproul <micsproul@gmail.com>
* Remove description
* Merge branch 'vm' of https://github.com/chong-he/lighthouse into vm
* Close bracket
* make cli
* Revise list code and test
* Revise import flag
* make cli
* Comment out test
* Update vm test
* Simplify
* Merge remote-tracking branch 'origin/unstable' into vm
* make cli
* Add test
* Add password as a requirement for keystore file
* Correct flags in docs
* typo
* Add test for ActiveSamplingRequest
* Fix the column_indexes field from the requested ones to the responded ones
* Fix clippy errors
* Move tests to tests.rs
* Fix unused import
* Fix clippy error
* Merge branch 'unstable' into fork/add-test-for-active-sampling-request
# Conflicts:
# beacon_node/network/Cargo.toml
# beacon_node/network/src/sync/sampling.rs
* Merge branch 'unstable' into fork/add-test-for-active-sampling-request
* Rework Validator Client fallback mechanism
* Add CI workflow for fallback simulator
* Tie-break with sync distance for non-synced nodes
* Fix simulator
* Cleanup unused code
* More improvements
* Add IsOptimistic enum for readability
* Use configurable sync distance tiers
* Fix tests
* Combine status and health and improve logging
* Fix nodes not being marked as available
* Fix simulator
* Fix tests again
* Increase fallback simulator tolerance
* Add http api endpoint
* Fix todos and tests
* Update simulator
* Merge branch 'unstable' into vc-fallback
* Add suggestions
* Add id to ui endpoint
* Remove unnecessary clones
* Formatting
* Merge branch 'unstable' into vc-fallback
* Merge branch 'unstable' into vc-fallback
* Fix flag tests
* Merge branch 'unstable' into vc-fallback
* Merge branch 'unstable' into vc-fallback
* Fix conflicts
* Merge branch 'unstable' into vc-fallback
* Remove unnecessary pubs
* Simplify `compute_distance_tier` and reduce notifier awaits
* Use the more descriptive `user_index` instead of `id`
* Combine sync distance tolerance flags into one
* Merge branch 'unstable' into vc-fallback
* Merge branch 'unstable' into vc-fallback
* wip
* Use new simulator from unstable
* Fix cli text
* Remove leftover files
* Remove old commented code
* Merge branch 'unstable' into vc-fallback
* Update cli text
* Silence candidate errors when pre-genesis
* Merge branch 'unstable' into vc-fallback
* Merge branch 'unstable' into vc-fallback
* Retry on failure
* Merge branch 'unstable' into vc-fallback
* Merge branch 'unstable' into vc-fallback
* Remove disable_run_on_all
* Remove unused error variant
* Fix out of date comment
* Merge branch 'unstable' into vc-fallback
* Remove unnecessary as_u64
* Remove more out of date comments
* Use tokio RwLock and remove parking_lot
* Merge branch 'unstable' into vc-fallback
* Formatting
* Ensure nodes are still added to total when not available
* Allow VC to detect when BN comes online
* Fix ui endpoint
* Don't have block_service as an Option
* Merge branch 'unstable' into vc-fallback
* Clean up lifetimes and futures
* Revert "Don't have block_service as an Option"
This reverts commit b5445a09e9.
* Merge branch 'unstable' into vc-fallback
* Merge branch 'unstable' into vc-fallback
* Improve rwlock sanitation using clones
* Merge branch 'unstable' into vc-fallback
* Drop read lock immediately by cloning the vec.
* persist light client updates
* update beacon chain to serve light client updates
* resolve todos
* cache best update
* extend cache parts
* is better light client update
* resolve merge conflict
* initial api changes
* add lc update db column
* fmt
* added tests
* add sim
* Merge branch 'unstable' of https://github.com/sigp/lighthouse into persist-light-client-updates
* fix some weird issues with the simulator
* tests
* Merge branch 'unstable' of https://github.com/sigp/lighthouse into persist-light-client-updates
* test changes
* merge conflict
* testing
* started work on ef tests and some code clean up
* update tests
* linting
* noop pre altair, were still failing on electra though
* allow for zeroed light client header
* Merge branch 'unstable' of https://github.com/sigp/lighthouse into persist-light-client-updates
* merge unstable
* remove unwraps
* remove unwraps
* fetch bootstrap without always querying for state
* storing bootstrap parts in db
* mroe code cleanup
* test
* prune sync committee branches from dropped chains
* Update light_client_update.rs
* merge unstable
* move functionality to helper methods
* refactor is best update fn
* refactor is best update fn
* improve organization of light client server cache logic
* fork diget calc, and only spawn as many blcoks as we need for the lc update test
* resovle merge conflict
* add electra bootstrap logic, add logic to cache current sync committee
* add latest sync committe branch cache
* fetch lc update from the cache if it exists
* fmt
* Fix beacon_chain tests
* Add debug code to update ranking_order ef test
* Fix compare code
* merge conflicts
* merge conflict
* add better error messaging
* resolve merge conflicts
* remove lc update from basicsim
* rename sync comittte variable and fix persist condition
* refactor get_light_client_update logic
* add better comments, return helpful error messages over http and rpc
* pruning canonical non checkpoint slots
* fix test
* rerun test
* update pruning logic, add tests
* fix tests
* fix imports
* fmt
* refactor db code
* Refactor db method
* Refactor db method
* add additional comments
* Merge branch 'unstable' of https://github.com/sigp/lighthouse into persist-light-client-bootstrap
* fix merge
* linting
* merge conflict
* prevent overflow
* enable lc server for http api tests
* fix tests
* remove prints
* remove warning
* revert change