Skip to content

feat: add enableMIR in config.toml and sync changes from bsc master#15

Merged
clydemeng merged 577 commits intoMIR-interp-developfrom
MIR-testnet-sync
Dec 12, 2025
Merged

feat: add enableMIR in config.toml and sync changes from bsc master#15
clydemeng merged 577 commits intoMIR-interp-developfrom
MIR-testnet-sync

Conversation

@clydemeng
Copy link
Copy Markdown
Collaborator

feat: add enableMIR in config.toml and sync changes from bsc master

fjl and others added 30 commits June 16, 2025 18:44
This fixes a data race when accessing the `httpConfig.prefix` field.
This field can be modified while the server is running through
`enableRPC`. The fix is storing the prefix in the handler, which is
accessed through the atomic pointer.

alternative to #32035
fixes ethereum/go-ethereum#32019
When `GetKey`  is called, a missing preimage can cause the function to return a `nil`
key. This, in turn, makes `account.Storage` persist an incorrect value.
This pull request reduces the threshold for triggering compaction at
level0, leading to less compaction debt. This change is helpful in the
case of heavy write-load, mitigating the case of heavy write stalls
caused by compaction.

closes ethereum/go-ethereum#31830
Fixes a data race on the `wallets` slice when closing account Manager.

At the moment, there is a data race between a go-routine calling the
Manager's `Close` function and the background go-routine handling most
operations on the `Manager`. The `Manager`'s `wallets` field is accessed
without proper synchronization.

By moving the closing of wallets from the `Close()` function into the
background thread, this issue can be resolved.
fixes the gnark deserialisation

---------

Co-authored-by: Felix Lange <fjl@twurst.com>
Adds marshaling fuzzing for G1 and G2 to oss-fuzz. 

Also aligns the behavior of the google library to that of gnark and
cloudflare, which only ever read the first 64 / 128 bytes of the input,
regardless of how long the input is
closes ethereum/go-ethereum#31254

---------

Co-authored-by: Gary Rong <garyrong0905@gmail.com>
As ethereum/go-ethereum#31769 defined a global
hash pool, so we can reuse it, and also remove the unnecessary
KeccakState buffering

---------

Co-authored-by: Gary Rong <garyrong0905@gmail.com>
Reading a single transaction out of a block shouldn't need decoding the
entire body

---------

Co-authored-by: Felix Lange <fjl@twurst.com>
Co-authored-by: Gary Rong <garyrong0905@gmail.com>
Co-authored-by: Felix Lange <fjl@twurst.com>
Fixes lint issue

    >>> /home/appveyor/.gvm/gos/go1.24.0/bin/go generate ./...
    ci.go:404: File changed: .git/index
    ci.go:407: One or more generated files were updated by running 'go generate ./...'
    exit status 1
Since we have the effective gas price in the message, we can compute tip by
simply subtracting the basefee. No need to recompute the effective price.

---------

Co-authored-by: Felix Lange <fjl@twurst.com>
In this pull request, the original `CacheConfig` has been renamed to `BlockChainConfig`.

Over time, more fields have been added to `CacheConfig` to support
blockchain configuration. Such as `ChainHistoryMode`, which clearly extends
beyond just caching concerns.

Additionally, adding new parameters to the blockchain constructor has
become increasingly complicated, since it’s initialized across multiple
places in the codebase. A natural solution is to consolidate these arguments 
into a dedicated configuration struct.

As a result, the existing `CacheConfig` has been redefined as `BlockChainConfig`.
Some parameters, such as `VmConfig`, `TxLookupLimit`, and `ChainOverrides`
have been moved into `BlockChainConfig`. Besides, a few fields in `BlockChainConfig`
were renamed, specifically:

- `TrieCleanNoPrefetch` -> `NoPrefetch`
- `TrieDirtyDisabled` -> `ArchiveMode`

Notably, this change won't affect the command line flags or the toml
configuration file. It's just an internal refactoring and fully backward-compatible.

---------

Co-authored-by: Felix Lange <fjl@twurst.com>
The optimization tried to defer allocating the cache map until it was used for the
first time. It's a relic from earlier times, when tries were copied often. This seems
unnecessary now, so we can just create the map when the trie is created.

---------

Co-authored-by: Felix Lange <fjl@twurst.com>
Aligns the marshaling behavior of gnark to google and cloudflare

Co-authored-by: kevaundray <kevtheappdev@gmail.com>
This PR improves the IsOnCurve methods for BN254 G2 points by:

* Clarifying its behavior the docstring, making it explicit that it
verifies both the point being on the curve and in the correct subgroup.

* Adding an in-line comment explaining the subgroup membership check
(c.Mul(Order)).

 * Minor wording adjustments for readability and consistency.
implement #31945

---------

Co-authored-by: prpeh <prpeh@proton.me>
Co-authored-by: Gary Rong <garyrong0905@gmail.com>
zlacfzy and others added 28 commits November 6, 2025 16:39
rollback the lifetime change made in PR#3111
3 hours could be reasonable for non-validator nodes
…n#3456)

Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.36.0 to 0.45.0.
- [Commits](golang/crypto@v0.36.0...v0.45.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-version: 0.45.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: lx <92799281+brilliant-lx@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* eth: fix stuck when starting up a new network

* eth: fix UT

* eth: improve fixing UT
Signed-off-by: hongmengning <hongmengning@outlook.com>
Signed-off-by: stellrust <gohunter@foxmail.com>
…ain#3262)

* refactor: replace Split in loops with more efficient SplitSeq

Signed-off-by: pinglanlu <pinglanlu@outlook.com>

* Update node/api.go

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Signed-off-by: pinglanlu <pinglanlu@outlook.com>
Co-authored-by: buddho <7995985+buddh0@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: rifeplight <rifeplight@outlook.com>
* metric: add metric for vote count

* metric: add metric for vote count
* release: prepare for release v1.6.4

* version: update version
# Conflicts:
#	cmd/evm/testdata/eof/results.initcode.txt
#	cmd/evm/testdata/eof/results.regular.txt
#	cmd/geth/main.go
#	cmd/utils/flags.go
#	core/asm/asm_test.go
#	core/opcodeCompiler/compiler/evmByteCode.go
#	core/opcodeCompiler/compiler/opCodeCache.go
#	core/opcodeCompiler/compiler/opCodeProcessor.go
#	core/state/state_object.go
#	core/vm/analysis_legacy.go
#	core/vm/contract.go
#	core/vm/evm.go
#	core/vm/instructions.go
#	core/vm/instructions_test.go
#	core/vm/interpreter.go
#	core/vm/jump_table.go
#	core/vm/opcodes.go
#	core/vm/runtime/runtime_test.go
#	core/vm/stack.go
#	eth/backend.go
#	eth/ethconfig/config.go
#	eth/ethconfig/gen_config.go
@clydemeng clydemeng merged commit 8e158ed into MIR-interp-develop Dec 12, 2025
sunny2022da pushed a commit that referenced this pull request Mar 24, 2026
* core/vm: fix RequiredGas for P256Verify

* cmd/geth: not support OverrideBPO1 and OverrideBPO2 flags in BSC

* cmd/geth: hidden flag PruneAncientDataFlag

* cmd/utils: deprecated MetricsEnabledExpensiveFlag

* core/state: simplify statedb copy

* all: upgrade go version to 1.25 for workflows and dockers

* all: handle golang lint

* bid_simulator.go: disable blob version1 in bid simulator

* triedb: align signature of func Size()

* triedb/pathdb: read old journal file

* cmd/utils: deprecated JournalFileFlag

* triedb/pathdb: remove JournalFile field in config

* eth: fix BroadcastTransactions

* core/txpool/blobpool: only accept BlobSidecarVersion0 in BSC

* core/txpool/blobpool: not convert blobsidecar to V1 in BSC

* fix: fix eip-7910 test case

* fix: fix api

* legacypool_test.go: fix TestDualHeapEviction

* eth/ethconfig: delete field JournalFileEnabled

* core/vm: revert comments

* params: fix Rules for ChainConfig

* params: fix Rules for ChainConfig

* fix: fix transaction rollback

* internal/ethapi: fix eth_config

* core: fix core ut

* core: fix TestWaitDeployedCornerCases

* fix suit_test: only set HistoryStorageAddress nonce on BSC chains during Prague activation

* eth/syncer: disable debug_sync for now

---------

Co-authored-by: qybdyx <qybdyx@outlook.com>
Co-authored-by: flywukong <19421226+flywukong@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.