prysm-pulse/beacon-chain
Steven Allen 2428880058
Update go-libp2p to 0.12.0 (#8015)
* Update go-libp2p to 0.12.0

go-libp2p 0.12.0 made some significant changes to the stream interfaces around
stream closing:

* Close now closes in both directions and frees the stream. However, unlike
FullClose did, it doesn't _wait_ for the remote peer to respond with an EOF.
* To close for writing, call CloseWrite (like one would on a TCP connection, etc.).

This patch:

* Replaces calls to FullClose with Close where appropriate.
* Replaces calls to Close with CloseWrite where appropriate.
* Removes redundant Close calls.
* Calls Reset to where appropriate to indicate that the request/response was
  aborted. Unlike Close, this will not flush and will not cause the remote peer
  to read an EOF. Instead, the remote peer will read an ErrReset error.
* Ensures we always either close or reset streams. Send wasn't closing the
  stream on some error paths.
* Now that stream closing is async, we explicitly wait for a response when
  "hanging up" on a peer (so we don't hang up before they receive our
  response/goodbye message).

* update bazel

* Gazelle

* revert unintentional bazel workspace change

* appease an overzealous linter

* update to latest

* Refactor encoder

* gazelle

* Gazelle

Co-authored-by: Preston Van Loon <preston@prysmaticlabs.com>
Co-authored-by: Nishant Das <nishdas93@gmail.com>
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
2020-12-14 17:22:25 +00:00
..
blockchain Remove unused vars in tests (#8103) 2020-12-13 05:23:13 +00:00
cache Update TestMain(): do not call os.Exit() explicitly (#8046) 2020-12-04 16:10:07 +00:00
core Update TestMain(): do not call os.Exit() explicitly (#8046) 2020-12-04 16:10:07 +00:00
db Restore database CLI command (#8061) 2020-12-07 21:36:43 +01:00
flags Add Fallback Option for Eth1 Nodes (#8062) 2020-12-11 19:15:04 +08:00
forkchoice Forkchoice: update read only lock to regular lock (#7633) 2020-10-24 16:35:18 +00:00
gateway Add Validator RPC Endpoint to Retrieve Beacon + Validator Logs Websocket Endpoints (#7981) 2020-11-27 18:28:45 +00:00
interop-cold-start Improve genesis event log and load blocks to fork choice log (#7946) 2020-12-01 00:06:16 +00:00
node Add Fallback Option for Eth1 Nodes (#8062) 2020-12-11 19:15:04 +08:00
operations Remove unused vars in tests (#8103) 2020-12-13 05:23:13 +00:00
p2p Update go-libp2p to 0.12.0 (#8015) 2020-12-14 17:22:25 +00:00
powchain Add Fallback Option for Eth1 Nodes (#8062) 2020-12-11 19:15:04 +08:00
rpc Attestation aggregation: remove proper set duplicates (#8063) 2020-12-11 11:13:14 +03:00
state Remove custom block body root and block root methods (#8069) 2020-12-09 12:11:42 -06:00
sync Update go-libp2p to 0.12.0 (#8015) 2020-12-14 17:22:25 +00:00
BUILD.bazel Restore database CLI command (#8061) 2020-12-07 21:36:43 +01:00
main.go Add Fallback Option for Eth1 Nodes (#8062) 2020-12-11 19:15:04 +08:00
README.md Fix Up READMEs for Mainnet (#7910) 2020-11-23 18:47:55 +00:00
usage_test.go Refactor dependencies, make Prysm "go gettable" (#6053) 2020-05-31 14:44:34 +08:00
usage.go Add Fallback Option for Eth1 Nodes (#8062) 2020-12-11 19:15:04 +08:00

Prysmatic Labs Beacon Chain Implementation

This is the main project folder for the beacon chain implementation of eth2 written in Go by Prysmatic Labs.

You can also read our main README and join our active chat room on Discord.

Discord

Also, read the official beacon chain specification, this design spec serves as a source of truth for the beacon chain implementation we follow at Prysmatic Labs.