Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
47 commits
Select commit Hold shift + click to select a range
a8ea631
eth/filters: return -32602 when exceeding the block range limit (#34647)
MqllR Apr 8, 2026
21b1936
core/state: fix tracer hook for EIP-7708 burn logs (#34688)
zsfelfoldi Apr 9, 2026
68c7058
core/stateless: fix parsing an empty witness (#34683)
s1na Apr 9, 2026
3772bb5
triedb/pathdb: fix lookup sentinel collision with zero disk layer roo…
CPerezz Apr 9, 2026
58557cb
cmd/geth: add subcommand for offline binary tree conversion (#33740)
gballet Apr 9, 2026
ea54488
core/filtermaps: remove dead condition check (#34695)
cuiweixie Apr 10, 2026
f71a884
trie/bintrie: fix DeleteAccount no-op (#34676)
CPerezz Apr 10, 2026
deda47f
trie/bintrie: fix GetAccount/GetStorage non-membership — verify stem …
CPerezz Apr 10, 2026
6333855
core: turn gas into a vector <regularGas, stateGas> (#34691)
MariusVanDerWijden Apr 13, 2026
735bfd1
trie/bintrie: spec change, big endian hashing of slot key (#34670)
gballet Apr 13, 2026
ecae519
beacon/engine, miner: fix testing_buildBlockV1 response (#34704)
newmanifold Apr 13, 2026
f7f57d2
crypto/bn256: fix comment in MulXi (#34659)
aso20455 Apr 13, 2026
7d463ae
accounts/keystore: fix flaky TestUpdatedKeyfileContents (#34084)
gzliudan Apr 13, 2026
5b7511e
core/vm: include operand in error message (#34635)
gzliudan Apr 13, 2026
289826f
cmd/abigen/v2: add package-level errors (#34076)
rglKali Apr 13, 2026
4da1e29
signer/core/apitypes: fix encoding of opening parenthesis (#33702)
conorpp Apr 13, 2026
527ea11
core/vm/runtime: don't overwrite user input with default value (#33510)
phrwlk Apr 13, 2026
01e33d1
build: upgrade -dlgo version to Go 1.25.9 (#34707)
sandakersmann Apr 13, 2026
e1fe4a1
p2p/discover: fix flaky TestUDPv5_findnodeHandling (#34109)
cgdusek Apr 14, 2026
c453b99
cmd/devp2p/internal/v5test: fix hive test for discv5 findnode results…
cskiraly Apr 14, 2026
c223446
.github/workflows: add freebsd test github action (#34078)
gballet Apr 14, 2026
c690d60
cmd/geth: add Prague pruning points for hoodi (#34714)
0xjvn Apr 14, 2026
2414861
core/state: optimize transient storage (#33695)
cuiweixie Apr 14, 2026
eb67d61
cmd/geth, core/state, tests: rework EIP7610 check (#34718)
rjl493456442 Apr 14, 2026
2253fce
core/types: remove redundant ')' (#34719)
cuiweixie Apr 14, 2026
c9fea44
eth/catalyst: respect slot num if specified in payload attributes for…
fselmo Apr 14, 2026
ef0f1f9
core/state: ignore the root returned in Commit function for simplicit…
rjl493456442 Apr 15, 2026
0b35ad9
cmd/utils: fix witness stats auto-enable to respect config file (#34729)
tanvirman Apr 16, 2026
d07a946
log: allow –vmodule to downgrade log levels (#33111)
jrhea Apr 16, 2026
b1baab4
cmd/evm: fix trace.noreturndata usage string (#34731)
gzliudan Apr 16, 2026
f63e9f3
eth/tracers: fix codehash in prestate diffmode (#34675)
s1na Apr 16, 2026
ba215fd
cmd, core, trie, triedb: split CachingDB into merkle + binary dbs. (#…
gballet Apr 17, 2026
89c1c16
cmd/geth: add code exporter for db export (#34696)
edg-l Apr 17, 2026
4c03a06
cmd/evm: compare errors by value in timedExec instead of interface id…
gzliudan Apr 17, 2026
573d940
core/rawdb: fix incorrect fsync ordering for index file truncation (#…
snehendu098 Apr 17, 2026
61bfacc
trie/bintrie: skip clean nodes in CollectNodes to reduce commit write…
CPerezz Apr 18, 2026
53ff723
core/state: handle *bintrie.BinaryTrie in mustCopyTrie (#34758)
CPerezz Apr 18, 2026
78505e4
triedb/pathdb: fix typo (#34762)
cuiweixie Apr 20, 2026
8c7d61f
tests: fix invalid eip parse error (#34750)
cuiweixie Apr 20, 2026
5af5510
core/rawdb: fix file descriptor leak in freezer error paths (#34735)
rayjun Apr 20, 2026
582a825
merge geth c453b99a5 (v1.17.4 sync, batch 21/33 of v1.17.3)
pratikspatil024 Aug 3, 2026
9a7efac
Merge branch 'ppatil-upstream-eth70' into ppatil-upstream-v1.17.3-part2
pratikspatil024 Aug 3, 2026
e15a2b6
merge geth 5af5510b1 (v1.17.4 sync, batch 22/33 of v1.17.3)
pratikspatil024 Aug 3, 2026
a3a2ab1
Merge ppatil-upstream-eth70 into ppatil-upstream-v1.17.3-part2
pratikspatil024 Aug 5, 2026
84eee66
Merge ppatil-upstream-eth70 into ppatil-upstream-v1.17.3-part2
pratikspatil024 Aug 5, 2026
3a4114b
Merge branch 'ppatil-upstream-eth70' into ppatil-upstream-v1.17.3-par…
pratikspatil024 Aug 13, 2026
309aff1
Merge branch 'ppatil-upstream-eth70' into ppatil-upstream-v1.17.3-par…
pratikspatil024 Aug 17, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 29 additions & 0 deletions .github/workflows/freebsd.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
on:
push:
branches:
- freebsd-github-action

workflow_dispatch:

jobs:
build:
name: FreeBSD-build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
with:
submodules: false

- name: Test in FreeBSD
id: test
uses: vmactions/freebsd-vm@v1
with:
release: "15.0"
usesh: true
prepare: |
pkg install -y go
run: |
freebsd-version
uname -a
go version
go run ./build/ci.go test -p 8
7 changes: 5 additions & 2 deletions accounts/abi/abigen/source2.go.tpl
Original file line number Diff line number Diff line change
Expand Up @@ -183,8 +183,11 @@ var (
// Solidity: {{.Original.String}}
func ({{ decapitalise $contract.Type}} *{{$contract.Type}}) Unpack{{.Normalized.Name}}Event(log *types.Log) (*{{$contract.Type}}{{.Normalized.Name}}, error) {
event := "{{.Original.Name}}"
if len(log.Topics) == 0 || log.Topics[0] != {{ decapitalise $contract.Type}}.abi.Events[event].ID {
return nil, errors.New("event signature mismatch")
if len(log.Topics) == 0 {
return nil, bind.ErrNoEventSignature
}
if log.Topics[0] != {{ decapitalise $contract.Type}}.abi.Events[event].ID {
return nil, bind.ErrEventSignatureMismatch
}
out := new({{$contract.Type}}{{.Normalized.Name}})
if len(log.Data) > 0 {
Expand Down
7 changes: 5 additions & 2 deletions accounts/abi/abigen/testdata/v2/crowdsale.go.txt
Original file line number Diff line number Diff line change
Expand Up @@ -360,8 +360,11 @@ func (CrowdsaleFundTransfer) ContractEventName() string {
// Solidity: event FundTransfer(address backer, uint256 amount, bool isContribution)
func (crowdsale *Crowdsale) UnpackFundTransferEvent(log *types.Log) (*CrowdsaleFundTransfer, error) {
event := "FundTransfer"
if len(log.Topics) == 0 || log.Topics[0] != crowdsale.abi.Events[event].ID {
return nil, errors.New("event signature mismatch")
if len(log.Topics) == 0 {
return nil, bind.ErrNoEventSignature
}
if log.Topics[0] != crowdsale.abi.Events[event].ID {
return nil, bind.ErrEventSignatureMismatch
}
out := new(CrowdsaleFundTransfer)
if len(log.Data) > 0 {
Expand Down
35 changes: 25 additions & 10 deletions accounts/abi/abigen/testdata/v2/dao.go.txt
Original file line number Diff line number Diff line change
Expand Up @@ -606,8 +606,11 @@ func (DAOChangeOfRules) ContractEventName() string {
// Solidity: event ChangeOfRules(uint256 minimumQuorum, uint256 debatingPeriodInMinutes, int256 majorityMargin)
func (dAO *DAO) UnpackChangeOfRulesEvent(log *types.Log) (*DAOChangeOfRules, error) {
event := "ChangeOfRules"
if len(log.Topics) == 0 || log.Topics[0] != dAO.abi.Events[event].ID {
return nil, errors.New("event signature mismatch")
if len(log.Topics) == 0 {
return nil, bind.ErrNoEventSignature
}
if log.Topics[0] != dAO.abi.Events[event].ID {
return nil, bind.ErrEventSignatureMismatch
}
out := new(DAOChangeOfRules)
if len(log.Data) > 0 {
Expand Down Expand Up @@ -648,8 +651,11 @@ func (DAOMembershipChanged) ContractEventName() string {
// Solidity: event MembershipChanged(address member, bool isMember)
func (dAO *DAO) UnpackMembershipChangedEvent(log *types.Log) (*DAOMembershipChanged, error) {
event := "MembershipChanged"
if len(log.Topics) == 0 || log.Topics[0] != dAO.abi.Events[event].ID {
return nil, errors.New("event signature mismatch")
if len(log.Topics) == 0 {
return nil, bind.ErrNoEventSignature
}
if log.Topics[0] != dAO.abi.Events[event].ID {
return nil, bind.ErrEventSignatureMismatch
}
out := new(DAOMembershipChanged)
if len(log.Data) > 0 {
Expand Down Expand Up @@ -692,8 +698,11 @@ func (DAOProposalAdded) ContractEventName() string {
// Solidity: event ProposalAdded(uint256 proposalID, address recipient, uint256 amount, string description)
func (dAO *DAO) UnpackProposalAddedEvent(log *types.Log) (*DAOProposalAdded, error) {
event := "ProposalAdded"
if len(log.Topics) == 0 || log.Topics[0] != dAO.abi.Events[event].ID {
return nil, errors.New("event signature mismatch")
if len(log.Topics) == 0 {
return nil, bind.ErrNoEventSignature
}
if log.Topics[0] != dAO.abi.Events[event].ID {
return nil, bind.ErrEventSignatureMismatch
}
out := new(DAOProposalAdded)
if len(log.Data) > 0 {
Expand Down Expand Up @@ -736,8 +745,11 @@ func (DAOProposalTallied) ContractEventName() string {
// Solidity: event ProposalTallied(uint256 proposalID, int256 result, uint256 quorum, bool active)
func (dAO *DAO) UnpackProposalTalliedEvent(log *types.Log) (*DAOProposalTallied, error) {
event := "ProposalTallied"
if len(log.Topics) == 0 || log.Topics[0] != dAO.abi.Events[event].ID {
return nil, errors.New("event signature mismatch")
if len(log.Topics) == 0 {
return nil, bind.ErrNoEventSignature
}
if log.Topics[0] != dAO.abi.Events[event].ID {
return nil, bind.ErrEventSignatureMismatch
}
out := new(DAOProposalTallied)
if len(log.Data) > 0 {
Expand Down Expand Up @@ -780,8 +792,11 @@ func (DAOVoted) ContractEventName() string {
// Solidity: event Voted(uint256 proposalID, bool position, address voter, string justification)
func (dAO *DAO) UnpackVotedEvent(log *types.Log) (*DAOVoted, error) {
event := "Voted"
if len(log.Topics) == 0 || log.Topics[0] != dAO.abi.Events[event].ID {
return nil, errors.New("event signature mismatch")
if len(log.Topics) == 0 {
return nil, bind.ErrNoEventSignature
}
if log.Topics[0] != dAO.abi.Events[event].ID {
return nil, bind.ErrEventSignatureMismatch
}
out := new(DAOVoted)
if len(log.Data) > 0 {
Expand Down
35 changes: 25 additions & 10 deletions accounts/abi/abigen/testdata/v2/eventchecker.go.txt
Original file line number Diff line number Diff line change
Expand Up @@ -72,8 +72,11 @@ func (EventCheckerDynamic) ContractEventName() string {
// Solidity: event dynamic(string indexed idxStr, bytes indexed idxDat, string str, bytes dat)
func (eventChecker *EventChecker) UnpackDynamicEvent(log *types.Log) (*EventCheckerDynamic, error) {
event := "dynamic"
if len(log.Topics) == 0 || log.Topics[0] != eventChecker.abi.Events[event].ID {
return nil, errors.New("event signature mismatch")
if len(log.Topics) == 0 {
return nil, bind.ErrNoEventSignature
}
if log.Topics[0] != eventChecker.abi.Events[event].ID {
return nil, bind.ErrEventSignatureMismatch
}
out := new(EventCheckerDynamic)
if len(log.Data) > 0 {
Expand Down Expand Up @@ -112,8 +115,11 @@ func (EventCheckerEmpty) ContractEventName() string {
// Solidity: event empty()
func (eventChecker *EventChecker) UnpackEmptyEvent(log *types.Log) (*EventCheckerEmpty, error) {
event := "empty"
if len(log.Topics) == 0 || log.Topics[0] != eventChecker.abi.Events[event].ID {
return nil, errors.New("event signature mismatch")
if len(log.Topics) == 0 {
return nil, bind.ErrNoEventSignature
}
if log.Topics[0] != eventChecker.abi.Events[event].ID {
return nil, bind.ErrEventSignatureMismatch
}
out := new(EventCheckerEmpty)
if len(log.Data) > 0 {
Expand Down Expand Up @@ -154,8 +160,11 @@ func (EventCheckerIndexed) ContractEventName() string {
// Solidity: event indexed(address indexed addr, int256 indexed num)
func (eventChecker *EventChecker) UnpackIndexedEvent(log *types.Log) (*EventCheckerIndexed, error) {
event := "indexed"
if len(log.Topics) == 0 || log.Topics[0] != eventChecker.abi.Events[event].ID {
return nil, errors.New("event signature mismatch")
if len(log.Topics) == 0 {
return nil, bind.ErrNoEventSignature
}
if log.Topics[0] != eventChecker.abi.Events[event].ID {
return nil, bind.ErrEventSignatureMismatch
}
out := new(EventCheckerIndexed)
if len(log.Data) > 0 {
Expand Down Expand Up @@ -196,8 +205,11 @@ func (EventCheckerMixed) ContractEventName() string {
// Solidity: event mixed(address indexed addr, int256 num)
func (eventChecker *EventChecker) UnpackMixedEvent(log *types.Log) (*EventCheckerMixed, error) {
event := "mixed"
if len(log.Topics) == 0 || log.Topics[0] != eventChecker.abi.Events[event].ID {
return nil, errors.New("event signature mismatch")
if len(log.Topics) == 0 {
return nil, bind.ErrNoEventSignature
}
if log.Topics[0] != eventChecker.abi.Events[event].ID {
return nil, bind.ErrEventSignatureMismatch
}
out := new(EventCheckerMixed)
if len(log.Data) > 0 {
Expand Down Expand Up @@ -238,8 +250,11 @@ func (EventCheckerUnnamed) ContractEventName() string {
// Solidity: event unnamed(uint256 indexed arg0, uint256 indexed arg1)
func (eventChecker *EventChecker) UnpackUnnamedEvent(log *types.Log) (*EventCheckerUnnamed, error) {
event := "unnamed"
if len(log.Topics) == 0 || log.Topics[0] != eventChecker.abi.Events[event].ID {
return nil, errors.New("event signature mismatch")
if len(log.Topics) == 0 {
return nil, bind.ErrNoEventSignature
}
if log.Topics[0] != eventChecker.abi.Events[event].ID {
return nil, bind.ErrEventSignatureMismatch
}
out := new(EventCheckerUnnamed)
if len(log.Data) > 0 {
Expand Down
7 changes: 5 additions & 2 deletions accounts/abi/abigen/testdata/v2/nameconflict.go.txt
Original file line number Diff line number Diff line change
Expand Up @@ -134,8 +134,11 @@ func (NameConflictLog) ContractEventName() string {
// Solidity: event log(int256 msg, int256 _msg)
func (nameConflict *NameConflict) UnpackLogEvent(log *types.Log) (*NameConflictLog, error) {
event := "log"
if len(log.Topics) == 0 || log.Topics[0] != nameConflict.abi.Events[event].ID {
return nil, errors.New("event signature mismatch")
if len(log.Topics) == 0 {
return nil, bind.ErrNoEventSignature
}
if log.Topics[0] != nameConflict.abi.Events[event].ID {
return nil, bind.ErrEventSignatureMismatch
}
out := new(NameConflictLog)
if len(log.Data) > 0 {
Expand Down
7 changes: 5 additions & 2 deletions accounts/abi/abigen/testdata/v2/numericmethodname.go.txt
Original file line number Diff line number Diff line change
Expand Up @@ -136,8 +136,11 @@ func (NumericMethodNameE1TestEvent) ContractEventName() string {
// Solidity: event _1TestEvent(address _param)
func (numericMethodName *NumericMethodName) UnpackE1TestEventEvent(log *types.Log) (*NumericMethodNameE1TestEvent, error) {
event := "_1TestEvent"
if len(log.Topics) == 0 || log.Topics[0] != numericMethodName.abi.Events[event].ID {
return nil, errors.New("event signature mismatch")
if len(log.Topics) == 0 {
return nil, bind.ErrNoEventSignature
}
if log.Topics[0] != numericMethodName.abi.Events[event].ID {
return nil, bind.ErrEventSignatureMismatch
}
out := new(NumericMethodNameE1TestEvent)
if len(log.Data) > 0 {
Expand Down
14 changes: 10 additions & 4 deletions accounts/abi/abigen/testdata/v2/overload.go.txt
Original file line number Diff line number Diff line change
Expand Up @@ -114,8 +114,11 @@ func (OverloadBar) ContractEventName() string {
// Solidity: event bar(uint256 i)
func (overload *Overload) UnpackBarEvent(log *types.Log) (*OverloadBar, error) {
event := "bar"
if len(log.Topics) == 0 || log.Topics[0] != overload.abi.Events[event].ID {
return nil, errors.New("event signature mismatch")
if len(log.Topics) == 0 {
return nil, bind.ErrNoEventSignature
}
if log.Topics[0] != overload.abi.Events[event].ID {
return nil, bind.ErrEventSignatureMismatch
}
out := new(OverloadBar)
if len(log.Data) > 0 {
Expand Down Expand Up @@ -156,8 +159,11 @@ func (OverloadBar0) ContractEventName() string {
// Solidity: event bar(uint256 i, uint256 j)
func (overload *Overload) UnpackBar0Event(log *types.Log) (*OverloadBar0, error) {
event := "bar0"
if len(log.Topics) == 0 || log.Topics[0] != overload.abi.Events[event].ID {
return nil, errors.New("event signature mismatch")
if len(log.Topics) == 0 {
return nil, bind.ErrNoEventSignature
}
if log.Topics[0] != overload.abi.Events[event].ID {
return nil, bind.ErrEventSignatureMismatch
}
out := new(OverloadBar0)
if len(log.Data) > 0 {
Expand Down
7 changes: 5 additions & 2 deletions accounts/abi/abigen/testdata/v2/token.go.txt
Original file line number Diff line number Diff line change
Expand Up @@ -386,8 +386,11 @@ func (TokenTransfer) ContractEventName() string {
// Solidity: event Transfer(address indexed from, address indexed to, uint256 value)
func (token *Token) UnpackTransferEvent(log *types.Log) (*TokenTransfer, error) {
event := "Transfer"
if len(log.Topics) == 0 || log.Topics[0] != token.abi.Events[event].ID {
return nil, errors.New("event signature mismatch")
if len(log.Topics) == 0 {
return nil, bind.ErrNoEventSignature
}
if log.Topics[0] != token.abi.Events[event].ID {
return nil, bind.ErrEventSignatureMismatch
}
out := new(TokenTransfer)
if len(log.Data) > 0 {
Expand Down
14 changes: 10 additions & 4 deletions accounts/abi/abigen/testdata/v2/tuple.go.txt
Original file line number Diff line number Diff line change
Expand Up @@ -193,8 +193,11 @@ func (TupleTupleEvent) ContractEventName() string {
// Solidity: event TupleEvent((uint256,uint256[],(uint256,uint256)[]) a, (uint256,uint256)[2][] b, (uint256,uint256)[][2] c, (uint256,uint256[],(uint256,uint256)[])[] d, uint256[] e)
func (tuple *Tuple) UnpackTupleEventEvent(log *types.Log) (*TupleTupleEvent, error) {
event := "TupleEvent"
if len(log.Topics) == 0 || log.Topics[0] != tuple.abi.Events[event].ID {
return nil, errors.New("event signature mismatch")
if len(log.Topics) == 0 {
return nil, bind.ErrNoEventSignature
}
if log.Topics[0] != tuple.abi.Events[event].ID {
return nil, bind.ErrEventSignatureMismatch
}
out := new(TupleTupleEvent)
if len(log.Data) > 0 {
Expand Down Expand Up @@ -234,8 +237,11 @@ func (TupleTupleEvent2) ContractEventName() string {
// Solidity: event TupleEvent2((uint8,uint8)[] arg0)
func (tuple *Tuple) UnpackTupleEvent2Event(log *types.Log) (*TupleTupleEvent2, error) {
event := "TupleEvent2"
if len(log.Topics) == 0 || log.Topics[0] != tuple.abi.Events[event].ID {
return nil, errors.New("event signature mismatch")
if len(log.Topics) == 0 {
return nil, bind.ErrNoEventSignature
}
if log.Topics[0] != tuple.abi.Events[event].ID {
return nil, bind.ErrEventSignatureMismatch
}
out := new(TupleTupleEvent2)
if len(log.Data) > 0 {
Expand Down
12 changes: 6 additions & 6 deletions accounts/abi/bind/v2/base.go
Original file line number Diff line number Diff line change
Expand Up @@ -35,8 +35,8 @@ import (
const basefeeWiggleMultiplier = 2

var (
errNoEventSignature = errors.New("no event signature")
errEventSignatureMismatch = errors.New("event signature mismatch")
ErrNoEventSignature = errors.New("no event signature")
ErrEventSignatureMismatch = errors.New("event signature mismatch")
)

// SignerFn is a signer function callback when a contract requires a method to
Expand Down Expand Up @@ -562,11 +562,11 @@ func (c *BoundContract) WatchLogs(opts *WatchOpts, name string, query ...[]any)
func (c *BoundContract) UnpackLog(out any, event string, log types.Log) error {
// Anonymous events are not supported.
if len(log.Topics) == 0 {
return errNoEventSignature
return ErrNoEventSignature
}

if log.Topics[0] != c.abi.Events[event].ID {
return errEventSignatureMismatch
return ErrEventSignatureMismatch
}

if len(log.Data) > 0 {
Expand All @@ -590,11 +590,11 @@ func (c *BoundContract) UnpackLog(out any, event string, log types.Log) error {
func (c *BoundContract) UnpackLogIntoMap(out map[string]any, event string, log types.Log) error {
// Anonymous events are not supported.
if len(log.Topics) == 0 {
return errNoEventSignature
return ErrNoEventSignature
}

if log.Topics[0] != c.abi.Events[event].ID {
return errEventSignatureMismatch
return ErrEventSignatureMismatch
}

if len(log.Data) > 0 {
Expand Down
14 changes: 10 additions & 4 deletions accounts/abi/bind/v2/internal/contracts/db/bindings.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

14 changes: 10 additions & 4 deletions accounts/abi/bind/v2/internal/contracts/events/bindings.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading
Loading