Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

release v1.3.0-rc.2 #3234

Merged
merged 59 commits into from
Jan 27, 2023
Merged

release v1.3.0-rc.2 #3234

merged 59 commits into from
Jan 27, 2023

Conversation

hwwhww
Copy link
Contributor

@hwwhww hwwhww commented Jan 27, 2023

DO NOT MERGE

todo:

  • bump VERSION.txt
  • testgen

Introduce `get_lc_beacon_slot` and `get_lc_beacon_root` accessors
similar to `get_current_slot(state)` to account for future extensions
to the light client header structure that may override how those fields
are accessed. Idea is to extend with execution accessors in the future.
While the light client sync protocol currently provides access to the
latest `BeaconBlockHeader`, obtaining the matching execution data needs
workarounds such as downloading the full block.

Having ready access to the EL state root simplifies use cases that need
a way to cross-check `eth_getProof` responses against LC data.

Access to `block_hash` unlocks scenarios where a CL light client drives
an EL without `engine_newPayload`. As of Altair, only the CL beacon
block root is available, but the EL block hash is needed for engine API.

Other fields in the `ExecutionPayloadHeader` such as `logs_bloom` may
allow light client applications to monitor blocks for local interest,
e.g. for transfers affecting a certain wallet. This enables to download
only the few relevant blocks instead of every single one.

A new `LightClientStore` is proposed into the Capella spec that may be
used to sync LC data that includes execution data. Existing pre-Capella
LC data will remain as is, but can be locally upgraded before feeding it
into the new `LightClientStore` so that light clients do not need to run
a potentially expensive fork transition at a specific time. This enables
the `LightClientStore` to be upgraded at a use case dependent timing at
any time before Capella hits. Smart contract and embedded deployments
benefit from reduced code size and do not need synchronization with the
beacon chain clock to perform the Capella fork.
etan-status and others added 26 commits January 13, 2023 20:11
Updates the EL block hash computation for pytests to match latest spec.
Notably, use `Gwei` for `Withdrawal` amount consistently.
Also fix `excess_data_gas` not being correctly accounted for.

ethereum/execution-apis#354
ethereum/EIPs#6325
Add `ExecutionPayloadHeader` to LC data
Co-authored-by: Hsiao-Wei Wang <hsiaowei.eth@gmail.com>
EIP4844: Handle barycentric evaluation at roots of unity
Use `Gwei` for `Withdrawal` amount in mock-EE
Remove kzg point and blob validations in gossip
Add genesis_block to get_forkchoice_store() params
Co-authored-by: Danny Ryan <dannyjryan@gmail.com>
@hwwhww hwwhww merged commit 67c2f9e into master Jan 27, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants