Go to file
james-prysm aed6e13498
Web3Signer: CLI implementation (#10056)
* initial commit for cli integration of web3signer

* resolving conflicts and execution

* remove aggregation slot from proto

* rem aggregation slot

* define a sync message block root struct

* fix sync message name

* sync message block root struct

* amend where sync committee block root is used

* altered switch statement to return correct json request by type

* fixing fork data import, types, and unit tests

* reverting unwanted changes

* reverting more unwanted changes

* fixing deepsource issues

* fixing formatting

* more fixes for deepsource and code clean up

* only want to fetch once for fetch validating public keys

* adding more comments

* new unit tests for requests and fixing a mapper issue

* Update validator/client/validator.go

Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>

* Update validator/accounts/wallet/wallet.go

Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>

* adjusting comment

* adjusting comment

* fixing import organization

* including more unit tests

* adding new cli edit

* adding in checks for wallet initialize

* adding web3signer flags to main.go

* some how resolved files did not save correctly

* adding in check to make sure web flag only works with types imported and derived

* Update validator/client/sync_committee.go

Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>

* Update validator/client/aggregate.go

Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>

* Update validator/accounts/wallet/wallet.go

Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>

* Update cmd/validator/wallet/wallet.go

Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>

* Update cmd/validator/wallet/wallet.go

Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>

* Update cmd/validator/main.go

Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>

* Update cmd/validator/flags/flags.go

Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>

* Update cmd/validator/flags/flags.go

Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>

* Update cmd/validator/wallet/wallet.go

Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>

* Update cmd/validator/wallet/wallet.go

Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>

* reverting changes that accidently got checked in

* reverting

* reverting

* continuing to revert unintenteded changes

* reverting

* removing more unneeded changes

* addressing review comment

* initial refactor

* adding in more clarifying comments

* fixing mock

* resolving desource issues

* addressing gosec scan for helper go file

* addressing gosec

* trying to fix bazel build

* removal of interface to fix build

* fixing maligned struct

* addressing deepsource

* fixing deepsource

* addressing efficiency of type checking

* fixing bazel test failure

* fixing go linter errors

* gaz

* web changes

* add w3signer

* new kind

* proper use

* align

* adding prysm validator flags to help flags list

* addressing root comment

* ci lint

* fixing standardapi tests

* fixing accounts_test after removal of keymanager from rpc server

* fixing more unit tests

* Update cmd/validator/flags/flags.go

Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>

* Update cmd/validator/flags/flags.go

Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>

* Update validator/client/service.go

Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>

* Update validator/client/service.go

Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>

* addressing missed err checks

* fixing mock tests

* fixing gofmt

* unskipping minimal e2e test and removing related TODOs

* Update testing/endtoend/components/validator.go

Co-authored-by: Preston Van Loon <preston@prysmaticlabs.com>

* Update testing/endtoend/components/validator.go

Co-authored-by: Preston Van Loon <preston@prysmaticlabs.com>

* adding some error wrapers to clarify failure point

* fixing bazel build with new error checks

* taking preston's advice to make test fail faster to understand what's going on with the test

* checking if genesis validators root is not zero hash

* adding check for genesis validators root giving zero hash

* fixing missing dependency

* adding check for wallet

* log all

* fixing errors for http responses

* switching marshal to pretty print

* adding pretty sign request test

* fixing base url setting

* adding in check for web3signer and temporary wallet instead of having to open the wallet

* refactoring web3signer to not require wallet

* bazel build fix

* fixing gazelle build

* adding content type of request

* fixing more bazel

* removing unused code

* removing unused comments

* adding skip test back in

* addressing a validation and error message

* fix parse

* body

* fixing logic for datadir

* improving error handling

* show resp

* fix

* sign resp as str

* point of pointer remove

* sign resp

* unmarshal sig resp

* read body as str

* adding more verbose logging

* removing unused result

* fixing unit test

* reconfiguring files to properly nest code and mocks

* fix build issue

* using context when using client function calls

* fixing based on suggestion

* addressing comments

* gaz

* removing defined max timeout

* reverting json print pretty

* Update validator/accounts/wallet_edit.go

Co-authored-by: Preston Van Loon <preston@prysmaticlabs.com>

* removing unneeded code restrictions

* should not introduce new code that may impact existing key manager types

* adjusting comments

* adding in json validation

* running go mod tidy

* some logging

* more logs

* fixing typo

* remove logs

* testing without byte trim

* fixing order or properties

* gaz

* tidy

* reverting some logs

* removing the confusing comments

* Update validator/client/aggregate.go

Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>

* Update validator/client/aggregate.go

Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>

* addressing pr comments

* editing bytes test

* Run gazelle update-repos

* run gazelle

* improving unit test coverage

* fixing text

* fixing a potential escaped error

Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
Co-authored-by: Preston Van Loon <preston@prysmaticlabs.com>
2022-01-31 10:44:17 -06:00
.github Make Radek and Nishant code owners of duplicated state code (#10079) 2022-01-13 21:16:42 +00:00
.well-known Update security.txt (#9896) 2021-11-12 15:55:45 +00:00
api Do not reuse endpoint struct between API Middleware requests (#10076) 2022-01-12 18:58:32 +00:00
async Move Shared/Testutil into Testing (#9659) 2021-09-23 18:53:46 +00:00
beacon-chain Web3Signer: CLI implementation (#10056) 2022-01-31 10:44:17 -06:00
cache/lru add lru (#9592) 2021-09-14 18:11:25 -05:00
cmd Web3Signer: CLI implementation (#10056) 2022-01-31 10:44:17 -06:00
config Fork Choice Proposer Boost Changes (#10083) 2022-01-29 16:32:01 +00:00
container Refactor mock test helpers (#10133) 2022-01-26 14:48:20 +00:00
contracts/deposit Refactor mock test helpers (#10133) 2022-01-26 14:48:20 +00:00
crypto Use Batch Decompression For Signatures (#10105) 2022-01-21 22:57:29 +00:00
encoding Web3Signer: CLI implementation (#10056) 2022-01-31 10:44:17 -06:00
hack Native beacon state: v1 (#10086) 2022-01-24 11:24:38 +01:00
io Simplify Prysm Backend Password Requirements (#9814) 2021-10-25 13:17:47 -05:00
math Add Safe Sub64 Method (#9993) 2021-12-08 09:44:54 +00:00
monitoring Code cleanup (#9992) 2021-12-07 17:52:39 +00:00
network Refactor: move functions beacon-chain/core/time -> time/slots (#9719) 2021-10-01 15:17:57 -05:00
proto Web3Signer: CLI implementation (#10056) 2022-01-31 10:44:17 -06:00
runtime Export reverse byte order function (#10040) 2022-01-11 18:42:03 +00:00
testing Web3Signer: CLI implementation (#10056) 2022-01-31 10:44:17 -06:00
third_party Update rules_go to v0.29.0 (#10064) 2022-01-31 07:06:07 +00:00
time Code cleanup (#9992) 2021-12-07 17:52:39 +00:00
tools Update rules_go to v0.29.0 (#10064) 2022-01-31 07:06:07 +00:00
validator Web3Signer: CLI implementation (#10056) 2022-01-31 10:44:17 -06:00
.bazelrc Remove libfuzzer / afl based builds in favor of go 1.18 fuzz testing (#10065) 2022-01-20 04:51:02 +00:00
.bazelversion Update bazel version to 4.2.2 (#10045) 2021-12-27 23:51:23 +00:00
.buildkite-bazelrc Remove libfuzzer / afl based builds in favor of go 1.18 fuzz testing (#10065) 2022-01-20 04:51:02 +00:00
.codecov.yml Codecov: ignore testing directories (#8777) 2021-04-16 08:44:36 -05:00
.deepsource.toml Add generated file to DeepSource exclude_patterns (#8765) 2021-04-14 14:06:25 +00:00
.dockerignore Add tool and script for interop testing (#3417) 2019-09-09 17:31:19 -04:00
.gitattributes linguist-generated=true for mock and pb go files (#1465) 2019-02-02 17:25:28 -05:00
.gitignore Remove libfuzzer / afl based builds in favor of go 1.18 fuzz testing (#10065) 2022-01-20 04:51:02 +00:00
.golangci.yml upgrading linter from gometalinter to golangci-lint (#2100) 2019-04-26 14:24:01 +08:00
.policy.yml Include Policy Bot Application (#7523) 2020-10-14 04:14:38 +00:00
.travis.yml Resolve Proto Lint Issues (#3044) 2019-07-22 14:10:17 -05:00
bazel.sh Fix All Deep Source Shell Issues and Go Issues (#8661) 2021-03-24 19:57:27 +00:00
BUILD.bazel Update rules_go to v0.29.0 (#10064) 2022-01-31 07:06:07 +00:00
CONTRIBUTING.md Reduce Usage of Eth2 Terminology in Prysm (#9104) 2021-06-26 19:00:33 +00:00
DEPENDENCIES.md Move Scripts Into Hack/ Directory (#9605) 2021-09-16 16:22:39 +00:00
deps.bzl Web3Signer: CLI implementation (#10056) 2022-01-31 10:44:17 -06:00
fuzzbuzz.yaml Update fuzzbuzz.yaml (#10151) 2022-01-29 16:55:31 +00:00
go.mod Web3Signer: CLI implementation (#10056) 2022-01-31 10:44:17 -06:00
go.sum Web3Signer: CLI implementation (#10056) 2022-01-31 10:44:17 -06:00
interop.Dockerfile Move Scripts Into Hack/ Directory (#9605) 2021-09-16 16:22:39 +00:00
INTEROP.md Reduce Usage of Eth2 Terminology in Prysm (#9104) 2021-06-26 19:00:33 +00:00
LICENSE.md update to GPLv3 (#297) 2018-07-20 10:23:48 -05:00
nogo_config.json Native beacon state: v2 (#10121) 2022-01-27 09:42:32 +01:00
prysm.bat Fixing .bat file issues (#9266) 2021-08-02 16:09:09 +00:00
prysm.ps1 Update prysm scripts to support client-stats, deprecate slasher (#8971) 2021-06-02 14:06:59 -05:00
prysm.sh prysm scripts should not save 404 pages (#9072) 2021-07-06 23:34:42 +00:00
README.md Update README.md (#10071) 2022-01-11 16:32:07 +00:00
SECURITY.md Add how users should report security vulnerabilities for this repository (#9525) 2021-09-10 03:13:09 +00:00
service-account.json.enc Bazel cache for travis (#236) 2018-07-07 16:01:58 -04:00
TERMS_OF_SERVICE.md Reduce Usage of Eth2 Terminology in Prysm (#9104) 2021-06-26 19:00:33 +00:00
WORKSPACE Update rules_go to v0.29.0 (#10064) 2022-01-31 07:06:07 +00:00

Prysm: An Ethereum Consensus Implementation Written in Go

Build status Go Report Card Consensus_Spec_Version 1.1.8 Discord

This is the core repository for Prysm, a Golang implementation of the Ethereum Consensus specification, developed by Prysmatic Labs. See the Changelog for details of the latest releases and upcoming breaking changes.

Getting Started

A detailed set of installation and usage instructions as well as breakdowns of each individual component are available in the official documentation portal. If you still have questions, feel free to stop by our Discord.

Staking on Mainnet

To participate in staking, you can join the official eth2 launchpad. The launchpad is the only recommended way to become a validator on mainnet. You can explore validator rewards/penalties via Bitfly's block explorer: beaconcha.in, and follow the latest blocks added to the chain on beaconscan.

Contributing

Branches

Prysm maintains two permanent branches:

  • master: This points to the latest stable release. It is ideal for most users.
  • develop: This is used for development, it contains the latest PRs. Developers should base their PRs on this branch.

Guide

Want to get involved? Check out our Contribution Guide to learn more!

License

GNU General Public License v3.0

Terms of Use