refactor: use upstream core/types

Complete the transition of `core/types` to upstream code.

Note that the previous commit results in _all_ upstream types / vars / consts being in the `imports.go` file. This results in a strict partition of upstream and local identifiers so it is safe to simply change import paths.

1. Globally change all imports from `subnet-evm/core/types` to `libevm/core/types`;
2. Rename all `subnet-evm/core/types` imports to `customtypes` for ease of review here;
3. Dot import `libevm/core/types` in tests only to avoid hundreds of noisy changes.

See original PR https://github.com/ava-labs/coreth/pull/875
This commit is contained in:
Arran Schlosberg
2025-04-01 10:14:52 +02:00
committed by Quentin Mc Gaw
parent d26f6e4f50
commit cfb6dda961
195 changed files with 421 additions and 485 deletions
+1 -1
View File
@@ -37,9 +37,9 @@ import (
"github.com/ava-labs/libevm/accounts/external"
"github.com/ava-labs/libevm/accounts/keystore"
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/crypto"
"github.com/ava-labs/libevm/log"
"github.com/ava-labs/subnet-evm/core/types"
)
// ErrNoChainID is returned whenever the user failed to specify a chain id.
+1 -1
View File
@@ -32,7 +32,7 @@ import (
"math/big"
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/subnet-evm/interfaces"
)
+1 -1
View File
@@ -30,8 +30,8 @@ import (
"context"
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/subnet-evm/accounts/abi/bind"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/ethclient/simulated"
"github.com/ava-labs/subnet-evm/interfaces"
)
+1 -1
View File
@@ -35,10 +35,10 @@ import (
"sync"
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/crypto"
"github.com/ava-labs/libevm/event"
"github.com/ava-labs/subnet-evm/accounts/abi"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/interfaces"
"github.com/ava-labs/subnet-evm/rpc"
)
+1 -1
View File
@@ -36,11 +36,11 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/common/hexutil"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/crypto"
"github.com/ava-labs/libevm/rlp"
"github.com/ava-labs/subnet-evm/accounts/abi"
"github.com/ava-labs/subnet-evm/accounts/abi/bind"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/interfaces"
"github.com/stretchr/testify/assert"
)
+25 -25
View File
@@ -299,7 +299,7 @@ var bindTests = []struct {
"github.com/ava-labs/subnet-evm/accounts/abi/bind"
"github.com/ava-labs/subnet-evm/accounts/abi/bind/backends"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/crypto"
`,
`
@@ -355,7 +355,7 @@ var bindTests = []struct {
"github.com/ava-labs/subnet-evm/accounts/abi/bind"
"github.com/ava-labs/subnet-evm/accounts/abi/bind/backends"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/crypto"
`,
`
@@ -401,7 +401,7 @@ var bindTests = []struct {
"github.com/ava-labs/subnet-evm/accounts/abi/bind"
"github.com/ava-labs/subnet-evm/accounts/abi/bind/backends"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/crypto"
`,
`
@@ -459,7 +459,7 @@ var bindTests = []struct {
"github.com/ava-labs/subnet-evm/accounts/abi/bind"
"github.com/ava-labs/subnet-evm/accounts/abi/bind/backends"
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/crypto"
`,
`
@@ -507,7 +507,7 @@ var bindTests = []struct {
"github.com/ava-labs/subnet-evm/accounts/abi/bind"
"github.com/ava-labs/subnet-evm/accounts/abi/bind/backends"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/crypto"
`,
`
@@ -574,7 +574,7 @@ var bindTests = []struct {
"github.com/ava-labs/subnet-evm/accounts/abi/bind"
"github.com/ava-labs/subnet-evm/accounts/abi/bind/backends"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/crypto"
`,
`
@@ -620,7 +620,7 @@ var bindTests = []struct {
"github.com/ava-labs/subnet-evm/accounts/abi/bind"
"github.com/ava-labs/subnet-evm/accounts/abi/bind/backends"
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
`,
`
// Create a simulator and wrap a non-deployed contract
@@ -659,7 +659,7 @@ var bindTests = []struct {
"github.com/ava-labs/subnet-evm/accounts/abi/bind"
"github.com/ava-labs/subnet-evm/accounts/abi/bind/backends"
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
`,
`
// Create a simulator and wrap a non-deployed contract
@@ -706,7 +706,7 @@ var bindTests = []struct {
"github.com/ava-labs/subnet-evm/accounts/abi/bind"
"github.com/ava-labs/subnet-evm/accounts/abi/bind/backends"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/crypto"
`,
`
@@ -756,7 +756,7 @@ var bindTests = []struct {
"github.com/ava-labs/subnet-evm/accounts/abi/bind"
"github.com/ava-labs/subnet-evm/accounts/abi/bind/backends"
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/crypto"
`,
`
@@ -831,7 +831,7 @@ var bindTests = []struct {
"github.com/ava-labs/subnet-evm/accounts/abi/bind"
"github.com/ava-labs/subnet-evm/accounts/abi/bind/backends"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/crypto"
`,
`
@@ -925,7 +925,7 @@ var bindTests = []struct {
"github.com/ava-labs/subnet-evm/accounts/abi/bind"
"github.com/ava-labs/subnet-evm/accounts/abi/bind/backends"
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/crypto"
`,
`
@@ -1115,7 +1115,7 @@ var bindTests = []struct {
"github.com/ava-labs/subnet-evm/accounts/abi/bind"
"github.com/ava-labs/subnet-evm/accounts/abi/bind/backends"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/crypto"
`,
`
@@ -1250,7 +1250,7 @@ var bindTests = []struct {
"github.com/ava-labs/subnet-evm/accounts/abi/bind"
"github.com/ava-labs/subnet-evm/accounts/abi/bind/backends"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/crypto"
`,
@@ -1392,7 +1392,7 @@ var bindTests = []struct {
"github.com/ava-labs/subnet-evm/accounts/abi/bind"
"github.com/ava-labs/subnet-evm/accounts/abi/bind/backends"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/crypto"
`,
`
@@ -1458,7 +1458,7 @@ var bindTests = []struct {
"github.com/ava-labs/subnet-evm/accounts/abi/bind"
"github.com/ava-labs/subnet-evm/accounts/abi/bind/backends"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/crypto"
`,
`
@@ -1568,7 +1568,7 @@ var bindTests = []struct {
"github.com/ava-labs/subnet-evm/accounts/abi/bind"
"github.com/ava-labs/subnet-evm/accounts/abi/bind/backends"
"github.com/ava-labs/libevm/crypto"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
`,
`
// Initialize test accounts
@@ -1631,7 +1631,7 @@ var bindTests = []struct {
"github.com/ava-labs/subnet-evm/accounts/abi/bind"
"github.com/ava-labs/subnet-evm/accounts/abi/bind/backends"
"github.com/ava-labs/libevm/crypto"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
`,
`
key, _ := crypto.GenerateKey()
@@ -1692,7 +1692,7 @@ var bindTests = []struct {
"github.com/ava-labs/subnet-evm/accounts/abi/bind"
"github.com/ava-labs/subnet-evm/accounts/abi/bind/backends"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/crypto"
`,
`
@@ -1753,7 +1753,7 @@ var bindTests = []struct {
"github.com/ava-labs/subnet-evm/accounts/abi/bind"
"github.com/ava-labs/subnet-evm/accounts/abi/bind/backends"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/crypto"
`,
`
@@ -1841,7 +1841,7 @@ var bindTests = []struct {
"github.com/ava-labs/subnet-evm/accounts/abi/bind"
"github.com/ava-labs/subnet-evm/accounts/abi/bind/backends"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/crypto"
`,
`
@@ -1911,7 +1911,7 @@ var bindTests = []struct {
"github.com/ava-labs/subnet-evm/accounts/abi/bind"
"github.com/ava-labs/subnet-evm/accounts/abi/bind/backends"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/crypto"
`,
`
@@ -1963,7 +1963,7 @@ var bindTests = []struct {
"github.com/ava-labs/subnet-evm/accounts/abi/bind"
"github.com/ava-labs/subnet-evm/accounts/abi/bind/backends"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/crypto"
`,
tester: `
@@ -2011,7 +2011,7 @@ var bindTests = []struct {
"github.com/ava-labs/subnet-evm/accounts/abi/bind"
"github.com/ava-labs/subnet-evm/accounts/abi/bind/backends"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/crypto"
`,
tester: `
@@ -2052,7 +2052,7 @@ var bindTests = []struct {
"github.com/ava-labs/subnet-evm/accounts/abi/bind"
"github.com/ava-labs/subnet-evm/accounts/abi/bind/backends"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/crypto"
`,
tester: `
+1 -1
View File
@@ -103,7 +103,7 @@ import (
"github.com/ava-labs/subnet-evm/accounts/abi"
"github.com/ava-labs/subnet-evm/accounts/abi/bind"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/subnet-evm/interfaces"
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/event"
+1 -1
View File
@@ -32,8 +32,8 @@ import (
"time"
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/log"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/interfaces"
)
+1 -1
View File
@@ -34,9 +34,9 @@ import (
"time"
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/crypto"
"github.com/ava-labs/subnet-evm/accounts/abi/bind"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/ethclient/simulated"
"github.com/ava-labs/subnet-evm/params"
)
+1 -1
View File
@@ -37,9 +37,9 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/common/hexutil"
"github.com/ava-labs/libevm/common/math"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/crypto"
"github.com/ava-labs/libevm/rlp"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/urfave/cli/v2"
)
+1 -1
View File
@@ -33,6 +33,7 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/common/math"
"github.com/ava-labs/libevm/core/rawdb"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/core/vm"
"github.com/ava-labs/libevm/crypto"
"github.com/ava-labs/libevm/ethdb"
@@ -43,7 +44,6 @@ import (
"github.com/ava-labs/subnet-evm/consensus/misc/eip4844"
"github.com/ava-labs/subnet-evm/core"
"github.com/ava-labs/subnet-evm/core/state"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/params"
"github.com/holiman/uint256"
"golang.org/x/crypto/sha3"
+5 -5
View File
@@ -10,7 +10,7 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/common/hexutil"
"github.com/ava-labs/libevm/common/math"
types0 "github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
)
var _ = (*headerMarshaling)(nil)
@@ -24,7 +24,7 @@ func (h header) MarshalJSON() ([]byte, error) {
Root common.Hash `json:"stateRoot" gencodec:"required"`
TxHash *common.Hash `json:"transactionsRoot"`
ReceiptHash *common.Hash `json:"receiptsRoot"`
Bloom types0.Bloom `json:"logsBloom"`
Bloom types.Bloom `json:"logsBloom"`
Difficulty *math.HexOrDecimal256 `json:"difficulty"`
Number *math.HexOrDecimal256 `json:"number" gencodec:"required"`
GasLimit math.HexOrDecimal64 `json:"gasLimit" gencodec:"required"`
@@ -32,7 +32,7 @@ func (h header) MarshalJSON() ([]byte, error) {
Time math.HexOrDecimal64 `json:"timestamp" gencodec:"required"`
Extra hexutil.Bytes `json:"extraData"`
MixDigest common.Hash `json:"mixHash"`
Nonce *types0.BlockNonce `json:"nonce"`
Nonce *types.BlockNonce `json:"nonce"`
BaseFee *math.HexOrDecimal256 `json:"baseFeePerGas" rlp:"optional"`
BlobGasUsed *math.HexOrDecimal64 `json:"blobGasUsed" rlp:"optional"`
ExcessBlobGas *math.HexOrDecimal64 `json:"excessBlobGas" rlp:"optional"`
@@ -70,7 +70,7 @@ func (h *header) UnmarshalJSON(input []byte) error {
Root *common.Hash `json:"stateRoot" gencodec:"required"`
TxHash *common.Hash `json:"transactionsRoot"`
ReceiptHash *common.Hash `json:"receiptsRoot"`
Bloom *types0.Bloom `json:"logsBloom"`
Bloom *types.Bloom `json:"logsBloom"`
Difficulty *math.HexOrDecimal256 `json:"difficulty"`
Number *math.HexOrDecimal256 `json:"number" gencodec:"required"`
GasLimit *math.HexOrDecimal64 `json:"gasLimit" gencodec:"required"`
@@ -78,7 +78,7 @@ func (h *header) UnmarshalJSON(input []byte) error {
Time *math.HexOrDecimal64 `json:"timestamp" gencodec:"required"`
Extra *hexutil.Bytes `json:"extraData"`
MixDigest *common.Hash `json:"mixHash"`
Nonce *types0.BlockNonce `json:"nonce"`
Nonce *types.BlockNonce `json:"nonce"`
BaseFee *math.HexOrDecimal256 `json:"baseFeePerGas" rlp:"optional"`
BlobGasUsed *math.HexOrDecimal64 `json:"blobGasUsed" rlp:"optional"`
ExcessBlobGas *math.HexOrDecimal64 `json:"excessBlobGas" rlp:"optional"`
+1 -1
View File
@@ -36,9 +36,9 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/common/hexutil"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/rlp"
"github.com/ava-labs/subnet-evm/core"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/params"
"github.com/ava-labs/subnet-evm/tests"
"github.com/urfave/cli/v2"
+1 -1
View File
@@ -36,11 +36,11 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/common/hexutil"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/core/vm"
"github.com/ava-labs/libevm/eth/tracers/logger"
"github.com/ava-labs/libevm/log"
"github.com/ava-labs/subnet-evm/core/state"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/eth/tracers"
"github.com/ava-labs/subnet-evm/params"
customheader "github.com/ava-labs/subnet-evm/plugin/evm/header"
+1 -1
View File
@@ -27,9 +27,9 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/common/hexutil"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/crypto"
"github.com/ava-labs/libevm/rlp"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/params"
)
+1 -1
View File
@@ -10,11 +10,11 @@ import (
"math/big"
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/log"
"github.com/ava-labs/subnet-evm/cmd/simulator/key"
"github.com/ava-labs/subnet-evm/cmd/simulator/metrics"
"github.com/ava-labs/subnet-evm/cmd/simulator/txs"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/ethclient"
"github.com/ava-labs/subnet-evm/params"
)
+1 -1
View File
@@ -15,13 +15,13 @@ import (
"time"
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/types"
ethcrypto "github.com/ava-labs/libevm/crypto"
"github.com/ava-labs/libevm/log"
"github.com/ava-labs/subnet-evm/cmd/simulator/config"
"github.com/ava-labs/subnet-evm/cmd/simulator/key"
"github.com/ava-labs/subnet-evm/cmd/simulator/metrics"
"github.com/ava-labs/subnet-evm/cmd/simulator/txs"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/ethclient"
"github.com/ava-labs/subnet-evm/params"
"golang.org/x/sync/errgroup"
+1 -1
View File
@@ -9,8 +9,8 @@ import (
"time"
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/log"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/ethclient"
"github.com/ava-labs/subnet-evm/interfaces"
)
+1 -1
View File
@@ -8,8 +8,8 @@ import (
"crypto/ecdsa"
"fmt"
"github.com/ava-labs/libevm/core/types"
ethcrypto "github.com/ava-labs/libevm/crypto"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/ethclient"
)
+1 -1
View File
@@ -31,9 +31,9 @@ import (
"math/big"
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/subnet-evm/commontype"
"github.com/ava-labs/subnet-evm/core/state"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/params"
)
+5 -4
View File
@@ -11,11 +11,12 @@ import (
"github.com/ava-labs/avalanchego/utils/timer/mockable"
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/trie"
"github.com/ava-labs/subnet-evm/consensus"
"github.com/ava-labs/subnet-evm/consensus/misc/eip4844"
"github.com/ava-labs/subnet-evm/core/state"
"github.com/ava-labs/subnet-evm/core/types"
customtypes "github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/params"
"github.com/ava-labs/subnet-evm/params/extras"
"github.com/ava-labs/subnet-evm/plugin/evm/vmerrors"
@@ -162,7 +163,7 @@ func verifyHeaderGasFields(config *extras.ChainConfig, header *types.Header, par
parent,
header.Time,
)
headerExtra := types.GetHeaderExtra(header)
headerExtra := customtypes.GetHeaderExtra(header)
if !utils.BigEqual(headerExtra.BlockGasCost, expectedBlockGasCost) {
return fmt.Errorf("invalid block gas cost: have %d, want %d", headerExtra.BlockGasCost, expectedBlockGasCost)
}
@@ -337,7 +338,7 @@ func (eng *DummyEngine) Finalize(chain consensus.ChainHeaderReader, block *types
return err
}
// Verify the BlockGasCost set in the header matches the expected value.
blockGasCost := types.BlockGasCost(block)
blockGasCost := customtypes.BlockGasCost(block)
expectedBlockGasCost := customheader.BlockGasCost(
config,
feeConfig,
@@ -374,7 +375,7 @@ func (eng *DummyEngine) FinalizeAndAssemble(chain consensus.ChainHeaderReader, h
config := params.GetExtra(chain.Config())
// Calculate the required block gas cost for this block.
headerExtra := types.GetHeaderExtra(header)
headerExtra := customtypes.GetHeaderExtra(header)
headerExtra.BlockGasCost = customheader.BlockGasCost(
config,
feeConfig,
+1 -1
View File
@@ -9,8 +9,8 @@ import (
"testing"
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/subnet-evm/commontype"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/plugin/evm/header"
)
+1 -1
View File
@@ -31,7 +31,7 @@ import (
"fmt"
"math/big"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/subnet-evm/params"
)
+1 -1
View File
@@ -34,11 +34,11 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/common/math"
"github.com/ava-labs/libevm/core/rawdb"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/core/vm"
"github.com/ava-labs/libevm/crypto"
"github.com/ava-labs/libevm/ethdb"
"github.com/ava-labs/subnet-evm/consensus/dummy"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/params"
customrawdb "github.com/ava-labs/subnet-evm/plugin/evm/rawdb"
)
+1 -1
View File
@@ -30,10 +30,10 @@ import (
"errors"
"fmt"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/trie"
"github.com/ava-labs/subnet-evm/consensus"
"github.com/ava-labs/subnet-evm/core/state"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/params"
"github.com/ava-labs/subnet-evm/params/extras"
)
+5 -4
View File
@@ -42,6 +42,7 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/common/lru"
"github.com/ava-labs/libevm/core/rawdb"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/core/vm"
"github.com/ava-labs/libevm/ethdb"
"github.com/ava-labs/libevm/event"
@@ -54,7 +55,7 @@ import (
"github.com/ava-labs/subnet-evm/consensus/misc/eip4844"
"github.com/ava-labs/subnet-evm/core/state"
"github.com/ava-labs/subnet-evm/core/state/snapshot"
"github.com/ava-labs/subnet-evm/core/types"
customtypes "github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/internal/version"
"github.com/ava-labs/subnet-evm/params"
customrawdb "github.com/ava-labs/subnet-evm/plugin/evm/rawdb"
@@ -610,7 +611,7 @@ func (bc *BlockChain) startAcceptor() {
bc.acceptorTipLock.Unlock()
// Update accepted feeds
flattenedLogs := types.FlattenLogs(logs)
flattenedLogs := customtypes.FlattenLogs(logs)
bc.chainAcceptedFeed.Send(ChainEvent{Block: next, Hash: next.Hash(), Logs: flattenedLogs})
if len(flattenedLogs) > 0 {
bc.logsAcceptedFeed.Send(flattenedLogs)
@@ -1443,7 +1444,7 @@ func (bc *BlockChain) insertBlock(block *types.Block, writes bool) error {
"parentHash", block.ParentHash(),
"uncles", len(block.Uncles()), "txs", len(block.Transactions()), "gas", block.GasUsed(),
"elapsed", common.PrettyDuration(time.Since(start)),
"root", block.Root(), "baseFeePerGas", block.BaseFee(), "blockGasCost", types.BlockGasCost(block),
"root", block.Root(), "baseFeePerGas", block.BaseFee(), "blockGasCost", customtypes.BlockGasCost(block),
)
processedBlockGasUsedCounter.Inc(int64(block.GasUsed()))
@@ -1486,7 +1487,7 @@ func (bc *BlockChain) collectUnflattenedLogs(b *types.Block, removed bool) [][]*
// the processing of a block. These logs are later announced as deleted or reborn.
func (bc *BlockChain) collectLogs(b *types.Block, removed bool) []*types.Log {
unflattenedLogs := bc.collectUnflattenedLogs(b, removed)
return types.FlattenLogs(unflattenedLogs)
return customtypes.FlattenLogs(unflattenedLogs)
}
// reorg takes two blocks, an old chain and a new chain and will reconstruct the
+1 -1
View File
@@ -33,7 +33,7 @@ import (
"fmt"
"sync"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
)
type blockAndState struct {
+1 -1
View File
@@ -10,11 +10,11 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/rawdb"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/core/vm"
"github.com/ava-labs/libevm/crypto"
"github.com/ava-labs/subnet-evm/accounts/abi"
"github.com/ava-labs/subnet-evm/consensus/dummy"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/params"
"github.com/ava-labs/subnet-evm/plugin/evm/upgrade/legacy"
"github.com/stretchr/testify/require"
+1 -1
View File
@@ -31,6 +31,7 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/rawdb"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/core/vm"
"github.com/ava-labs/libevm/event"
"github.com/ava-labs/libevm/triedb"
@@ -39,7 +40,6 @@ import (
"github.com/ava-labs/subnet-evm/constants"
"github.com/ava-labs/subnet-evm/core/state"
"github.com/ava-labs/subnet-evm/core/state/snapshot"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/params"
"github.com/ava-labs/subnet-evm/precompile/contracts/feemanager"
"github.com/ava-labs/subnet-evm/precompile/contracts/rewardmanager"
+1 -1
View File
@@ -36,11 +36,11 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/rawdb"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/core/vm"
"github.com/ava-labs/libevm/crypto"
"github.com/ava-labs/libevm/triedb"
"github.com/ava-labs/subnet-evm/consensus/dummy"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/params"
"github.com/stretchr/testify/require"
)
+1 -1
View File
@@ -32,7 +32,7 @@ package core
import (
"testing"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
)
// verifyNoGaps checks that there are no gaps after the initial set of blocks in
+1 -1
View File
@@ -40,11 +40,11 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/rawdb"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/core/vm"
"github.com/ava-labs/libevm/ethdb"
"github.com/ava-labs/subnet-evm/consensus"
"github.com/ava-labs/subnet-evm/consensus/dummy"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/params"
"github.com/ava-labs/subnet-evm/plugin/evm/upgrade/legacy"
)
+1 -1
View File
@@ -12,6 +12,7 @@ import (
"github.com/ava-labs/avalanchego/upgrade"
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/rawdb"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/core/vm"
"github.com/ava-labs/libevm/crypto"
"github.com/ava-labs/libevm/eth/tracers/logger"
@@ -19,7 +20,6 @@ import (
"github.com/ava-labs/subnet-evm/consensus/dummy"
"github.com/ava-labs/subnet-evm/core/state"
"github.com/ava-labs/subnet-evm/core/state/pruner"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/params"
"github.com/ava-labs/subnet-evm/params/extras"
customrawdb "github.com/ava-labs/subnet-evm/plugin/evm/rawdb"
+1 -1
View File
@@ -23,9 +23,9 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/common/bitutil"
"github.com/ava-labs/libevm/core/rawdb"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/ethdb"
"github.com/ava-labs/subnet-evm/core/bloombits"
"github.com/ava-labs/subnet-evm/core/types"
)
const (
+1 -1
View File
@@ -29,7 +29,7 @@ package bloombits
import (
"errors"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
)
var (
+1 -1
View File
@@ -32,7 +32,7 @@ import (
"math/rand"
"testing"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
)
// Tests that batched bloom bits are correctly rotated from the input bloom
+1 -1
View File
@@ -37,10 +37,10 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/rawdb"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/ethdb"
"github.com/ava-labs/libevm/event"
"github.com/ava-labs/libevm/log"
"github.com/ava-labs/subnet-evm/core/types"
)
// ChainIndexerBackend defines the methods needed to process chain segments in
+1 -1
View File
@@ -37,7 +37,7 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/rawdb"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
)
// Runs multiple tests with randomized parameters.
+1 -1
View File
@@ -32,6 +32,7 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/rawdb"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/core/vm"
"github.com/ava-labs/libevm/ethdb"
"github.com/ava-labs/libevm/triedb"
@@ -40,7 +41,6 @@ import (
"github.com/ava-labs/subnet-evm/consensus/misc/eip4844"
"github.com/ava-labs/subnet-evm/constants"
"github.com/ava-labs/subnet-evm/core/state"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/params"
"github.com/ava-labs/subnet-evm/plugin/evm/header"
"github.com/holiman/uint256"
+1 -1
View File
@@ -32,11 +32,11 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/rawdb"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/core/vm"
"github.com/ava-labs/libevm/crypto"
"github.com/ava-labs/libevm/triedb"
"github.com/ava-labs/subnet-evm/consensus/dummy"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/params"
)
+1 -1
View File
@@ -29,7 +29,7 @@ package core
import (
"errors"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
)
var (
+1 -1
View File
@@ -28,7 +28,7 @@ package core
import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
)
// NewTxsEvent is posted when a batch of transactions enter the transaction pool.
+2 -3
View File
@@ -31,13 +31,12 @@ import (
"math/big"
"github.com/ava-labs/libevm/common"
ethtypes "github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/core/vm"
"github.com/ava-labs/libevm/log"
"github.com/ava-labs/subnet-evm/consensus"
"github.com/ava-labs/subnet-evm/consensus/misc/eip4844"
"github.com/ava-labs/subnet-evm/core/extstate"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/params"
customheader "github.com/ava-labs/subnet-evm/plugin/evm/header"
"github.com/ava-labs/subnet-evm/predicate"
@@ -155,7 +154,7 @@ func newEVMBlockContext(header *types.Header, chain ChainContext, author *common
BaseFee: baseFee,
BlobBaseFee: blobBaseFee,
GasLimit: header.GasLimit,
Header: &ethtypes.Header{
Header: &types.Header{
Number: new(big.Int).Set(header.Number),
Time: header.Time,
Extra: extra,
+1 -1
View File
@@ -5,8 +5,8 @@ package extstate
import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/core/vm"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/params"
"github.com/ava-labs/subnet-evm/predicate"
)
+39 -39
View File
@@ -10,7 +10,7 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/common/hexutil"
"github.com/ava-labs/libevm/common/math"
types0 "github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
params0 "github.com/ava-labs/subnet-evm/params"
)
@@ -19,24 +19,24 @@ var _ = (*genesisSpecMarshaling)(nil)
// MarshalJSON marshals as JSON.
func (g Genesis) MarshalJSON() ([]byte, error) {
type Genesis struct {
Config *params0.ChainConfig `json:"config"`
Nonce math.HexOrDecimal64 `json:"nonce"`
Timestamp math.HexOrDecimal64 `json:"timestamp"`
ExtraData hexutil.Bytes `json:"extraData"`
GasLimit math.HexOrDecimal64 `json:"gasLimit" gencodec:"required"`
Difficulty *math.HexOrDecimal256 `json:"difficulty" gencodec:"required"`
Mixhash common.Hash `json:"mixHash"`
Coinbase common.Address `json:"coinbase"`
Alloc map[common.UnprefixedAddress]types0.Account `json:"alloc" gencodec:"required"`
AirdropHash common.Hash `json:"airdropHash"`
AirdropAmount *math.HexOrDecimal256 `json:"airdropAmount"`
AirdropData []byte `json:"-"`
Number math.HexOrDecimal64 `json:"number"`
GasUsed math.HexOrDecimal64 `json:"gasUsed"`
ParentHash common.Hash `json:"parentHash"`
BaseFee *math.HexOrDecimal256 `json:"baseFeePerGas"`
ExcessBlobGas *math.HexOrDecimal64 `json:"excessBlobGas"`
BlobGasUsed *math.HexOrDecimal64 `json:"blobGasUsed"`
Config *params0.ChainConfig `json:"config"`
Nonce math.HexOrDecimal64 `json:"nonce"`
Timestamp math.HexOrDecimal64 `json:"timestamp"`
ExtraData hexutil.Bytes `json:"extraData"`
GasLimit math.HexOrDecimal64 `json:"gasLimit" gencodec:"required"`
Difficulty *math.HexOrDecimal256 `json:"difficulty" gencodec:"required"`
Mixhash common.Hash `json:"mixHash"`
Coinbase common.Address `json:"coinbase"`
Alloc map[common.UnprefixedAddress]types.Account `json:"alloc" gencodec:"required"`
AirdropHash common.Hash `json:"airdropHash"`
AirdropAmount *math.HexOrDecimal256 `json:"airdropAmount"`
AirdropData []byte `json:"-"`
Number math.HexOrDecimal64 `json:"number"`
GasUsed math.HexOrDecimal64 `json:"gasUsed"`
ParentHash common.Hash `json:"parentHash"`
BaseFee *math.HexOrDecimal256 `json:"baseFeePerGas"`
ExcessBlobGas *math.HexOrDecimal64 `json:"excessBlobGas"`
BlobGasUsed *math.HexOrDecimal64 `json:"blobGasUsed"`
}
var enc Genesis
enc.Config = g.Config
@@ -48,7 +48,7 @@ func (g Genesis) MarshalJSON() ([]byte, error) {
enc.Mixhash = g.Mixhash
enc.Coinbase = g.Coinbase
if g.Alloc != nil {
enc.Alloc = make(map[common.UnprefixedAddress]types0.Account, len(g.Alloc))
enc.Alloc = make(map[common.UnprefixedAddress]types.Account, len(g.Alloc))
for k, v := range g.Alloc {
enc.Alloc[common.UnprefixedAddress(k)] = v
}
@@ -68,24 +68,24 @@ func (g Genesis) MarshalJSON() ([]byte, error) {
// UnmarshalJSON unmarshals from JSON.
func (g *Genesis) UnmarshalJSON(input []byte) error {
type Genesis struct {
Config *params0.ChainConfig `json:"config"`
Nonce *math.HexOrDecimal64 `json:"nonce"`
Timestamp *math.HexOrDecimal64 `json:"timestamp"`
ExtraData *hexutil.Bytes `json:"extraData"`
GasLimit *math.HexOrDecimal64 `json:"gasLimit" gencodec:"required"`
Difficulty *math.HexOrDecimal256 `json:"difficulty" gencodec:"required"`
Mixhash *common.Hash `json:"mixHash"`
Coinbase *common.Address `json:"coinbase"`
Alloc map[common.UnprefixedAddress]types0.Account `json:"alloc" gencodec:"required"`
AirdropHash *common.Hash `json:"airdropHash"`
AirdropAmount *math.HexOrDecimal256 `json:"airdropAmount"`
AirdropData []byte `json:"-"`
Number *math.HexOrDecimal64 `json:"number"`
GasUsed *math.HexOrDecimal64 `json:"gasUsed"`
ParentHash *common.Hash `json:"parentHash"`
BaseFee *math.HexOrDecimal256 `json:"baseFeePerGas"`
ExcessBlobGas *math.HexOrDecimal64 `json:"excessBlobGas"`
BlobGasUsed *math.HexOrDecimal64 `json:"blobGasUsed"`
Config *params0.ChainConfig `json:"config"`
Nonce *math.HexOrDecimal64 `json:"nonce"`
Timestamp *math.HexOrDecimal64 `json:"timestamp"`
ExtraData *hexutil.Bytes `json:"extraData"`
GasLimit *math.HexOrDecimal64 `json:"gasLimit" gencodec:"required"`
Difficulty *math.HexOrDecimal256 `json:"difficulty" gencodec:"required"`
Mixhash *common.Hash `json:"mixHash"`
Coinbase *common.Address `json:"coinbase"`
Alloc map[common.UnprefixedAddress]types.Account `json:"alloc" gencodec:"required"`
AirdropHash *common.Hash `json:"airdropHash"`
AirdropAmount *math.HexOrDecimal256 `json:"airdropAmount"`
AirdropData []byte `json:"-"`
Number *math.HexOrDecimal64 `json:"number"`
GasUsed *math.HexOrDecimal64 `json:"gasUsed"`
ParentHash *common.Hash `json:"parentHash"`
BaseFee *math.HexOrDecimal256 `json:"baseFeePerGas"`
ExcessBlobGas *math.HexOrDecimal64 `json:"excessBlobGas"`
BlobGasUsed *math.HexOrDecimal64 `json:"blobGasUsed"`
}
var dec Genesis
if err := json.Unmarshal(input, &dec); err != nil {
@@ -120,7 +120,7 @@ func (g *Genesis) UnmarshalJSON(input []byte) error {
if dec.Alloc == nil {
return errors.New("missing required field 'alloc' for Genesis")
}
g.Alloc = make(types0.GenesisAlloc, len(dec.Alloc))
g.Alloc = make(types.GenesisAlloc, len(dec.Alloc))
for k, v := range dec.Alloc {
g.Alloc[common.Address(k)] = v
}
+1 -1
View File
@@ -37,13 +37,13 @@ import (
"github.com/ava-labs/libevm/common/hexutil"
"github.com/ava-labs/libevm/common/math"
"github.com/ava-labs/libevm/core/rawdb"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/crypto"
"github.com/ava-labs/libevm/ethdb"
"github.com/ava-labs/libevm/log"
"github.com/ava-labs/libevm/trie"
"github.com/ava-labs/libevm/triedb"
"github.com/ava-labs/subnet-evm/core/state"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/params"
customrawdb "github.com/ava-labs/subnet-evm/plugin/evm/rawdb"
"github.com/ava-labs/subnet-evm/plugin/evm/upgrade/legacy"
+1 -1
View File
@@ -35,13 +35,13 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/rawdb"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/core/vm"
"github.com/ava-labs/libevm/ethdb"
"github.com/ava-labs/libevm/trie"
"github.com/ava-labs/libevm/triedb"
"github.com/ava-labs/subnet-evm/consensus/dummy"
"github.com/ava-labs/subnet-evm/core/state"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/params"
"github.com/ava-labs/subnet-evm/params/extras"
"github.com/ava-labs/subnet-evm/plugin/evm/upgrade/legacy"
+1 -1
View File
@@ -36,9 +36,9 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/common/lru"
"github.com/ava-labs/libevm/core/rawdb"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/ethdb"
"github.com/ava-labs/subnet-evm/consensus"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/params"
)
+1 -1
View File
@@ -34,10 +34,10 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/rawdb"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/core/vm"
"github.com/ava-labs/subnet-evm/consensus"
"github.com/ava-labs/subnet-evm/consensus/dummy"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/params"
"github.com/ava-labs/subnet-evm/plugin/evm/upgrade/legacy"
)
+1 -1
View File
@@ -9,8 +9,8 @@ import (
"github.com/ava-labs/avalanchego/utils/set"
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/log"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/params"
"github.com/ava-labs/subnet-evm/precompile/precompileconfig"
"github.com/ava-labs/subnet-evm/predicate"
+1 -1
View File
@@ -10,7 +10,7 @@ import (
"github.com/ava-labs/avalanchego/snow/engine/snowman/block"
"github.com/ava-labs/avalanchego/utils/set"
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/subnet-evm/params"
"github.com/ava-labs/subnet-evm/precompile/precompileconfig"
"github.com/stretchr/testify/require"
+1 -1
View File
@@ -32,10 +32,10 @@ import (
"testing"
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/crypto"
"github.com/ava-labs/libevm/rlp"
"github.com/ava-labs/subnet-evm/consensus/dummy"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/params"
"golang.org/x/crypto/sha3"
)
+1 -1
View File
@@ -29,7 +29,7 @@ package core
import (
"sync"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
)
// txSenderCacherRequest is a request for recovering transaction senders with a
+1 -1
View File
@@ -39,13 +39,13 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/rawdb"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/ethdb"
"github.com/ava-labs/libevm/log"
"github.com/ava-labs/libevm/rlp"
"github.com/ava-labs/libevm/trie"
"github.com/ava-labs/libevm/triedb"
"github.com/ava-labs/subnet-evm/core/state/snapshot"
"github.com/ava-labs/subnet-evm/core/types"
customrawdb "github.com/ava-labs/subnet-evm/plugin/evm/rawdb"
)
+1 -1
View File
@@ -37,11 +37,11 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/rawdb"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/ethdb"
"github.com/ava-labs/libevm/log"
"github.com/ava-labs/libevm/rlp"
"github.com/ava-labs/libevm/trie"
"github.com/ava-labs/subnet-evm/core/types"
)
// trieKV represents a trie key-value pair
+1 -1
View File
@@ -36,8 +36,8 @@ import (
"time"
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/rlp"
"github.com/ava-labs/subnet-evm/core/types"
bloomfilter "github.com/holiman/bloomfilter/v2"
"golang.org/x/exp/slices"
)
+1 -1
View File
@@ -33,10 +33,10 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/rawdb"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/ethdb"
"github.com/ava-labs/libevm/rlp"
"github.com/ava-labs/libevm/triedb"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/utils"
)
+1 -1
View File
@@ -33,12 +33,12 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/rawdb"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/ethdb"
"github.com/ava-labs/libevm/log"
"github.com/ava-labs/libevm/rlp"
"github.com/ava-labs/libevm/trie"
"github.com/ava-labs/libevm/triedb"
"github.com/ava-labs/subnet-evm/core/types"
customrawdb "github.com/ava-labs/subnet-evm/plugin/evm/rawdb"
"github.com/ava-labs/subnet-evm/utils"
)
+1 -1
View File
@@ -34,13 +34,13 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/rawdb"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/ethdb"
"github.com/ava-labs/libevm/log"
"github.com/ava-labs/libevm/rlp"
"github.com/ava-labs/libevm/trie"
"github.com/ava-labs/libevm/trie/trienode"
"github.com/ava-labs/libevm/triedb"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/triedb/hashdb"
"github.com/ava-labs/subnet-evm/triedb/pathdb"
"github.com/holiman/uint256"
+1 -1
View File
@@ -35,8 +35,8 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/rawdb"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/rlp"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/holiman/uint256"
)
+1 -1
View File
@@ -31,8 +31,8 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/rawdb"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/ethdb"
"github.com/ava-labs/subnet-evm/core/types"
)
type stateEnv struct {
+1 -1
View File
@@ -15,11 +15,11 @@ import (
"github.com/ava-labs/avalanchego/database"
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/rawdb"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/ethdb"
"github.com/ava-labs/libevm/metrics"
"github.com/ava-labs/libevm/triedb"
"github.com/ava-labs/subnet-evm/core/state/snapshot"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/triedb/hashdb"
"github.com/stretchr/testify/require"
)
+1 -1
View File
@@ -32,8 +32,8 @@ import (
"time"
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/ethdb"
"github.com/ava-labs/subnet-evm/core/types"
)
func init() {
+1 -1
View File
@@ -7,7 +7,7 @@ import (
"math/big"
"testing"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/common"
"github.com/stretchr/testify/assert"
+1 -1
View File
@@ -31,12 +31,12 @@ import (
"math/big"
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/core/vm"
"github.com/ava-labs/libevm/crypto"
"github.com/ava-labs/libevm/log"
"github.com/ava-labs/subnet-evm/consensus"
"github.com/ava-labs/subnet-evm/core/state"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/params"
)
+1 -1
View File
@@ -9,10 +9,10 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/rawdb"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/core/vm"
"github.com/ava-labs/libevm/crypto"
"github.com/ava-labs/subnet-evm/consensus/dummy"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/params"
"github.com/ava-labs/subnet-evm/params/extras"
"github.com/ava-labs/subnet-evm/precompile/contracts/txallowlist"
+3 -2
View File
@@ -34,13 +34,14 @@ import (
"github.com/ava-labs/avalanchego/upgrade"
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/rawdb"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/core/vm"
"github.com/ava-labs/libevm/crypto"
"github.com/ava-labs/libevm/trie"
"github.com/ava-labs/subnet-evm/consensus"
"github.com/ava-labs/subnet-evm/consensus/dummy"
"github.com/ava-labs/subnet-evm/consensus/misc/eip4844"
"github.com/ava-labs/subnet-evm/core/types"
customtypes "github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/params"
"github.com/ava-labs/subnet-evm/params/extras"
customheader "github.com/ava-labs/subnet-evm/plugin/evm/header"
@@ -379,7 +380,7 @@ func GenerateBadBlock(parent *types.Block, engine consensus.Engine, txs types.Tr
}
if params.GetExtra(config).IsSubnetEVM(header.Time) {
headerExtra := types.GetHeaderExtra(header)
headerExtra := customtypes.GetHeaderExtra(header)
headerExtra.BlockGasCost = big.NewInt(0)
}
var receipts []*types.Receipt
+1 -1
View File
@@ -33,9 +33,9 @@ import (
"github.com/ava-labs/libevm/common"
cmath "github.com/ava-labs/libevm/common/math"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/core/vm"
"github.com/ava-labs/libevm/crypto/kzg4844"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/params"
"github.com/ava-labs/subnet-evm/plugin/evm/vmerrors"
"github.com/ava-labs/subnet-evm/precompile/contracts/txallowlist"
+1 -1
View File
@@ -11,12 +11,12 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/rawdb"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/crypto"
"github.com/ava-labs/libevm/ethdb"
"github.com/ava-labs/subnet-evm/commontype"
"github.com/ava-labs/subnet-evm/consensus/dummy"
"github.com/ava-labs/subnet-evm/core/state"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/params"
"github.com/ava-labs/subnet-evm/params/extras"
"github.com/ava-labs/subnet-evm/precompile/allowlist"
+1 -1
View File
@@ -32,8 +32,8 @@ import (
"testing"
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/crypto"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/params"
"github.com/ava-labs/subnet-evm/precompile/contract"
"github.com/stretchr/testify/require"
+1 -1
View File
@@ -23,10 +23,10 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/rawdb"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/crypto"
"github.com/ava-labs/libevm/ethdb"
"github.com/ava-labs/subnet-evm/consensus/dummy"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/params"
"github.com/stretchr/testify/require"
)
+1 -1
View File
@@ -40,6 +40,7 @@ import (
"time"
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/event"
"github.com/ava-labs/libevm/log"
"github.com/ava-labs/libevm/metrics"
@@ -48,7 +49,6 @@ import (
"github.com/ava-labs/subnet-evm/core"
"github.com/ava-labs/subnet-evm/core/state"
"github.com/ava-labs/subnet-evm/core/txpool"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/params"
"github.com/ava-labs/subnet-evm/plugin/evm/header"
"github.com/holiman/billy"
+1 -1
View File
@@ -41,6 +41,7 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/rawdb"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/crypto"
"github.com/ava-labs/libevm/crypto/kzg4844"
"github.com/ava-labs/libevm/ethdb/memorydb"
@@ -51,7 +52,6 @@ import (
"github.com/ava-labs/subnet-evm/core"
"github.com/ava-labs/subnet-evm/core/state"
"github.com/ava-labs/subnet-evm/core/txpool"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/params"
"github.com/ava-labs/subnet-evm/plugin/evm/header"
"github.com/ava-labs/subnet-evm/plugin/evm/upgrade/legacy"
+1 -1
View File
@@ -30,9 +30,9 @@ import (
"math/big"
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/subnet-evm/commontype"
"github.com/ava-labs/subnet-evm/core/state"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/params"
)
+1 -1
View File
@@ -30,9 +30,9 @@ import (
"errors"
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/log"
"github.com/ava-labs/libevm/rlp"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/holiman/billy"
)
+1 -1
View File
@@ -33,9 +33,9 @@ import (
"os"
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/log"
"github.com/ava-labs/libevm/rlp"
"github.com/ava-labs/subnet-evm/core/types"
)
// errNoActiveJournal is returned if a transaction is attempted to be inserted
+1 -1
View File
@@ -38,6 +38,7 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/common/prque"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/event"
"github.com/ava-labs/libevm/log"
"github.com/ava-labs/libevm/metrics"
@@ -45,7 +46,6 @@ import (
"github.com/ava-labs/subnet-evm/core"
"github.com/ava-labs/subnet-evm/core/state"
"github.com/ava-labs/subnet-evm/core/txpool"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/params"
"github.com/ava-labs/subnet-evm/plugin/evm/header"
"github.com/ava-labs/subnet-evm/precompile/contracts/feemanager"
+1 -1
View File
@@ -32,10 +32,10 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/rawdb"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/crypto"
"github.com/ava-labs/libevm/event"
"github.com/ava-labs/subnet-evm/core/state"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/holiman/uint256"
)
+1 -1
View File
@@ -41,6 +41,7 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/rawdb"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/crypto"
"github.com/ava-labs/libevm/event"
"github.com/ava-labs/libevm/trie"
@@ -48,7 +49,6 @@ import (
"github.com/ava-labs/subnet-evm/core"
"github.com/ava-labs/subnet-evm/core/state"
"github.com/ava-labs/subnet-evm/core/txpool"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/params"
"github.com/holiman/uint256"
)
+1 -1
View File
@@ -36,7 +36,7 @@ import (
"time"
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/libevm/core/types"
"github.com/holiman/uint256"
"golang.org/x/exp/slices"
)
+1 -1
View File
@@ -32,8 +32,8 @@ import (
"testing"
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/crypto"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/holiman/uint256"
)
+1 -1
View File
@@ -31,9 +31,9 @@ import (
"time"
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/event"
"github.com/ava-labs/subnet-evm/core"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/holiman/uint256"
)
+1 -1
View File
@@ -34,11 +34,11 @@ import (
"sync/atomic"
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/event"
"github.com/ava-labs/libevm/log"
"github.com/ava-labs/libevm/metrics"
"github.com/ava-labs/subnet-evm/core"
"github.com/ava-labs/subnet-evm/core/types"
)
var (
+1 -1
View File
@@ -32,12 +32,12 @@ import (
"math/big"
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/core/vm"
"github.com/ava-labs/libevm/crypto/kzg4844"
"github.com/ava-labs/libevm/log"
"github.com/ava-labs/subnet-evm/core"
"github.com/ava-labs/subnet-evm/core/state"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/params"
"github.com/ava-labs/subnet-evm/plugin/evm/vmerrors"
"github.com/ava-labs/subnet-evm/precompile/contracts/txallowlist"
+1 -1
View File
@@ -27,9 +27,9 @@
package core
import (
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/core/vm"
"github.com/ava-labs/subnet-evm/core/state"
"github.com/ava-labs/subnet-evm/core/types"
)
// Validator is an interface which defines the standard for block validation. It
+3 -1
View File
@@ -5,9 +5,11 @@ package types
import (
"math/big"
ethtypes "github.com/ava-labs/libevm/core/types"
)
func BlockGasCost(b *Block) *big.Int {
func BlockGasCost(b *ethtypes.Block) *big.Int {
cost := GetHeaderExtra(b.Header()).BlockGasCost
if cost == nil {
return nil
+5
View File
@@ -11,6 +11,11 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/stretchr/testify/assert"
// TODO(arr4n) These tests were originally part of the `subnet-evm/core/types`
// package so assume the presence of identifiers. A dot-import reduces PR
// noise during the refactoring.
. "github.com/ava-labs/libevm/core/types"
)
func TestCopyHeader(t *testing.T) {
+40 -37
View File
@@ -34,17 +34,21 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/common/math"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/crypto"
"github.com/ava-labs/libevm/rlp"
"github.com/ava-labs/subnet-evm/internal/blocktest"
"github.com/ava-labs/subnet-evm/params"
// This test file has to be in package types_test to avoid a circular
// dependency when importing `params`. We dot-import the package to mimic
// regular same-package behaviour.
. "github.com/ava-labs/subnet-evm/core/types"
)
func TestBlockEncoding(t *testing.T) {
blockEnc := common.FromHex("f90260f901f9a083cafc574e1f51ba9dc0568fc617a08ea2429fb384059c972f13b19fa1c8dd55a01dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347948888f1f195afa192cfee860698584c030f4c9db1a0ef1552a40b7165c3cd773806b9e0c165b75356e0314bf0706f279c729f51e017a05fe50b260da6308036625b850b5d6ced6d0a9f814c0688bc91ffb7b7a3a54b67a0bc37d79753ad738a6dac4921e57392f145d8887476de3f783dfa7edae9283e52b90100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008302000001832fefd8825208845506eb0780a0bd4472abb6659ebe3ee06ee4d7b72a00a9f4d001caca51342001075469aff49888a13a5a8c8f2bb1c4f861f85f800a82c35094095e7baea6a6c7c4c2dfeb977efac326af552d870a801ba09bea4c4daac7c7c52e093e6a4c35dbbcf8856f1af7b059ba20253e70848d094fa08a8fae537ce25ed8cb5af9adac3f141af69bd515bd2ba031522df09b97dd72b1c0")
var block Block
var block types.Block
if err := rlp.DecodeBytes(blockEnc, &block); err != nil {
t.Fatal("decode error: ", err)
}
@@ -60,7 +64,7 @@ func TestBlockEncoding(t *testing.T) {
check("Root", block.Root(), common.HexToHash("0xef1552a40b7165c3cd773806b9e0c165b75356e0314bf0706f279c729f51e017"))
check("TxHash", block.TxHash(), common.HexToHash("0x5fe50b260da6308036625b850b5d6ced6d0a9f814c0688bc91ffb7b7a3a54b67"))
check("ReceiptHash", block.ReceiptHash(), common.HexToHash("0xbc37d79753ad738a6dac4921e57392f145d8887476de3f783dfa7edae9283e52"))
check("Bloom", block.Bloom(), BytesToBloom(common.FromHex("00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000")))
check("Bloom", block.Bloom(), types.BytesToBloom(common.FromHex("00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000")))
check("Difficulty", block.Difficulty(), big.NewInt(131072))
check("BlockNumber", block.NumberU64(), uint64(1))
check("GasLimit", block.GasLimit(), uint64(3141592))
@@ -89,7 +93,7 @@ func TestBlockEncoding(t *testing.T) {
func TestEIP1559BlockEncoding(t *testing.T) {
blockEnc := common.FromHex("f9030bf901fea083cafc574e1f51ba9dc0568fc617a08ea2429fb384059c972f13b19fa1c8dd55a01dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347948888f1f195afa192cfee860698584c030f4c9db1a0ef1552a40b7165c3cd773806b9e0c165b75356e0314bf0706f279c729f51e017a05fe50b260da6308036625b850b5d6ced6d0a9f814c0688bc91ffb7b7a3a54b67a0bc37d79753ad738a6dac4921e57392f145d8887476de3f783dfa7edae9283e52b90100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008302000001832fefd8825208845506eb0780a0bd4472abb6659ebe3ee06ee4d7b72a00a9f4d001caca51342001075469aff49888a13a5a8c8f2bb1c4843b9aca00f90106f85f800a82c35094095e7baea6a6c7c4c2dfeb977efac326af552d870a801ba09bea4c4daac7c7c52e093e6a4c35dbbcf8856f1af7b059ba20253e70848d094fa08a8fae537ce25ed8cb5af9adac3f141af69bd515bd2ba031522df09b97dd72b1b8a302f8a0018080843b9aca008301e24194095e7baea6a6c7c4c2dfeb977efac326af552d878080f838f7940000000000000000000000000000000000000001e1a0000000000000000000000000000000000000000000000000000000000000000080a0fe38ca4e44a30002ac54af7cf922a6ac2ba11b7d22f548e8ecb3f51f41cb31b0a06de6a5cbae13c0c856e33acf021b51819636cfc009d39eafb9f606d546e305a8c0")
var block Block
var block types.Block
if err := rlp.DecodeBytes(blockEnc, &block); err != nil {
t.Fatal("decode error: ", err)
}
@@ -113,18 +117,18 @@ func TestEIP1559BlockEncoding(t *testing.T) {
check("BaseFee", block.BaseFee(), new(big.Int).SetUint64(1000000000))
check("BlockGasCost", BlockGasCost(&block), (*big.Int)(nil))
tx1 := NewTransaction(0, common.HexToAddress("095e7baea6a6c7c4c2dfeb977efac326af552d87"), big.NewInt(10), 50000, big.NewInt(10), nil)
tx1, _ = tx1.WithSignature(HomesteadSigner{}, common.Hex2Bytes("9bea4c4daac7c7c52e093e6a4c35dbbcf8856f1af7b059ba20253e70848d094f8a8fae537ce25ed8cb5af9adac3f141af69bd515bd2ba031522df09b97dd72b100"))
tx1 := types.NewTransaction(0, common.HexToAddress("095e7baea6a6c7c4c2dfeb977efac326af552d87"), big.NewInt(10), 50000, big.NewInt(10), nil)
tx1, _ = tx1.WithSignature(types.HomesteadSigner{}, common.Hex2Bytes("9bea4c4daac7c7c52e093e6a4c35dbbcf8856f1af7b059ba20253e70848d094f8a8fae537ce25ed8cb5af9adac3f141af69bd515bd2ba031522df09b97dd72b100"))
addr := common.HexToAddress("0x0000000000000000000000000000000000000001")
accesses := AccessList{AccessTuple{
accesses := types.AccessList{types.AccessTuple{
Address: addr,
StorageKeys: []common.Hash{
{0},
},
}}
to := common.HexToAddress("095e7baea6a6c7c4c2dfeb977efac326af552d87")
txdata := &DynamicFeeTx{
txdata := &types.DynamicFeeTx{
ChainID: big.NewInt(1),
Nonce: 0,
To: &to,
@@ -134,8 +138,8 @@ func TestEIP1559BlockEncoding(t *testing.T) {
AccessList: accesses,
Data: []byte{},
}
tx2 := NewTx(txdata)
tx2, err := tx2.WithSignature(LatestSignerForChainID(big.NewInt(1)), common.Hex2Bytes("fe38ca4e44a30002ac54af7cf922a6ac2ba11b7d22f548e8ecb3f51f41cb31b06de6a5cbae13c0c856e33acf021b51819636cfc009d39eafb9f606d546e305a800"))
tx2 := types.NewTx(txdata)
tx2, err := tx2.WithSignature(types.LatestSignerForChainID(big.NewInt(1)), common.Hex2Bytes("fe38ca4e44a30002ac54af7cf922a6ac2ba11b7d22f548e8ecb3f51f41cb31b06de6a5cbae13c0c856e33acf021b51819636cfc009d39eafb9f606d546e305a800"))
if err != nil {
t.Fatal("invalid signature error: ", err)
}
@@ -155,7 +159,7 @@ func TestEIP1559BlockEncoding(t *testing.T) {
func TestEIP2718BlockEncoding(t *testing.T) {
blockEnc := common.FromHex("f90319f90211a00000000000000000000000000000000000000000000000000000000000000000a01dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347948888f1f195afa192cfee860698584c030f4c9db1a0ef1552a40b7165c3cd773806b9e0c165b75356e0314bf0706f279c729f51e017a0e6e49996c7ec59f7a23d22b83239a60151512c65613bf84a0d7da336399ebc4aa0cafe75574d59780665a97fbfd11365c7545aa8f1abf4e5e12e8243334ef7286bb901000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000083020000820200832fefd882a410845506eb0796636f6f6c65737420626c6f636b206f6e20636861696ea0bd4472abb6659ebe3ee06ee4d7b72a00a9f4d001caca51342001075469aff49888a13a5a8c8f2bb1c4f90101f85f800a82c35094095e7baea6a6c7c4c2dfeb977efac326af552d870a801ba09bea4c4daac7c7c52e093e6a4c35dbbcf8856f1af7b059ba20253e70848d094fa08a8fae537ce25ed8cb5af9adac3f141af69bd515bd2ba031522df09b97dd72b1b89e01f89b01800a8301e24194095e7baea6a6c7c4c2dfeb977efac326af552d878080f838f7940000000000000000000000000000000000000001e1a0000000000000000000000000000000000000000000000000000000000000000001a03dbacc8d0259f2508625e97fdfc57cd85fdd16e5821bc2c10bdd1a52649e8335a0476e10695b183a87b0aa292a7f4b78ef0c3fbe62aa2c42c84e1d9c3da159ef14c0")
var block Block
var block types.Block
if err := rlp.DecodeBytes(blockEnc, &block); err != nil {
t.Fatal("decode error: ", err)
}
@@ -179,7 +183,7 @@ func TestEIP2718BlockEncoding(t *testing.T) {
// Create legacy tx.
to := common.HexToAddress("095e7baea6a6c7c4c2dfeb977efac326af552d87")
tx1 := NewTx(&LegacyTx{
tx1 := types.NewTx(&types.LegacyTx{
Nonce: 0,
To: &to,
Value: big.NewInt(10),
@@ -187,25 +191,25 @@ func TestEIP2718BlockEncoding(t *testing.T) {
GasPrice: big.NewInt(10),
})
sig := common.Hex2Bytes("9bea4c4daac7c7c52e093e6a4c35dbbcf8856f1af7b059ba20253e70848d094f8a8fae537ce25ed8cb5af9adac3f141af69bd515bd2ba031522df09b97dd72b100")
tx1, _ = tx1.WithSignature(HomesteadSigner{}, sig)
tx1, _ = tx1.WithSignature(types.HomesteadSigner{}, sig)
// Create ACL tx.
addr := common.HexToAddress("0x0000000000000000000000000000000000000001")
tx2 := NewTx(&AccessListTx{
tx2 := types.NewTx(&types.AccessListTx{
ChainID: big.NewInt(1),
Nonce: 0,
To: &to,
Gas: 123457,
GasPrice: big.NewInt(10),
AccessList: AccessList{{Address: addr, StorageKeys: []common.Hash{{0}}}},
AccessList: types.AccessList{{Address: addr, StorageKeys: []common.Hash{{0}}}},
})
sig2 := common.Hex2Bytes("3dbacc8d0259f2508625e97fdfc57cd85fdd16e5821bc2c10bdd1a52649e8335476e10695b183a87b0aa292a7f4b78ef0c3fbe62aa2c42c84e1d9c3da159ef1401")
tx2, _ = tx2.WithSignature(NewEIP2930Signer(big.NewInt(1)), sig2)
tx2, _ = tx2.WithSignature(types.NewEIP2930Signer(big.NewInt(1)), sig2)
check("len(Transactions)", len(block.Transactions()), 2)
check("Transactions[0].Hash", block.Transactions()[0].Hash(), tx1.Hash())
check("Transactions[1].Hash", block.Transactions()[1].Hash(), tx2.Hash())
check("Transactions[1].Type()", block.Transactions()[1].Type(), uint8(AccessListTxType))
check("Transactions[1].Type()", block.Transactions()[1].Type(), uint8(types.AccessListTxType))
ourBlockEnc, err := rlp.EncodeToBytes(&block)
if err != nil {
@@ -217,8 +221,8 @@ func TestEIP2718BlockEncoding(t *testing.T) {
}
func TestUncleHash(t *testing.T) {
uncles := make([]*Header, 0)
h := CalcUncleHash(uncles)
uncles := make([]*types.Header, 0)
h := types.CalcUncleHash(uncles)
exp := common.HexToHash("1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347")
if h != exp {
t.Fatalf("empty uncle hash is wrong, got %x != %x", h, exp)
@@ -239,15 +243,15 @@ func BenchmarkEncodeBlock(b *testing.B) {
}
}
func makeBenchBlock() *Block {
func makeBenchBlock() *types.Block {
var (
key, _ = crypto.GenerateKey()
txs = make([]*Transaction, 70)
receipts = make([]*Receipt, len(txs))
signer = LatestSigner(params.TestChainConfig)
uncles = make([]*Header, 3)
txs = make([]*types.Transaction, 70)
receipts = make([]*types.Receipt, len(txs))
signer = types.LatestSigner(params.TestChainConfig)
uncles = make([]*types.Header, 3)
)
header := &Header{
header := &types.Header{
Difficulty: math.BigPow(11, 11),
Number: math.BigPow(2, 9),
GasLimit: 12345678,
@@ -259,16 +263,16 @@ func makeBenchBlock() *Block {
amount := math.BigPow(2, int64(i))
price := big.NewInt(300000)
data := make([]byte, 100)
tx := NewTransaction(uint64(i), common.Address{}, amount, 123457, price, data)
signedTx, err := SignTx(tx, signer, key)
tx := types.NewTransaction(uint64(i), common.Address{}, amount, 123457, price, data)
signedTx, err := types.SignTx(tx, signer, key)
if err != nil {
panic(err)
}
txs[i] = signedTx
receipts[i] = NewReceipt(make([]byte, 32), false, tx.Gas())
receipts[i] = types.NewReceipt(make([]byte, 32), false, tx.Gas())
}
for i := range uncles {
uncles[i] = &Header{
uncles[i] = &types.Header{
Difficulty: math.BigPow(11, 11),
Number: math.BigPow(2, 9),
GasLimit: 12345678,
@@ -277,13 +281,12 @@ func makeBenchBlock() *Block {
Extra: []byte("benchmark uncle"),
}
}
return NewBlock(header, txs, uncles, receipts, blocktest.NewHasher())
return types.NewBlock(header, txs, uncles, receipts, blocktest.NewHasher())
}
func TestSubnetEVMBlockEncoding(t *testing.T) {
blockEnc := common.FromHex("f9030ff90202a083cafc574e1f51ba9dc0568fc617a08ea2429fb384059c972f13b19fa1c8dd55a01dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347948888f1f195afa192cfee860698584c030f4c9db1a0ef1552a40b7165c3cd773806b9e0c165b75356e0314bf0706f279c729f51e017a05fe50b260da6308036625b850b5d6ced6d0a9f814c0688bc91ffb7b7a3a54b67a0bc37d79753ad738a6dac4921e57392f145d8887476de3f783dfa7edae9283e52b90100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008302000001832fefd8825208845506eb0780a0bd4472abb6659ebe3ee06ee4d7b72a00a9f4d001caca51342001075469aff49888a13a5a8c8f2bb1c4843b9aca00830186a0f90106f85f800a82c35094095e7baea6a6c7c4c2dfeb977efac326af552d870a801ba09bea4c4daac7c7c52e093e6a4c35dbbcf8856f1af7b059ba20253e70848d094fa08a8fae537ce25ed8cb5af9adac3f141af69bd515bd2ba031522df09b97dd72b1b8a302f8a0018080843b9aca008301e24194095e7baea6a6c7c4c2dfeb977efac326af552d878080f838f7940000000000000000000000000000000000000001e1a0000000000000000000000000000000000000000000000000000000000000000080a0fe38ca4e44a30002ac54af7cf922a6ac2ba11b7d22f548e8ecb3f51f41cb31b0a06de6a5cbae13c0c856e33acf021b51819636cfc009d39eafb9f606d546e305a8c0")
var block Block
var block types.Block
if err := rlp.DecodeBytes(blockEnc, &block); err != nil {
t.Fatal("decode error: ", err)
}
@@ -307,18 +310,18 @@ func TestSubnetEVMBlockEncoding(t *testing.T) {
check("BaseFee", block.BaseFee(), big.NewInt(1_000_000_000))
check("BlockGasCost", BlockGasCost(&block), big.NewInt(100_000))
tx1 := NewTransaction(0, common.HexToAddress("095e7baea6a6c7c4c2dfeb977efac326af552d87"), big.NewInt(10), 50000, big.NewInt(10), nil)
tx1, _ = tx1.WithSignature(HomesteadSigner{}, common.Hex2Bytes("9bea4c4daac7c7c52e093e6a4c35dbbcf8856f1af7b059ba20253e70848d094f8a8fae537ce25ed8cb5af9adac3f141af69bd515bd2ba031522df09b97dd72b100"))
tx1 := types.NewTransaction(0, common.HexToAddress("095e7baea6a6c7c4c2dfeb977efac326af552d87"), big.NewInt(10), 50000, big.NewInt(10), nil)
tx1, _ = tx1.WithSignature(types.HomesteadSigner{}, common.Hex2Bytes("9bea4c4daac7c7c52e093e6a4c35dbbcf8856f1af7b059ba20253e70848d094f8a8fae537ce25ed8cb5af9adac3f141af69bd515bd2ba031522df09b97dd72b100"))
addr := common.HexToAddress("0x0000000000000000000000000000000000000001")
accesses := AccessList{AccessTuple{
accesses := types.AccessList{types.AccessTuple{
Address: addr,
StorageKeys: []common.Hash{
{0},
},
}}
to := common.HexToAddress("095e7baea6a6c7c4c2dfeb977efac326af552d87")
txdata := &DynamicFeeTx{
txdata := &types.DynamicFeeTx{
ChainID: big.NewInt(1),
Nonce: 0,
To: &to,
@@ -328,8 +331,8 @@ func TestSubnetEVMBlockEncoding(t *testing.T) {
AccessList: accesses,
Data: []byte{},
}
tx2 := NewTx(txdata)
tx2, err := tx2.WithSignature(LatestSignerForChainID(big.NewInt(1)), common.Hex2Bytes("fe38ca4e44a30002ac54af7cf922a6ac2ba11b7d22f548e8ecb3f51f41cb31b06de6a5cbae13c0c856e33acf021b51819636cfc009d39eafb9f606d546e305a800"))
tx2 := types.NewTx(txdata)
tx2, err := tx2.WithSignature(types.LatestSignerForChainID(big.NewInt(1)), common.Hex2Bytes("fe38ca4e44a30002ac54af7cf922a6ac2ba11b7d22f548e8ecb3f51f41cb31b06de6a5cbae13c0c856e33acf021b51819636cfc009d39eafb9f606d546e305a800"))
if err != nil {
t.Fatal("invalid signature error: ", err)
}
+42 -41
View File
@@ -9,6 +9,7 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/common/hexutil"
"github.com/ava-labs/libevm/core/types"
)
var _ = (*headerMarshaling)(nil)
@@ -16,27 +17,27 @@ var _ = (*headerMarshaling)(nil)
// MarshalJSON marshals as JSON.
func (h HeaderSerializable) MarshalJSON() ([]byte, error) {
type HeaderSerializable struct {
ParentHash common.Hash `json:"parentHash" gencodec:"required"`
UncleHash common.Hash `json:"sha3Uncles" gencodec:"required"`
Coinbase common.Address `json:"miner" gencodec:"required"`
Root common.Hash `json:"stateRoot" gencodec:"required"`
TxHash common.Hash `json:"transactionsRoot" gencodec:"required"`
ReceiptHash common.Hash `json:"receiptsRoot" gencodec:"required"`
Bloom Bloom `json:"logsBloom" gencodec:"required"`
Difficulty *hexutil.Big `json:"difficulty" gencodec:"required"`
Number *hexutil.Big `json:"number" gencodec:"required"`
GasLimit hexutil.Uint64 `json:"gasLimit" gencodec:"required"`
GasUsed hexutil.Uint64 `json:"gasUsed" gencodec:"required"`
Time hexutil.Uint64 `json:"timestamp" gencodec:"required"`
Extra hexutil.Bytes `json:"extraData" gencodec:"required"`
MixDigest common.Hash `json:"mixHash"`
Nonce BlockNonce `json:"nonce"`
BaseFee *hexutil.Big `json:"baseFeePerGas" rlp:"optional"`
BlockGasCost *hexutil.Big `json:"blockGasCost" rlp:"optional"`
BlobGasUsed *hexutil.Uint64 `json:"blobGasUsed" rlp:"optional"`
ExcessBlobGas *hexutil.Uint64 `json:"excessBlobGas" rlp:"optional"`
ParentBeaconRoot *common.Hash `json:"parentBeaconBlockRoot" rlp:"optional"`
Hash common.Hash `json:"hash"`
ParentHash common.Hash `json:"parentHash" gencodec:"required"`
UncleHash common.Hash `json:"sha3Uncles" gencodec:"required"`
Coinbase common.Address `json:"miner" gencodec:"required"`
Root common.Hash `json:"stateRoot" gencodec:"required"`
TxHash common.Hash `json:"transactionsRoot" gencodec:"required"`
ReceiptHash common.Hash `json:"receiptsRoot" gencodec:"required"`
Bloom types.Bloom `json:"logsBloom" gencodec:"required"`
Difficulty *hexutil.Big `json:"difficulty" gencodec:"required"`
Number *hexutil.Big `json:"number" gencodec:"required"`
GasLimit hexutil.Uint64 `json:"gasLimit" gencodec:"required"`
GasUsed hexutil.Uint64 `json:"gasUsed" gencodec:"required"`
Time hexutil.Uint64 `json:"timestamp" gencodec:"required"`
Extra hexutil.Bytes `json:"extraData" gencodec:"required"`
MixDigest common.Hash `json:"mixHash"`
Nonce types.BlockNonce `json:"nonce"`
BaseFee *hexutil.Big `json:"baseFeePerGas" rlp:"optional"`
BlockGasCost *hexutil.Big `json:"blockGasCost" rlp:"optional"`
BlobGasUsed *hexutil.Uint64 `json:"blobGasUsed" rlp:"optional"`
ExcessBlobGas *hexutil.Uint64 `json:"excessBlobGas" rlp:"optional"`
ParentBeaconRoot *common.Hash `json:"parentBeaconBlockRoot" rlp:"optional"`
Hash common.Hash `json:"hash"`
}
var enc HeaderSerializable
enc.ParentHash = h.ParentHash
@@ -66,26 +67,26 @@ func (h HeaderSerializable) MarshalJSON() ([]byte, error) {
// UnmarshalJSON unmarshals from JSON.
func (h *HeaderSerializable) UnmarshalJSON(input []byte) error {
type HeaderSerializable struct {
ParentHash *common.Hash `json:"parentHash" gencodec:"required"`
UncleHash *common.Hash `json:"sha3Uncles" gencodec:"required"`
Coinbase *common.Address `json:"miner" gencodec:"required"`
Root *common.Hash `json:"stateRoot" gencodec:"required"`
TxHash *common.Hash `json:"transactionsRoot" gencodec:"required"`
ReceiptHash *common.Hash `json:"receiptsRoot" gencodec:"required"`
Bloom *Bloom `json:"logsBloom" gencodec:"required"`
Difficulty *hexutil.Big `json:"difficulty" gencodec:"required"`
Number *hexutil.Big `json:"number" gencodec:"required"`
GasLimit *hexutil.Uint64 `json:"gasLimit" gencodec:"required"`
GasUsed *hexutil.Uint64 `json:"gasUsed" gencodec:"required"`
Time *hexutil.Uint64 `json:"timestamp" gencodec:"required"`
Extra *hexutil.Bytes `json:"extraData" gencodec:"required"`
MixDigest *common.Hash `json:"mixHash"`
Nonce *BlockNonce `json:"nonce"`
BaseFee *hexutil.Big `json:"baseFeePerGas" rlp:"optional"`
BlockGasCost *hexutil.Big `json:"blockGasCost" rlp:"optional"`
BlobGasUsed *hexutil.Uint64 `json:"blobGasUsed" rlp:"optional"`
ExcessBlobGas *hexutil.Uint64 `json:"excessBlobGas" rlp:"optional"`
ParentBeaconRoot *common.Hash `json:"parentBeaconBlockRoot" rlp:"optional"`
ParentHash *common.Hash `json:"parentHash" gencodec:"required"`
UncleHash *common.Hash `json:"sha3Uncles" gencodec:"required"`
Coinbase *common.Address `json:"miner" gencodec:"required"`
Root *common.Hash `json:"stateRoot" gencodec:"required"`
TxHash *common.Hash `json:"transactionsRoot" gencodec:"required"`
ReceiptHash *common.Hash `json:"receiptsRoot" gencodec:"required"`
Bloom *types.Bloom `json:"logsBloom" gencodec:"required"`
Difficulty *hexutil.Big `json:"difficulty" gencodec:"required"`
Number *hexutil.Big `json:"number" gencodec:"required"`
GasLimit *hexutil.Uint64 `json:"gasLimit" gencodec:"required"`
GasUsed *hexutil.Uint64 `json:"gasUsed" gencodec:"required"`
Time *hexutil.Uint64 `json:"timestamp" gencodec:"required"`
Extra *hexutil.Bytes `json:"extraData" gencodec:"required"`
MixDigest *common.Hash `json:"mixHash"`
Nonce *types.BlockNonce `json:"nonce"`
BaseFee *hexutil.Big `json:"baseFeePerGas" rlp:"optional"`
BlockGasCost *hexutil.Big `json:"blockGasCost" rlp:"optional"`
BlobGasUsed *hexutil.Uint64 `json:"blobGasUsed" rlp:"optional"`
ExcessBlobGas *hexutil.Uint64 `json:"excessBlobGas" rlp:"optional"`
ParentBeaconRoot *common.Hash `json:"parentBeaconBlockRoot" rlp:"optional"`
}
var dec HeaderSerializable
if err := json.Unmarshal(input, &dec); err != nil {
+1 -1
View File
@@ -37,11 +37,11 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/common/hexutil"
"github.com/ava-labs/libevm/core/rawdb"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/crypto"
"github.com/ava-labs/libevm/rlp"
"github.com/ava-labs/libevm/trie"
"github.com/ava-labs/libevm/triedb"
"github.com/ava-labs/subnet-evm/core/types"
)
func TestDeriveSha(t *testing.T) {
+18 -18
View File
@@ -14,18 +14,18 @@ import (
)
// GetHeaderExtra returns the [HeaderExtra] from the given [Header].
func GetHeaderExtra(h *Header) *HeaderExtra {
func GetHeaderExtra(h *ethtypes.Header) *HeaderExtra {
return extras.Header.Get(h)
}
// SetHeaderExtra sets the given [HeaderExtra] on the [Header].
func SetHeaderExtra(h *Header, extra *HeaderExtra) {
func SetHeaderExtra(h *ethtypes.Header, extra *HeaderExtra) {
extras.Header.Set(h, extra)
}
// WithHeaderExtra sets the given [HeaderExtra] on the [Header]
// and returns the [Header] for chaining.
func WithHeaderExtra(h *Header, extra *HeaderExtra) *Header {
func WithHeaderExtra(h *ethtypes.Header, extra *HeaderExtra) *ethtypes.Header {
SetHeaderExtra(h, extra)
return h
}
@@ -155,21 +155,21 @@ func (h *HeaderSerializable) updateToExtras(extras *HeaderExtra) {
// as it is to be serialized into RLP and JSON. Note it must be exported so that
// rlpgen can generate the serialization code from it.
type HeaderSerializable struct {
ParentHash common.Hash `json:"parentHash" gencodec:"required"`
UncleHash common.Hash `json:"sha3Uncles" gencodec:"required"`
Coinbase common.Address `json:"miner" gencodec:"required"`
Root common.Hash `json:"stateRoot" gencodec:"required"`
TxHash common.Hash `json:"transactionsRoot" gencodec:"required"`
ReceiptHash common.Hash `json:"receiptsRoot" gencodec:"required"`
Bloom Bloom `json:"logsBloom" gencodec:"required"`
Difficulty *big.Int `json:"difficulty" gencodec:"required"`
Number *big.Int `json:"number" gencodec:"required"`
GasLimit uint64 `json:"gasLimit" gencodec:"required"`
GasUsed uint64 `json:"gasUsed" gencodec:"required"`
Time uint64 `json:"timestamp" gencodec:"required"`
Extra []byte `json:"extraData" gencodec:"required"`
MixDigest common.Hash `json:"mixHash"`
Nonce BlockNonce `json:"nonce"`
ParentHash common.Hash `json:"parentHash" gencodec:"required"`
UncleHash common.Hash `json:"sha3Uncles" gencodec:"required"`
Coinbase common.Address `json:"miner" gencodec:"required"`
Root common.Hash `json:"stateRoot" gencodec:"required"`
TxHash common.Hash `json:"transactionsRoot" gencodec:"required"`
ReceiptHash common.Hash `json:"receiptsRoot" gencodec:"required"`
Bloom ethtypes.Bloom `json:"logsBloom" gencodec:"required"`
Difficulty *big.Int `json:"difficulty" gencodec:"required"`
Number *big.Int `json:"number" gencodec:"required"`
GasLimit uint64 `json:"gasLimit" gencodec:"required"`
GasUsed uint64 `json:"gasUsed" gencodec:"required"`
Time uint64 `json:"timestamp" gencodec:"required"`
Extra []byte `json:"extraData" gencodec:"required"`
MixDigest common.Hash `json:"mixHash"`
Nonce ethtypes.BlockNonce `json:"nonce"`
// BaseFee was added by EIP-1559 and is ignored in legacy headers.
BaseFee *big.Int `json:"baseFeePerGas" rlp:"optional"`
+6 -2
View File
@@ -13,10 +13,14 @@ import (
"unsafe"
"github.com/ava-labs/libevm/common"
ethtypes "github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/rlp"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
// TODO(arr4n) These tests were originally part of the `subnet-evm/core/types`
// package so assume the presence of identifiers. A dot-import reduces PR
// noise during the refactoring.
. "github.com/ava-labs/libevm/core/types"
)
func TestHeaderRLP(t *testing.T) {
@@ -87,7 +91,7 @@ func TestHeaderWithNonZeroFields(t *testing.T) {
// can recover all fields, but not that the encoded format is correct. This is
// very important as the RLP encoding of a [Header] defines its hash.
func headerWithNonZeroFields() (*Header, *HeaderExtra) {
header := &ethtypes.Header{
header := &Header{
ParentHash: common.Hash{1},
UncleHash: common.Hash{2},
Coinbase: common.Address{3},
-104
View File
@@ -1,104 +0,0 @@
// (c) 2024, Ava Labs, Inc. All rights reserved.
// See the file LICENSE for licensing terms.
package types
import (
ethtypes "github.com/ava-labs/libevm/core/types"
)
// The following types are used directly as their upstream definitions.
type (
AccessList = ethtypes.AccessList
AccessListTx = ethtypes.AccessListTx
AccessTuple = ethtypes.AccessTuple
Account = ethtypes.Account
BlobTx = ethtypes.BlobTx
BlobTxSidecar = ethtypes.BlobTxSidecar
Block = ethtypes.Block
BlockNonce = ethtypes.BlockNonce
Blocks = ethtypes.Blocks
Bloom = ethtypes.Bloom
Body = ethtypes.Body
DerivableList = ethtypes.DerivableList
DynamicFeeTx = ethtypes.DynamicFeeTx
FrontierSigner = ethtypes.FrontierSigner
GenesisAlloc = ethtypes.GenesisAlloc
Header = ethtypes.Header
HomesteadSigner = ethtypes.HomesteadSigner
LegacyTx = ethtypes.LegacyTx
Log = ethtypes.Log
Receipt = ethtypes.Receipt
ReceiptForStorage = ethtypes.ReceiptForStorage
Receipts = ethtypes.Receipts
Signer = ethtypes.Signer
SlimAccount = ethtypes.SlimAccount
StateAccount = ethtypes.StateAccount
Transaction = ethtypes.Transaction
Transactions = ethtypes.Transactions
TxByNonce = ethtypes.TxByNonce
TxData = ethtypes.TxData
)
// The following constants are used directly as their upstream definitions.
const (
BloomBitLength = ethtypes.BloomBitLength
BloomByteLength = ethtypes.BloomByteLength
ReceiptStatusFailed = ethtypes.ReceiptStatusFailed
ReceiptStatusSuccessful = ethtypes.ReceiptStatusSuccessful
// Transaction types.
AccessListTxType = ethtypes.AccessListTxType
BlobTxType = ethtypes.BlobTxType
DynamicFeeTxType = ethtypes.DynamicFeeTxType
LegacyTxType = ethtypes.LegacyTxType
)
// The following variables are used directly as their upstream definitions.
var (
EmptyRootHash = ethtypes.EmptyRootHash
EmptyUncleHash = ethtypes.EmptyUncleHash
EmptyCodeHash = ethtypes.EmptyCodeHash
EmptyTxsHash = ethtypes.EmptyTxsHash
EmptyReceiptsHash = ethtypes.EmptyReceiptsHash
)
// The following functions are used directly as their upstream definitions.
var (
BloomLookup = ethtypes.BloomLookup
BytesToBloom = ethtypes.BytesToBloom
CalcUncleHash = ethtypes.CalcUncleHash
CopyHeader = ethtypes.CopyHeader
CreateBloom = ethtypes.CreateBloom
DeriveSha = ethtypes.DeriveSha
EncodeNonce = ethtypes.EncodeNonce
FullAccount = ethtypes.FullAccount
FullAccountRLP = ethtypes.FullAccountRLP
NewBlock = ethtypes.NewBlock
NewBlockWithHeader = ethtypes.NewBlockWithHeader
NewContractCreation = ethtypes.NewContractCreation
NewReceipt = ethtypes.NewReceipt
NewTransaction = ethtypes.NewTransaction
SlimAccountRLP = ethtypes.SlimAccountRLP
TrieRootHash = ethtypes.TrieRootHash
// Signers
LatestSigner = ethtypes.LatestSigner
LatestSignerForChainID = ethtypes.LatestSignerForChainID
MakeSigner = ethtypes.MakeSigner
MustSignNewTx = ethtypes.MustSignNewTx
NewEIP155Signer = ethtypes.NewEIP155Signer
NewEIP2930Signer = ethtypes.NewEIP2930Signer
NewLondonSigner = ethtypes.NewLondonSigner
Sender = ethtypes.Sender
SignNewTx = ethtypes.SignNewTx
SignTx = ethtypes.SignTx
// Transactions
NewTx = ethtypes.NewTx
TxDifference = ethtypes.TxDifference
// Errors
ErrGasFeeCapTooLow = ethtypes.ErrGasFeeCapTooLow
ErrTxTypeNotSupported = ethtypes.ErrTxTypeNotSupported
)
+4 -2
View File
@@ -3,9 +3,11 @@
package types
import ethtypes "github.com/ava-labs/libevm/core/types"
// FlattenLogs converts a nested array of logs to a single array of logs.
func FlattenLogs(list [][]*Log) []*Log {
var flat []*Log
func FlattenLogs(list [][]*ethtypes.Log) []*ethtypes.Log {
var flat []*ethtypes.Log
for _, logs := range list {
flat = append(flat, logs...)
}
+5
View File
@@ -24,6 +24,11 @@ import (
"github.com/ava-labs/libevm/rlp"
"github.com/holiman/uint256"
// TODO(arr4n) These tests were originally part of the `subnet-evm/core/types`
// package so assume the presence of identifiers. A dot-import reduces PR
// noise during the refactoring.
. "github.com/ava-labs/libevm/core/types"
)
func decodeEncode(input []byte, val interface{}) error {
+5
View File
@@ -33,6 +33,11 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/crypto"
"github.com/ava-labs/libevm/rlp"
// TODO(arr4n) These tests were originally part of the `subnet-evm/core/types`
// package so assume the presence of identifiers. A dot-import reduces PR
// noise during the refactoring.
. "github.com/ava-labs/libevm/core/types"
)
type devnull struct{ len int }
+1 -1
View File
@@ -32,10 +32,10 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/rawdb"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/core/vm"
"github.com/ava-labs/libevm/crypto"
"github.com/ava-labs/subnet-evm/core/state"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/params"
"github.com/ava-labs/subnet-evm/params/extras"
"github.com/ava-labs/subnet-evm/plugin/evm/upgrade/legacy"
+1 -1
View File
@@ -36,13 +36,13 @@ import (
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/asm"
"github.com/ava-labs/libevm/core/rawdb"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/core/vm"
"github.com/ava-labs/libevm/eth/tracers/logger"
"github.com/ava-labs/subnet-evm/accounts/abi"
"github.com/ava-labs/subnet-evm/consensus"
"github.com/ava-labs/subnet-evm/core"
"github.com/ava-labs/subnet-evm/core/state"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/eth/tracers"
"github.com/ava-labs/subnet-evm/params"
+1 -1
View File
@@ -34,9 +34,9 @@ import (
"os"
"strings"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/rlp"
"github.com/ava-labs/subnet-evm/core"
"github.com/ava-labs/subnet-evm/core/types"
)
// AdminAPI is the collection of Ethereum full node related APIs for node
+1 -1
View File
@@ -34,6 +34,7 @@ import (
"github.com/ava-labs/libevm/accounts"
"github.com/ava-labs/libevm/common"
"github.com/ava-labs/libevm/core/types"
"github.com/ava-labs/libevm/core/vm"
"github.com/ava-labs/libevm/ethdb"
"github.com/ava-labs/libevm/event"
@@ -43,7 +44,6 @@ import (
"github.com/ava-labs/subnet-evm/core/bloombits"
"github.com/ava-labs/subnet-evm/core/state"
"github.com/ava-labs/subnet-evm/core/txpool"
"github.com/ava-labs/subnet-evm/core/types"
"github.com/ava-labs/subnet-evm/eth/gasprice"
"github.com/ava-labs/subnet-evm/eth/tracers"
"github.com/ava-labs/subnet-evm/params"

Some files were not shown because too many files have changed in this diff Show More