Preston Van Loon
2fd6bd8150
Add golang.org/x/tools modernize static analyzer and fix violations ( #15946 )
...
* Ran gopls modernize to fix everything
go run golang.org/x/tools/gopls/internal/analysis/modernize/cmd/modernize@latest -fix -test ./...
* Override rules_go provided dependency for golang.org/x/tools to v0.38.0.
To update this, checked out rules_go, then ran `bazel run //go/tools/releaser -- upgrade-dep -mirror=false org_golang_x_tools` and copied the patches.
* Fix buildtag violations and ignore buildtag violations in external
* Introduce modernize analyzer package.
* Add modernize "any" analyzer.
* Fix violations of any analyzer
* Add modernize "appendclipped" analyzer.
* Fix violations of appendclipped
* Add modernize "bloop" analyzer.
* Add modernize "fmtappendf" analyzer.
* Add modernize "forvar" analyzer.
* Add modernize "mapsloop" analyzer.
* Add modernize "minmax" analyzer.
* Fix violations of minmax analyzer
* Add modernize "omitzero" analyzer.
* Add modernize "rangeint" analyzer.
* Fix violations of rangeint.
* Add modernize "reflecttypefor" analyzer.
* Fix violations of reflecttypefor analyzer.
* Add modernize "slicescontains" analyzer.
* Add modernize "slicessort" analyzer.
* Add modernize "slicesdelete" analyzer. This is disabled by default for now. See https://go.dev/issue/73686 .
* Add modernize "stringscutprefix" analyzer.
* Add modernize "stringsbuilder" analyzer.
* Fix violations of stringsbuilder analyzer.
* Add modernize "stringsseq" analyzer.
* Add modernize "testingcontext" analyzer.
* Add modernize "waitgroup" analyzer.
* Changelog fragment
* gofmt
* gazelle
* Add modernize "newexpr" analyzer.
* Disable newexpr until go1.26
* Add more details in WORKSPACE on how to update the override
* @nalepae feedback on min()
* gofmt
* Fix violations of forvar
2025-11-14 01:27:22 +00:00
Bastin
de0825f880
fulu lc ( #15995 )
...
Co-authored-by: james-prysm <90280386+james-prysm@users.noreply.github.com >
2025-11-06 22:47:35 +00:00
Bastin
92bd211e4d
upgrade v6 to v7 ( #15989 )
...
* upgrade v6 to v7
* changelog
* update-go-ssz
2025-11-06 16:16:23 +00:00
Bastin
360e89767f
Canonical LC ( #15585 )
...
* create lc cache to track branches
* save lc stuff
* remove finalized data from LC cache on finalization
* read lc stuff
* edit tests
* changelog
* linter
* address commments
* address commments 2
* address commments 3
* address commments 4
* lint
* address commments 5 x_x
* set beacon lcStore to mimick registrable services
* clean up the error propagation
* pass the state to saveLCBootstrap since it's not saved in db yet
2025-09-16 12:20:07 +00:00
Bastin
ae4b982a6c
Fix finality update bugs & Move broadcast logic to LC Store ( #15540 )
...
* fix IsBetterFinalityUpdate and add tests
fix finality update bugs
* Update lightclient.go
Co-authored-by: Radosław Kapka <rkapka@wp.pl >
* Update beacon-chain/core/light-client/lightclient.go
---------
Co-authored-by: Radosław Kapka <rkapka@wp.pl >
2025-08-01 12:35:21 +00:00
Bastin
8b53887891
Save LC Bootstraps only on finalized checkpoints ( #15497 )
...
* Unify LC API (updates)
* Remove unused fields in LC beacon API server
* bootstraps only on checkpoints
* Update beacon-chain/blockchain/receive_block.go
Co-authored-by: Radosław Kapka <rkapka@wp.pl >
* move tests
---------
Co-authored-by: Radosław Kapka <rkapka@wp.pl >
2025-07-18 15:53:31 +00:00
Bastin
cd87082f25
Refactor lc tests ( #15155 )
...
* refactor setUpAltair
* remove debug code
* refactor bellatrix setup
* refactor capella setup
* refactor rest - core tests remain
* refactor tests to use new functional options utils
* use the options
* add noFinalizedCheckpoint and finalizedCheckpointInPrevFork options
* add tests
* changelog entry
* refactor tests
* deps
* Update testing/util/lightclient.go
Co-authored-by: Radosław Kapka <rkapka@wp.pl >
* Update testing/util/lightclient.go
Co-authored-by: Radosław Kapka <rkapka@wp.pl >
* Update testing/util/lightclient.go
Co-authored-by: Radosław Kapka <rkapka@wp.pl >
* address comments
* address comments
* address comments
* go mod tidy
* fix annoying conflicts
* go mod tidy
---------
Co-authored-by: Radosław Kapka <rkapka@wp.pl >
2025-04-14 10:57:31 +00:00
terence
774b9a7159
Migrate Prysm repo to Offchain Labs organization ahead of Pectra V6 ( #15140 )
...
* Migrate Prysm repo to Offchain Labs organization ahead of Pectra upgrade v6
* Replace prysmaticlabs with OffchainLabs on general markdowns
* Update mock
* Gazelle and add mock.go to excluded generated mock file
2025-04-10 15:40:39 +00:00
Bastin
fa5d2a88ce
Fix LC test utils problem ( #15133 )
...
* fix problem with MinSyncCommitteeParticipants
* fix usages
* changelog entry
2025-04-04 16:30:55 +00:00
Bastin
09309ab1f2
Refactor LC Test Utils ( #15131 )
...
* refactor test utils
* refactor test utils
* rename parameter
2025-04-04 11:35:21 +00:00
Rupam Dey
44ff0b1a14
add missing Electra tests for light client ( #14783 )
...
* add Electra tests for finality update
* override beacon config
* add Electra tests to
* fix setupTestElectra
* changelog
* cleanup test config
* Update beacon-chain/core/light-client/lightclient_test.go
Co-authored-by: Radosław Kapka <radoslaw.kapka@gmail.com >
* changelog
* move config to top
---------
Co-authored-by: Bastin <bastin.m@proton.me >
Co-authored-by: Bastin <43618253+Inspector-Butters@users.noreply.github.com >
Co-authored-by: Radosław Kapka <radoslaw.kapka@gmail.com >
Co-authored-by: Radosław Kapka <rkapka@wp.pl >
2025-02-05 15:16:53 +00:00
Manu NALEPA
c48d40907c
Add Fulu fork boilerplate ( #14771 )
...
* Prepare for future fork boilerplate.
* Implement the Fulu fork boilerplate.
* `Upgraded state to <fork> log`: Move from debug to info.
Rationale:
This log is the only one notifying the user a new fork happened.
A new fork is always a little bit stressful for a node operator.
Having at least one log indicating the client switched fork is something useful.
* Update testing/util/helpers.go
Co-authored-by: Radosław Kapka <rkapka@wp.pl >
* Fix Radek's comment.
* Fix Radek's comment.
* Update beacon-chain/state/state-native/state_trie.go
Co-authored-by: Radosław Kapka <rkapka@wp.pl >
* Update beacon-chain/state/state-native/state_trie.go
Co-authored-by: Radosław Kapka <rkapka@wp.pl >
* Fix Radek's comment.
* Fix Radek's comment.
* Fix Radek's comment.
* Remove Electra struct type aliasing.
---------
Co-authored-by: Radosław Kapka <rkapka@wp.pl >
2025-01-07 20:09:12 +00:00
Radosław Kapka
8cff9356f1
Remove duplicate imports ( #14772 )
2025-01-03 11:42:14 +00:00
Rupam Dey
30a136f1fb
save light client updates (diff) ( #14683 )
...
* update diff
* deps
* add tests for `SaveLightClientUpdate`
* cleanup imports
* lint
* changelog
* fix incorrect arithmetic
* check for lightclient feature flag
* fix tests
* fix `saveLightClientBootstrap` and `saveLightClientUpdate`
* replace and with or
* move feature check to `postBlockProcess`
---------
Co-authored-by: Radosław Kapka <rkapka@wp.pl >
2024-12-04 21:22:43 +00:00
Rupam Dey
e40d2cbd2c
feat: add Bellatrix tests for light clients ( #14520 )
...
* add tests for Bellatrix
* update `CHANGELOG.md`
* Update CHANGELOG.md
Co-authored-by: Radosław Kapka <radoslaw.kapka@gmail.com >
---------
Co-authored-by: Radosław Kapka <radoslaw.kapka@gmail.com >
2024-10-09 09:02:48 +00:00
Rupam Dey
56f0eb1437
feat: add Electra support to light client functions ( #14506 )
...
* add Electra to switch case in light client functions
* replace `!=` with `<` in `blockToLightClientHeaderXXX`
* add Electra tests
* update `CHANGELOG.md`
* add constant for Electra
* add constant to `minimal.go`
---------
Co-authored-by: Radosław Kapka <rkapka@wp.pl >
2024-10-08 18:13:13 +00:00
Bastin
6af44a1466
Fix lc execution header bug ( #14468 )
...
* create finalized header based on finalized block version
* changelog entry
* pass attested block from handlers
* fix core tests
* add test for attested header exectution fields
* changelog entry
* remove unused functions
* Update beacon-chain/core/light-client/lightclient.go
Co-authored-by: Radosław Kapka <radoslaw.kapka@gmail.com >
* Update beacon-chain/core/light-client/lightclient.go
Co-authored-by: Radosław Kapka <radoslaw.kapka@gmail.com >
* Update beacon-chain/core/light-client/lightclient.go
Co-authored-by: Radosław Kapka <radoslaw.kapka@gmail.com >
* remove finalized header from default update
* remove unused functions
* bazel deps
---------
Co-authored-by: Radosław Kapka <radoslaw.kapka@gmail.com >
2024-10-03 17:29:22 +00:00
Bastin
7786cb5684
create lc finalized header based on finalized block version ( #14457 )
...
* create finalized header based on finalized block version
* changelog entry
* refactor tests
2024-09-30 16:38:51 +00:00
Radosław Kapka
7ac3c01b5b
Refactor light client functions ( #14434 )
...
* Use correct types in light client functions
* conversions
* more refactoring
* test fixes
* changelog
* error fix
* revert test changes
* revert test skip
* Update api/server/structs/conversions_lightclient.go
Co-authored-by: Rupam Dey <117000803+rupam-04@users.noreply.github.com >
* use BlockToLightClientHeader
* reviewer suggestion
* Revert "use BlockToLightClientHeader"
This reverts commit f3df56ded5 .
---------
Co-authored-by: Rupam Dey <117000803+rupam-04@users.noreply.github.com >
2024-09-13 22:08:28 +00:00
Rupam Dey
b5cfd0d35d
feat: implement block_to_light_client_header ( #14433 )
...
* implement `block_to_light_client_header` upto Deneb
* update `CHANGELOG.md`
* refactor: remove unnecessary variables
* move functions to `core/light-client/lightclient.go`
* feat: add tests
* refactors
* add blinded beacon block support to tests
* revert "add blinded beacon block support to tests"
* add tests for blinded beacon block
* lint
* refactor: move common code outside of if-else
* fix dependencies
2024-09-12 17:53:51 +00:00
Rupam Dey
eec3b0b7fe
feat: introduce Capella and Deneb full-node.md lc changes ( #14376 )
...
* feat: introduce Capella and Deneb `full-node.md` lc changes
* add switch-case and replace `[][]byte` with `[][]string`
* return version name in http header
* populate header and use `interfaces.ReadOnlyBeaconBlock`
* fix lint
* merge cases in switch case and replace `interfaces.ExecutionData` with `*ExecutionPayloadHeader`
* minor fixes
* refactor `createLightClientBootstrapCapella` and `createLightClientBootstrapDeneb`
* use lightclientheader instead of different versions
* fix failing `TestLightClientHandler_GetLightClientBootstrap` tests
* fix lint
* refactor handlers
* refactor handlers more
* refactor handlers even more
* create conversions_lightclient
* fix lint errors
* add deneb and capella proto headers
* update lightclientbootstrap proto struct to capella&deneb
* update usecases
* update usecases
* resolve panic in header.GetBeacon
* fix spacings
* refactor core/lightclient.go
* fix isBetterUpdate
* use errors.wrap instead of fmt.errorf
* changelog entry
* fix lint errors
* fix api structs to use json rawMessage
* inline unmarshal
* remove redundant nil check
* revert remove redundant nil check
* return error in newLightClientUpdateToJSON
* inline getExecutionData
* better error handling
---------
Co-authored-by: Radosław Kapka <rkapka@wp.pl >
Co-authored-by: Inspector-Butters <mohamadbastin@gmail.com >
Co-authored-by: Bastin <43618253+Inspector-Butters@users.noreply.github.com >
2024-09-06 17:06:31 +00:00
Bastin
3015eea4e3
Fix lightclient header ( #14389 )
...
* change LCUpdate to use LCHeader
* fix api struct usages
* fix api struct finalized_header
* add lightclientheader to proto structs
* fix proto usages
* fix proto usages in events
* fix uppercase field in protobuf defenition
---------
Co-authored-by: Radosław Kapka <rkapka@wp.pl >
2024-08-29 15:57:21 +00:00
Bastin
022a53f8f2
create light-client-updates bucket ( #14266 )
...
* create light-client-updates bucket
* Electra committe validation for aggregate and proof (#14317 )
* Electra committe validation for aggregate and proof
* review
* update comments
* Refactor get local payload (#14327 )
* Refactor get local payload
* Fix go lint: new line
* add lightclient db kv functions
* lightclient db tests
* move blockchain/lightclient.go to core/light-client package
* add comparison check for start and end period
* create testing/utils/lightcilent.go
* lightclient db tests
* fix imports and usages
* fix imports and usages in process_block_helpers
* fix bazel dependencies
* remove unnecessary nil check
* add more tests for lightclient kv functions
* refactor tests
* refactor kv.LightClientUpdates
* fix db to return every update that is available in the requested range
* run gazzele fix
* return empty map in case of empty db
* fix goimports errors
* goimports
* Revert "Auxiliary commit to revert individual files from aa7ce6f37cb6767cf11642b022b2ce59d42ae621"
This reverts commit 33c707f5bd164386449dc14ff27d95ad5f195161.
---------
Co-authored-by: Radosław Kapka <rkapka@wp.pl >
Co-authored-by: terence <terence@prysmaticlabs.com >
Co-authored-by: rkapka <radoslaw.kapka@gmail.com >
2024-08-22 16:00:18 +00:00