Alex Sharov
3e8a028cbb
evm: remove interpreter interface - step3 ( #8842 )
2023-11-29 09:29:16 +07:00
Håvard Anda Estensen
fdab99d0e8
core: run tests in parallel ( #8743 )
2023-11-17 10:52:40 +07: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
Andrew Ashikhmin
27125b3911
Update EIP-2537 and EIP-4844 precompile addresses ( #7940 )
...
See https://github.com/ethereum/EIPs/pull/7172 &
https://github.com/ethereum/EIPs/pull/7214
2023-07-28 17:43:01 +02:00
Andrew Ashikhmin
1533674dad
Implement EIP-1153 transient storage ( #7405 )
...
Port https://github.com/ethereum/go-ethereum/pull/26003
---------
Co-authored-by: Mark Tyneway <mark.tyneway@gmail.com>
2023-05-01 18:26:24 +02:00
alex.sharov
9ea90b08c3
fix import cycle in tests
2023-04-19 15:35:02 +07:00
Alex Sharov
21d66d6c01
e3: state reader constructor in tests ( #7338 )
2023-04-19 03:10:33 +00:00
Alex Sharov
2161c5ed8c
stop using olddb in simulated backend ( #7219 )
2023-03-30 03:31:15 +00:00
Alex Sharov
201572c6f5
enable more linters #954 ( #7179 )
2023-03-25 05:13:27 +00:00
alex.sharov
e0dd48cc67
DomainRange
2023-03-25 11:46:29 +07:00
Andrew Ashikhmin
3270720cb7
Remove ETC-specific DAOForkSupport=false functionality ( #7075 )
2023-03-10 12:10:11 +00:00
Andrew Ashikhmin
2212e21192
Remove archaic eip150Hash functionality ( #7074 )
2023-03-10 10:55:59 +00:00
Andrew Ashikhmin
1dab298db7
Add Prague fork support ( #7005 )
...
Prague is the next EL fork after
[Cancun](https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/cancun.md ).
This change picks up https://github.com/ledgerwatch/erigon-lib/pull/913 ,
adds support of the fork, and moves Verkle trees to it.
2023-03-02 17:51:36 +00:00
Alex Sharov
431fba815f
e3: simplify tracer ( #6953 )
2023-02-25 12:44:45 +07:00
ledgerwatch
ee83447fa1
CL lightclient to create memdb in the tmpdir which gets cleaned up on… ( #6829 )
...
… startup
---------
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro-2.local>
2023-02-11 20:44:51 +00:00
hexoscott
7dcbfbc283
reference hash, address, and chain config from lib ( #6536 )
2023-01-13 18:12:18 +00:00
ledgerwatch
387b4d7f35
Native tracers step 10 - remove duplicate SelfDestruct capture, clean up ( #6440 )
...
Moved some of the tracers to `eth/tracers/logger` to make it more
similar to go-ethereum.
Removed Erigon-specific `Capture-` functions
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro-2.local>
2022-12-26 04:56:39 +00:00
ledgerwatch
0a31f5ac2a
Workaround for the code history of BSC system contracts ( #6274 )
...
Works around a flaw in the upgrade logic of the system contracts. Since
they are updated directly, without first being self-destructed and then
re-created, the usual incarnation logic does not get activated, and all
historical records of the code of these contracts are retrieved as the
most recent version. This problem will not exist in erigon3, but until
then, a workaround will be used to access code of such contracts through
a special structure, `SystemContractCodeLookup`
Fixes https://github.com/ledgerwatch/erigon/issues/5865
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-12-10 22:41:04 +00:00
Andrew Ashikhmin
7eab12d90d
Shanghai & Cancun forks should be based on timestamp ( #6238 )
2022-12-07 18:45:44 +01:00
Alex Sharov
82c7779a85
evm: txContext.gasPrice to uint256 type ( #6188 )
2022-12-04 11:44:50 +07:00
Alex Sharov
16cd87748f
E3: fix unwind changes visibility ( #6147 )
2022-11-30 08:31:13 +07:00
ledgerwatch
693017c554
Cleanup Tevm experimental code ( #5259 )
...
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-09-01 19:49:29 +01:00
Andrew Ashikhmin
7f83bef559
Add support for Shanghai & Cancun blocks ( #5255 )
2022-09-01 17:37:53 +02:00
Andrew Ashikhmin
92b1f06932
Gray Glacier bomb delay ( #4443 )
2022-06-14 10:48:40 +01:00
Andrew Ashikhmin
86de64a2a3
TangerineWhistle instead of EIP150 & SpuriousDragon instead of EIP155/158 ( #4273 )
...
* EIP150Block -> TangerineWhistleBlock
* Merge EIP158Block into EIP155Block
* EIP155Block -> SpuriousDragonBlock
2022-05-26 12:08:59 +02:00
Andrew Ashikhmin
7bad3a9c59
state.PlainState is now at the beginning of blockNbr, not the end ( #3517 )
...
* state.PlainState is now at the beginning of blockNbr, not the end (fix discprepancy with GetAsOf)
* Fix tests
2022-02-16 08:38:12 +00:00
Alexandr Borodulin
bbb3cc978f
Starknet getcode ( #3038 )
...
* deploy_cairo_smartcontract
* deploy_cairo_smartcontract / 2
Add new transaction type for cairo and vm factory
* starknet_getcode
* deploy_cairo_smartcontract / 3
* deploy_cairo_smartcontract / 4
* deploy_cairo_smartcontract / 5
Co-authored-by: Aleksandr Borodulin <a.borodulin@axioma.lv>
2021-12-06 14:58:53 +00:00
TBC Dev
5eca3beea9
Avoid redundant BitLen() ( #3056 )
...
* Prefer uint256.IsZero() or big.Sign() for 0-testing over BitLen()
* Avoid redundant BitLen()
2021-11-29 22:35:51 +00:00
Andrew Ashikhmin
1214302a19
Arrow Glacier network upgrade ( #2896 )
2021-10-31 20:31:18 +07:00
Evgeny Danilenko
4cd72c8328
Keep readonly value while changing interpreters back and forth ( #2508 )
...
* restore TEVM
* fuzzing and property based
* comment
* lint
* stack callback into defer ater checking an error
* sequential tests
2021-08-10 09:48:56 +07:00
Alex Sharov
6bd44eb26c
move kv to erigon-lib ( #2467 )
2021-07-29 18:53:13 +07:00
Alex Sharov
838e5f9ef2
Move bucket constants into kv package, move kv interface to kv package ( #2455 )
2021-07-28 09:47:38 +07:00
Alex Sharov
733991018b
port active precompiles activation ( #2448 )
2021-07-27 09:39:41 +07:00
Alex Sharov
6801208497
move some tests to kv interface ( #2438 )
2021-07-24 14:14:11 +07:00
Alex Sharov
858fb3f503
mainnet london block and port some go-ethereum fixes related to baseFee ( #2323 )
2021-07-09 16:54:06 +07:00
Alex Sharov
7c60cc0fee
step towards kv interface ( #2313 )
2021-07-08 09:56:09 +07:00
Alex Sharov
bc271f92ce
To break dependency to db implementation - move all db classes to "ethdb/kv" and leave in "ethdb" only interfaces ( #2195 )
2021-06-19 15:21:53 +07:00
Evgeny Danilenko
de26634d8d
TEVM status pruning ( #2034 )
...
* use trace for TEVM status
* restore testdata
* fix getting contract from plain state
* unwind
* linters
* reproducible build debug
* debug
* debug
* remove debug
2021-06-11 09:34:25 +01:00
Evgeny Danilenko
7352b81122
Tevm stage 1 ( #1845 )
...
* convert contracts after block execution
* check if has tevm code
* after review-1
* handle ErrNotFound
* typo
* tests
* tevm code bucket
* testdata
* execute pre-stage
* after merge
* test fix
* test fix
* fix test after merge
* disable translation stage
* after merge
* rename params
* rename to Erigon
* parallelize EVM translation
* fix
* logging and fixes
* fix
* todos
* cleanup
* revert erigorn renaming
* unwind
* tevm unwind
* fix AppData
* non-parallel version
* comments
2021-05-27 14:54:55 +01:00
Alex Sharov
0be3044b7e
rename ( #1978 )
...
* rename
* rename "make grpc"
* rename "abi bindings templates"
* rename "abi bindings templates"
2021-05-20 19:25:53 +01:00
Alex Sharov
781a67a4ee
Auto-Close db in tests by using t.Cleanup ( #1956 )
2021-05-19 10:47:28 +07:00
ledgerwatch
4432618cb9
Support for Baikal devnet ( #1853 )
...
* EIP-3529
* Test fix and EIP-3541
* Fix tests
* Fix
* Fix stagedsync test
* Fix
* Remove dup
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2021-05-02 10:34:19 +01:00
ledgerwatch
12cde41772
Aleut support (Eip1559) ( #1704 )
...
* Where I am at
* Refactoring of transaction types
* More refactoring
* Use Homested signer in rpc daemon
* Unified signer
* Continue unified signer
* A bit more
* Fixes and down the rabbit hole...
* More tx pool fixes
* More refactoring fixes
* More fixes'
* more fixes
* More fixes
* More compile fixes
* More RLP hand-writing
* Finish RLP encoding/decoding of transactions
* Fixes to header encoding, start on protocol packets
* Transaction decoding
* Use DecodeTransaction function
* Decoding BlockBodyPacket
* Encode and decode for pool txs
* Start fixing tests
* Introduce SigningHash
* Fixes to SignHash
* RLP encoding fixes
* Fixes for encoding/decoding
* More test fixes
* Fix more tests
* More test fixes
* More test fixes
* Fix core tests
* More fixes for signer
* Fix for tx
* Fixes to string encoding/size
* Fix eip2930 test
* Fix rest of ./tests
* More fixes
* Fix compilation
* More test fixes
* More test fixes
* Test fixes
* More fixes
* Reuse EncodingSize in EncodeRLP for accessList
* Rearrange things in dynamic fee tx
* Add MarshalBinary
* More fixes
* Make V,R,S non-pointers
* More NPE fixes
* More fixes
* Receipt fixes
* Fix core/types
* Fix ./eth
* More compile fixes for tests
* More test fixes
* More test fixes
* Try to see lint errors better
* Try to see lint errors better
* Fix lint
* Debugging eip1559 test
* Fix TestEIP1559Transition test
* Fix NewBlockPacket encoding/decoding
* Fix calculation of TxHash
* Fix perf problem with senders
* Update aleut config values
* Try adding static peers
* Add staticpeers to defaul flags
* Change aleut networkID
* Fix test
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-04-22 18:11:37 +01:00
Alex Sharov
a913ae8847
Remove chainContext object ( #1683 )
2021-04-06 16:52:53 +07:00
Alex Sharov
abe5bd879c
Remove old loader, step 3 (remove some tds and blockchain objects in tests) ( #1647 )
2021-04-01 12:36:22 +07:00
Alex Sharov
b4a2d823c4
old loader remove v1 ( #1641 )
2021-03-31 14:43:12 +07:00
Artem Vorotnikov
9b8cdc0f22
Fix lints and remove more unused code ( #1621 )
2021-03-29 10:58:45 +07:00
Igor Mandrigin
3c354ed642
cleanup runtime_test from the unimplemented EIP
2021-03-16 13:41:42 +01:00
Péter Szilágyi
03eafd8580
core/vm/runtime: more unshipping
...
# Conflicts:
# core/vm/runtime/runtime_test.go
2021-03-12 16:08:00 +01:00
Péter Szilágyi
d23002e76a
all: define Berlin hard fork spec
...
# Conflicts:
# cmd/geth/config.go
# cmd/geth/main.go
# core/genesis.go
# core/state_transition.go
# core/vm/evm.go
# core/vm/interpreter.go
# eth/backend.go
# eth/ethconfig/config.go
# les/client.go
# light/txpool.go
# tests/state_test_util.go
2021-03-12 15:50:09 +01:00