eth2.0-specs/presets
protolambda 291168e1e3
clarify config/preset separation, address review comments by @djrtwo
2021-05-19 17:15:34 +02:00
..
mainnet clarify config/preset separation, address review comments by @djrtwo 2021-05-19 17:15:34 +02:00
minimal clarify config/preset separation, address review comments by @djrtwo 2021-05-19 17:15:34 +02:00
README.md clarify config/preset separation, address review comments by @djrtwo 2021-05-19 17:15:34 +02:00

README.md

Presets

Presets are more extensive than runtime configurations, and generally only applicable during compile-time. Each preset is defined as a directory, with YAML files per fork.

Configurations can extend a preset by setting the PRESET_BASE variable. An implementation may choose to only support 1 preset per build-target and should validate the PRESET_BASE variable in the config matches the running build.

Standard presets:

  • mainnet/: Used in mainnet, mainnet-like testnets (e.g. Prater), and spec-testing
  • minimal/: Used in low-resource local dev testnets, and spec-testing

Client implementers may opt to support additional presets, e.g. for extra large beacon states for benchmarking. See /configs/ for run-time configuration, e.g. to configure a new testnet.

Forking

Like the config forking, the preset extends with every fork, instead of overwriting previous values. An implementation can ignore preset files as a whole for future forks, and can thus implement stricter compile-time warnings on unrecognized or missing variables in current forks.

Format

The preset format matches the config format.