v3.0.0
We are happy to announce Prysm v3.0.0. This is our merge release. All mainnet users MUST upgrade to this release before the Bellatrix fork by Sept 6, 2022, 11:34:47am UTC. Users who fail to upgrade will fork off from the canonical chain. We recommend upgrading to v3.0.0 at the earliest convenience. Asides from upgrades, users will need to make changes to the knowledge that's similar to previous testnets. We recommend the following preparation for the merge doc: https://docs.prylabs.network/docs/prepare-for-merge
Added
- Passing spectests v1.2.0-rc.3 #11261
- prysmctl: Generate genesis state via
prysmctl testnet generate-genesis [command options] [arguments...]
#11259 - Keymanager: Add support for setting the gas limit via API. #11155
- Merge: Mainnet merge epoch and TTD defined! #11207
- Validator: Added expected wait time for pending validator activation in log message. #11213
- Go: Prysm now uses proper versioning suffix
v3
for this release. GoDocs and downstream users can now import prysm as expected for go projects. #11083 - Builder API: Register validator via HTTP REST Beacon API endpoint
/eth/v1/validator/register_validator
#11225 - Cross compilation support for Mac ARM64 chips (Mac M1, M2) #10981
Changed
- Require an execution client
--execution-endpoint=...
. The default value has changed tolocalhost:8551
and you must use the jwt flag--jwt-secret=...
. Review the docs for more information #10921 --http-web3provider
has been renamed to--execution-endpoint
. Please update your configuration as--http-web3provider
will be removed in a future release. #11275 #11133- Insert attestations into forkchoice sooner #11260
- Builder API:
gas_limit
changed from int to string to support JSON / YAML configs.--suggested-gas-limit
changed from int to string. #11264 - Fork choice: Improved handling of double locks / deadlocks #11271 #11269
- Lower libp2p log level #11266
- Improved re-org logs with additional metadata #11253
- Improved error messages found by semgrep #11244
- Prysm Web UI updated to release v2.0.1 #11240
- Protobuf message renaming (non-breaking changes) #11096
- Enabled feature to use gohashtree by default. Disable with
--disable-vectorized-htr
#11229 #11224 - Enabled fork choice doubly linked tree feature by default. Disable with
--disable-forkchoice-doubly-linked-tree
#11212 - Remote signer: Renamed some field names to better represent block types (non-breaking changes for gRPC users, possibly breaking change for JSON API users) #11099
- Builder API: require header and payload root match. #11223
- Improved responses for json-rpc requests batching when using blinded beacon blocks. #11210
- Builder API: Improved error messages #11199
- Builder API: Issue warning when validator expects builder ready beacon node, but beacon node is not configured with a relay. #10203
- Execution API: Improved payload ID to handle reorg scenarios #11186
Deprecated
- Several features have been promoted to stable or removed. The following flags are now deprecated and will be removed in a future release.
--enable-db-backup-webhook
,--bolt-mmap-initial-size
,--disable-discv5
,--disable-attesting-history-db-cache
,--enable-vectorized-htr
,--enable-peer-scorer
,--enable-forkchoice-doubly-linked-tree
,--enable-duty-count-down
,--head-sync
,--enable-gossip-batch-aggregateion
,--enable-larger-gossip-history
,--fallback-web3provider
,--use-check-point-cache
. #11284 #11281 #11276 #11231 #10921 #11121 - Several beacon API endpoints marked as deprecated #10946
Removed
- Logging: Removed phase0 fields from validator performance log messages #11265
- Deprecated slasher protos have been removed #11257
- Deprecated beacon API endpoints removed:
GetBeaconState
,ProduceBlock
,ListForkChoiceHeads
,ListBlocks
,SubmitValidatorRegistration
,GetBlock
,ProposeBlock
#11251 #11243 #11242 #11106 - API: Forkchoice method
GetForkChoice
has been removed. #11105 - All previously deprecated feature flags have been removed.
--enable-active-balance-cache
,--correctly-prune-canonical-atts
,--correctly-insert-orphaned-atts
,--enable-next-slot-state-cache
,--enable-batch-gossip-verification
,--enable-get-block-optimizations
,--enable-balance-trie-computation
,--disable-next-slot-state-cache
,--attestation-aggregation-strategy
,--attestation-aggregation-force-opt-maxcover
,--pyrmont
,--disable-get-block-optimizations
,--disable-proposer-atts-selection-using-max-cover
,--disable-optimized-balance-update
,--disable-active-balance-cache
,--disable-balance-trie-computation
,--disable-batch-gossip-verification
,--disable-correctly-prune-canonical-atts
,--disable-correctly-insert-orphaned-atts
,--enable-native-state
,--enable-peer-scorer
,--enable-gossip-batch-aggregation
,--experimental-disable-boundry-checks
#11125 - Validator Web API: Removed unused ImportAccounts and DeleteAccounts rpc options #11086
Fixed
- Keymanager API: Status enum values are now returned as lowercase strings. #11194
- Misc builder API fixes #11228
- API: Fix GetBlock to return canonical block #11221
- Cache: Fix cache overwrite policy for bellatrix proposer payload ID cache. #11191
- Fixed string slice flags with file based configuration #11166
Security
- Upgrade your Prysm beacon node and validator before the merge!