go-ethereum/les
Morty 365b82953d
feat: add system config consensus to deprecate clique (#1102)
* feat: add system config consensus to deprecate poa

* fix: check extra field lens

* Finish implementation with one signer only

* Implement unit tests

* Only check signature if block not requested

* Remove Extra from rlp encoding (and hashing)

* Implement UpgradableEngine as middleware for Clique/SystemContract

* Use isEuclid, add json tag to Requested, make go idiomatic

* Changes post integration test

* Remove comment

* Address comments

* Merge

* New field BlockSignature (not used in hashing/JSON)

* Enforce .Extra to be an empty slice

* replace header.Requested for header.IsNewBlock

* mark new block as IsNewBlock

* Make new RLP optional fields always default for legacy/reth compatibility

* Placing new fields as last non-zero rlp:optional values used by Scroll

* Penalize nodes that send non-zero Euclid V2 header field values

* Bring back .Requested to downloader instead of .IsNewBlock

* Replace IsNewBlock for Requested

* Address comments

* merge

* prevent timing issues in tests

* fix ci

* chore: auto version bump [bot]

* Update consensus/system_contract/consensus.go

Co-authored-by: Morty <70688412+yiweichi@users.noreply.github.com>

* chore: auto version bump [bot]

* Update consensus/system_contract/consensus.go

Co-authored-by: Jonas Theis <4181434+jonastheis@users.noreply.github.com>

* Remove whitespaces and merge version number

* chore: auto version bump [bot]

* validate that the read address from L1 is not empty and improved error handling when fetching address

* Fix indentation issue

* Fix test

* goimports fix

* goimports

---------

Co-authored-by: Alejandro Ranchal-Pedrosa <a.ranchalpedrosa@gmail.com>
Co-authored-by: jonastheis <4181434+jonastheis@users.noreply.github.com>
Co-authored-by: jonastheis <jonastheis@users.noreply.github.com>
Co-authored-by: ranchalp <ranchalp@users.noreply.github.com>
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2025-02-28 15:53:32 +01:00
..
checkpointoracle Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
downloader feat: add system config consensus to deprecate clique (#1102) 2025-02-28 15:53:32 +01:00
fetcher feat: add EIP-7702 (#1112) 2025-02-25 14:56:51 +01:00
flowcontrol Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
utils Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
vflux Add goimports lint (#54) 2022-03-24 16:53:59 +08:00
api.go style: revert some formatting (#294) 2023-04-20 17:49:35 +08:00
api_backend.go feat(txpool): StatsWithMinBaseFee (#884) 2024-07-10 11:10:58 +02:00
api_test.go feat: add system config consensus to deprecate clique (#1102) 2025-02-28 15:53:32 +01:00
benchmark.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
bloombits.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
client.go feat: add system config consensus to deprecate clique (#1102) 2025-02-28 15:53:32 +01:00
client_handler.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
commons.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
costtracker.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
distributor.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
distributor_test.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
enr_entry.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
fetcher.go style: revert some formatting (#294) 2023-04-20 17:49:35 +08:00
fetcher_test.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
handler_test.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
metrics.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
odr.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
odr_requests.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
odr_test.go feat: add EIP-7702 (#1112) 2025-02-25 14:56:51 +01:00
peer.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
peer_test.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
protocol.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
pruner.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
pruner_test.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
request_test.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
retrieve.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
server.go refactor(config): consolidate scroll flags (#262) 2023-04-17 18:56:26 +08:00
server_handler.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
server_requests.go feat: dual code hash (#188) 2023-02-08 16:12:41 -08:00
servingqueue.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
state_accessor.go feat: add EIP-7702 (#1112) 2025-02-25 14:56:51 +01:00
sync.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
sync_test.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
test_helper.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
txrelay.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
ulc.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
ulc_test.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00