Skip to content

Commit 7dd4718

Browse files
committed
Version 22.11.0
1 parent 69b6c6e commit 7dd4718

File tree

8 files changed

+112
-31
lines changed

8 files changed

+112
-31
lines changed

CHANGELOG.md

Lines changed: 91 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,90 @@
1+
2022-11-30 v22.11.0
2+
===================
3+
4+
Nimbus `v22.11.0` is a `low-urgency` release, bringing the first
5+
production-ready version of the [Nimbus validator client][1].
6+
The validator client will enable advanced users such as professional
7+
institutional operators to take advantage of features such as support
8+
for [redundant beacon nodes][2], [enhanced validator privacy][3] and
9+
[distributed keystores][4]. All existing users, currently relying on
10+
the streamlined stand-alone beacon node setup are not required to take
11+
action, as this mode of operation will continue to be supported and
12+
improved forever.
13+
14+
[1]: https://nimbus.guide/validator-client.html
15+
[2]: https://nimbus.guide/validator-client-options.html#multiple-beacon-nodes
16+
[3]: https://nimbus.guide/validator-client-options.html#sentry-node-setup
17+
[4]: https://github.com/status-im/nimbus-eth2/issues/3416
18+
19+
### Improvements
20+
21+
* The Nimbus validator client graduates from BETA to production-ready
22+
status after numerous improvements and fixes:
23+
24+
https://nimbus.guide/validator-client.html
25+
26+
* The Nimbus beacon node is now compatible with validator clients
27+
taking advantage of the `/eth/v1/beacon/blinded_blocks` end-point:
28+
29+
https://github.com/status-im/nimbus-eth2/pull/4286
30+
31+
* The validator keystore loading during start-up is now 3x faster:
32+
33+
https://github.com/status-im/nimbus-eth2/pull/4301
34+
35+
* The doppelganger detection will now protect validators added
36+
on the fly through the Keymanager API:
37+
38+
https://github.com/status-im/nimbus-eth2/pull/4304
39+
40+
* Fine-tuned internal task scheduling will provide better
41+
quality-of-service protections for performing all validator
42+
duties in the presence of syncing peers performing large
43+
number of concurrent block download requests:
44+
45+
https://github.com/status-im/nimbus-eth2/pull/4254
46+
47+
* The `--optimistic` mode of the beacon node will allow you to
48+
stay synced with the network even without an execution layer
49+
node:
50+
51+
https://nimbus.guide/optimistic-sync.html#optimistic-mode
52+
https://github.com/status-im/nimbus-eth2/pull/4262
53+
54+
Please note that this mode is less secure and intended only
55+
for non-critical information retrieval through the Beacon API.
56+
57+
### Fixes
58+
59+
* A small risk for missing block proposals was present under heavy
60+
forking activity in the network due to potential inclusion of
61+
inappropriate attestations in the produced blocks:
62+
63+
https://github.com/status-im/nimbus-eth2/pull/4273
64+
65+
* A new batching approach for the registration of validators in the
66+
builder network will prevent the creation of requests of excessive
67+
size that might be rejected by the network. This was a problem
68+
affecting testnet nodes running with thousands of validators:
69+
70+
https://github.com/status-im/nimbus-eth2/pull/4364
71+
72+
73+
### Deprecated features
74+
75+
* The `--finalized-checkpoint-block` has been deprecated.
76+
The client will now download only the latest finalized state
77+
during trusted node sync:
78+
79+
https://github.com/status-im/nimbus-eth2/pull/4251
80+
81+
* The end-points `/eth/v1/beacon/blocks/{block_id}`, `/eth/v1/debug/beacon/states/{state_id}`, and `/eth/v1/validator/blocks/{slot}`
82+
have been deprecated since they are no longer usable since
83+
the Altair hard-fork:
84+
85+
https://github.com/status-im/nimbus-eth2/pull/4279
86+
87+
188
2022-10-14 v22.10.1
289
===================
390

@@ -37,9 +124,9 @@ Nimbus `v22.10.0` is a `medium-urgency` release, continuing our briefly accelera
37124
* The `/eth/v2/validator/blocks/{slot}` API now features an optional `randao_reveal` parameter in accordance to the latest Beacon API spec:
38125
https://github.com/ethereum/beacon-APIs/pull/222
39126
https://github.com/status-im/nimbus-eth2/pull/3837
40-
127+
41128
* The `/eth/v1/beacon/blocks` API now supports SSZ-encoded payloads:
42-
https://github.com/status-im/nimbus-eth2/pull/4154
129+
https://github.com/status-im/nimbus-eth2/pull/4154
43130

44131
* The new metrics `beacon_block_builder_proposed`, `beacon_block_builder_missed_with_fallback` and `beacon_block_builder_missed_without_fallback` can help you track the successful and failed attempts to use the configured external block builder:
45132
https://github.com/status-im/nimbus-eth2/pull/4158
@@ -52,8 +139,8 @@ Nimbus `v22.10.0` is a `medium-urgency` release, continuing our briefly accelera
52139

53140
* If the chain was re-orged while Nimbus is shut down, this created a low risk that the client may become stuck on a non-canonical block:
54141
https://github.com/status-im/nimbus-eth2/pull/4161
55-
56-
* Nimbus was not serving the best possible light client updates when back-filling after a trusted node sync:
142+
143+
* Nimbus was not serving the best possible light client updates when back-filling after a trusted node sync:
57144
https://github.com/status-im/nimbus-eth2/pull/4195
58145

59146
### Upcoming breaking changes

beacon_chain/conf.nim

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -449,7 +449,7 @@ type
449449
name: "rest-max-headers-size" .}: Natural
450450

451451
keymanagerEnabled* {.
452-
desc: "Enable the REST keymanager API (BETA version)"
452+
desc: "Enable the REST keymanager API"
453453
defaultValue: false
454454
name: "keymanager" .}: bool
455455

@@ -540,16 +540,16 @@ type
540540
name: "terminal-total-difficulty-override" .}: Option[string]
541541

542542
validatorMonitorAuto* {.
543-
desc: "Automatically monitor locally active validators (BETA)"
543+
desc: "Automatically monitor locally active validators"
544544
defaultValue: false
545545
name: "validator-monitor-auto" .}: bool
546546

547547
validatorMonitorPubkeys* {.
548-
desc: "One or more validators to monitor - works best when --subscribe-all-subnets is enabled (BETA)"
548+
desc: "One or more validators to monitor - works best when --subscribe-all-subnets is enabled"
549549
name: "validator-monitor-pubkey" .}: seq[ValidatorPubKey]
550550

551551
validatorMonitorTotals* {.
552-
desc: "Publish metrics to single 'totals' label for better collection performance when monitoring many validators (BETA)"
552+
desc: "Publish metrics to single 'totals' label for better collection performance when monitoring many validators"
553553
defaultValue: false
554554
name: "validator-monitor-totals" .}: bool
555555

@@ -860,7 +860,7 @@ type
860860
name: "suggested-fee-recipient" .}: Option[Address]
861861

862862
keymanagerEnabled* {.
863-
desc: "Enable the REST keymanager API (BETA version)"
863+
desc: "Enable the REST keymanager API"
864864
defaultValue: false
865865
name: "keymanager" .}: bool
866866

@@ -886,18 +886,18 @@ type
886886
name: "keymanager-token-file" .}: Option[InputFile]
887887

888888
metricsEnabled* {.
889-
desc: "Enable the metrics server"
889+
desc: "Enable the metrics server (BETA)"
890890
defaultValue: false
891891
name: "metrics" .}: bool
892892

893893
metricsAddress* {.
894-
desc: "Listening address of the metrics server"
894+
desc: "Listening address of the metrics server (BETA)"
895895
defaultValue: defaultAdminListenAddress
896896
defaultValueDesc: $defaultAdminListenAddressDesc
897897
name: "metrics-address" .}: ValidIpAddress
898898

899899
metricsPort* {.
900-
desc: "Listening HTTP port of the metrics server"
900+
desc: "Listening HTTP port of the metrics server (BETA)"
901901
defaultValue: 8108
902902
name: "metrics-port" .}: Port
903903

@@ -913,12 +913,12 @@ type
913913
name: "stop-at-epoch" .}: uint64
914914

915915
payloadBuilderEnable* {.
916-
desc: "Enable usage of beacon node with external payload builder"
916+
desc: "Enable usage of beacon node with external payload builder (BETA)"
917917
defaultValue: false
918918
name: "payload-builder" .}: bool
919919

920920
beaconNodes* {.
921-
desc: "URL addresses to one or more beacon node HTTP REST APIs",
921+
desc: "URL addresses to one or more beacon node HTTP REST APIs (The support for using multiple beacon nodes is considered BETA quality)",
922922
defaultValue: @[defaultBeaconNodeUri]
923923
defaultValueDesc: $defaultBeaconNodeUri
924924
name: "beacon-node" .}: seq[Uri]
@@ -973,19 +973,19 @@ type
973973
name: "request-timeout" .}: int
974974

975975
bindPort* {.
976-
desc: "Port for the REST (BETA version) HTTP server"
976+
desc: "Port for the REST HTTP server"
977977
defaultValue: defaultEth2RestPort
978978
defaultValueDesc: $defaultEth2RestPortDesc
979979
name: "bind-port" .}: Port
980980

981981
bindAddress* {.
982-
desc: "Listening address of the REST (BETA version) HTTP server"
982+
desc: "Listening address of the REST HTTP server"
983983
defaultValue: defaultAdminListenAddress
984984
defaultValueDesc: $defaultAdminListenAddressDesc
985985
name: "bind-address" .}: ValidIpAddress
986986

987987
tlsEnabled* {.
988-
desc: "Use secure TLS communication for REST (BETA version) server"
988+
desc: "Use secure TLS communication for REST server"
989989
defaultValue: false
990990
name: "tls" .}: bool
991991

beacon_chain/version.nim

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,8 @@ when not defined(nimscript):
2020

2121
const
2222
versionMajor* = 22
23-
versionMinor* = 10
24-
versionBuild* = 1
23+
versionMinor* = 11
24+
versionBuild* = 0
2525

2626
versionBlob* = "stateofus" # Single word - ends up in the default graffiti
2727

docs/the_nimbus_book/src/keymanager-api.md

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,5 @@
11
# Keymanager API
22

3-
!!! warning
4-
This feature is currently in BETA - we are still testing it and implementation details may change in response to community feedback. **We strongly advise against using it on mainnet** - your validators may get slashed
5-
63
The standardized [Keymanager API](https://ethereum.github.io/keymanager-APIs/) can be used to add, remove, or [migrate](./migration.md) validators on the fly while the beacon node is running.
74

85
As of `v1.7.0` it supports `web3signer` keystores.

docs/the_nimbus_book/src/options.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ The following options are available:
8282
[=infinite].
8383
--rest-max-body-size Maximum size of REST request body (kilobytes) [=16384].
8484
--rest-max-headers-size Maximum size of REST request headers (kilobytes) [=64].
85-
--keymanager Enable the REST keymanager API (BETA version) [=false].
85+
--keymanager Enable the REST keymanager API [=false].
8686
--keymanager-port Listening port for the REST keymanager API [=5052].
8787
--keymanager-address Listening port for the REST keymanager API [=127.0.0.1].
8888
--keymanager-allow-origin Limit the access to the Keymanager API to a particular hostname (for
@@ -106,11 +106,11 @@ The following options are available:
106106
a validator with the same index (a doppelganger), before sending an attestation
107107
itself. This protects against slashing (due to double-voting) but means you will
108108
miss two attestations when restarting. [=true].
109-
--validator-monitor-auto Automatically monitor locally active validators (BETA) [=false].
109+
--validator-monitor-auto Automatically monitor locally active validators [=false].
110110
--validator-monitor-pubkey One or more validators to monitor - works best when --subscribe-all-subnets is
111-
enabled (BETA).
111+
enabled.
112112
--validator-monitor-totals Publish metrics to single 'totals' label for better collection performance when
113-
monitoring many validators (BETA) [=false].
113+
monitoring many validators [=false].
114114
--suggested-fee-recipient Suggested fee recipient.
115115
--payload-builder Enable external payload builder [=false].
116116
--payload-builder-url Payload builder URL.

docs/the_nimbus_book/src/validator-client.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# Run a separate validator client
22

33
!!! warning
4-
This feature is currently in BETA - we are still testing it and implementation details may change in response to community feedback. **We strongly advise against using it on mainnet** - your validators may get slashed
4+
Some features of the validator client, such as the metrics server, are currently in BETA and details may change in response to community feedback. Please consult the `--help` screen for more details.
55

66
By default, Nimbus integrates the validator client into the main beacon node process - this is a simple, safe and efficient way to run a validator.
77

docs/the_nimbus_book/src/validator-monitor.md

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,5 @@
11
# Validator monitoring
22

3-
!!! warning
4-
This feature is currently in BETA - implementation details such as metric names and counters may change in response to community feedback.
5-
63
The validator monitoring feature allows for tracking the life-cycle and performance of one or more validators in detail.
74

85
Monitoring can be carried out for any validator, with slightly more detail for validators that are running in the same beacon node.

vendor/nimbus-build-system

0 commit comments

Comments
 (0)