Jacek Sieka
fe95d7cb6d
ssz: `byte` type and canonical JSON mapping
...
This PR introduces a new `byte` type equivalent in all aspects to
`uint8` except that it has additional intent and display semantics
attached.
On top of this, the PR adds a canonical JSON mapping to the SSZ
specification, documenting current usage of JSON in tests, API:s and
simplifying future interop work between clients and adjacent
specifications such as the Beacon API. The encoding is appropriate to
use with YAML as well.
As an important property, this mapping contains a 1:1 mapping of SSZ
type to JSON encoding - this allows round-tripping any object between
JSON and SSZ based on the SSZ schema and usage of the core SSZ types
alone.
The encoding presented in this PR is used in tests and API:s with one
exception: the `ParticipationFlags` type from the Altair spec - it is
recommended we switch encoding in tests and eventually the beacon API to
address this irregularity, so as to avoid a proliferation "special"
primitive types in the SSZ spec that only appear in particular schemas
(and thus making validating general-purpose `SSZ/JSON` parsers more
complex) as well as differences in encoding between fields of the same
SSZ type.
The PR also clarifies that the introduction of new aliases does not lead
to changes in their canonical JSON specification - this allows building
general SSZ/JSON libraries that do not further depend on open-ended
knowledge about aliases.
This PR should be seen as an alternative to
https://github.com/ethereum/consensus-specs/pull/2983 .
2023-09-19 14:11:42 +02:00
Hsiao-Wei Wang
264dfadfe0
Merge branch 'dev' into pr3499
2023-09-18 18:07:39 +08:00
Hsiao-Wei Wang
26d3fa3efd
Apply suggestions from code review
...
Co-authored-by: danny <dannyjryan@gmail.com>
2023-09-15 22:02:34 +08:00
Hsiao-Wei Wang
d26dac9121
Merge pull request #3493 from mxinden/patch-1
...
fix(sepcs/p2p): link to libp2p Yamux specification
2023-09-15 16:00:27 +08:00
Hsiao-Wei Wang
468ae9aae4
Update the link of `EIP-7044`
2023-09-15 11:04:08 +08:00
Hsiao-Wei Wang
e5e50e3e40
Add EIP-7514 into Deneb
2023-09-15 10:49:06 +08:00
Max Inden
909388ba8d
fix(sepcs/p2p): link to libp2p Yamux specification
...
Previously the specification would link to the Hashicorp Yamux specification.
https://github.com/hashicorp/yamux/blob/master/spec.md
Since adoption by libp2p, there have been multiple refinements to the original specification. The improved specification can be found in the libp2p specification repository.
https://github.com/libp2p/specs/blob/master/yamux/README.md
2023-09-14 17:08:44 +02:00
Lion - dapplion
0efd778594
Update beacon_chain.md
2023-09-14 16:31:42 +02:00
dapplion
19bf51dd93
Rename eip7668 to eip7514
2023-09-14 13:44:32 +02:00
Hsiao-Wei Wang
417b95c3e6
Add basic activation churn limit tests
2023-09-13 17:14:26 +08:00
dapplion
298a6304de
review PR
2023-09-13 11:00:22 +02:00
Hsiao-Wei Wang
fd37ffcb61
Add _features/eip7668 and make linter happy
2023-09-12 21:37:09 +08:00
dapplion
e6f7c99b77
Add limit inbound churn
2023-09-12 12:52:08 +02:00
Hsiao-Wei Wang
c5c7233e49
Merge pull request #3352 from michaelsproul/boost-first-block
...
Apply proposer boost to first block in case of equivocation
2023-09-12 10:56:58 +08:00
terence tsao
59680c0470
remove: old warnings
2023-09-05 08:59:14 -07:00
Lion - dapplion
eef61448a9
Whisk: don't mutate candidates during cooldown ( #3483 )
2023-08-20 14:46:22 +03:00
Lion - dapplion
0b751fc259
Whisk move non-preset values to config ( #3482 )
2023-08-20 14:42:12 +03:00
zhiqiangxu
6f57e2bd26
"can slashable" => "can be slashable"
2023-08-09 11:13:39 +08:00
Hsiao-Wei Wang
fa1015ca03
Update Capella FC too
2023-08-04 21:58:07 +08:00
Hsiao-Wei Wang
63c39dbaff
Merge branch 'dev' into pr3352
2023-08-04 14:45:47 +08:00
Hsiao-Wei Wang
56d6d1a51e
Merge pull request #3463 from ethereum/deneb-fc-tests-take-2
...
Deneb fork choice tests - take 2
2023-08-03 21:40:24 +08:00
Hsiao-Wei Wang
e79caff2f7
Clean up `is_data_available`. Remove the stub `retrieve_blobs_and_proofs` responses.
2023-07-25 23:32:55 +08:00
Hsiao-Wei Wang
01c358c873
Rename "data gas" to "blob gas"
2023-07-25 13:28:34 +08:00
Danny Ryan
726b453332
Merge pull request #3446 from ppopth/on-reused-index
...
EIP-6914: Update the equivocating indices in the fork-choice store
2023-07-24 13:40:45 -06:00
Suphanat Chunhapanya
d8b023c5d8
Explain more on on_reused_index
2023-07-18 19:55:18 +07:00
Justin Traglia
16b1afb1ef
Add punctuation to docstring
2023-07-15 17:53:10 +02:00
Justin Traglia
fafd48f06a
Fix comment
2023-07-15 17:30:08 +02:00
Justin Traglia
3f3d4123f6
Unmark validators field as modified
2023-07-15 17:09:06 +02:00
Justin Traglia
86a147a740
Link to dev branch instead of master
2023-07-15 14:13:07 +02:00
Justin Traglia
4ddaff5a77
Fix links to curdleproofs.pie repo
2023-07-15 13:58:04 +02:00
Suphanat Chunhapanya
3ed0619951
Update the equivocating indices in the store
...
Since we sometimes reuse the slashed validator index, we need to remove
it from the list of equivocating indices in the fork-choice store.
2023-07-11 21:49:24 +07:00
Hsiao-Wei Wang
7b771ccb13
Merge branch 'dev' into eip7002
2023-06-26 18:07:48 +08:00
Danny Ryan
fa649e5430
Update specs/deneb/beacon-chain.md
2023-06-22 10:02:23 -06:00
Danny Ryan
ad4f1def32
Apply suggestions from code review
2023-06-22 10:01:49 -06:00
Alex Stokes
2660af0539
move 4788 feature to deneb specs
2023-06-22 09:00:50 -06:00
Alex Stokes
57a75d033f
formatting
2023-06-21 11:40:54 -06:00
Danny Ryan
95f36d99cf
Merge pull request #3360 from ethereum/att-slot-range
...
EIP-7045: Increase max attestation inclusion slot
2023-06-21 08:30:26 -06:00
djrtwo
ecefe2d147
pr review
2023-06-20 15:50:20 -06:00
djrtwo
668568ea22
spelling
2023-06-19 12:05:49 -06:00
djrtwo
919052081b
toc
2023-06-19 08:33:05 -06:00
Lion - dapplion
c90d724392
Whisk: add preset files ( #3424 )
...
* Add Whisk preset files
* Use N=8 for minimal preset
* Update spec_object var location
2023-06-19 17:10:15 +03:00
Lion - dapplion
cc4c810b8f
Whisk: complete TODO items in fork logic ( #3427 )
...
* Complete TODO items in fork logic
* Simpler underflow protection
* Add saturating_sub
2023-06-19 17:08:51 +03:00
Hsiao-Wei Wang
59fd2a6400
Merge branch 'dev' into eip7002
2023-06-18 16:40:17 +08:00
Hsiao-Wei Wang
781cd83f09
fix typo
2023-06-16 17:21:34 +08:00
Hsiao-Wei Wang
66eca39533
Merge branch 'dev' into pr3311
2023-06-16 16:24:55 +08:00
Lion - dapplion
834f6f70e7
Whisk: assert zeroed values during selection gap ( #3425 )
...
* Assert zeroed values during selection gap
* Update comment
2023-06-15 14:33:28 +03:00
djrtwo
ec4bdae2d4
build EIP 7045 into Deneb fork
2023-06-14 15:03:28 -06:00
Lion - dapplion
65a28b6d69
Whisk: Move validator whisk trackers and commitments to state ( #3407 )
...
* Move validator whisk trackers and commitments to state
* Move comment
2023-06-14 18:58:57 +03:00
Lion - dapplion
0ab160bc28
Add initialize_beacon_state_from_eth1 ( #3428 )
2023-06-14 18:55:07 +03:00
Lion - dapplion
7b132c20d1
Fix typos in get_shuffle_indices ( #3426 )
2023-06-14 18:52:22 +03:00