Commit graph

17823 commits

Author SHA1 Message Date
marcello33
8f7533076e
chg: bump stable version 2024-12-11 08:39:16 +01:00
Manav Darji
14c88877e6
consensus/bor: fetch validator set using parent hash 2024-12-10 21:15:49 +05:30
Jerry
67b12b50df
Fix incorrect balance when CreateContract is used in block-stm (#1382)
* Fix incorrect balance when CreateContract is used in block-stm

* address CR comments
2024-12-10 18:56:47 +05:30
marcello33
d509034fc9
chg: update version 2024-12-10 08:58:30 +01:00
Marcello Ardizzone
d227610781
Merge pull request #1380 from maticnetwork/djpolygon/SPEC-559
Wrong architecture binary ended up in arm64
2024-12-10 07:29:49 +01:00
Dmytrol
1ce49563a6
typos README.md 2024-12-06 17:28:23 +02:00
Dmytrol
096b429bcb
typos server.md 2024-12-06 17:27:28 +02:00
Dmytrol
ebffd991f2
typos server.md 2024-12-06 17:27:00 +02:00
Dmytrol
104271260e
typos server.md 2024-12-06 17:24:03 +02:00
Dmytrol
5eccec7ab6
typos intapi_changelog.md 2024-12-06 17:21:31 +02:00
Daniel Jones
7869600b24
Updating verbage 2024-12-05 11:05:20 -06:00
Daniel Jones
b45347aa1a
Wrong architecture binary ended up in arm64 2024-12-05 11:03:04 -06:00
Martin Holst Swende
293a300d64 version: go-ethereum v1.14.12 stable 2024-11-19 14:50:11 +01:00
Håvard Anda Estensen
f3c19b1a1e rpc: run tests in parallel (#30384)
Continuation of https://github.com/ethereum/go-ethereum/pull/30381
2024-11-19 14:50:11 +01:00
jwasinger
71b32b4d73 core/txpool, eth/catalyst: clear transaction pool in Rollback (#30534)
This adds an API method `DropTransactions` to legacy pool, blob pool and
txpool interface. This method removes all txs currently tracked in the
pools.

It modifies the simulated beacon to use the new method in `Rollback`
which removes previous hacky implementation that also erroneously reset
the gas tip to 1 gwei.

---------

Co-authored-by: Felix Lange <fjl@twurst.com>
2024-11-19 14:50:11 +01:00
jwasinger
9e959dbb81 all: remove kilic dependency from bls12381 fuzzers (#30296)
The [kilic](https://github.com/kilic/bls12-381) bls12381 implementation
has been archived. It shouldn't be necessary to include it as a fuzzing
target any longer.

This also adds fuzzers for G1/G2 mul that use inputs that are guaranteed
to be valid. Previously, we just did random input fuzzing for these
precompiles.
2024-11-19 14:50:11 +01:00
bitcoin-lightning
ed7bac05f1 core: fix typos (#30767) 2024-11-19 14:50:11 +01:00
Marius Kjærstad
a7ef9d645e build: upgrade -dlgo version to Go 1.23.3 (#30742)
New release: https://groups.google.com/g/golang-announce/c/X5KodEJYuqI
2024-11-19 14:50:11 +01:00
Martin HS
55b18e9bc1 cmd/geth: remove unlock commandline flag (#30737)
This is one further step towards removing account management from
`geth`. This PR deprecates the flag `unlock`, and makes the flag moot:
unlock via geth is no longer possible.
2024-11-19 14:50:11 +01:00
Martin HS
62cce0ca6a core/state: tests on the binary iterator (#30754)
Fixes an error in the binary iterator, adds additional testcases

---------

Co-authored-by: Gary Rong <garyrong0905@gmail.com>
2024-11-19 14:50:11 +01:00
witty
c8f6d24f80 docs: fix typo (#30740)
fixes a typo on one of the postmortems
2024-11-19 14:50:11 +01:00
tianyeyouyou
4afca7c832 p2p/netutil: unittests for addrutil (#30439)
add unit tests for `p2p/addrutil`

---------

Co-authored-by: Martin HS <martin@swende.se>
2024-11-19 14:50:11 +01:00
rjl493456442
243feea417 tests: fix test panic (#30741)
Fix panic in tests
2024-11-19 14:50:11 +01:00
Marius van der Wijden
9b3cf575cd eth/protocols/eth: add ETH68 protocol handler fuzzers (#30417)
Adds a protocol handler fuzzer to fuzz the ETH68 protocol handlers
2024-11-19 14:50:11 +01:00
rjl493456442
ba882b6b4d core/state, triedb/database: refactor state reader (#30712)
Co-authored-by: Martin HS <martin@swende.se>
2024-11-19 14:50:11 +01:00
Péter Szilágyi
2b53182c92 travis: build and upload RISC-V docker images too (#30739)
Requested by @barnabasbusa
2024-11-19 14:50:11 +01:00
zhiqiangxu
0e06e891c6 trie/utils: remove unneeded initialization (#30472) 2024-11-19 14:50:11 +01:00
Karol Chojnowski
d71da302db core/state: invoke OnCodeChange-hook on selfdestruct (#30686)
This change invokes the OnCodeChange hook when selfdestruct operation is performed, and a contract is removed. This is an event which can be consumed by tracers.
2024-11-19 14:50:11 +01:00
Felföldi Zsolt
766cda84e1 beacon/blsync: remove cli dependencies (#30720)
This PR moves chain config related code (config file processing, fork
logic, network defaults) from `beacon/types` and `beacon/blsync` into
`beacon/params` while the command line flag logic of the chain config is
moved into `cmd/utils`, thereby removing the cli dependencies from
package `beacon` and its sub-packages.
2024-11-19 14:50:11 +01:00
jwasinger
f57f215f70 cmd/evm: benchmarking via statetest command + filter by name, index and fork (#30442)
When `evm statetest --bench` is specified, benchmark the execution
similarly to `evm run`.

Also adds the ability to filter tests by name, index and fork. 

---------

Co-authored-by: Martin Holst Swende <martin@swende.se>
2024-11-19 14:50:11 +01:00
Naveen
b362c37e3f signer/core: extended support for EIP-712 array types (#30620)
This change updates the EIP-712 implementation to resolve [#30619](https://github.com/ethereum/go-ethereum/issues/30619).

The test cases have been repurposed from the ethers.js [repository](https://github.com/ethers-io/ethers.js/blob/main/testcases/typed-data.json.gz), but have been updated to remove tests that don't have a valid domain separator; EIP-712 messages without a domain separator are not supported by geth.

---------

Co-authored-by: Martin Holst Swende <martin@swende.se>
2024-11-19 14:50:11 +01:00
Madhur Shrimal
f476702ea7 accounts/usbwallet: support dynamic tx (#30180)
Adds support non-legacy transaction-signing using ledger

---------

Co-authored-by: Martin Holst Swende <martin@swende.se>
2024-11-19 14:50:11 +01:00
jwasinger
25d0740f18 internal/ethapi: Set basefee for AccessList based on given block, not chain tip (#30538) 2024-11-19 14:50:11 +01:00
SangIlMo
a01688eb23 ethclient/gethclient: testcase for createAccessList, make tabledriven (#30194)
Adds testcase for createAccessList when user requested gasPrice is less than baseFee, also makes the tests tabledriven
---------

Co-authored-by: Martin Holst Swende <martin@swende.se>
2024-11-19 14:50:11 +01:00
Felix Lange
13413be184 ethclient: add RevertErrorData function and example (#30669)
Here I'm adding a new helper function that extracts the revert reason of
a contract call. Unfortunately, this aspect of the API is underspecified.
See these spec issues for more detail:

- https://github.com/ethereum/execution-apis/issues/232
- https://github.com/ethereum/execution-apis/issues/463
- https://github.com/ethereum/execution-apis/issues/523

The function added here only works with Geth-like servers that return
error code `3`. We will not be able to support all possible servers.
However, if there is a specific server implementation that makes it
possible to extract the same info, we could add it in the same function
as well.

---------

Co-authored-by: Marius van der Wijden <m.vanderwijden@live.de>
2024-11-19 14:50:11 +01:00
dependabot[bot]
31bc9e65bc build(deps): bump github.com/golang-jwt/jwt/v4 from 4.5.0 to 4.5.1 (#30728)
Bumps [github.com/golang-jwt/jwt/v4](https://github.com/golang-jwt/jwt) from 4.5.0 to 4.5.1.


Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-19 14:50:11 +01:00
Marius van der Wijden
d01591ccb5 cmd/utils: change blssync.JWTSecretFlag to DirectoryFlag (#30729)
closes https://github.com/ethereum/go-ethereum/issues/30304

We already use `DirectoryFlag` for `authrpc.jwtsecret` which expands the
tilde, so this should work out of the box
2024-11-19 14:50:11 +01:00
Martin HS
b04d6c4f42 core/state: small fix in hooked statedb (#30732)
fixes a very tiny bug
2024-11-19 14:50:11 +01:00
Delweng
8a3a697722 eth/tracers: fill the creationMethod in flatCall (#30539)
`flatCallTracer` will now specify the type of a create in the action
via the `creationMethod` field.

---------

Signed-off-by: jsvisa <delweng@gmail.com>
Co-authored-by: Sina Mahmoodi <itz.s1na@gmail.com>
2024-11-19 14:50:11 +01:00
Martin HS
6578b9aac5 all: fix issues with benchmarks (#30667)
This PR fixes some issues with benchmarks

- [x] Removes log output from a log-test
- [x] Avoids a `nil`-defer in `triedb/pathdb`
- [x] Fixes some crashes re tracers
- [x] Refactors a very resource-expensive benchmark for blobpol.
**NOTE**: this rewrite touches live production code (a little bit), as
it makes the validator-function used by the blobpool configurable.
- [x] Switch some benches over to use pebble over leveldb
- [x] reduce mem overhead in the setup-phase of some tests
- [x] Marks some tests with a long setup-phase to be skipped if `-short`
is specified (where long is on the order of tens of seconds). Ideally,
in my opinion, one should be able to run with `-benchtime 10ms -short`
and sanity-check all tests very quickly.
- [x]  Drops some metrics-bechmark which times the speed of `copy`.

---------

Co-authored-by: Sina Mahmoodi <itz.s1na@gmail.com>
2024-11-19 14:50:11 +01:00
Guillaume Ballet
ed01e6fb2e core, trie: verkle state processor tests (#30672)
Tests that are crucial to for verifying the verkle testnet functions properly.

---------

Signed-off-by: Guillaume Ballet <3272758+gballet@users.noreply.github.com>
Co-authored-by: Ignacio Hagopian <jsign.uy@gmail.com>
Co-authored-by: Gary Rong <garyrong0905@gmail.com>
Co-authored-by: Martin HS <martin@swende.se>
2024-11-19 14:50:11 +01:00
Martin HS
b45ba07040 core/vm/runtime: invoke tx-end hook (#30711)
When using the `core/vm/runtime` helpers to execute code, callbacks for the tx end were not invoked. This change fixes it by invoking them.
2024-11-19 14:50:11 +01:00
Péter Szilágyi
9bb5194166 eth/catalyst: make engine api test time independent (#30713)
This test depends on a 100ms timer, which fails quite often, messing up
our pipelines. Hook directly into the internal version of getPayload
which has the capacity to wait for the full payload before returning.
This might not be absolutely correct from a test perspective, but it
beats failing ci. The alternative would be to expose the full build hook
into the outside, but it might be a bit overkill for this scenario.
2024-11-19 14:50:11 +01:00
piersy
5de5f3344a core/txpool: improve error responses with wrapped errors (#30715) 2024-11-19 14:50:11 +01:00
Martin HS
3adb076a2f tests/fuzzers/bls12381: more verbose fuzzing-output (#30724)
This PR updates the fuzzing verbosity a bit, in case of mismatches
2024-11-19 14:50:11 +01:00
zhiqiangxu
1fe607bf4f build: use slices.Clone for copying slice (#30716) 2024-11-19 14:50:11 +01:00
Delweng
b92e17f5a8 eth/tracers: flatCallTracer error compatible with parity (#30497)
Compatible error message in the flat call tracer with parity-style endpoints.

Signed-off-by: jsvisa <delweng@gmail.com>
2024-11-19 14:50:11 +01:00
Martin HS
21b3400ae5 all: remove personal RPC namespace (#30704)
This PR is a first step towards removing account management from geth,
and contains a lot of the user-facing changes.

With this PR, the `personal` namespace disappears. **Note**: `personal`
namespace has been deprecated for quite some time (since
https://github.com/ethereum/go-ethereum/pull/26390 1 year and 8 months
ago), and users who have wanted to use it has been forced to used the
flag `--rpc.enabledeprecatedpersonal`. So I think it's fairly
non-controversial to drop it at this point.

Specifically, this means: 

- Account/wallet listing
  -`personal.getListAccounts`  
  -`personal.listAccounts`     
  -`personal.getListWallets`   
  -`personal.listWallets`      
- Lock/unlock
  -`personal.lockAccount`      
  -`personal.openWallet`       
  -`personal.unlockAccount`
- Sign ops
  -`personal.sign`             
  -`personal.sendTransaction`  
  -`personal.signTransaction`  
- Imports / inits
  -`personal.deriveAccount`    
  -`personal.importRawKey`     
  -`personal.initializeWallet` 
  -`personal.newAccount`       
  -`personal.unpair` 
- Other: 
  -`personal.ecRecover`        


The underlying keystores and account managent code is still in place,
which means that `geth --dev` still works as expected, so that e.g. the
example below still works:

```
> eth.sendTransaction({data:"0x6060", value: 1, from:eth.accounts[0]})
```	

Also, `ethkey` and `clef` are untouched. 

With the removal of `personal`, as far as I know we have no more API
methods which contain credentials, and if we want to implement
logging-capabilities of RPC ingress payload, it would be possible after
this.

---------

Co-authored-by: Felix Lange <fjl@twurst.com>
2024-11-19 14:50:11 +01:00
Péter Szilágyi
750250387e internal/flags: remove low-use type TextMarshalerFlag (#30707)
Currently we have a custom TextMarshalerFlag. It's a nice idea, allowing
anything implementing text marshaller to be used as a flag. That said,
we only ever used it in one place because it's not that obvious how to
use and it needs some boilerplate on the type itself too, apart of the
heavy boilerplate got the custom flag.

All in all there's no *need* to drop this feature just now, but while
porting the cmds over to cli @v3, all other custom flags worker
perfectly, whereas this one started crashing deep inside the cli
package. The flag handling in v3 got rebuild on generics and there are a
number of new methods needed; and my guess is that maybe one of them
doesn't work like this flag currently is designed too.

We could definitely try and redesign this flag for cli v3... but all
that effort and boilerplate just to use it for 1 flag in 1 location,
seems not worth it. So for now I'm suggesting removing it and maybe
reconsider a similar feature in cli v3 with however it will work.
2024-11-19 14:50:11 +01:00
Péter Szilágyi
9f58dc0c32 internal/flags: remove Merge, it's identical to slices.Concat (#30706)
This is a noop change to not have custom code for stdlib functionality.
2024-11-19 14:50:11 +01:00