Commit Graph

8701 Commits

Author SHA1 Message Date
Jacek Sieka
f2ad012cef spelling bee and lint torture 2023-09-19 14:23:08 +02:00
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
ce240ca795 Merge pull request #3505 from ethereum/bump-version
bump version.txt to 1.4.0-beta.2
2023-09-18 23:01:19 +08:00
Hsiao-Wei Wang
c88cf05358 Merge pull request #3499 from dapplion/limit-churn-inbound
Add max epoch activation churn limit (EIP-7514) to Deneb
2023-09-18 23:01:03 +08:00
Hsiao-Wei Wang
264dfadfe0 Merge branch 'dev' into pr3499 2023-09-18 18:07:39 +08:00
Hsiao-Wei Wang
206c328aa3 bump version.txt to 1.4.0-beta.2 2023-09-18 10:07:29 +08:00
Hsiao-Wei Wang
a0a512d821 Merge pull request #3484 from ethereum/rename-small-suite
Rename BLS/KZG suite name
2023-09-16 11:47:42 +08:00
Hsiao-Wei Wang
e8041749a2 Apply PR feedback. Rename inbound_limit to activation_limit 2023-09-15 22:05:26 +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
96d8c052ab Merge pull request #3503 from ethereum/fix-link
Update the link of `EIP-7044`
2023-09-15 11:21:33 +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
Lion - dapplion
f165d39472 Update mainnet.yaml 2023-09-14 16:31:12 +02:00
dapplion
a56c4d026f add extension 2023-09-14 13:47:11 +02:00
dapplion
19bf51dd93 Rename eip7668 to eip7514 2023-09-14 13:44:32 +02:00
Hsiao-Wei Wang
28286e7e5f Fix tests 2023-09-14 19:05:31 +08:00
Hsiao-Wei Wang
8878a316c4 Fix test_process_voluntary_exit.py 2023-09-13 19:05:01 +08: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
cc3ced5965 Enable eip7668 pytest 2023-09-12 21:48:35 +08: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
Hsiao-Wei Wang
7a53194e09 Merge pull request #3494 from terencechain/rm-old-warnings
remove: old warnings
2023-09-08 08:21:26 +08:00
Hsiao-Wei Wang
06851de02d Merge branch 'dev' into pr3494 2023-09-06 12:55:55 +08:00
Hsiao-Wei Wang
25c8aba99c Merge pull request #3495 from ethereum/curdleproofs
Pin `curdleproofs==0.1.1`
2023-09-06 11:59:52 +08:00
Hsiao-Wei Wang
3eaa184fc7 Pin curdleproofs==0.1.1 2023-09-06 11:36:35 +08:00
terence tsao
59680c0470 remove: old warnings 2023-09-05 08:59:14 -07:00
Hsiao-Wei Wang
e3a939e439 Merge pull request #3485 from dapplion/whisk-config-move
Whisk: update preset and config files with moved values
2023-08-23 00:00:17 +08:00
dapplion
6a944a60f3 Update preset and config files 2023-08-21 11:58:08 +02:00
Hsiao-Wei Wang
fc03e8f714 Rename BLS/KZG suite name 2023-08-20 12:27:19 -06: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
Hsiao-Wei Wang
ef434e8716 Merge pull request #3473 from wenceslas-sanchez/multiprocessing-side-effect
🐛 Potential side effects with multiprocessing mode
2023-08-15 20:40:57 +08:00
Hsiao-Wei Wang
8a64a90103 Merge pull request #3476 from zhiqiangxu/fix_wording_about_slashing
fix wording about slashing: "can slashable" => "can be slashable"
2023-08-09 23:17:53 +08:00
zhiqiangxu
6f57e2bd26 "can slashable" => "can be slashable" 2023-08-09 11:13:39 +08:00
WenceslasSANCHEZ
875fabcbd0 🐛 remove lambda definition from generate_from_tests 2023-08-06 14:13:11 +02:00
Hsiao-Wei Wang
fa1015ca03 Update Capella FC too 2023-08-04 21:58:07 +08:00
Hsiao-Wei Wang
1904b47e3e Add test_proposer_boost_is_first_block test case 2023-08-04 21:41:57 +08:00
Hsiao-Wei Wang
63c39dbaff Merge branch 'dev' into pr3352 2023-08-04 14:45:47 +08:00
Hsiao-Wei Wang
8d6a40522c Merge pull request #3468 from wenceslas-sanchez/dev
🐛 Fix redundant SSZ generic tests
2023-08-04 14:29:10 +08:00
Wenceslas Sanchez
522ab42064 Update tests/generators/ssz_generic/ssz_container.py
Co-authored-by: Hsiao-Wei Wang <hsiaowei.eth@gmail.com>
2023-08-03 21:14:45 +02:00
WenceslasSANCHEZ
5612e7a9ee ♻️ refactor 2023-08-03 18:19:33 +02:00
Dmitrii Shmatko
36d9ea6cd1 Fix dimension of nodeId and remove outdated comment (#3445)
* Fix dimension of nodeId and remove incorrect comment

* Remove debugging
2023-08-04 00:12:07 +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
fb6297b8b1 Merge pull request #3471 from potuz/fix_kzg_format_desc
fix test format descrition
2023-08-03 19:13:13 +08:00
Potuz
b30990330f Danny's fix 2023-08-02 14:16:31 -03:00