* Migrate ChainStarted and StateInitialized to state notifier
* Provide state notifier to powchain service
* Merge remote-tracking branch 'upstream/master'
* Merge remote-tracking branch 'upstream/master'
* Remove commented line
* Merge branch 'master' into master
* Merge branch 'master' into master
* Merge remote-tracking branch 'upstream/master'
* Merge branch 'master' of github.com:mcdee/prysm
* Accept err from HeadState() as non-fatal
* Merge branch 'master' into master
* Merge branch 'master' into master
* Merge branch 'master' into master
* Begin working on end to end tests using geth dev chain
* Start on beacon node set up
* More progress on bnode setup
* Complete flow until chainstart, begin work on evaluators
* More progress on evaluators
* Start changing bazel run to direct binary
* Move endtoend to inside beacon-chain
* use bazel provided geth, use bazel test
* tempdir
* use fork rules_go
* Change to use UUID dir and bazel binaries
* Truncate UUID a bit
* Get full run from chainstart to evaluating
* Rewrite to react to logs rather than arbitrarily wait
* Fix export
* Move evaluators to evaluators.go
* Add peer check test
* Add more comments
* Remove unneeded exports
* Check all nodes have the correct amount of peers
* Change name to onGenesisEpoch
* Remove extra wait times where not needed
* Cleanup
* Add log for beacon start
* Fix deposit amount
* Make room for eth1follow distnce
* Cleanup and fix minimal test
* Goimports
* Fix imports
* gazelle and minimal
* manual
* Fix for comments
* Make timing rely on reading logs, and cleanup
* Fix for comments
* Fix workspace
* Cleanup
* Fix visibility
* Cleanup and some comments
* Address comments
* Fix for v0.9
* Modify for v0.9
* Move to own package outside of beacon-chain
* Gazelle
* Polishing, logging
* Fix filenames
* Add more logs
* Add flag logging
* Cover for page not having libp2p info
* Improve multiAddr detection
* Add more logs
* Add missing flags
* Add log printing to defer
* Get multiAddr from logs
* Fix logging and detection
* Change evaluators to rely on EpochTimer
* Add evaluator for ValidatorParticipation
* Fix validator participation evaluator
* Cleanup, comments and fix participation calculation
* Cleanup
* Let the file searcher search for longer
* Change participation to check for full
* Log out file contents if text isnt found
* Split into different files
* Disable IPC and use RPC instead, change tmp dir to bazel dir
* Change visibility
* Gazelle
* Add e2e tag
* new line
* Update seed domains (#3872)
* Remove Transfers (#3870)
* Remove active index roots and compact committee roots (#3869)
* Update inclusion reward (#3886)
* Alter proposer selection logic (#3884)
* Fix early committee bias (#3888)
* Remove shards and committees (#3896)
* Epoch spec tests v0.9 (#3907)
* Block spec test v0.9 (#3905)
* rm'ed in protobuf
* build proto
* build proto
* build proto
* fix core package
* Gazelle
* Fixed all the tests
* Fixed static test
* Comment out spec test for now
* One more skip
* fix-roundRobinSync (#3862)
* Starting but need new seed function
* Revert initial sync
* Updated Proposer Slashing
* Fixed all tests
* Lint
* Update inclusion reward
* Fill randao mixes with eth1 data hash
* Test
* Fixing test part1
* All tests passing
* One last test
* Updated config
* Build proto
* Proper skip message
* Conflict and fmt
* Removed crosslinks and shards. Built
* Format and gazelle
* Fixed all the block package tests
* Fixed all the helper tests
* All epoch package tests pass
* All core package tests pass
* Fixed operation tests
* Started fixing rpc test
* RPC tests passed!
* Fixed all init sync tests
* All tests pass
* Fixed blockchain tests
* Lint
* Lint
* Preston's feedback
* Starting
* Remove container
* Fixed block spec tests
* All passing except for block_processing test
* Failing block processing test
* Starting
* Add AggregateAndProof
* All mainnet test passes
* Update deposit contract (#3906)
* Proto spec tests v0.9 (#3908)
* Starting
* Add AggregateAndProof
* Unskip block util tests (#3910)
* rm'ed in protobuf
* build proto
* build proto
* build proto
* fix core package
* Gazelle
* Fixed all the tests
* Fixed static test
* Comment out spec test for now
* One more skip
* fix-roundRobinSync (#3862)
* Starting but need new seed function
* Revert initial sync
* Updated Proposer Slashing
* Fixed all tests
* Lint
* Update inclusion reward
* Fill randao mixes with eth1 data hash
* Test
* Fixing test part1
* All tests passing
* One last test
* Updated config
* Build proto
* Proper skip message
* Conflict and fmt
* Removed crosslinks and shards. Built
* Format and gazelle
* Fixed all the block package tests
* Fixed all the helper tests
* All epoch package tests pass
* All core package tests pass
* Fixed operation tests
* Started fixing rpc test
* RPC tests passed!
* Fixed all init sync tests
* All tests pass
* Fixed blockchain tests
* Lint
* Lint
* Preston's feedback
* Starting
* Remove container
* Fixed block spec tests
* All passing except for block_processing test
* Failing block processing test
* Starting
* Add AggregateAndProof
* All mainnet test passes
* Unskip block util tests
* Slot processing spec test V0.9 (#3912)
* Starting
* Add AggregateAndProof
* Unskip slot processing mainnet test
* Unskip minimal spec test for finalization (#3920)
* Remove outdated interop tests (#3922)
* Rm outdated interop tests
* Rm test runner
* Gazelle
* Update validator to use proposer slot (#3919)
* Fix committee assignment (#3931)
* Replace shard with committee index (#3930)
* Conflict
* Clean up (#3933)
* Remove shard filter in db (#3936)
* Remove lightouse compatibility test (#3939)
* Update Committee Cache for v0.9 (#3948)
* Updated committee cache
* Removed shuffled indices cache
* Started testing run time
* Lint
* Fixed test
* Safeguard against nil head state
* address edge case
* add test
* Fixed TestRoundRobinSync by doubling the epochs
* Unskip TestProtoCompatability (#3958)
* Unskip TestProtoCompatability
* Update WORKSPACE
* Fix minimal config (#3959)
* fix minimal configs
* fix hardcoded value in test
* Simplify verify att time (#3961)
* update readme for deposit contract, regen bindings for vyper 0.1.0b12 (#3963)
* update readme for deposit contract, regen bindings
* medium
* Check nil base state (#3964)
* Copy Block When Receiving it From Sync (#3966)
* copy block
* clone for other service methods too
* Change logging of Bitfield (#3956)
* change logging of bits
* preston's review
* Unskip Beacon Server Test (#3962)
* run test till the end
* fix up proto message types
* fmt
* resolve broken tests
* better error handling
* fixing new logic to use archived proposer info
* fix up logic
* clip using the max effective balance
* broken build fix with num arg mismatch
* amend archive
* archival logic changed
* rename test
* archive both proposer and attester seeds
* page size 100
* further experiments
* further experimentation, archivedProposerIndex seems wrong
* test passes
* rem log
* fix broken test
* fix test
* gaz
* fix imports
* ethapis
* setup request/response types for the committees
* list beacon committees impl
* beacon committees fetch from archive
* full list beacon committees implementation
* list beacon committees added more useful fields
* actually paginate
* attester server split into subpackage
* attester impl split up successfully
* validator cleaned up
* all packages isolated
* include proposer
* proper naming
* test fix
* proper viz
* naming
* resolved timeout due to config values
* init use minimal
* added all subfiles
* subfile split and gazelle
* shards
* validator folder
* cleanup val
* shay feedback
* initial pagination tests passing
* paginated tests pass
* fix bug regarding total count
* pagination tests pass
* adding final test, archive
* archive test works
* regen protos for archival
* resolve broken test
* test pass
* broken archive test
* rem helpers
* gaz
* fix kv test
* useful gRPC error code standards
* format
* resolved bad test
* test resolution
* ux improvements and bug fixes
* complete
* comments
* Update beacon-chain/archiver/service.go
* Update beacon-chain/rpc/beacon/committees.go
* elim bad test
* preston feedback
* use LRU cache on skip slots
* add a metric
* gaz
* more metrics
* temporary log
* added more logging
* fix
* only update, if its higher than the cache
* only update, if its higher than the cache
* increase the cache size, just in case
* split cache related stuff into its own file
* add feature flag
* clean up
* add new test
* make test proper
* godoc
* preston's review
* allow passing no,prompt,force options to clear-db
* ensure the node test runs ok
* remove clear-db option and add force-clear-db; remove no longer needed file
* add clear-db option back; force-clear-db overrides
* add clear-db option back to usage
* revert to only using --clear-db
* info logs beacon node improvements
* prom test fixes
* info logging changes
* wrapped up node info logging
* changed to debug level
* warn logs taken care of
* Terence suggestion
* warn spacing
* better logging in initial sync
* debug level standardized
* complete debug standardization
* participation at epoch end
* fix archive tests
* even more test fixes
* prom test
* ops test
* powtest
* rpc sync test
* rem part
* log formatting
* Allow overwriting of default bootstrap node
* Update shared/cmd/flags.go
Co-Authored-By: Nishant Das <nish1993@hotmail.com>
* Provide warning at more suitable time
* make demo default
* make minimal config a flag
* lint
* initialize config at the start
* gaz
* make main method cleaner
* remove interop.go
* fix test
* lint
* gaz
* Update validator/accounts/interop.go
Co-Authored-By: terence tsao <terence@prysmaticlabs.com>
* fix docker build
* fix docker build
* serve nodes
* remove testing flag
* add back bootnode
* add dht
* add back dht
* gaz
* fix build
* bootnode works in runtime
* fix all references
* all tests pass
* remove feature flag
* separate out ports
* lint
* fix docker build
* use one error package
* archive participation begin implementation
* validator participation compute
* comments
* compute participation common func
* full test for archiving data
* gazelle
* complete tests
* gaz
* remove double negative grammar in comment
* use archive in rpc
* uses the archive!
* error if nothing found in archive
* comment
* use head fetcher and root
* tests pass
* archive active set changes appropriately
* archive committees
* archive info
* done with committee info archiving
* archived set changes stored
* fix build
* test for archive balances and active indices
* further abstractions
* only archive epoch end
* tests all pass
* tests pass now
* archive done
* test for activated validators
* tests for exited
* amend message
* use different proto
* finalization fetcher
* gaz
* use root
* use ctx
* use new ethapis
* use proper hash
* match apis compatibility
* match apis
* properly use participation
* fix tests
* use right commit
* archive flags
* gaz
* create archiver
* register archiver in node
* registering the head updater feed
* add more gazelle
* cancel func
* test for service
* properly utilize the mocks
* lint
* remove extraneous log
* add back write to disk
* gaz
* update workspace
* change to new version
* gaz
* set keys
* try more things
* finally fixed all tests
* fix bootnode
* Update beacon-chain/p2p/discovery.go
Co-Authored-By: Preston Van Loon <preston@prysmaticlabs.com>
* preston's and raul's review
* add http server
* add tool
* add image
* change comment
* add multiaddr comment
* lint
* cosmetic changes
* fix docker
* remove dep
* preston's requested changes
* new flags
* add support for separate tcp port
* fix refs
* change tcp port
* deposit cache refactor begin
* use interface for has chain started
* use deposit fetcher interface instead
* use moar interfaces
* comment
* gaz
* fix breaking build
* lint
* implement chainstart fetcher
* allow start to work
* fix broken tests
* coldstart flags for validator
* WIP beacon node flags
* wip beacon chain, flag fix in validator, arg fix in validator
* checkpoint
* Added interop service
* working on mock chainstart
* save the state lol
* fix tests
* Save genesis validators
* gaz
* fix validator help flags
* WaitForChainStart actually waits for genesis time
* cold start fixes
* cache
* change back
* allow for genesis state too
* remove logs
* increase mmap size
* dont process if head doesn't exist
* add 10ms tolerance
* enable libp2p debug at debug, fix pubsub
* works with checkpt
* initialize justified and finalized in db
* Removed preloadStatePath from blockchain service
* Clean up
* Write to disk for now post state
* revert b466dd536f8eadbdae2264a545a755370223d917
* Builds
* Only RPC test fails now
* use minimal config, no demo config
* clean up branch
* Lint
* resolve lint
* more lint fixes
* lint
* fix viz
* Fixing RPC test
* skip before epoch 2
* RPC time out
* Fixed ordering
* rename
* remove some dbg statements
* ensure index is correct
* fix some panics
* getting closer
* fix tests
* Fix private key
* Fixed RPC test
* Fixed beacon chain build for docker
* Add interop.go to validator go_image
* Fixed docker build
* handle errors
* skip test, skip disconnecting peers
* Fixed docker build
* tolerance for attestation processing
* revert copy
* clearer err message parse
* fix launching from dep contract
* add tool and script for interop testing
* identity
* lint
* merge upstream, fix conflict, update script, add comment
* add comma separated support for --peer=
* remove NUM_VALIDATORS, comma fix
* WIP docker image
* use CI builder
* pr feedback
* whatever antoine says
* ignore git in docker
* jobs=auto
* disable remote cache
* try to cache the golang part
* try to cache the golang part
* nvm
* From Antoine with love
* fix
* add main.go
* interop readme
* proper visibility
* standardize and abstract into simpler funcs
* formatting
* no os pkg
* add test
* no panics anywhere, properly and nicely handle errors
* proper comments
* fix broken test
* readme
* comment
* recommend ssz
* install
* tool now works
* README
* build
* readme
* 64 validators
* rem print
* register the no powchain flag
* work on mock eth1 start
* common interface
* getting closer with the interface defs
* only two uses of powchain
* remove powchain dependency
* remove powchain dependency
* common powchain interface
* proper comment in case of flag
* proper args into rpc services
* rename fields
* pass in mock flag into RPC
* conforms to iface
* use client instead of block fetcher iface
* broken tests
* block fetcher
* finalized
* resolved broken build
* fix build
* comment
* fix tests
* tests pass
* resolved confs
* took them out
* rename into smaller interfaces
* resolve some confs
* ensure tests pass
* properly utilize mock instead of localized mock
* res lint
* lint
* finish test for mock eth1data
* run gazelle
* include flag again
* fix broken build
* disable powchain
* dont dial eth1 nodes
* reenable pow
* use smaller interfaces, standardize naming
* abstract mock into its own package
* faulty mock lint
* fix stutter in lint
* rpc tests all passing
* use mocks for operations
* no more mocks in the entire rpc package
* no mock
* viz
* testonly
* Save new validators in DB
* Use info
* Add total validator count
* Fixed tests
* Add new test
* Revert light client config
* Add state metrics back
* Gaz
* Mark old ones as deprecated
* Deprecate not --next services
* Fixed all operation tests
* Fixed node test
* All tests passing locally
* Add deprecated-p2p back, blocked by boostrap-query
* Revert message proto
* delete deprecated DB items
* delete all other instances of old db
* gaz
* cycle rem
* clear db
* lint
* add requests
* add all new stuff
* comment
* preston's review
* initial commit
* reorder sync so it isn't required to wait until start
* checkpoint
* fix
* improved handler API
* Set up prechain start values
* improved handler API
* ooops
* successful peer handshakes
* successful peer handshakes
* successful peer handshakes
* checkpoint
* chpkt
* handle init after chain start
* emit state initialized feed if existing db state
* merge error
* Done
* Test
* Fixed test
* emit state initialized
* force fork choice update
* wait for genesis time
* sync to current slot
* Use saved head in DB
* gaz
* fix tests
* lint
* lint
* lint
* lint
* Revert "Use saved head in DB"
This reverts commit c5f3404fdf333c8aac20bce8c349b1978494616b.
* remove db
* lint
* remove unused interfaces from composite
* resolve comments
* new chain service usage via interface
* put in the new chain service in propose blk
* deprecate with new service for canonical block roots
* remove old chain serv absolutely in validator server
* full legacy code compatible in beacon server
* fully compliant
* full deprecation at service level
* no more mock chain serv
* fix beacon server tests
* add changes to prop server
* broken build
* --next compatible
* conditional register of chain service
* proper conversion
* nil deref
* add validation
* add block db check in validation
* merge
* in memory caching of seen blocks
* basic block processing
* Update BUILD.bazel
* use new receiveBlockNoPubsub
* fix build
* add TODO issue numbers
* add TODO issue numbers
* lint
* checkpoint
* checkpoint
* varint prefix for ssz
* move the encoding API around a little bit to support reader writer
* add a simple test for the happy path subscribe
* move wait timeout to testutil
* Add inverted topic mapping
* Add varint prefixing to ssz network encoder
* fix spacing
* fix comments
* fix comments
* make anon methods more clear
* clean up log fields
* move topic mapping, reformat TODOs, get ready for brutal team review
* lint
* lint
* lint
* Update beacon-chain/p2p/gossip_topic_mappings.go
Co-Authored-By: Nishant Das <nishdas93@gmail.com>
* PR feedback
* PR feedback
* PR feedback
* PR feedback
* PR feedback
* basic test with a hardcoded fork choice
* updated beacon config to use genesis fork version
* checkpoint on hello handler
* create a testing db method that can be used with the new database interface
* lint
* lint
* PR feedback
* checkpoint
* passing tests
* comments, errors
* comments, errors
* remove swarm
* Add basic sanity test, naive implementation
* add test with real data
* checkpoint
* checkpoint
* varint prefix for ssz
* move the encoding API around a little bit to support reader writer
* add a simple test for the happy path subscribe
* move wait timeout to testutil
* Add inverted topic mapping
* Add varint prefixing to ssz network encoder
* fix spacing
* fix comments
* fix comments
* make anon methods more clear
* clean up log fields
* move topic mapping, reformat TODOs, get ready for brutal team review
* lint
* lint
* lint
* Update beacon-chain/p2p/gossip_topic_mappings.go
Co-Authored-By: Nishant Das <nishdas93@gmail.com>
* PR feedback
* PR feedback
* PR feedback
* PR feedback
* PR feedback
* basic test with a hardcoded fork choice
* updated beacon config to use genesis fork version
* checkpoint on hello handler
* create a testing db method that can be used with the new database interface
* lint
* lint
* PR feedback
* checkpoint
* passing tests
* comments, errors
* comments, errors
* remove swarm
* Update WORKSPACE
* Update WORKSPACE
* merge
* lint
* lint
* touch
* touch
* imports
* Optimize Shuffled Indices Cache (#2728)
* Refactor Deposit Contract Test Setup (#2731)
* add new package
* fix all tests
* lint
* change hash function (#2732)
* Remove Deprecated Validator Protobuf (#2727)
* Remove deprecated validator protos
* Fix to comments
* Fix most of skipped tests (#2735)
* Cache Active Validator Indices, Count, and Balances (#2737)
* Optimize Base Reward Calculation (#2753)
* benchmark process epoch
* revert prof.out
* Add some optimizations
* beware where we use ActiveValidatorIndices...
* revert extra file
* gaz
* quick commit to get feedback
* revert extra file
* started fixing tests
* fixed broken TestProcessCrosslink_NoUpdate
* gaz
* cache randao seed
* fixed all the tests
* fmt and lint
* spacing
* Added todo
* lint
* revert binary file
* started regression test
* basic tests done
* using a fifo for active indices cache
* using a fifo for active count cache
* using a fifo for total balance cache
* using a fifo for active balance cache
* using a fifo for start shard cache
* using a fifo for seed cache
* gaz
* clean up
* fixing tests
* fixed all the core tests
* fixed all the tests!!!
* lint
* comment
* rm'ed commented code
* cache size to 1000 should be good enough
* optimized base reward
* revert binary file
* Added comments to calculate adjusted quotient outside
* removed deprecated configs (#2755)
* Optimize Process Eth1 Data Vote (#2754)
* Cleanup and Docs update (#2756)
* Add graffiti and update generate seed (#2759)
* Benchmark Process Block with Attestations (#2758)
* Tidying up Godoc for Core Package (#2762)
* Clean up Old RPC Endpoints (#2763)
* Update RPC end point for Proposer (#2767)
* add RequestBlock
* run mockgen
* implemented RequestBlock
* updated proto definitions
* updated tests
* updated validator attest tests
* done
* comment
* todo issue
* removed unused proto
* Update attesting indices v0.6 (#2449)
* sort participants slice
* add bitfield functions and tests
* added BitfieldBit test
* add AttestationParticipantsNew
* revert AttestationParticipants to its previous change
* add tests
* remove verifybitfieldnew
* fix tests and remove multiple tests
* remove duplicate test
* change magic number into ceildiv8
* Implement Justification and finalization Processing (#2448)
* Add convert to indexed (#2519)
* sort participants slice
* add bitfield functions and tests
* added BitfieldBit test
* add AttestationParticipantsNew
* revert AttestationParticipants to its previous change
* add tests
* remove verifybitfieldnew
* fix tests and remove multiple tests
* remove duplicate test
* start work
* convert attestation to indexed attestations
* fix test for convert index
* remove calling getter
* add more tests
* remove underscore
* changes name to signature (#2535)
* update registry updates func (#2521)
* update registry updates func
* added tests and moved to epoch processing
* fixed naming issues
* Update Committee Helpers to v0.6.0 (#2398)
* Update Committee Helper Part 2 (#2592)
* Implement Process Slashings for 0.6 (#2523)
* Update Proposer/Attester Slashings and Slashing Helpers (#2603)
* Implement Final Updates 0.6 (#2562)
* ValidatorStatus Estimating Activation RPC Server (#2469)
* fix spacing
* working on position in queue
* fmt
* spacing
* feedback
* tests
* rename
* Only Perform Initial Sync With a Single Peer (#2471)
* fix spacing
* use send instead of broadcast in initial sync
* Fix Estimation of Deposit Inclusion Slot in ValidatorActivationStatus (#2472)
* fix spacing
* fix time estimates
* correct slot estimation
* naming
* Update beacon-chain/rpc/validator_server.go
Co-Authored-By: rauljordan <raul@prysmaticlabs.com>
* SSZ web api for decoding input data (#2473)
* first pass ssz server for decoding deposit input data
* fix decoding
* revert viz change on helper
* add image target
* use /api prefix, add deployment for cluster
* fix lint
* standardize slot numbers (#2475)
* Add CORS for ssz api (#2476)
* first pass ssz server for decoding deposit input data
* fix decoding
* revert viz change on helper
* add image target
* use /api prefix, add deployment for cluster
* fix lint
* needed CORS
* Allow Client to Retrieve Multiple Validator Statuses (#2474)
* multiple validator statuses
* gazelle
* context
* fixing bugs
* remove old way of checking
* fix logging
* make activation queue more accurate
* fix rpc test
* add test
* fix remaining tests
* lint
* comment
* review comments
* Update Prysm README (#2477)
* README updated
* readme updates
* no err throw (#2479)
* Fix Status Nil Pointer Error (#2480)
* no err throw
* nil errors
* 3.175 (#2482)
* Better Error Message if Failing to Exit Initial Sync (#2483)
* no err throw
* nil errors
* better error on init sync
* Only Log Active Balances (#2485)
* only log active balance
* dont need ()
* change logging (#2487)
* fix chainstart waiting on rpc server (#2488)
* shift ticker to after activation (#2489)
* Add drain script (#2418)
* Add drain script
* Fix script to drain contracts from newest to oldest
* Add README
* remove comments
* Only after block 400k, look up by deposit event
* issue warn log on disconnecting peer instead of error (#2491)
* Display Only Active Validator Data (#2490)
* Fix Validator Status Field in RPC Server (#2492)
* fix status of key
* status test fix
* fmt
* Estimate the Time Till Follow Distance Is Completed (#2486)
* use estimation instead
* fix test
* fixing another test
* fix tests and preston's comments
* remove unused var
* fix condition
* Revert "fix condition"
This reverts commit dee0e3112c01f68f30a2e50cd4eb35f29f672e1d.
* dont return error
* add production config for testnet release (#2493)
* Lookup Validator Index in State in Status Check (#2494)
* state lookup
* refactor duplicate code
* refactor with mapping
* fix broken tests
* finish refactor
* merged master
* updated EpochCommitteeCount and fixed tests
* implemented ShardDelta
* test for ShardDelta
* implemented EpochStartShard
* added epoch out of bound test
* test for accurate start shard
* lint
* implemented process_final_updates
* move to the top of the file
* add comment back
* gaz
* Test for process final updates
* fixed tests
* fixed all the tests
* Update Reward Helper v0.6 (#2470)
* added BaseReward
* added rewards helper
* added test for BaseReward
* extra space
* move exported function above
* update to new spec (#2614)
* Update Block Processing Voluntary Exits (#2609)
* Update processEth1Data for v0.6 (#2516)
* Clean up Helper Functions Part 1 (#2612)
* Finalize helper functions for 0.6 (#2632)
* Process Beacon Chain Transfers v0.6 (#2642)
* add transfers
* beacon transfer operations complete
* full cov
* transfer testing
* finished tests
* Update beacon-chain/core/blocks/block_operations_test.go
Co-Authored-By: terence tsao <terence@prysmaticlabs.com>
* Update beacon-chain/core/blocks/block_operations.go
Co-Authored-By: terence tsao <terence@prysmaticlabs.com>
* Implement Process Crosslink From 0.6 (#2460)
* Process Block Eth1 Data v0.6 (#2645)
* Get attestation data slot v0.6 (#2593)
* attestation.go is ready, tests not
* ready for review
* fixing linter issues
* modified Crosslink and AttestationData proto fields to spec 2.0,marked deprecated fields
* gazelle
* fixed tests
* fixed error
* error msg
* Process Block Deposits v0.6 (#2647)
* imports fixes
* deposits tests pass
* wrapped up gazelle
* spacing
* Implement Crosslink Delta Rewards for 0.6 (#2517)
* update process crosslink and update existing tests
* added a test case to cover no crosslink changes
* more test
* preston's feedback
* spellings
* ValidatorStatus Estimating Activation RPC Server (#2469)
* fix spacing
* working on position in queue
* fmt
* spacing
* feedback
* tests
* rename
* Only Perform Initial Sync With a Single Peer (#2471)
* fix spacing
* use send instead of broadcast in initial sync
* Fix Estimation of Deposit Inclusion Slot in ValidatorActivationStatus (#2472)
* fix spacing
* fix time estimates
* correct slot estimation
* naming
* Update beacon-chain/rpc/validator_server.go
Co-Authored-By: rauljordan <raul@prysmaticlabs.com>
* SSZ web api for decoding input data (#2473)
* first pass ssz server for decoding deposit input data
* fix decoding
* revert viz change on helper
* add image target
* use /api prefix, add deployment for cluster
* fix lint
* standardize slot numbers (#2475)
* Add CORS for ssz api (#2476)
* first pass ssz server for decoding deposit input data
* fix decoding
* revert viz change on helper
* add image target
* use /api prefix, add deployment for cluster
* fix lint
* needed CORS
* Allow Client to Retrieve Multiple Validator Statuses (#2474)
* multiple validator statuses
* gazelle
* context
* fixing bugs
* remove old way of checking
* fix logging
* make activation queue more accurate
* fix rpc test
* add test
* fix remaining tests
* lint
* comment
* review comments
* Update Prysm README (#2477)
* README updated
* readme updates
* no err throw (#2479)
* Fix Status Nil Pointer Error (#2480)
* no err throw
* nil errors
* 3.175 (#2482)
* Better Error Message if Failing to Exit Initial Sync (#2483)
* no err throw
* nil errors
* better error on init sync
* Only Log Active Balances (#2485)
* only log active balance
* dont need ()
* change logging (#2487)
* fix chainstart waiting on rpc server (#2488)
* shift ticker to after activation (#2489)
* Add drain script (#2418)
* Add drain script
* Fix script to drain contracts from newest to oldest
* Add README
* remove comments
* Only after block 400k, look up by deposit event
* issue warn log on disconnecting peer instead of error (#2491)
* Display Only Active Validator Data (#2490)
* Fix Validator Status Field in RPC Server (#2492)
* fix status of key
* status test fix
* fmt
* Estimate the Time Till Follow Distance Is Completed (#2486)
* use estimation instead
* fix test
* fixing another test
* fix tests and preston's comments
* remove unused var
* fix condition
* Revert "fix condition"
This reverts commit dee0e3112c01f68f30a2e50cd4eb35f29f672e1d.
* dont return error
* add production config for testnet release (#2493)
* Lookup Validator Index in State in Status Check (#2494)
* state lookup
* refactor duplicate code
* refactor with mapping
* fix broken tests
* finish refactor
* merged master
* Starting, I need get_epoch_start_shard
* updated EpochCommitteeCount and fixed tests
* implemented ShardDelta
* test for ShardDelta
* implemented EpochStartShard
* added epoch out of bound test
* test for accurate start shard
* lint
* need to use changes from latest crosslinks
* added BaseReward and totalActiveBalance
* added test for base reward
* merged master
* all tests passing
* start testing
* done
* add ProcessBlockHeader v0.6 (#2534)
* add ProcessBlockHeader
* function has all its dependancies in place
* arange the basic ok test
* gazzele and skip test update
* skip wrong sig test
* fmt imports and change requests
* goimports fmt
* map for struct fields to be location independent
* reorder protobuf fields
* added tests
* gazzle fix
* few change requests fixes
* revert changes in types.proto
* revert changes in types
* fix tests
* fix lint
* fmt imports
* fix gazelle
* fix var naming
* pb update
* var naming
* tarance change request fixes
* fix test
* Add Process Registry for Epoch Processing (#2668)
* update update-process-registry
* added back the old tests
* fmt
* gaz
* Follow up on process block header v0.6 (#2666)
* Putting Crosslink Delta Back (#2654)
* update process crosslink and update existing tests
* added a test case to cover no crosslink changes
* more test
* preston's feedback
* spellings
* ValidatorStatus Estimating Activation RPC Server (#2469)
* fix spacing
* working on position in queue
* fmt
* spacing
* feedback
* tests
* rename
* Only Perform Initial Sync With a Single Peer (#2471)
* fix spacing
* use send instead of broadcast in initial sync
* Fix Estimation of Deposit Inclusion Slot in ValidatorActivationStatus (#2472)
* fix spacing
* fix time estimates
* correct slot estimation
* naming
* Update beacon-chain/rpc/validator_server.go
Co-Authored-By: rauljordan <raul@prysmaticlabs.com>
* SSZ web api for decoding input data (#2473)
* first pass ssz server for decoding deposit input data
* fix decoding
* revert viz change on helper
* add image target
* use /api prefix, add deployment for cluster
* fix lint
* standardize slot numbers (#2475)
* Add CORS for ssz api (#2476)
* first pass ssz server for decoding deposit input data
* fix decoding
* revert viz change on helper
* add image target
* use /api prefix, add deployment for cluster
* fix lint
* needed CORS
* Allow Client to Retrieve Multiple Validator Statuses (#2474)
* multiple validator statuses
* gazelle
* context
* fixing bugs
* remove old way of checking
* fix logging
* make activation queue more accurate
* fix rpc test
* add test
* fix remaining tests
* lint
* comment
* review comments
* Update Prysm README (#2477)
* README updated
* readme updates
* no err throw (#2479)
* Fix Status Nil Pointer Error (#2480)
* no err throw
* nil errors
* 3.175 (#2482)
* Better Error Message if Failing to Exit Initial Sync (#2483)
* no err throw
* nil errors
* better error on init sync
* Only Log Active Balances (#2485)
* only log active balance
* dont need ()
* change logging (#2487)
* fix chainstart waiting on rpc server (#2488)
* shift ticker to after activation (#2489)
* Add drain script (#2418)
* Add drain script
* Fix script to drain contracts from newest to oldest
* Add README
* remove comments
* Only after block 400k, look up by deposit event
* issue warn log on disconnecting peer instead of error (#2491)
* Display Only Active Validator Data (#2490)
* Fix Validator Status Field in RPC Server (#2492)
* fix status of key
* status test fix
* fmt
* Estimate the Time Till Follow Distance Is Completed (#2486)
* use estimation instead
* fix test
* fixing another test
* fix tests and preston's comments
* remove unused var
* fix condition
* Revert "fix condition"
This reverts commit dee0e3112c01f68f30a2e50cd4eb35f29f672e1d.
* dont return error
* add production config for testnet release (#2493)
* Lookup Validator Index in State in Status Check (#2494)
* state lookup
* refactor duplicate code
* refactor with mapping
* fix broken tests
* finish refactor
* merged master
* Starting, I need get_epoch_start_shard
* updated EpochCommitteeCount and fixed tests
* implemented ShardDelta
* test for ShardDelta
* implemented EpochStartShard
* added epoch out of bound test
* test for accurate start shard
* lint
* need to use changes from latest crosslinks
* added BaseReward and totalActiveBalance
* added test for base reward
* merged master
* all tests passing
* start testing
* done
* fixed tests
* addressed shay's feedback
* Implement Attestation Delta for v0.6 (#2646)
* update process crosslink and update existing tests
* added a test case to cover no crosslink changes
* more test
* preston's feedback
* spellings
* ValidatorStatus Estimating Activation RPC Server (#2469)
* fix spacing
* working on position in queue
* fmt
* spacing
* feedback
* tests
* rename
* Only Perform Initial Sync With a Single Peer (#2471)
* fix spacing
* use send instead of broadcast in initial sync
* Fix Estimation of Deposit Inclusion Slot in ValidatorActivationStatus (#2472)
* fix spacing
* fix time estimates
* correct slot estimation
* naming
* Update beacon-chain/rpc/validator_server.go
Co-Authored-By: rauljordan <raul@prysmaticlabs.com>
* SSZ web api for decoding input data (#2473)
* first pass ssz server for decoding deposit input data
* fix decoding
* revert viz change on helper
* add image target
* use /api prefix, add deployment for cluster
* fix lint
* standardize slot numbers (#2475)
* Add CORS for ssz api (#2476)
* first pass ssz server for decoding deposit input data
* fix decoding
* revert viz change on helper
* add image target
* use /api prefix, add deployment for cluster
* fix lint
* needed CORS
* Allow Client to Retrieve Multiple Validator Statuses (#2474)
* multiple validator statuses
* gazelle
* context
* fixing bugs
* remove old way of checking
* fix logging
* make activation queue more accurate
* fix rpc test
* add test
* fix remaining tests
* lint
* comment
* review comments
* Update Prysm README (#2477)
* README updated
* readme updates
* no err throw (#2479)
* Fix Status Nil Pointer Error (#2480)
* no err throw
* nil errors
* 3.175 (#2482)
* Better Error Message if Failing to Exit Initial Sync (#2483)
* no err throw
* nil errors
* better error on init sync
* Only Log Active Balances (#2485)
* only log active balance
* dont need ()
* change logging (#2487)
* fix chainstart waiting on rpc server (#2488)
* shift ticker to after activation (#2489)
* Add drain script (#2418)
* Add drain script
* Fix script to drain contracts from newest to oldest
* Add README
* remove comments
* Only after block 400k, look up by deposit event
* issue warn log on disconnecting peer instead of error (#2491)
* Display Only Active Validator Data (#2490)
* Fix Validator Status Field in RPC Server (#2492)
* fix status of key
* status test fix
* fmt
* Estimate the Time Till Follow Distance Is Completed (#2486)
* use estimation instead
* fix test
* fixing another test
* fix tests and preston's comments
* remove unused var
* fix condition
* Revert "fix condition"
This reverts commit dee0e3112c01f68f30a2e50cd4eb35f29f672e1d.
* dont return error
* add production config for testnet release (#2493)
* Lookup Validator Index in State in Status Check (#2494)
* state lookup
* refactor duplicate code
* refactor with mapping
* fix broken tests
* finish refactor
* merged master
* Starting, I need get_epoch_start_shard
* updated EpochCommitteeCount and fixed tests
* implemented ShardDelta
* test for ShardDelta
* implemented EpochStartShard
* added epoch out of bound test
* test for accurate start shard
* lint
* need to use changes from latest crosslinks
* added BaseReward and totalActiveBalance
* added test for base reward
* implemented process_attestation_delta
* comments
* comments
* merged master
* all tests passing
* start testing
* done
* merged master
* fixed tests
* tests, more to come
* tests done
* lint
* spaces over tabs
* addressed shay's feedback
* merged master
* Implement process_rewards_and_penalties for 0.6 (#2665)
* update process crosslink and update existing tests
* added a test case to cover no crosslink changes
* more test
* preston's feedback
* spellings
* ValidatorStatus Estimating Activation RPC Server (#2469)
* fix spacing
* working on position in queue
* fmt
* spacing
* feedback
* tests
* rename
* Only Perform Initial Sync With a Single Peer (#2471)
* fix spacing
* use send instead of broadcast in initial sync
* Fix Estimation of Deposit Inclusion Slot in ValidatorActivationStatus (#2472)
* fix spacing
* fix time estimates
* correct slot estimation
* naming
* Update beacon-chain/rpc/validator_server.go
Co-Authored-By: rauljordan <raul@prysmaticlabs.com>
* SSZ web api for decoding input data (#2473)
* first pass ssz server for decoding deposit input data
* fix decoding
* revert viz change on helper
* add image target
* use /api prefix, add deployment for cluster
* fix lint
* standardize slot numbers (#2475)
* Add CORS for ssz api (#2476)
* first pass ssz server for decoding deposit input data
* fix decoding
* revert viz change on helper
* add image target
* use /api prefix, add deployment for cluster
* fix lint
* needed CORS
* Allow Client to Retrieve Multiple Validator Statuses (#2474)
* multiple validator statuses
* gazelle
* context
* fixing bugs
* remove old way of checking
* fix logging
* make activation queue more accurate
* fix rpc test
* add test
* fix remaining tests
* lint
* comment
* review comments
* Update Prysm README (#2477)
* README updated
* readme updates
* no err throw (#2479)
* Fix Status Nil Pointer Error (#2480)
* no err throw
* nil errors
* 3.175 (#2482)
* Better Error Message if Failing to Exit Initial Sync (#2483)
* no err throw
* nil errors
* better error on init sync
* Only Log Active Balances (#2485)
* only log active balance
* dont need ()
* change logging (#2487)
* fix chainstart waiting on rpc server (#2488)
* shift ticker to after activation (#2489)
* Add drain script (#2418)
* Add drain script
* Fix script to drain contracts from newest to oldest
* Add README
* remove comments
* Only after block 400k, look up by deposit event
* issue warn log on disconnecting peer instead of error (#2491)
* Display Only Active Validator Data (#2490)
* Fix Validator Status Field in RPC Server (#2492)
* fix status of key
* status test fix
* fmt
* Estimate the Time Till Follow Distance Is Completed (#2486)
* use estimation instead
* fix test
* fixing another test
* fix tests and preston's comments
* remove unused var
* fix condition
* Revert "fix condition"
This reverts commit dee0e3112c01f68f30a2e50cd4eb35f29f672e1d.
* dont return error
* add production config for testnet release (#2493)
* Lookup Validator Index in State in Status Check (#2494)
* state lookup
* refactor duplicate code
* refactor with mapping
* fix broken tests
* finish refactor
* merged master
* Starting, I need get_epoch_start_shard
* updated EpochCommitteeCount and fixed tests
* implemented ShardDelta
* test for ShardDelta
* implemented EpochStartShard
* added epoch out of bound test
* test for accurate start shard
* lint
* need to use changes from latest crosslinks
* added BaseReward and totalActiveBalance
* added test for base reward
* implemented process_attestation_delta
* comments
* comments
* merged master
* all tests passing
* start testing
* done
* merged master
* fixed tests
* tests, more to come
* tests done
* lint
* spaces over tabs
* addressed shay's feedback
* starting but need to merge a few things...
* tests
* fmt
* Update Slot Processing and State Transition v0.6 (#2664)
* edit state transition to add slot processing logic, reorder logic
* fix build
* lint
* tests passing
* spacing
* tests pass
* imports
* passing tests
* Implement Process Epoch for 0.6 (#2675)
* can't find process j f functons
* implemented process_epoch
* tests done
* lint
* nishant's feedback
* stupid goland replace
* goimports
* Update CommitteeAssignment (#2693)
* cleaned up skipped tests for core processing (#2697)
* Process Block Attestations v0.6 (#2650)
* attestation.go is ready, tests not
* ready for review
* fixing linter issues
* modified Crosslink and AttestationData proto fields to spec 2.0,marked deprecated fields
* gazelle
* fixed tests
* fixed error
* add att processing:
* process atts
* error msg
* finish process attestations logic
* spacing
* ssz move
* inclusion delay failure passing
* more attestation tests
* more att tests passing
* more tests
* ffg data mismatching test
* ffg tests complete
* gofmt
* fix testing to match attestation updates
* ssz
* lint
* Fixed Skipped Tests for RPC Server (#2712)
* Remove Obsolete Deposit Proto Objects (#2673)
* remove deposit data
* remove deposit input
* fix references
* remove deposit helpers
* fix all refs
* gaz
* rgene proto
* fix all tests
* remove deposit data deprecated field
* fix remaining references
* fix all tests
* fix lint
* regen proto
* fix test
* Remove Deprecated Protobuf State Fields (#2713)
* Remove Deprecated Protobuf Crosslink/Slashing/Block Fields (#2714)
* Remove Deprecated Beacon Block Proto Fields (#2717)
* Remove Deprecated Attestation Proto Fields (#2723)
* Cache Shuffled Validator Indices (#2682)
* YAML shuffle tests for v0.6 (#2667)
* new shuffle tests
* added comment for exported function
* fix format and print
* added config files handling
* gazelle fix
* shuffle test debugging
* added shuffle list and benchmark
* hash function addition from nishant code
* gazelle fix
* remove unused function
* few minor changes
* add test to test protos optimization
* test a bigger list
* remove commented code
* small changes
* fix spec test and test indices to pass
* remove empty line
* abstraction of repeated code and comment arrangement
* terence change requests
* fix new test
* add small comment for better readability
* change from unshuflle to shuffle
* comment
* better comment
* fix all tests
* Remove Latest Block (#2721)
* lint
* remove latest block
* lint
* add proto
* fix build
* Fix Deposit Trie (#2686)
* remove deposit data
* remove deposit input
* fix references
* remove deposit helpers
* fix all refs
* gaz
* rgene proto
* fix all tests
* remove deposit data deprecated field
* fix remaining references
* fix all tests
* fix lint
* new tests with contract
* gaz
* more tests
* fixed bugs
* new test
* finally fixed it
* gaz
* fix test
* Remove Committee Cache (#2729)
* Benchmark Compute Committee (#2698)
* Fixed Skipped Attestation Tests (#2730)
* Optimize Shuffled Indices Cache (#2728)
* Refactor Deposit Contract Test Setup (#2731)
* add new package
* fix all tests
* lint
* change hash function (#2732)
* Remove Deprecated Validator Protobuf (#2727)
* Remove deprecated validator protos
* Fix to comments
* Fix most of skipped tests (#2735)
* Optimize Base Reward Calculation (#2753)
* benchmark process epoch
* revert prof.out
* Add some optimizations
* beware where we use ActiveValidatorIndices...
* revert extra file
* gaz
* quick commit to get feedback
* revert extra file
* started fixing tests
* fixed broken TestProcessCrosslink_NoUpdate
* gaz
* cache randao seed
* fixed all the tests
* fmt and lint
* spacing
* Added todo
* lint
* revert binary file
* started regression test
* basic tests done
* using a fifo for active indices cache
* using a fifo for active count cache
* using a fifo for total balance cache
* using a fifo for active balance cache
* using a fifo for start shard cache
* using a fifo for seed cache
* gaz
* clean up
* fixing tests
* fixed all the core tests
* fixed all the tests!!!
* lint
* comment
* rm'ed commented code
* cache size to 1000 should be good enough
* optimized base reward
* revert binary file
* Added comments to calculate adjusted quotient outside
* removed deprecated configs (#2755)
* Optimize Process Eth1 Data Vote (#2754)
* Cleanup and Docs update (#2756)
* Add graffiti and update generate seed (#2759)
* Benchmark Process Block with Attestations (#2758)
* Tidying up Godoc for Core Package (#2762)
* Clean up Old RPC Endpoints (#2763)
* Update RPC end point for Proposer (#2767)
* add RequestBlock
* run mockgen
* implemented RequestBlock
* updated proto definitions
* updated tests
* updated validator attest tests
* done
* comment
* todo issue
* removed unused proto
* Cache Active Validator Indices, Count, and Balances (#2737)
* Update Deposit Contract (#2648)
* lint
* add new contract
* change version
* remove log
* generating abi and binary files
* fix tests
* update to current version
* new changes
* add new hash function
* save hashed nodes
* add more things
* new method
* add update to trie
* new stuff
* gaz
* more stuff
* finally fixed build
* remove deposit data
* Revert "remove deposit data"
This reverts commit 9085409e91be0c94550af10290eaad72ad40a6de.
* more changes
* lint and gaz
* lint
* Update Shard Helpers for 0.6 (#2497)
* ValidatorStatus Estimating Activation RPC Server (#2469)
* fix spacing
* working on position in queue
* fmt
* spacing
* feedback
* tests
* rename
* Only Perform Initial Sync With a Single Peer (#2471)
* fix spacing
* use send instead of broadcast in initial sync
* Fix Estimation of Deposit Inclusion Slot in ValidatorActivationStatus (#2472)
* fix spacing
* fix time estimates
* correct slot estimation
* naming
* Update beacon-chain/rpc/validator_server.go
Co-Authored-By: rauljordan <raul@prysmaticlabs.com>
* SSZ web api for decoding input data (#2473)
* first pass ssz server for decoding deposit input data
* fix decoding
* revert viz change on helper
* add image target
* use /api prefix, add deployment for cluster
* fix lint
* standardize slot numbers (#2475)
* Add CORS for ssz api (#2476)
* first pass ssz server for decoding deposit input data
* fix decoding
* revert viz change on helper
* add image target
* use /api prefix, add deployment for cluster
* fix lint
* needed CORS
* Allow Client to Retrieve Multiple Validator Statuses (#2474)
* multiple validator statuses
* gazelle
* context
* fixing bugs
* remove old way of checking
* fix logging
* make activation queue more accurate
* fix rpc test
* add test
* fix remaining tests
* lint
* comment
* review comments
* Update Prysm README (#2477)
* README updated
* readme updates
* no err throw (#2479)
* Fix Status Nil Pointer Error (#2480)
* no err throw
* nil errors
* 3.175 (#2482)
* Better Error Message if Failing to Exit Initial Sync (#2483)
* no err throw
* nil errors
* better error on init sync
* Only Log Active Balances (#2485)
* only log active balance
* dont need ()
* change logging (#2487)
* fix chainstart waiting on rpc server (#2488)
* shift ticker to after activation (#2489)
* Add drain script (#2418)
* Add drain script
* Fix script to drain contracts from newest to oldest
* Add README
* remove comments
* Only after block 400k, look up by deposit event
* issue warn log on disconnecting peer instead of error (#2491)
* Display Only Active Validator Data (#2490)
* Fix Validator Status Field in RPC Server (#2492)
* fix status of key
* status test fix
* fmt
* Estimate the Time Till Follow Distance Is Completed (#2486)
* use estimation instead
* fix test
* fixing another test
* fix tests and preston's comments
* remove unused var
* fix condition
* Revert "fix condition"
This reverts commit dee0e3112c01f68f30a2e50cd4eb35f29f672e1d.
* dont return error
* add production config for testnet release (#2493)
* Lookup Validator Index in State in Status Check (#2494)
* state lookup
* refactor duplicate code
* refactor with mapping
* fix broken tests
* finish refactor
* merged master
* updated EpochCommitteeCount and fixed tests
* implemented ShardDelta
* test for ShardDelta
* implemented EpochStartShard
* added epoch out of bound test
* test for accurate start shard
* lint
* Update Genesis State Function to v0.6 (#2465)
* add pseudocode
* make changes
* fix all tests
* fix tests
* lint
* regen protos and mocks
* regenerated protos
* started fixing core
* all core tests passing!
* removed shared/forkutils
* started fixing blockchain package
* lint
* updating rpc package
* add back deleted stuff
* add back deleted stuff that was deleted accidentally
* add back protos and mocks
* fix errors
* fix genesis issue
* fix genesis issue for slot ticker
* fix all genesis errors
* fix build files
* temp change for go-ssz
* fix test
* Revert "temp change for go-ssz"
This reverts commit 3411cb9d6d519cb521181486debc3b21603c8873.
* update to latest go-ssz
* unstaged changes
* Update Attester Server RPC Calls (#2773)
* Update config and function parameters to v0.7 (#2791)
* Minor Updates to 0.7 (#2795)
* Refactor Deposit Flow and Cleanup Tests (#2788)
* More WIP on cleaning deposit flow
* Fix tests
* Cleanup and imports
* run gazelle
* Move deposit to block_operations
* gazelle
* Update beacon-chain/core/blocks/block_operations.go
Co-Authored-By: terence tsao <terence@prysmaticlabs.com>
* Fix docs
* Remove unneeded calculations
* Fix tests
* Fix tests finally (?)
* Optimize Committee Assignment RPC (#2787)
* Update BlockRoot to BlockHash (#2816)
* Fix Final Missing Items in Block Processing v0.6 (#2710)
* override config successfully
* passes processing
* add signing root helper
* blockchain tests pass
* tests blocked by signing root
* lint
* fix references
* fix protos
* proper use of signing root
* only few failing tests now
* fix final test
* tests passing
* lint and imports
* rem unused
* Update beacon-chain/core/blocks/block_operations.go
Co-Authored-By: terence tsao <terence@prysmaticlabs.com>
* lint
* Update beacon-chain/attestation/service_test.go
Co-Authored-By: terence tsao <terence@prysmaticlabs.com>
* Update beacon-chain/db/block_test.go
Co-Authored-By: terence tsao <terence@prysmaticlabs.com>
* rename to hash tree root
* rename decode to unmarshal
* fix
* use latest ssz
* all tests passing
* lint
* fmt
* Add Config YAML for Spec Tests (#2818)
* Align Protobuf Type Names (#2825)
* gofmt
* Revert "Align Protobuf Type Names (#2825)" (#2827)
This reverts commit 882d067144c674bbf4eeee00404acaa0a9b1fd33.
* Update Domain Related Functions (#2832)
* Add Functions for Compressed and Uncompressed HashG2 With Domain (#2833)
* add tests
* gaz
* lint
* Revert "Add Functions for Compressed and Uncompressed HashG2 With Domain (#2833)" (#2835)
This reverts commit 7fb2ebf3f12f043d7bd12f43500dc2bd133df573.
* Add ConvertToPb to package testutil (#2838)
* Block Processing Bug Fixes (#2836)
* Update types PB with Size Tags (#2840)
* Epoch processing spec tests (#2814)
* Remove Deposit Index (#2851)
* Shuffle tests revisited (#2829)
* first commit
* remove old files, add log
* remove duplicate yaml testing code
* reduce visability
* nishant feedback changes
* skip TestFromYaml_Pass
* added tags to bazel build
* gazelle fix
* remove unused vars
* adda back config
* remove config handling
* remove unused var
* gazelle fix
* SSZ compatibility test for protobufs (#2839)
* update workspace spec sha
* remove yamls from branch
* BLS spec tests (#2826) (#2856)
* bls spec tests
* add more bls tests
* use ioutil instead of bazel runfiles
* dont read bytes
* skip tests that overflow uint64
* manually fix input data
* add tests
* lint and gaz
* add all new changes
* some refactoring, cleanup, remove new API methods that only exist for tests
* gaz
* Remove yamls, skip test
* Slot processing spec test (#2813)
* eth1data rpc endpoint (#2733)
* eth1data rpc endpoint
* first version
* comment added
* gazelle fix
* new function to go once over the deposit array
* fix tests
* export DepositContainer
* terence feedback
* move structure decleration
* binary search
* fix block into Block
* preston feedback
* keep slice sorted to remove overhead in retrival
* merge changes
* feedback
* update to the latest go-ssz
* revert change
* chnages to fit new ssz
* revert merge reversion
* go fmt goimprts duplicate string
* exception for lint unused doesParentExist
* feedback changes
* latesteth1data to eth1data
* goimports and stop exposing Eth1Data
* revert unneeded change
* remove exposure of DepositContainer
* feedback and fixes
* fix workspace duplicate dependancy
* greatest number of deposits at current height
* add count votes function
* change method name
* revert back to latesteth1data
* latesteth1data
* preston feedback
* seperate function add tests fix bug
* stop exposing voteCountMap
* eth1data comment fix
* preston feedback
* fix tests
* new proto files
* workspace to default version of ssz
* new ssz
* chnage test size
* marshalled marshaled
* Attesting Indices Fix (#2862)
* add change
* fix one test
* fix all tests
* add test
* clear cache
* removed old chaintest, simulated backend and state generator (#2863)
* Block Processing Sanity Spec Tests (#2817)
* update PrevEpoch
* add new changes
* shift to blocks package
* add more changes
* new changes
* updated pb with size tags
* add new changes
* fix errors
* uncomment code
* more changes
* add new changes
* rename and lint
* gaz
* more changes
* proccess slot SigningRoot instead of HashTreeRoot
* ensure yaml generated structs work
* block sanity all passing
* minimal and mainnet all pass
* remove commented code
* fix one test
* fix all tests
* fix again
* no state comparison
* matching spec
* change target viz
* comments gazelle
* clear caches before test cases
* latest attempts
* clean up test format
* remove debugging log, remove yaml
* unskip attestation
* remove skip, check post state, diff state diffs
* handle err
* add bug fixes
* fixed one more bug
* fixed churn limit bug
* change hashProto to HashTreeRoot
* all tests pass :)
* fix all tests
* gaz
* add regression tests
* fix test bug
* Mutation testing fixes for beacon-chain/core/helpers/attestation.go (#2868)
* mutation testing for attestation.go
* new line
* lint
* revert fmt.Errorf deletion
* gofmt
* Add some fixes for mutation testing on blocks.go (#2869)
* Fix sizes
* gaz
* Spec freeze release candidate spectests
* Align Protobuf Type Names (#2872)
* Removes some deprecated fields from protobuf (#2877)
* search and replace checkpoints
* fix tests, except spec tests
* Update Configs for Freeze (#2876)
* update configs
* updated minimal configs
* almost there
* all tests passing except for spec tests
* better comment for MinGenesisTime
* done, ready for review
* rm seconds per day
* feedback
* Mutation testing fixes for beacon-chain/core/helpers/committee.go (#2870)
* Add some fixes for mutation testing on blocks.go
* working on mutation testing fo committee.go
* gofmt
* goimports
* update readme target
* update latest sha for spec tests
* fix build
* Update State Transition Function (#2867)
* Change Base Reward Factor (#2888)
* Update Freeze Spec Simplification Section - part 1 (#2893)
* finished changes to attesting_indices
* removed index_count <= 2**40 requirement
* lint
* reverted index_count <= 2**40 check
* added short cut len(a) > len(b)
* Update justification bits (#2894)
* updated all the helper pseudocodes (#2895)
* Make Constants Explicit and Minor Cleanups (#2898)
* Rename outdated configs, make constants explicitly delcared
* Remove activate_validator, not needed
* Remove GenesisSlot and GenesisEpoch
* Remove unused import
* Move Block Operation Length Checks to ProcessOperations (#2900)
* Move block operation length checks to ProcessOperations
* Write tests for each length check in ProcessOperations
* Remove unneeded test
* Move checks to a new function
* Move duplicate check back into ProcessOperations
* reorder proto fields (#2902)
* Slashing Penalty Calculation Change (#2889)
* lint
* change config val
* add max helper
* changes to slashing and process slashing, add a min function for integers
* gaz
* fix failing tests
* fix test
* fixed all tests
* Change Yaml tag
* lint
* remove gc hack
* fix test
* gaz
* preston's comments
* change failing field
* fix and regen proto
* lint
* Implement Compact Committee Root (#2897)
* add tags
* add function
* add new code
* add function
* add all new changes
* lint
* add tests
* fix tests
* fix more tests
* fix all outstanding tests
* gaz
* Update beacon-chain/core/helpers/committee.go
Co-Authored-By: terence tsao <terence@prysmaticlabs.com>
* comment
* Remove deprecated fields from attestation data (#2892)
* fix broken tests
* remove comment
* fixes
* Update Deposit Contract (#2903)
* update to new contract
* fix references
* fix tests
* fix some more tests
* fix local deposit trie
* gaz
* shays review
* more changes
* update WORKSPACE to use 0.8 spec tests
* Perform Mutesting in Helpers Package (#2912)
* Perform mutesting on validator
* Mutesting in helpers package
* Mutested eth1data
* s/volundary/voluntary (#2914)
* Update BLS Domain (#2916)
* change from integer to byte slice
* add test
* fix func for bytes4
* Fix Spec tests (#2907)
* fix panics
* handle failed transitions
* remove log
* fix to protos
* new changes
* remove i
* change ssz commit
* new changes
* update epoch tests
* fix epoch testing
* fix shuffle tests
* fix test
* Perform Mutesting in Epoch and State Packages (#2913)
* done with updates (#2890)
* Add Max Size Tag for Protobuf Fields (#2908)
* No more space between ssz-size numbers
* Regen pb.go
* Fixed a few incorrect proto fields (#2926)
* Update Validator Workflow (#2906)
* Justification spec tests (#2896)
* update go-ssz
* Fix SSZ Compatibility Test (#2924)
* figuring out how to seqeeze in multiple fields in a tag for pb
* Added max tags and regenerated pb.go
* updated to new standard
* New bitfield types in proto (#2915)
* Cast bytes to correct bitfield, failing tests now though
* Add forked gogo/protobuf until https://github.com/gogo/protobuf/pull/582
* remove newline
* use proper override for gogo-protobuf
* fix a few tags
* forgot to include custody bits and Slashable not used
* Update yaml struct to use pb
* Update workspace to use latest ssz
* All tests fail
* Use the latest go-ssz commit
* All pass except for state (too long to taste)
* Update test.proto
* Added rest of the tests
* use 1 justification bits
* fix tag test, apply @rauljordan's suggestion
* add IsEmpty and use ssz struct
* delete unused file
* Update zero hash to sha256().digest() (#2932)
* update zero hash
* change zero hash to conform with spec
* goimports
* add test for zero hash
* Revert "Update zero hash to sha256().digest() (#2932)" (#2933)
This reverts commit b926ae0667b18aef3f7e0e8ec8a9b3e98b3d2ccc.
* Fix compress validator (#2936)
* fix compress validator
* update go-ssz
* build without the bytes test
* try minimal
* Block operations spec tests (#2828)
* update PrevEpoch
* debugging proposer slashing tests
* fmt
* add deposit tests
* Added skeleton for attestation minimal test
* remove bazel runfiles thing
* add deposits
* proposer slashing test is done
* comment
* complete test, some failing cases
* sig verify on
* refactor slightly to support mainnet and minimal
* included mainnet stuff
* Add block header tests
* volunary exit done
* transfer done
* new changes
* fix all tests
* update domain functions
* fmt
* fixed lint
* fixed all the tests
* fixed a transfer bug
* finished attester slashing tests and fixed a few bugs
* started fixing...
* cleaned up exit and proposr slashing tests
* attester slashing passing
* refactored deposit tests
* remove yamls, update ssz
* Added todo for invalid sig
* gazelle
* deposits test done!
* transfer tests done and pass!
* fix attesting indices bug
* temporarily disabled signature verification
* cleaned up most of the block ops, except for att
* update committee AttestingIndices
* oops, i dont know how or why i changed this file
* fixed all the rpc tests
* 6 more failing packages
* test max transfer in state package
* replace hashproto with treehash in package blockchain
* gazelle
* fix test
* fix test again
* fixed transition test, 2 more left
* expect an error in attestation tests
* Handle panic when no votes in aggregate attestation
* clear cache
* Add differ, add logging, tests pass yay
* remove todo, add tag
* fixed TestReceiveBlock_RemovesPendingDeposits
* TestAttestationMinimal/success_since_max_epochs_per_crosslink fails now...
* handle panics
* Transfer tests were disabled in https://github.com/ethereum/eth2.0-specs/pull/1238
* more fixes after merge, updating block_operations.yaml.go to match yaml
* figuring out how to seqeeze in multiple fields in a tag for pb
* Added max tags and regenerated pb.go
* updated to new standard
* New bitfield types in proto (#2915)
* Cast bytes to correct bitfield, failing tests now though
* Add forked gogo/protobuf until https://github.com/gogo/protobuf/pull/582
* remove newline
* fix references and test panic
* change to proto objects from custom types
* fix panics in tests
* use proper override for gogo-protobuf
* fix a few tags
* fix tests
* forgot to include custody bits and Slashable not used
* fix tests
* sort again
* Update yaml struct to use pb
* Update workspace to use latest ssz
* All tests fail
* Use the latest go-ssz commit
* All pass except for state (too long to taste)
* Update test.proto
* Added rest of the tests
* use 1 justification bits
* minor fixes
* wrong proto.Equal
* fix tag test, apply @rauljordan's suggestion
* add IsEmpty and use ssz struct
* inverted logic
* update zero hash
* change zero hash to conform with spec
* goimports
* add test for zero hash
* Revert "Update zero hash to sha256().digest() (#2932)"
This reverts commit b926ae0667b18aef3f7e0e8ec8a9b3e98b3d2ccc.
* update ssz, fix import, shard big test
* checkpoint
* fix compress validator
* update go-ssz
* missing import
* missing import
* tests now pass
* been a good day
* update test size
* fix lint
* imports and remove unused const
* update bazel jobs flag
* update bazel jobs flag
* satisfy deprecation warning
* Add ssz regression tests for investigation of test failures in PR #2828 (#2935)
* Adding regression tests for investigation
* add another example
* goimports
* add quick comment about test case 0
* Epoch Process Slashings Spec Tests (#2930)
* updated justification bits, tests passing OK
* regen pb.go, clarify bit operations
* justification and finalization tests; failing
* Add wrapper, so we call the correct method
* checkpoint
* Update tar ref
* TestSlashingsMinimal/small_penalty still failing
* Use bigint instead of () and float
* Revert a bad merge from workspace
* Fmt
* add note about https://github.com/ethereum/eth2.0-specs/issues/1284
* improve tests
* gaz
* Perform Mutesting In core/state Package (#2923)
* Perform mutesting on validator
* Mutesting in helpers package
* Mutested eth1data
* Perform mutesting in epoch and state packages
* Fix voluntary exits test
* Fix typo
* Fix comments
* Fix formatting
* Fix error message
* Handle missing errors
* Handle all errors
* Perform Mutesting In State Package
* Fix block roots size
* Remove comment
* Fix error
* add backend service
* Add ssz compatibility tests for signing root (#2931)
* Added tests for signing root
* imports
* fix lint on travis
* fix bes flag
* Final updates spec tests (#2901)
* set up tests
* need to reorder pbs
* figuring out how to seqeeze in multiple fields in a tag for pb
* Added max tags and regenerated pb.go
* updated to new standard
* New bitfield types in proto (#2915)
* Cast bytes to correct bitfield, failing tests now though
* Add forked gogo/protobuf until https://github.com/gogo/protobuf/pull/582
* remove newline
* use proper override for gogo-protobuf
* fix a few tags
* forgot to include custody bits and Slashable not used
* playing with tags idea, can revert this commit later
* fixes after merge
* reset caches before test
* all epoch tests pass
* gazelle
* Genesis trigger (#2905)
* genesis change
* integrate changes
* bodyroot
* remove unused code
* HasChainStarted
* added isValidGenesisState to ProcessLog
* state fix
* fix gazelle
* uint64 timestamp
* SetupInitialDeposits adds proof
* remove unneeded parts of test
* deposithash
* merkleproof from spec utils
* Revert "merkleproof from spec utils"
This reverts commit 1b0a124352e7b62e3c3220fb0d64e295b474b430.
* fix test failures
* chain started and hashtree root in tests
* simple eth2genesistime
* eth2 genesis time
* fix zero time
* add comment
* remove eth1data and feedback
* fix build issues
* main changes: add fields and methods to track active validator
count
* gaz
* fix test
* fix more tests
* improve test utils
* shift spec method to state package, improve test setup
* fixed log processing tests
* remove log
* gaz
* fix invalid metric
* use better tag names, not latest
* Remove Block Signing Root (#2945)
* replace with hash tree root
* Revert "replace with hash tree root"
This reverts commit 77d8f16a160e42f3c3d598df66c30a66657de1bf.
* replace with signing root instead
* remove one more ref
* Create Test Runner for Genesis State Spec Tests (#2940)
* genesis change
* integrate changes
* bodyroot
* remove unused code
* HasChainStarted
* added isValidGenesisState to ProcessLog
* state fix
* fix gazelle
* uint64 timestamp
* SetupInitialDeposits adds proof
* remove unneeded parts of test
* deposithash
* merkleproof from spec utils
* Revert "merkleproof from spec utils"
This reverts commit 1b0a124352e7b62e3c3220fb0d64e295b474b430.
* fix test failures
* chain started and hashtree root in tests
* simple eth2genesistime
* eth2 genesis time
* fix zero time
* add comment
* remove eth1data and feedback
* fix build issues
* main changes: add fields and methods to track active validator
count
* gaz
* fix test
* fix more tests
* improve test utils
* Start genesis spec tests
* shift spec method to state package, improve test setup
* Add Genesis validity spec test
* Bazel
* fixed log processing tests
* remove log
* gaz
* fix invalid metric
* use json tags
* fix up latest changes
* Fix most of test errors
* Attempts to see whats wrong with genesis validity
* Fix merge
* skip minimal
* fix state test
* new commit
* fix nishant comment
* gaz
* Static check on branch spec-v0.6 (#2946)
* Ran staticcheck and fixed the important complains
* commit
* commit
* Create Test Runner for Genesis State Spec Tests (#2940)
* genesis change
* integrate changes
* bodyroot
* remove unused code
* HasChainStarted
* added isValidGenesisState to ProcessLog
* state fix
* fix gazelle
* uint64 timestamp
* SetupInitialDeposits adds proof
* remove unneeded parts of test
* deposithash
* merkleproof from spec utils
* Revert "merkleproof from spec utils"
This reverts commit 1b0a124352e7b62e3c3220fb0d64e295b474b430.
* fix test failures
* chain started and hashtree root in tests
* simple eth2genesistime
* eth2 genesis time
* fix zero time
* add comment
* remove eth1data and feedback
* fix build issues
* main changes: add fields and methods to track active validator
count
* gaz
* fix test
* fix more tests
* improve test utils
* Start genesis spec tests
* shift spec method to state package, improve test setup
* Add Genesis validity spec test
* Bazel
* fixed log processing tests
* remove log
* gaz
* fix invalid metric
* use json tags
* fix up latest changes
* Fix most of test errors
* Attempts to see whats wrong with genesis validity
* Fix merge
* skip minimal
* fix state test
* new commit
* fix nishant comment
* gaz
* Add Back Eth1Data After Bad Merge (#2953)
* eth1data rpc endpoint
* first version
* comment added
* gazelle fix
* new function to go once over the deposit array
* fix tests
* export DepositContainer
* terence feedback
* move structure decleration
* binary search
* fix block into Block
* preston feedback
* keep slice sorted to remove overhead in retrival
* merge changes
* feedback
* update to the latest go-ssz
* revert change
* chnages to fit new ssz
* revert merge reversion
* go fmt goimprts duplicate string
* exception for lint unused doesParentExist
* feedback changes
* latesteth1data to eth1data
* goimports and stop exposing Eth1Data
* revert unneeded change
* remove exposure of DepositContainer
* feedback and fixes
* fix workspace duplicate dependancy
* greatest number of deposits at current height
* add count votes function
* change method name
* revert back to latesteth1data
* latesteth1data
* preston feedback
* seperate function add tests fix bug
* stop exposing voteCountMap
* eth1data comment fix
* preston feedback
* fix tests
* new proto files
* workspace to default version of ssz
* new ssz
* chnage test size
* marshalled marshaled
* everything passing again
* add skip reason
* cleanup deposit contract slightly
* remove unused chainstart param (#2957)
* fix breakages from #2957 (#2958)
* fix breakages from #2957
* oops
* Fix deposit input data (#2956)
* fix deposit input data
* fix deposit input data
* gaz and build fix
* Add Tests for Genesis Deposits Caching (#2952)
* remove old method and replace with an improved one
* add new files
* gaz
* add test
* added all these tests
* gaz
* Apply suggestions from code review
Co-Authored-By: terence tsao <terence@prysmaticlabs.com>
* fix merkle proof error
* fix config
* Minor fixes for runtime (#2960)
* Minor fixes for runtime
* use comments
* goimports
* revert beacon-chain/core/state/state.go and fix comment for lint
* fix test too
* Minor runtime fixes (#2961)
* Add support for bundling binaries and fix ARM64 builds (#2970)
* Add support for bundling binaries and fix ARM64 builds
* Fix exports
* ignore manual targets wrt vis check
* fix graknlabs
* update spec tests (#2979)
* hotfix until https://github.com/graknlabs/bazel-distribution/pull/169
* Overflow slashing calculation fix (#2977)
* Runtime Fixes (#2736)
* first batch of fixes
* add log
* more fixes
* another bug fixed
* update deposit contract and other fixes
* remove logs
* new changes
* fixes
* fix build
* remove config
* more fixes
* add more changes
* add back todo
* make compute state root work
* remove commented out and fix condition
* fix commented code
* fix config
* gaz
* remove flag
* remove init
* new fixes
* fix test
* one more fix
* fix all tests
* change back config
* fix one more bug
* remove logging bool
* Only build test targets when running bazel test //...
* Align prysm to spec v0.8.1 (#2978)
* Bazel problem
* Update zero hash representation to be clear (cosmetic)
* Update minor cosmetic fixes
* Fixed lookahead off by 1
* Update randao.go
* update ssz
* test failures fixed
* test fixes
* fix up workspace
* lint
* fixed errs
* Updated pubkey loggings (#2983)
* Fix proposer assignment (#2984)
* add jvm limits
* add jvm limits
* Removed logging from state transition functions (#2980)
* Match spec on proposer index division (#2985)
* Match spec on proposer index division
* gaz
* fixes
* Fix Default Eth1Data (#2982)
* fix bug
* Update beacon-chain/core/state/transition.go
Co-Authored-By: Raul Jordan <raul@prysmaticlabs.com>
* more fixes
* reg test
* Set ejection balance to 1.6 (#2987)
* improve block processing log (#2990)
* Fix HistoricalRootsLimit (#2989)
* fix historical lenght
* fix genesis state initialization and test
* fix genesis state initialization and test
* fix genesis state initialization and test
* fix genesis state initialization and test
* hack config until https://github.com/prysmaticlabs/prysm/issues/2993
* More Runtime Fixes (#2986)
* local changes
* add val sig
* attester fix
* one more fix
* fixed all tests
* rem validator issue
* fix finality issue (#2994)
* Fix validator prev balance calculation (#2992)
* attester fix
* one more fix
* fixed all tests
* Fix validator prev balances calculation
* go fmt
* 48 bytes
* Fix Querier to handle Deposit Logs Race (#2999)
* fix sync issue
* fix build
* add regression test
* add var for magic number
* Fix eth1data and deposits (#2996)
* Work in progress, eth1data works, deposits are included at the appropriate time, and activation happens at the correct time
* revert blockInfo being public
* git tests to build, not yet pass though
* add tests
* some commentary
* fix comment
* goimports
* fmt and remove unused method
* Update rules go (#2975)
* update rules_go
* Fix some cross compile builds stuff
* add missing deps
* update to 0.19.1
* Update Protobufs to Match Ethereum APIs (#2998)
* add beacon block and attestation files
* add all types
* include all new proto type definitions
* add add all proto definitions
* fix all comments to say 48 bytes
* include latest changes
* readd common
* no swag
* add build file
* deps issue
* right package names
* address feedback, maintain parity between upstream ethereumapis
* delete pb
* bad gens
* Update "Testing Prysm" readme section (#3000)
Resolves invalid url link to golangci-lint.
* Update badge to version 0.8.1
* elaborate on test skip
* revert shared/p2p/options.go
* make travis happy with goimports
* Update beacon-chain/core/blocks/block.go
Co-Authored-By: Preston Van Loon <preston@prysmaticlabs.com>
* Added the 'enable-upnp' flag to the list of supported command line arguments.
If the user specifies this feature flag (adds --enable-upnp as an argument) - the Beacon-chain and Validator services, when started, will initialize libp2p with the UPNP options.
* Added the new arg to usage.go due to test failure
* Update shared/p2p/service.go
Changed the logging according to Preston's recommendation.
Co-Authored-By: Preston Van Loon <preston@prysmaticlabs.com>
* Code review changes:
1. File formatting.
2. Command line arg more detailed description.
* Revert "fix nil block (#2638)"
This reverts commit d43ea74244.
* Revert "add to topic mapping (#2637)"
This reverts commit 85ef099360.
* Revert "Reorg to an Announced Finalized Block if On a Different Chain (#2630)"
This reverts commit 08288f0958.
* Allow discovery to be removed, and add peers explicitly to peer store
* Changes after code review
* Update shared/cmd/flags.go
Co-Authored-By: Preston Van Loon <preston@prysmaticlabs.com>
* checkpoint on super sync with reputation
* ensure handling only expected peers msg
* exclusive of finalized block
* skip block saved already
* clean up struct
* remove 2 more fields
* _
* everything builds, but doesnt test yet
* lint
* fix p2p tests
* space
* space
* space
* fmt
* fmt
* proto: illegal wireType 7 :(
* set addr to todo for now so somethign gets sent
* push latest progress
* Add feedback from @raulk. Stream never connects
* working handshake handler
* add exclusions for relay/bootstrap node
* fix tests, still need to add new ones
* remove race, fails coverage
* Add test for negotiation
* gazelle
* regen pb
* Update shared/p2p/handshake_handler.go
Co-Authored-By: prestonvanloon <preston@prysmaticlabs.com>
* default bootstrap node and local network flag
* default relay node value
* Update shared/p2p/service.go
Co-Authored-By: rauljordan <raul@prysmaticlabs.com>
* use no discovery
* plug forkchoice to blockchain service's block processing
* fixed tests
* more fixes...
* clean ups
* fixed test
* Update beacon-chain/blockchain/block_processing.go
* merged with 2006 and started fixing tests
* remove prints
* fixed tests
* lint
* include ops service
* if there's a skip slot, slot--
* fixed typo
* started working on test
* no fork choice in propose
* bleh, need to fix state generator first
* state gen takes input slot
* feedback
* fixed tests
* preston's feedback
* fmt
* removed extra logging
* add more logs
* fixed validator attest
* builds
* fixed save block
* children fix
* removed verbose logs
* fix fork choice
* right logs
* Add Prometheus Counter for Reorg (#2051)
* fetch every slot (#2052)
* test Fixes
* lint
* only regenerate state if there was a reorg
* better logging
* fixed seed
* better logging
* process skip slots in assignment requests
* fix lint
* disable state root computation
* filter attestations in regular sync
* log important items
* better info logs
* added spans to stategen
* span in stategen
* set validator deadline
* randao stuff
* disable sig verify
* lint
* lint
* save only using historical states
* use new goroutine for handling sync messages
* change default buffer sizes
* better p2p
* rem some useless logs
* lint
* sync tests complete
* complete tests
* tests fixed
* lint
* fix flakey att service
* PR feedback
* undo k8s changes
* Update beacon-chain/blockchain/block_processing.go
* Update beacon-chain/sync/regular_sync.go
* Add feature flag to enable compute state root
* add comment
* gazelle lint fix
* Create a feature flagging system
* Refactor how featureflags works and improve docs
* Gazelle and final touches
* Refactor, new flags in the package
* Remove old flags since they have been moved
* Fix bazel
* Update to comments
* Full coverage
* Fix formatting
* Align code with numbers
* Run bazel and fix docs
* Fix test for flag
* Fix assignments bug where validators don't retry for assignments on failure
* synch only please
* trying to fix state issues
* trying random stuff
* do not explode
* use ctx
* working build, failing tests
* broadcast local addrs as well as relay addrs
* fixed p2p tests, more tests to fix still
* another test fixed, log warning instead of throw error
* Fix last tests
* godoc
* add test for broadcast in apply fork choiec
* remove unneeded code
* remove tracer adapter, not needed
* remove extra stuff
* remove any
* revert addr_factory
* revert addr_factory
* Revert "revert addr_factory"
This reverts commit e93fb706494a1070158b8db31e67146d6b0648ad.
* Revert "revert addr_factory"
This reverts commit dedaa405559cc818698870c4e4570953367f1e3c.
* revert removal of this code
* unused param
* refactor chain service
* restructure service and lint
* all calls to receive block in chain service are now blocking
* begin fixing tests
* refactored blockchain tests
* builds correctly
* blockchain tests pass again
* lint
* sync and rpc tests pass again
* done
* add in open tracing
* span in fork choice
* Update beacon-chain/blockchain/block_processing.go
Co-Authored-By: rauljordan <raul@prysmaticlabs.com>
* Verify signatures of attestations
* Implement BLS Signing for attestations
* Remove custody bit 0 from the attestation for now
* Fixes tests for attestations
* Fix tests to ensure they use proper attester indice
* Run gazelle
* Goimports
* Test attestation sigs in block operations
* Change formatting and make sure signatures are actually verified
* Fix duplicate import
* Fix duplicate import from merge
* Organize attestation sig to be conssitent with codebase
* Update to comments
* Change signatures to use aggregation
* Run gazelle
* Change function to return err instead of bool
Also gofmt
* Fix for comments
* Move createAggregationSignature to a function in attestations.go
* fatal if impossible to receive chainstart
* fix tests
* fix
* custom delay
* completed custom delay
* errors
* better logs, nothing at genesis
* use demo in val
* add gazelle
* log
* starting to log stuff
* pass in ops
* avoid printing the large #s for debug, still working on tests..
* all around better logging
* fixed build error in epoch process
* fixed state transiton tests
* fixed block tests
* lint
* verify sigs in randao
* ready for inclusion falg
* only print waiting when slot is not valid
* fix build
* mod config
* fixed last justified slot issue
* fix inclusion
* fixed attestation issue
* using zero hash from params instead
* fix tests
* update balance
* removed swp
* more `- genesis_slot` for logs
* rem unused log
* fix broken tests
* account for skip slots in state root computation
* fixes done
* validator guide bug fixes - 671
* epoch boundary at the last slot of the epoch
* fix epoch issue
* more balance cal logs for debugging
* greater balance
* attestaton fixes
* fixes
* addressed testrun
* fixed ejection balance
* fix tests with far future epoch
* revert sync change
* revert initial sync change
* fix changes
* off by one att fix
* revert the att fix
* address comments
* format
* fix build
* rem file
* provide validator with real keystore public key
* fmt
* build errors buildkite
* readd imports removed by goimport
* gazelle
* address broken tests
* make reference to filename a param
* fmt
* imports
* gazelle
* os remove all
* Use better Temp storage for tests
* testmain approach to avoid repeating expensive operation for each test
* travis lint
* fix test
* nokeystore in status test
* passing
* fix goimports
* Update config for deposits processing
* Add pending deposits database methods
* oops forgot the files
* move the lock after the nil check
* move the lock after the nil check
* test inclusion behavior
* Insert pending deposits on process deposit log
* Add version linking to binaries via --workspace_status_command=./scripts/workspace_status.sh
* dont export some things
* lint and better date
* even better date
* /healthz part1
* lint, fix
* lints and todos
* add p2p status test
* Add test for service registry Statuses
* fix my fake errors for the linter
* Test healthz handler
* Run gazelle
* first commit, remote att types
* no more agg attestation proto
* regen mock
* only attestations
* proto
* att process
* fix att references
* more tests passing
* use att protos
* complete
* change visibility
* use gogoprotobu
* WIP: Dummy db clean service
* [WIP. NOT READY FOR REVIEW] Add DB cleanup routine that cleans block vote cache
* Add missing bazel config
* Put DB clean behind a CLI flag
* Address review comments
* Fix error handling
* Preliminary support for relay nodes
* lint
* Add comment, remove TODO
* work on relay address factory
* dial relay node, if available
* forgot new files
* fix service registry breakage
* added logging
* Added a peer count with prometheus
* always start mDNS
* fix lint
* polling interval
* adding proto message
* changing proto messages
* changing naming
* adding slot functionality
* initial sync working
* new changes
* more sync fixes
* its working now
* finally working
* add tests
* fix tests
* tests
* adding tests
* lint
* log checks
* making changes to simulator
* update logs
* fix tests
* get sync to work with crystallized state
* fixing race
* making requested changes
* unexport
* documentation
* gazelle and fix merge conflicts
* adding repeated requests
* fix lint
* adding new clock , db methods, and util func
* revert change to test
* gazelle
* add in test
* gazelle
* finally working
* save slot
* fix lint and constant
* adding proto messages
* adding fields
* adding new service
* new changes
* checking in file from syncFix
* fixing test
* add test
* adding to node
* goimports
* adding query service to sync services
* sync working
* finally works
* fix test
* lint
* fix build
* fix test
* Standardize params for BeaconChain and Validator projects
* gofmt
* various changes to bring up to standards
* lint
* linter 2, not sure why travis complains
* revert service_test.go
* Added prometheus client and p2p metrics
* Avoid run the adapter if the metrics are disabled
* fix visibility issue
* Fix invalid p2p.Message sent to Adapters
The middlewares (adapters) must receive the complete message to avoid
problems and the main Handler must get the values from middlewares
Also, added tests and comments for metrics package
* Added logrus hook collector
This collector is used to collect counters of log messages.
The main purpose of these metric is to know how many warnings and errors
the system are getting.
* Add hook when register the prometheus service
* update bazel builds
* fix emit tests and remove unused imports
* gazelle --fix
* remove unused logger
* move prometheus package to shared directory
* better metric names and fix metric paths
* improve metric tests and start to use promauto
* added prometheus initial documentation
* fix tests
* fix type differences with go get and bazel
* Fix service test
* start sequence for node to connect to bootstrap nodes
* lint
* maybe warning is more appropiate?
* fix gazelle
* preston's feedback
* add go-ipfs-addr to workspace
* move flag to shared
* removed routed host
* implementing basic proposer functionality
* checked in gomocks
* fix typo
* refactor using feeds
* use event feeds for assignment
* sending the latest beacon block over announcement chan
* 100 coverage, using feeds
* gazelle
* include parent hash from prev canonical block and slot number + 1
* including all other prop fields
* fix build
* proposer rpc method tests, implemented in beacon chain side
* godoc
* begin with a block/state dag approach in prep for fork choice
* add TODOs for fork choice items, add data structure for forks
* remove syncing and processing states for incoming block sync
* simulator only broadcasts blocks now, no more state simulation
* fix sim tests, no more state sim
* bazel rerun
* naive fork choice
* split update head routine
* pesky race conditions
* fork choice rule works
* dag + fork choice working
* canonical head storage across sessions
* todo: save dag
* no more stalling after 10 blocks, using event feeds
* address review
* sync instead uses event feed
* refactored pure funcs into casper package
* tests pass
* fix lint
* refactor get blockhash
* refactor blockhashforslot
* event feed for incoming blocks in chainservice
* use config
* addressed all comments
* fix typo
* address yutaro comment
* using db interface
* check if parent hash in previous slot DAG
* works
* tests
* drop ffg suffix
* bazel gazelle
* full cov validators by height shard
* gazelle
* state tests
* all state tests
* 100% cov types and 99% cover casper
* cov up
* 80% blockchain cov
* fix lint
* Initial commit to extract initial sync code
* Add stop/resume of sync/intialsync
* bazel run
* gometalinter
* add tests
* cleanup
* build fixes
* use infof rather than errorf if sync is not in correct state
* Add TODO comment detailing eventual completion of transition from initial sync to sync
* fix build
* pr comments
* fix tests
* bump