Giulio rebuffo
7b58dab998
Added LightClient Containers ( #9222 )
2024-01-13 01:12:02 +01:00
Bayram Guvanjov
a191296f05
Deneb integration to Caplin ( #9093 )
...
Pr is ready to review and merge.
This PR includes implementing and integrating Ethereum Deneb's hard work
with the Caplin Ethereum client.
Changes:
- Full compatibility with Deneb Ethereum hard fork
- Added new EIPs introduced in Deneb. (`EIP-4788`, `EIP-4844`,
`EIP-7044`, `EIP-7045`, `EIP-7514`)
- Tests integration
---------
Co-authored-by: Giulio <giulio.rebuffo@gmail.com>
2024-01-12 14:20:26 +01:00
Giulio rebuffo
284aa1dd0c
Added EthV1AggregateAndProofs API ( #9192 )
...
Added publishing of aggregates and proofs
2024-01-10 17:15:58 +01:00
Giulio rebuffo
18baf81b78
Caplin: Fixed Invalid reading for historical states ( #9124 )
2024-01-03 23:26:56 +01:00
Giulio rebuffo
3d10cee49b
Make Caplin work with Otterscan ( #9115 )
...
* Fixed mispelling in json fields
* Added CORS
2024-01-02 23:29:00 +01:00
Giulio rebuffo
13da868591
Added RANDAO Api ( #9108 )
2024-01-01 22:18:11 +01:00
a
bab123c07a
more endpoints ( #9109 )
2024-01-01 21:11:31 +01:00
Giulio rebuffo
46ecf030f5
Added GET /eth/v1/beacon/rewards/blocks/{block_id} and POST /eth/v1/beacon/rewards/sync_committee/{block_id} ( #9102 )
...
* Changed slightly archive format (again)
* Added all of the remaining rewards endpoints
2023-12-30 20:51:28 +01:00
Giulio rebuffo
cdb4731ae8
Added Validators endpoint to Beacon API ( #9080 )
...
* Added /validators retrieval to beacon api
* fixed race in sentinel
* fixed possible UB in gossip management
2023-12-26 00:34:38 +01:00
Giulio rebuffo
a4d7b6d33f
Switched Caplin snapshot format to ZSTD blinded blocks ( #9058 )
...
* Chunked format -> blinded
* LZ4 -> ZSTD
* Implemented parent block root support for history download
* Rationale: Allows to optimize GC collection easily on state
reconstruction and it allows to read fast attestations in historical
states reader
2023-12-23 15:56:35 +01:00
Giulio rebuffo
6a1bb1dff1
Added Blinded blocks type and Beacon endpoints ( #9002 )
...
* Added blinded block for internal uses
* Added blinded block to the Beacon API
2023-12-17 00:22:47 +01:00
Giulio rebuffo
24987878e4
Resumable beacon state reconstruction ( #8918 )
...
* Most of the PR changed files are extra and slightly more complicated
unit tests.
* Fixed Eth1DataVotes not inheriting genesis
* Fixed Attestations simulation using wrong slot when reconstructing
partecipation
* Fixed Copy() operation on BeaconState on Eth1DataVotes
* Used correct ListSSZ type for Eth1DataVotes and HistoricalSummaries
* Fixed wrong []uint64 deltas on empty slots
2023-12-11 14:07:57 +01:00
Giulio rebuffo
c477281362
Caplin: Parallel historical states reconstruction ( #8817 )
...
What does this PR do:
* Optional Backfilling and Caplin Archive Node
* Create antiquary for historical states
* Fixed gaps of chain gap related to the Head of the chain and anchor of
the chain.
* Added basic reader object to Read the Historical state
2023-12-06 10:48:36 +01:00
Giulio rebuffo
57bcbaa21f
Adds flags to enable/disable backfilling and enable full historical beacon node ( #8813 )
...
* Correct naming of hash func in Eth2
* Customizable mode of operation for Caplin
2023-11-22 13:24:35 +01:00
Giulio rebuffo
b72b5b95c5
working debug/state/ for early states ( #8767 )
...
Added jsonification to beacon state
2023-11-18 03:08:19 +01:00
Giulio rebuffo
d7448fdb3f
Added functional beacon snapshots reader and generator to Caplin ( #8570 )
...
This PR adds beacon blocks snapshots and beacon blocks snapshot
generator to Caplin, plus a snapshot verifier CLI
2023-10-24 21:32:29 +02:00
a
436493350e
Sentinel refactor ( #8296 )
...
1. changes sentinel to use an http-like interface
2. moves hexutil, crypto/blake2b, metrics packages to erigon-lib
2023-10-22 01:17:18 +02:00
Giulio rebuffo
343479988c
Caplin <-> MDBX ( #8470 )
2023-10-18 23:10:53 +02:00
Giulio rebuffo
54ce971084
Added separate Withdrawal data type to Caplin ( #8474 )
...
Reason: JSON formatting
2023-10-14 17:59:52 +02:00
Giulio rebuffo
a62796ab4d
Added block snapshot format (attempt for Caplin) ( #8357 )
...
Added block snapshot format
2023-10-03 23:50:43 +02:00
Giulio rebuffo
72ba18bd36
Beacon: Added basic operations pool ( #8309 )
...
Added operation pools for beacon chain. operations are the equivalent of
txs for eth2
Added operation pools for:
* Attester Slashings
* Proposer Slashings
* VoluntaryExits
* BLSExecutionToChange
* Postponed to later: Attestations (or maybe not)
2023-09-29 23:42:07 +02:00
Giulio rebuffo
d62ef03cad
Added states/fork and states/root to beacon API ( #8293 )
...
Added /eth/v1/beacon/states/{state_id}/root and
/eth/v1/beacon/states/{state_id}/fork
2023-09-27 11:15:51 +02:00
Giulio rebuffo
a95914df26
Added blocks API and attestations API ( #8279 )
2023-09-24 01:44:26 +02:00
Giulio rebuffo
13720af42c
Caplin: Implemented internal tree for ValidatorSet ( #8234 )
2023-09-22 12:16:19 +02:00
Giulio rebuffo
6c22b77451
Added /config route to the beacon api ( #8168 )
2023-09-09 15:33:23 +02:00
Giulio rebuffo
b92f6d9814
Finished jsonification of solid package ( #8163 )
2023-09-08 23:02:34 +02:00
Giulio rebuffo
4733f7fb52
Added json tags to beacon block ( #8162 )
2023-09-08 22:26:02 +02:00
Giulio rebuffo
841327e212
BeaconAPI: Implemented /Spec ( #8131 )
2023-09-05 22:37:18 +02:00
Giulio rebuffo
825be2ac11
Beacon API: added /headers methods ( #8112 )
2023-09-01 15:29:17 +02:00
Giulio rebuffo
93cdbae2e5
Caplin<->Erigon: Added Range methods ( #8087 )
2023-08-29 02:37:30 +02:00
Giulio rebuffo
cab6d30322
Caplin's Persistence data format ( #8028 )
2023-08-16 23:03:25 +02:00
Giulio rebuffo
e3a59ed902
Better caplin logging and logic ( #7992 )
2023-08-10 22:34:58 +02:00
Andrew Ashikhmin
7d35c6b737
EIP-4844: Rename "data gas" to "blob gas" ( #7937 )
...
See https://github.com/ethereum/EIPs/pull/7354 &
https://github.com/ethereum/consensus-specs/pull/3461 . Prerequisite:
https://github.com/ledgerwatch/erigon-lib/pull/1058
2023-07-28 12:12:05 +02:00
Enrique Jose Avila Asapche
bff1e0e901
[Caplin] Added json rpc cl ( #7836 )
...
Allows for Caplin to be used with other ELs from aside of Erigon
---------
Co-authored-by: Giulio <giulio.rebuffo@gmail.com>
2023-07-08 16:42:30 +02:00
Giulio rebuffo
cefbf18088
Fixed grpcing of block ( #7717 )
2023-06-12 21:55:13 +02:00
Giulio rebuffo
63006611ec
Added concurrent bls ( #7709 )
2023-06-12 00:40:03 +02:00
Enrique Jose Avila Asapche
eac9ead6fe
[Caplin] added deneb into converting payload to grpc ( #7708 )
...
Added so now we can have version 3 payloads preparing for Deneb
2023-06-11 19:34:06 +02:00
Giulio rebuffo
e11c8192f8
fixed deneb for devnet 6 ( #7650 )
2023-06-04 00:36:16 +02:00
Andrew Ashikhmin
190bc9dfd8
EIP-4844: add data_gas_used ( #7639 )
...
Implement https://github.com/ethereum/EIPs/pull/7062 and
https://github.com/ethereum/EIPs/pull/7095 . Pick up
https://github.com/ledgerwatch/erigon-lib/pull/1006 .
2023-06-02 21:26:19 +01:00
Giulio rebuffo
6602c89e32
[Caplin] Fixed checkpoints on orphaned chains ( #7613 )
2023-06-02 14:54:40 +02:00
Giulio rebuffo
8bc1fda4ea
Caplin: mutable public key for validator for 0 copy ( #7622 )
...
Co-authored-by: a <a@tuxpa.in>
2023-06-02 01:21:15 +02:00
Enrique Jose Avila Asapche
94276deaf6
Caplin: added tests ( #7623 )
...
Added CL tests to have test coverage over 60% in all files covered by
running ssh ./cl/coverage
2023-06-02 01:21:08 +02:00
Giulio rebuffo
2d3b3c3b8d
Caplin: Proper validator set ( #7591 )
...
Adding proper flat buffer to Caplin
2023-05-28 17:11:18 +02:00
Giulio rebuffo
faf62a0c11
Caplin: Adding SSZ generics ( #7542 )
...
This PR makes the SSZ encodings less demented and more compact/flexible
overall
2023-05-23 20:58:34 +02:00
Giulio rebuffo
dfadf495cf
Flat buffers for Attestations and Cached roots ( #7512 )
2023-05-15 00:12:24 +02:00
a
233a06a8a0
[caplin] bug fix in bitlist ( #7505 )
2023-05-13 15:56:55 +02:00
Roberto Bayardo
8356f3a320
use ssz from updated erigon-lib ( #7490 )
...
ssz/clonable interfaces have been moved to erigon-lib so they can be
shared with the txpool code there
2023-05-11 12:54:20 +01:00
a
37da9ec1e3
[caplin] ssz byteobjects ( #7454 )
...
instead of converting from ssz -> struct -> ssz, it may be better to
just stay as ssz, then use methods to read the data.
this pr explores this concept, while maintaining compatiblity with the
existing codebase.
2023-05-10 21:37:50 +02:00
Enrique Jose Avila Asapche
4f56247610
made KZGCommitment constant and SSZ compatiable ( #7465 )
...
Co-authored-by: alex.sharov <AskAlexSharov@gmail.com>
2023-05-10 14:40:19 +07:00
Andrew Ashikhmin
771c6fc202
Rename Serenity consensus engine to Merge ( #7475 )
...
[EIP-2982](https://eips.ethereum.org/EIPS/eip-2982 ) "Serenity Phase 0"
was superseded by [EIP-3675](https://eips.ethereum.org/EIPS/eip-3675 )
"Upgrade consensus to Proof-of-Stake"
2023-05-09 18:45:33 +01:00