Skip to content

Commit dd10cb6

Browse files
authored
Merge pull request #913 from onflow/mpeter/enable-fusaka-hard-fork
Enable EVM Fusaka hard-fork
2 parents b002906 + f9e2865 commit dd10cb6

File tree

10 files changed

+96
-47
lines changed

10 files changed

+96
-47
lines changed

go.mod

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,14 @@ go 1.25.0
44

55
require (
66
github.com/cockroachdb/pebble v1.1.5
7-
github.com/ethereum/go-ethereum v1.16.5
7+
github.com/ethereum/go-ethereum v1.16.7
88
github.com/goccy/go-json v0.10.4
99
github.com/hashicorp/go-multierror v1.1.1
1010
github.com/hashicorp/golang-lru/v2 v2.0.7
1111
github.com/holiman/uint256 v1.3.2
1212
github.com/onflow/atree v0.11.0
1313
github.com/onflow/cadence v1.8.3
14-
github.com/onflow/flow-go v0.43.3-0.20251029192457-d4f875155987
14+
github.com/onflow/flow-go v0.44.0-experimental-cadence-v1.8.3.0.20251105104202-ffe43bb485d9
1515
github.com/onflow/flow-go-sdk v1.9.2
1616
github.com/prometheus/client_golang v1.20.5
1717
github.com/rs/cors v1.8.0
@@ -38,6 +38,7 @@ require (
3838
cloud.google.com/go/longrunning v0.6.7 // indirect
3939
github.com/DataDog/zstd v1.5.6-0.20230824185856-869dae002e5e // indirect
4040
github.com/Microsoft/go-winio v0.6.2 // indirect
41+
github.com/ProjectZKM/Ziren/crates/go-runtime/zkvm_runtime v0.0.0-20251001021608-1fe7b43fc4d6 // indirect
4142
github.com/SaveTheRbtz/mph v0.1.1-0.20240117162131-4166ec7869bc // indirect
4243
github.com/StackExchange/wmi v1.2.1 // indirect
4344
github.com/VictoriaMetrics/fastcache v1.13.0 // indirect
@@ -71,7 +72,7 @@ require (
7172
github.com/dustin/go-humanize v1.0.1 // indirect
7273
github.com/ef-ds/deque v1.0.4 // indirect
7374
github.com/emicklei/dot v1.6.2 // indirect
74-
github.com/ethereum/c-kzg-4844/v2 v2.1.3 // indirect
75+
github.com/ethereum/c-kzg-4844/v2 v2.1.5 // indirect
7576
github.com/ethereum/go-bigmodexpfix v0.0.0-20250911101455-f9e208c548ab // indirect
7677
github.com/ethereum/go-verkle v0.2.2 // indirect
7778
github.com/felixge/httpsnoop v1.0.4 // indirect
@@ -153,7 +154,7 @@ require (
153154
github.com/onflow/flow-ft/lib/go/templates v1.0.1 // indirect
154155
github.com/onflow/flow-nft/lib/go/contracts v1.3.0 // indirect
155156
github.com/onflow/flow-nft/lib/go/templates v1.3.0 // indirect
156-
github.com/onflow/flow/protobuf/go/flow v0.4.16 // indirect
157+
github.com/onflow/flow/protobuf/go/flow v0.4.18 // indirect
157158
github.com/onflow/go-ethereum v1.13.4 // indirect
158159
github.com/onflow/sdks v0.6.0-preview.1 // indirect
159160
github.com/onsi/ginkgo v1.16.4 // indirect

go.sum

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,8 @@ github.com/Microsoft/go-winio v0.6.2/go.mod h1:yd8OoFMLzJbo9gZq8j5qaps8bJ9aShtEA
5959
github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU=
6060
github.com/OneOfOne/xxhash v1.2.8 h1:31czK/TI9sNkxIKfaUfGlU47BAxQ0ztGgd9vPyqimf8=
6161
github.com/OneOfOne/xxhash v1.2.8/go.mod h1:eZbhyaAYD41SGSSsnmcpxVoRiQ/MPUTjUdIIOT9Um7Q=
62+
github.com/ProjectZKM/Ziren/crates/go-runtime/zkvm_runtime v0.0.0-20251001021608-1fe7b43fc4d6 h1:1zYrtlhrZ6/b6SAjLSfKzWtdgqK0U+HtH/VcBWh1BaU=
63+
github.com/ProjectZKM/Ziren/crates/go-runtime/zkvm_runtime v0.0.0-20251001021608-1fe7b43fc4d6/go.mod h1:ioLG6R+5bUSO1oeGSDxOV3FADARuMoytZCSX6MEMQkI=
6264
github.com/SaveTheRbtz/mph v0.1.1-0.20240117162131-4166ec7869bc h1:DCHzPQOcU/7gwDTWbFQZc5qHMPS1g0xTO56k8NXsv9M=
6365
github.com/SaveTheRbtz/mph v0.1.1-0.20240117162131-4166ec7869bc/go.mod h1:LJM5a3zcIJ/8TmZwlUczvROEJT8ntOdhdG9jjcR1B0I=
6466
github.com/StackExchange/wmi v1.2.1 h1:VIkavFPXSjcnS+O8yTq7NI32k0R5Aj+v39y29VYDOSA=
@@ -191,12 +193,12 @@ github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1m
191193
github.com/envoyproxy/go-control-plane v0.9.7/go.mod h1:cwu0lG7PUMfa9snN8LXBig5ynNVH9qI8YYLbd1fK2po=
192194
github.com/envoyproxy/go-control-plane v0.9.9-0.20201210154907-fd9021fe5dad/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk=
193195
github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c=
194-
github.com/ethereum/c-kzg-4844/v2 v2.1.3 h1:DQ21UU0VSsuGy8+pcMJHDS0CV1bKmJmxsJYK8l3MiLU=
195-
github.com/ethereum/c-kzg-4844/v2 v2.1.3/go.mod h1:fyNcYI/yAuLWJxf4uzVtS8VDKeoAaRM8G/+ADz/pRdA=
196+
github.com/ethereum/c-kzg-4844/v2 v2.1.5 h1:aVtoLK5xwJ6c5RiqO8g8ptJ5KU+2Hdquf6G3aXiHh5s=
197+
github.com/ethereum/c-kzg-4844/v2 v2.1.5/go.mod h1:u59hRTTah4Co6i9fDWtiCjTrblJv0UwsqZKCc0GfgUs=
196198
github.com/ethereum/go-bigmodexpfix v0.0.0-20250911101455-f9e208c548ab h1:rvv6MJhy07IMfEKuARQ9TKojGqLVNxQajaXEp/BoqSk=
197199
github.com/ethereum/go-bigmodexpfix v0.0.0-20250911101455-f9e208c548ab/go.mod h1:IuLm4IsPipXKF7CW5Lzf68PIbZ5yl7FFd74l/E0o9A8=
198-
github.com/ethereum/go-ethereum v1.16.5 h1:GZI995PZkzP7ySCxEFaOPzS8+bd8NldE//1qvQDQpe0=
199-
github.com/ethereum/go-ethereum v1.16.5/go.mod h1:kId9vOtlYg3PZk9VwKbGlQmSACB5ESPTBGT+M9zjmok=
200+
github.com/ethereum/go-ethereum v1.16.7 h1:qeM4TvbrWK0UC0tgkZ7NiRsmBGwsjqc64BHo20U59UQ=
201+
github.com/ethereum/go-ethereum v1.16.7/go.mod h1:Fs6QebQbavneQTYcA39PEKv2+zIjX7rPUZ14DER46wk=
200202
github.com/ethereum/go-verkle v0.2.2 h1:I2W0WjnrFUIzzVPwm8ykY+7pL2d4VhlsePn4j7cnFk8=
201203
github.com/ethereum/go-verkle v0.2.2/go.mod h1:M3b90YRnzqKyyzBEWJGqj8Qff4IDeXnzFw0P9bFw3uk=
202204
github.com/felixge/httpsnoop v1.0.4 h1:NFTV2Zj1bL4mc9sqWACXbQFVBBg2W3GPvqp8/ESS2Wg=
@@ -569,16 +571,16 @@ github.com/onflow/flow-ft/lib/go/contracts v1.0.1 h1:Ts5ob+CoCY2EjEd0W6vdLJ7hLL3
569571
github.com/onflow/flow-ft/lib/go/contracts v1.0.1/go.mod h1:PwsL8fC81cjnUnTfmyL/HOIyHnyaw/JA474Wfj2tl6A=
570572
github.com/onflow/flow-ft/lib/go/templates v1.0.1 h1:FDYKAiGowABtoMNusLuRCILIZDtVqJ/5tYI4VkF5zfM=
571573
github.com/onflow/flow-ft/lib/go/templates v1.0.1/go.mod h1:uQ8XFqmMK2jxyBSVrmyuwdWjTEb+6zGjRYotfDJ5pAE=
572-
github.com/onflow/flow-go v0.43.3-0.20251029192457-d4f875155987 h1:Y5sXTNDBZ6PxRrQh1SKaNyGPYBAasJqs0JqjYWleAd0=
573-
github.com/onflow/flow-go v0.43.3-0.20251029192457-d4f875155987/go.mod h1:B+FLhOh5fC3AlZsRro5LsxqVwlWxgM8uNYIIGjapvIw=
574+
github.com/onflow/flow-go v0.44.0-experimental-cadence-v1.8.3.0.20251105104202-ffe43bb485d9 h1:HqJTv25GG91wcEH53YYed75aGnGkSz8/Nd5xom+frsA=
575+
github.com/onflow/flow-go v0.44.0-experimental-cadence-v1.8.3.0.20251105104202-ffe43bb485d9/go.mod h1:GGu6QswYW9YaSKBBRCnb1fhVZ4yIrHe4qMaTqVLqjLs=
574576
github.com/onflow/flow-go-sdk v1.9.2 h1:kMw3qShgLNIASHGMgoY+faTBQ+1MnzsNLAH+oxy9eiY=
575577
github.com/onflow/flow-go-sdk v1.9.2/go.mod h1:qVuzMGXNJBMktKnIDKLjV0/k21P2XD39dOfMW+X5Bsc=
576578
github.com/onflow/flow-nft/lib/go/contracts v1.3.0 h1:DmNop+O0EMyicZvhgdWboFG57xz5t9Qp81FKlfKyqJc=
577579
github.com/onflow/flow-nft/lib/go/contracts v1.3.0/go.mod h1:eZ9VMMNfCq0ho6kV25xJn1kXeCfxnkhj3MwF3ed08gY=
578580
github.com/onflow/flow-nft/lib/go/templates v1.3.0 h1:uGIBy4GEY6Z9hKP7sm5nA5kwvbvLWW4nWx5NN9Wg0II=
579581
github.com/onflow/flow-nft/lib/go/templates v1.3.0/go.mod h1:gVbb5fElaOwKhV5UEUjM+JQTjlsguHg2jwRupfM/nng=
580-
github.com/onflow/flow/protobuf/go/flow v0.4.16 h1:UADQeq/mpuqFk+EkwqDNoF70743raWQKmB/Dm/eKt2Q=
581-
github.com/onflow/flow/protobuf/go/flow v0.4.16/go.mod h1:NA2pX2nw8zuaxfKphhKsk00kWLwfd+tv8mS23YXO4Sk=
582+
github.com/onflow/flow/protobuf/go/flow v0.4.18 h1:KOujA6lg9kTXCV6oK0eErD1rwRnM9taKZss3Szi+T3Q=
583+
github.com/onflow/flow/protobuf/go/flow v0.4.18/go.mod h1:NA2pX2nw8zuaxfKphhKsk00kWLwfd+tv8mS23YXO4Sk=
582584
github.com/onflow/go-ethereum v1.13.4 h1:iNO86fm8RbBbhZ87ZulblInqCdHnAQVY8okBrNsTevc=
583585
github.com/onflow/go-ethereum v1.13.4/go.mod h1:cE/gEUkAffhwbVmMJYz+t1dAfVNHNwZCgc3BWtZxBGY=
584586
github.com/onflow/nft-storefront/lib/go/contracts v1.0.0 h1:sxyWLqGm/p4EKT6DUlQESDG1ZNMN9GjPCm1gTq7NGfc=

models/errors/errors.go

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -66,13 +66,6 @@ func NewTxGasPriceTooLowError(gasPrice *big.Int) error {
6666
))
6767
}
6868

69-
func NewTxGasLimitTooHighError(maxGasLimit uint64) error {
70-
return NewInvalidTransactionError(fmt.Errorf(
71-
"tx gas limit exceeds the max value of %d: ",
72-
maxGasLimit,
73-
))
74-
}
75-
7669
func NewRecoverableError(err error) error {
7770
return fmt.Errorf("%w: %w", ErrRecoverable, err)
7871
}

models/transaction_test.go

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -358,6 +358,20 @@ func TestValidateTransaction(t *testing.T) {
358358
valid: false,
359359
errMsg: "transaction will create a contract with value but empty code",
360360
},
361+
"tx limit above gas limit cap": {
362+
tx: gethTypes.NewTx(
363+
&gethTypes.LegacyTx{
364+
Nonce: 1,
365+
To: &validToAddress,
366+
Value: big.NewInt(0),
367+
Gas: params.MaxTxGas + 100,
368+
GasPrice: big.NewInt(0),
369+
Data: []byte{},
370+
},
371+
),
372+
valid: false,
373+
errMsg: "transaction gas limit too high (cap: 16777216, tx: 16777316)",
374+
},
361375
}
362376

363377
head := &gethTypes.Header{

services/requester/requester.go

Lines changed: 22 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,6 @@ var (
4141

4242
const minFlowBalance = 2
4343
const blockGasLimit = 120_000_000
44-
const txMaxGasLimit = 50_000_000
4544

4645
// estimateGasErrorRatio is the amount of overestimation eth_estimateGas
4746
// is allowed to produce in order to speed up calculations.
@@ -167,10 +166,6 @@ func (e *EVM) SendRawTransaction(ctx context.Context, data []byte) (common.Hash,
167166
return common.Hash{}, err
168167
}
169168

170-
if tx.Gas() > txMaxGasLimit {
171-
return common.Hash{}, errs.NewTxGasLimitTooHighError(txMaxGasLimit)
172-
}
173-
174169
head := &types.Header{
175170
// `Number` is only useful to detect hard-forks which were
176171
// activated with block numbers. However, Ethereum now
@@ -345,6 +340,28 @@ func (e *EVM) EstimateGas(
345340
passingGasLimit = uint64(*txArgs.Gas)
346341
}
347342

343+
if passingGasLimit > gethParams.MaxTxGas {
344+
// Cap the maximum gas allowance according to EIP-7825 if the estimation targets Osaka
345+
targetBlock, err := e.blocks.GetByHeight(height)
346+
if err != nil {
347+
return 0, err
348+
}
349+
blockNumber, blockTime := new(big.Int).SetUint64(targetBlock.Height), targetBlock.Timestamp
350+
351+
if blockOverrides != nil {
352+
if blockOverrides.Number != nil {
353+
blockNumber = blockOverrides.Number.ToInt()
354+
}
355+
if blockOverrides.Time != nil {
356+
blockTime = uint64(*blockOverrides.Time)
357+
}
358+
}
359+
chainConfig := emulator.MakeChainConfig(e.config.EVMNetworkID)
360+
if chainConfig.IsOsaka(blockNumber, blockTime) {
361+
passingGasLimit = gethParams.MaxTxGas
362+
}
363+
}
364+
348365
// We first execute the transaction at the highest allowable gas limit,
349366
// since if this fails we can return the error immediately.
350367
result, err := dryRun(passingGasLimit)

tests/go.mod

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,13 @@ module github.com/onflow/flow-evm-gateway/integration
33
go 1.25.0
44

55
require (
6-
github.com/ethereum/go-ethereum v1.16.5
6+
github.com/ethereum/go-ethereum v1.16.7
77
github.com/goccy/go-json v0.10.4
88
github.com/onflow/cadence v1.8.3
99
github.com/onflow/crypto v0.25.3
10-
github.com/onflow/flow-emulator v1.10.4
10+
github.com/onflow/flow-emulator v1.11.1-0.20251107105328-ff6728fc0f1a
1111
github.com/onflow/flow-evm-gateway v0.0.0-20240201154855-4d4d3d3f19c7
12-
github.com/onflow/flow-go v0.43.3-0.20251029192457-d4f875155987
12+
github.com/onflow/flow-go v0.44.0-experimental-cadence-v1.8.3.0.20251105104202-ffe43bb485d9
1313
github.com/onflow/flow-go-sdk v1.9.2
1414
github.com/rs/zerolog v1.34.0
1515
github.com/stretchr/testify v1.11.1
@@ -26,6 +26,7 @@ require (
2626
cloud.google.com/go/longrunning v0.6.7 // indirect
2727
github.com/DataDog/zstd v1.5.6-0.20230824185856-869dae002e5e // indirect
2828
github.com/Microsoft/go-winio v0.6.2 // indirect
29+
github.com/ProjectZKM/Ziren/crates/go-runtime/zkvm_runtime v0.0.0-20251001021608-1fe7b43fc4d6 // indirect
2930
github.com/SaveTheRbtz/mph v0.1.1-0.20240117162131-4166ec7869bc // indirect
3031
github.com/StackExchange/wmi v1.2.1 // indirect
3132
github.com/VictoriaMetrics/fastcache v1.13.0 // indirect
@@ -66,7 +67,7 @@ require (
6667
github.com/dustin/go-humanize v1.0.1 // indirect
6768
github.com/ef-ds/deque v1.0.4 // indirect
6869
github.com/emicklei/dot v1.6.2 // indirect
69-
github.com/ethereum/c-kzg-4844/v2 v2.1.3 // indirect
70+
github.com/ethereum/c-kzg-4844/v2 v2.1.5 // indirect
7071
github.com/ethereum/go-bigmodexpfix v0.0.0-20250911101455-f9e208c548ab // indirect
7172
github.com/ethereum/go-verkle v0.2.2 // indirect
7273
github.com/felixge/httpsnoop v1.0.4 // indirect
@@ -164,7 +165,7 @@ require (
164165
github.com/onflow/flow-ft/lib/go/templates v1.0.1 // indirect
165166
github.com/onflow/flow-nft/lib/go/contracts v1.3.0 // indirect
166167
github.com/onflow/flow-nft/lib/go/templates v1.3.0 // indirect
167-
github.com/onflow/flow/protobuf/go/flow v0.4.16 // indirect
168+
github.com/onflow/flow/protobuf/go/flow v0.4.18 // indirect
168169
github.com/onflow/go-ethereum v1.13.4 // indirect
169170
github.com/onflow/nft-storefront/lib/go/contracts v1.0.0 // indirect
170171
github.com/onflow/sdks v0.6.0-preview.1 // indirect

tests/go.sum

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,8 @@ github.com/Microsoft/go-winio v0.6.2/go.mod h1:yd8OoFMLzJbo9gZq8j5qaps8bJ9aShtEA
7272
github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU=
7373
github.com/OneOfOne/xxhash v1.2.8 h1:31czK/TI9sNkxIKfaUfGlU47BAxQ0ztGgd9vPyqimf8=
7474
github.com/OneOfOne/xxhash v1.2.8/go.mod h1:eZbhyaAYD41SGSSsnmcpxVoRiQ/MPUTjUdIIOT9Um7Q=
75+
github.com/ProjectZKM/Ziren/crates/go-runtime/zkvm_runtime v0.0.0-20251001021608-1fe7b43fc4d6 h1:1zYrtlhrZ6/b6SAjLSfKzWtdgqK0U+HtH/VcBWh1BaU=
76+
github.com/ProjectZKM/Ziren/crates/go-runtime/zkvm_runtime v0.0.0-20251001021608-1fe7b43fc4d6/go.mod h1:ioLG6R+5bUSO1oeGSDxOV3FADARuMoytZCSX6MEMQkI=
7577
github.com/SaveTheRbtz/mph v0.1.1-0.20240117162131-4166ec7869bc h1:DCHzPQOcU/7gwDTWbFQZc5qHMPS1g0xTO56k8NXsv9M=
7678
github.com/SaveTheRbtz/mph v0.1.1-0.20240117162131-4166ec7869bc/go.mod h1:LJM5a3zcIJ/8TmZwlUczvROEJT8ntOdhdG9jjcR1B0I=
7779
github.com/Shopify/sarama v1.19.0/go.mod h1:FVkBWblsNy7DGZRfXLU0O9RCGt5g3g3yEuWXgklEdEo=
@@ -292,12 +294,12 @@ github.com/envoyproxy/go-control-plane/envoy v1.32.4/go.mod h1:Gzjc5k8JcJswLjAx1
292294
github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c=
293295
github.com/envoyproxy/protoc-gen-validate v1.2.1 h1:DEo3O99U8j4hBFwbJfrz9VtgcDfUKS7KJ7spH3d86P8=
294296
github.com/envoyproxy/protoc-gen-validate v1.2.1/go.mod h1:d/C80l/jxXLdfEIhX1W2TmLfsJ31lvEjwamM4DxlWXU=
295-
github.com/ethereum/c-kzg-4844/v2 v2.1.3 h1:DQ21UU0VSsuGy8+pcMJHDS0CV1bKmJmxsJYK8l3MiLU=
296-
github.com/ethereum/c-kzg-4844/v2 v2.1.3/go.mod h1:fyNcYI/yAuLWJxf4uzVtS8VDKeoAaRM8G/+ADz/pRdA=
297+
github.com/ethereum/c-kzg-4844/v2 v2.1.5 h1:aVtoLK5xwJ6c5RiqO8g8ptJ5KU+2Hdquf6G3aXiHh5s=
298+
github.com/ethereum/c-kzg-4844/v2 v2.1.5/go.mod h1:u59hRTTah4Co6i9fDWtiCjTrblJv0UwsqZKCc0GfgUs=
297299
github.com/ethereum/go-bigmodexpfix v0.0.0-20250911101455-f9e208c548ab h1:rvv6MJhy07IMfEKuARQ9TKojGqLVNxQajaXEp/BoqSk=
298300
github.com/ethereum/go-bigmodexpfix v0.0.0-20250911101455-f9e208c548ab/go.mod h1:IuLm4IsPipXKF7CW5Lzf68PIbZ5yl7FFd74l/E0o9A8=
299-
github.com/ethereum/go-ethereum v1.16.5 h1:GZI995PZkzP7ySCxEFaOPzS8+bd8NldE//1qvQDQpe0=
300-
github.com/ethereum/go-ethereum v1.16.5/go.mod h1:kId9vOtlYg3PZk9VwKbGlQmSACB5ESPTBGT+M9zjmok=
301+
github.com/ethereum/go-ethereum v1.16.7 h1:qeM4TvbrWK0UC0tgkZ7NiRsmBGwsjqc64BHo20U59UQ=
302+
github.com/ethereum/go-ethereum v1.16.7/go.mod h1:Fs6QebQbavneQTYcA39PEKv2+zIjX7rPUZ14DER46wk=
301303
github.com/ethereum/go-verkle v0.2.2 h1:I2W0WjnrFUIzzVPwm8ykY+7pL2d4VhlsePn4j7cnFk8=
302304
github.com/ethereum/go-verkle v0.2.2/go.mod h1:M3b90YRnzqKyyzBEWJGqj8Qff4IDeXnzFw0P9bFw3uk=
303305
github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4=
@@ -812,24 +814,24 @@ github.com/onflow/flow-core-contracts/lib/go/contracts v1.9.1 h1:u6am8NzuWOIKkSk
812814
github.com/onflow/flow-core-contracts/lib/go/contracts v1.9.1/go.mod h1:jBDqVep0ICzhXky56YlyO4aiV2Jl/5r7wnqUPpvi7zE=
813815
github.com/onflow/flow-core-contracts/lib/go/templates v1.9.1 h1:ebyynXy74ZcfW+JpPwI+aaY0ezlxxA0cUgUrjhJonWg=
814816
github.com/onflow/flow-core-contracts/lib/go/templates v1.9.1/go.mod h1:twSVyUt3rNrgzAmxtBX+1Gw64QlPemy17cyvnXYy1Ug=
815-
github.com/onflow/flow-emulator v1.10.4 h1:8k8RjZfXJRAkhjprw9M99/PsFaElw2mz+Ea66Fra4FY=
816-
github.com/onflow/flow-emulator v1.10.4/go.mod h1:h45K6PxWMGMpT1L8q4BmQOwkQvgXpDPL/QqiJ8bgu5I=
817+
github.com/onflow/flow-emulator v1.11.1-0.20251107105328-ff6728fc0f1a h1:s3l5EtVBSE5ili7bDjQaWQTjhH8rTyB5AMtyphnIQfY=
818+
github.com/onflow/flow-emulator v1.11.1-0.20251107105328-ff6728fc0f1a/go.mod h1:dvOO+rC8aMq6U4c9JJP8Mow+AZBP8NveFw8j8n9xe4s=
817819
github.com/onflow/flow-evm-bridge v0.1.0 h1:7X2osvo4NnQgHj8aERUmbYtv9FateX8liotoLnPL9nM=
818820
github.com/onflow/flow-evm-bridge v0.1.0/go.mod h1:5UYwsnu6WcBNrwitGFxphCl5yq7fbWYGYuiCSTVF6pk=
819821
github.com/onflow/flow-ft/lib/go/contracts v1.0.1 h1:Ts5ob+CoCY2EjEd0W6vdLJ7hLL3SsEftzXG2JlmSe24=
820822
github.com/onflow/flow-ft/lib/go/contracts v1.0.1/go.mod h1:PwsL8fC81cjnUnTfmyL/HOIyHnyaw/JA474Wfj2tl6A=
821823
github.com/onflow/flow-ft/lib/go/templates v1.0.1 h1:FDYKAiGowABtoMNusLuRCILIZDtVqJ/5tYI4VkF5zfM=
822824
github.com/onflow/flow-ft/lib/go/templates v1.0.1/go.mod h1:uQ8XFqmMK2jxyBSVrmyuwdWjTEb+6zGjRYotfDJ5pAE=
823-
github.com/onflow/flow-go v0.43.3-0.20251029192457-d4f875155987 h1:Y5sXTNDBZ6PxRrQh1SKaNyGPYBAasJqs0JqjYWleAd0=
824-
github.com/onflow/flow-go v0.43.3-0.20251029192457-d4f875155987/go.mod h1:B+FLhOh5fC3AlZsRro5LsxqVwlWxgM8uNYIIGjapvIw=
825+
github.com/onflow/flow-go v0.44.0-experimental-cadence-v1.8.3.0.20251105104202-ffe43bb485d9 h1:HqJTv25GG91wcEH53YYed75aGnGkSz8/Nd5xom+frsA=
826+
github.com/onflow/flow-go v0.44.0-experimental-cadence-v1.8.3.0.20251105104202-ffe43bb485d9/go.mod h1:GGu6QswYW9YaSKBBRCnb1fhVZ4yIrHe4qMaTqVLqjLs=
825827
github.com/onflow/flow-go-sdk v1.9.2 h1:kMw3qShgLNIASHGMgoY+faTBQ+1MnzsNLAH+oxy9eiY=
826828
github.com/onflow/flow-go-sdk v1.9.2/go.mod h1:qVuzMGXNJBMktKnIDKLjV0/k21P2XD39dOfMW+X5Bsc=
827829
github.com/onflow/flow-nft/lib/go/contracts v1.3.0 h1:DmNop+O0EMyicZvhgdWboFG57xz5t9Qp81FKlfKyqJc=
828830
github.com/onflow/flow-nft/lib/go/contracts v1.3.0/go.mod h1:eZ9VMMNfCq0ho6kV25xJn1kXeCfxnkhj3MwF3ed08gY=
829831
github.com/onflow/flow-nft/lib/go/templates v1.3.0 h1:uGIBy4GEY6Z9hKP7sm5nA5kwvbvLWW4nWx5NN9Wg0II=
830832
github.com/onflow/flow-nft/lib/go/templates v1.3.0/go.mod h1:gVbb5fElaOwKhV5UEUjM+JQTjlsguHg2jwRupfM/nng=
831-
github.com/onflow/flow/protobuf/go/flow v0.4.16 h1:UADQeq/mpuqFk+EkwqDNoF70743raWQKmB/Dm/eKt2Q=
832-
github.com/onflow/flow/protobuf/go/flow v0.4.16/go.mod h1:NA2pX2nw8zuaxfKphhKsk00kWLwfd+tv8mS23YXO4Sk=
833+
github.com/onflow/flow/protobuf/go/flow v0.4.18 h1:KOujA6lg9kTXCV6oK0eErD1rwRnM9taKZss3Szi+T3Q=
834+
github.com/onflow/flow/protobuf/go/flow v0.4.18/go.mod h1:NA2pX2nw8zuaxfKphhKsk00kWLwfd+tv8mS23YXO4Sk=
833835
github.com/onflow/go-ethereum v1.13.4 h1:iNO86fm8RbBbhZ87ZulblInqCdHnAQVY8okBrNsTevc=
834836
github.com/onflow/go-ethereum v1.13.4/go.mod h1:cE/gEUkAffhwbVmMJYz+t1dAfVNHNwZCgc3BWtZxBGY=
835837
github.com/onflow/nft-storefront/lib/go/contracts v1.0.0 h1:sxyWLqGm/p4EKT6DUlQESDG1ZNMN9GjPCm1gTq7NGfc=

tests/tx_batching_test.go

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -257,7 +257,7 @@ func Test_MultipleTransactionSubmissionsWithinSmallInterval(t *testing.T) {
257257

258258
txResults, err := emu.GetTransactionsByBlockID(block1.ID())
259259
require.NoError(t, err)
260-
require.Len(t, txResults, 1)
260+
require.True(t, len(txResults) >= 1)
261261

262262
// Assert that the 1st transaction was submitted individually.
263263
// The easiest way to check that is by making sure that the
@@ -273,7 +273,7 @@ func Test_MultipleTransactionSubmissionsWithinSmallInterval(t *testing.T) {
273273

274274
txResults, err = emu.GetTransactionsByBlockID(block2.ID())
275275
require.NoError(t, err)
276-
require.Len(t, txResults, 1)
276+
require.True(t, len(txResults) >= 1)
277277

278278
// Assert that the 2nd transaction was submitted in a batch.
279279
// The easiest way to check that is by making sure that the
@@ -371,7 +371,7 @@ func Test_MultipleTransactionSubmissionsWithinRecentInterval(t *testing.T) {
371371

372372
txResults, err := emu.GetTransactionsByBlockID(block1.ID())
373373
require.NoError(t, err)
374-
require.Len(t, txResults, 1)
374+
require.True(t, len(txResults) >= 1)
375375

376376
// Assert that the 1st transaction was submitted individually.
377377
// The easiest way to check that is by making sure that the
@@ -387,7 +387,7 @@ func Test_MultipleTransactionSubmissionsWithinRecentInterval(t *testing.T) {
387387

388388
txResults, err = emu.GetTransactionsByBlockID(block2.ID())
389389
require.NoError(t, err)
390-
require.Len(t, txResults, 1)
390+
require.True(t, len(txResults) >= 1)
391391

392392
// Assert that the 2nd transaction was submitted in a batch.
393393
// The easiest way to check that is by making sure that the
@@ -486,7 +486,7 @@ func Test_MultipleTransactionSubmissionsWithinNonRecentInterval(t *testing.T) {
486486

487487
txResults, err := emu.GetTransactionsByBlockID(block1.ID())
488488
require.NoError(t, err)
489-
require.Len(t, txResults, 1)
489+
require.True(t, len(txResults) >= 1)
490490

491491
// Assert that the 1st transaction was submitted individually.
492492
// The easiest way to check that is by making sure that the
@@ -502,7 +502,7 @@ func Test_MultipleTransactionSubmissionsWithinNonRecentInterval(t *testing.T) {
502502

503503
txResults, err = emu.GetTransactionsByBlockID(block2.ID())
504504
require.NoError(t, err)
505-
require.Len(t, txResults, 1)
505+
require.True(t, len(txResults) >= 1)
506506

507507
// Assert that the 2nd transaction was also submitted individually.
508508
// The easiest way to check that is by making sure that the

0 commit comments

Comments
 (0)