Skip to content

@djrtwo djrtwo released this Jun 11, 2019 · 562 commits to master since this release


v0.7.0 marks an iterative semi-major release prior to the end-of-june phase 0 spec freeze ❄️ . The focus here is continued clean-up and simplification of phase 0 along with some testing, network, and ssz updates.

The spec implementation of SSZ had a major overhaul to support cleaner and more intuitive typing (thanks @protolambda!).

Phase 1 is now executable and a general framework exists for writing tests across phases (thanks @CarlBeek!).

Progress is being made on the phase 0 networking and RPC specs. This has been majorly a community effort. Thank you for the great work from many sources :)

Lastly, the deposit contract is now back in the specs repo to better handle PR dependencies (thanks @hwwhww!).


PR showing full diff can be found here: #1163

Phase 0

Beacon chain

  • features
    • Crosslink explicitly in AttestationData (#1044)
    • explicitly include state_transition() and other helper functions (#1018)
    • Crosslink stores start_epoch and end_epoch to enable phase 1 calculations (#1097)
  • simplifications
    • cleanup int_to_bytes to be generic (#1060)
    • verify_indexed_attestation -> validate_indexed_attestation (#1028)
    • remove get_state_root from beacon chain doc (#1015)
    • remove index from Deposit (#1122)
  • bugs
    • fix deposit domain (#1055)
    • avoid divisions by zero (#1123)
    • minor bugs related to ordering/typos/var-mismatch/etc (#1051)
  • misc

Fork choice

  • explicit note on how to compute fork choice near genesis (#1023)
  • minor formatting/types/etc PRs (#998)



  • use ssz union-type in RPC request/response (#974)
  • add initial libp2p standardization (#935)
  • minor formatting/types/etc PRs ()

Deposit contract

  • move deposit contract back to spec repo (#1127)
  • minor formatting/types/etc PRs (#1075, #1154)

Simple Serialize

  • clarity on merklization of a single chunk (#1058)
  • Fix union type example (#1073)
  • rewrite of SSZ to support more native typing (#1077)
  • misc (#1056, #1138, #1144)


  • insert bls spec warning into doc (#1103)
  • Warning: Bug exists in BLS hash to G2 in the current spec. The hash and increment approach will likely be deprecated after standardization so the bug is to be untouched for now

Significant changes still expected as we standardize BLS12-381 across blockchains

Phase 1 spec (warning: not stable)

  • minor changes to custody game (#866)
  • RANDAO reveal slashing, custody period staggering (#880)
  • allow multiple bit challenges and recovert withdrawability (#1035)
  • get_custody_chunk_count uses start_ and end_epoch (#1099)
  • clean up process_penalties_and_exits (#1116)
  • minor formatting/types/etc PRs (#1076, #1120)

Light client spec (warning: not stable)

  • no changes


  • add linter (#1065, #1081)
  • make phase 1 executable and allow for testing across multiple phases (#1061)
  • specify phase when running generators from tests (#1165)
  • misc (#1132, #1134)
Assets 2
You can’t perform that action at this time.