Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion app/ante/ante.go
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ func NewAnteHandler(options HandlerOptions) sdk.AnteHandler {
switch typeURL := opts[0].GetTypeUrl(); typeURL {
case "/cosmos.evm.vm.v1.ExtensionOptionsEthereumTx":
// handle as *evmtypes.MsgEthereumTx
anteHandler = newEVMAnteHandler(options.EvmOptions)
anteHandler = newMonoEVMAnteHandler(options.EvmOptions)
case "/cosmos.evm.types.v1.ExtensionOptionDynamicFeeTx":
// cosmos-sdk tx with dynamic fee extension
anteHandler = newCosmosAnteHandler(options)
Expand Down
2 changes: 1 addition & 1 deletion app/ante/cosmos.go
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ func newCosmosAnteHandler(options HandlerOptions) sdk.AnteHandler {
ante.NewValidateBasicDecorator(),
ante.NewTxTimeoutHeightDecorator(),
ante.NewValidateMemoDecorator(options.EvmOptions.AccountKeeper),
NewMinGasPriceDecorator(options.EvmOptions.FeeMarketKeeper, options.EvmOptions.EvmKeeper),
cosmosante.NewMinGasPriceDecorator(options.EvmOptions.FeeMarketKeeper, options.EvmOptions.EvmKeeper),
ante.NewConsumeGasForTxSizeDecorator(options.EvmOptions.AccountKeeper),
ante.NewDeductFeeDecorator(
options.EvmOptions.AccountKeeper,
Expand Down
3 changes: 1 addition & 2 deletions app/ante/evm.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,8 @@ import (
evmante "github.com/cosmos/evm/ante/evm"
)

func newEVMAnteHandler(options EVMHandlerOptions) sdk.AnteHandler {
func newMonoEVMAnteHandler(options EVMHandlerOptions) sdk.AnteHandler {
return sdk.ChainAnteDecorators(
EVMMsgCheckDecorator{},
evmante.NewEVMMonoDecorator(
options.AccountKeeper,
options.FeeMarketKeeper,
Expand Down
99 changes: 0 additions & 99 deletions app/ante/min_gas_price.go

This file was deleted.

24 changes: 0 additions & 24 deletions app/ante/mono_decorator.go

This file was deleted.

55 changes: 39 additions & 16 deletions app/app.go
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,15 @@ import (
"path/filepath"
"sort"

autocliv1 "cosmossdk.io/api/cosmos/autocli/v1"
reflectionv1 "cosmossdk.io/api/cosmos/reflection/v1"
"cosmossdk.io/client/v2/autocli"
corevm "github.com/ethereum/go-ethereum/core/vm"
"github.com/spf13/cast"

// Force-load the tracer engines to trigger registration due to Go-Ethereum v1.10.15 changes
_ "github.com/ethereum/go-ethereum/eth/tracers/js"
_ "github.com/ethereum/go-ethereum/eth/tracers/native"

abci "github.com/cometbft/cometbft/abci/types"

// Overriders
clienthelpers "cosmossdk.io/client/v2/helpers"
"cosmossdk.io/core/appmodule"
"cosmossdk.io/log"
Expand All @@ -38,10 +42,10 @@ import (
"github.com/CosmWasm/wasmd/x/wasm"
wasmkeeper "github.com/CosmWasm/wasmd/x/wasm/keeper"
wasmtypes "github.com/CosmWasm/wasmd/x/wasm/types"
"github.com/cosmos/cosmos-sdk/types/mempool"
"github.com/cosmos/evm/evmd"

// Force-load the tracer engines to trigger registration due to Go-Ethereum v1.10.15 changes
"github.com/MANTRA-Chain/mantrachain/v5/app/ante"
_ "github.com/MANTRA-Chain/mantrachain/v5/app/params"
queries "github.com/MANTRA-Chain/mantrachain/v5/app/queries"
"github.com/MANTRA-Chain/mantrachain/v5/app/upgrades"
"github.com/MANTRA-Chain/mantrachain/v5/app/upgrades/v5rc2"
Expand All @@ -56,7 +60,6 @@ import (
"github.com/MANTRA-Chain/mantrachain/v5/x/tokenfactory"
tokenfactorykeeper "github.com/MANTRA-Chain/mantrachain/v5/x/tokenfactory/keeper"
tokenfactorytypes "github.com/MANTRA-Chain/mantrachain/v5/x/tokenfactory/types"
abci "github.com/cometbft/cometbft/abci/types"
tmproto "github.com/cometbft/cometbft/proto/tendermint/types"
dbm "github.com/cosmos/cosmos-db"
"github.com/cosmos/cosmos-sdk/baseapp"
Expand Down Expand Up @@ -125,6 +128,10 @@ import (
stakingkeeper "github.com/cosmos/cosmos-sdk/x/staking/keeper"
stakingtypes "github.com/cosmos/cosmos-sdk/x/staking/types"
evmosencoding "github.com/cosmos/evm/encoding"

autocliv1 "cosmossdk.io/api/cosmos/autocli/v1"
reflectionv1 "cosmossdk.io/api/cosmos/reflection/v1"
"cosmossdk.io/client/v2/autocli"
srvflags "github.com/cosmos/evm/server/flags"
cosmosevmtypes "github.com/cosmos/evm/types"
cosmosevmutils "github.com/cosmos/evm/utils"
Expand Down Expand Up @@ -164,19 +171,14 @@ import (
ibcexported "github.com/cosmos/ibc-go/v10/modules/core/exported"
ibckeeper "github.com/cosmos/ibc-go/v10/modules/core/keeper"
ibctm "github.com/cosmos/ibc-go/v10/modules/light-clients/07-tendermint"
corevm "github.com/ethereum/go-ethereum/core/vm"

// Force-load the tracer engines to trigger registration due to Go-Ethereum v1.10.15 changes
_ "github.com/ethereum/go-ethereum/eth/tracers/js"
_ "github.com/ethereum/go-ethereum/eth/tracers/native"
"github.com/gorilla/mux"
marketmap "github.com/skip-mev/connect/v2/x/marketmap"
marketmapkeeper "github.com/skip-mev/connect/v2/x/marketmap/keeper"
marketmaptypes "github.com/skip-mev/connect/v2/x/marketmap/types"
oracle "github.com/skip-mev/connect/v2/x/oracle"
oraclekeeper "github.com/skip-mev/connect/v2/x/oracle/keeper"
oracletypes "github.com/skip-mev/connect/v2/x/oracle/types"
"github.com/spf13/cast"
)

func init() {
Expand Down Expand Up @@ -335,6 +337,28 @@ func New(
appCodec := encodingConfig.Codec
legacyAmino := encodingConfig.Amino
interfaceRegistry := encodingConfig.InterfaceRegistry
var prepareProposalHandler sdk.PrepareProposalHandler
var processProposalHandler sdk.ProcessProposalHandler
baseAppOptions = append(baseAppOptions, func(app *baseapp.BaseApp) {
var mpool mempool.Mempool
if maxTxs := cast.ToInt(appOpts.Get(server.FlagMempoolMaxTxs)); maxTxs >= 0 {
// Setup Mempool and Proposal Handlers
mpool = mempool.NewPriorityMempool(mempool.PriorityNonceMempoolConfig[int64]{
TxPriority: mempool.NewDefaultTxPriority(),
SignerExtractor: evmd.NewEthSignerExtractionAdapter(mempool.NewDefaultSignerExtractionAdapter()),
MaxTx: maxTxs,
})
} else {
mpool = mempool.NoOpMempool{}
}
app.SetMempool(mpool)
handler := baseapp.NewDefaultProposalHandler(mpool, app)

prepareProposalHandler = handler.PrepareProposalHandler()
processProposalHandler = handler.ProcessProposalHandler()
app.SetPrepareProposal(prepareProposalHandler)
app.SetProcessProposal(processProposalHandler)
})

bApp := baseapp.NewBaseApp(appName, logger, db, encodingConfig.TxConfig.TxDecoder(), baseAppOptions...)
bApp.SetCommitMultiStoreTracer(traceStore)
Expand Down Expand Up @@ -782,7 +806,7 @@ func New(

// TODO: Configure EVM precompiles when needed
corePrecompiles := maps.Clone(corevm.PrecompiledContractsBerlin)
// corePrecompiles := NewAvailableStaticPrecompiles(
// corePrecompiles := evmd.NewAvailableStaticPrecompiles(
// app.StakingKeeper,
// app.DistrKeeper,
// app.PreciseBankKeeper,
Expand All @@ -792,8 +816,7 @@ func New(
// app.EVMKeeper,
// app.GovKeeper,
// app.SlashingKeeper,
// app.EvidenceKeeper,
// appCodec,
// app.AppCodec(),
// )
app.EVMKeeper.WithStaticPrecompiles(
corePrecompiles,
Expand Down Expand Up @@ -1127,7 +1150,7 @@ func New(

app.MarketMapKeeper.SetHooks(app.OracleKeeper.Hooks())

app.initializeABCIExtensions(client, metrics)
app.initializeABCIExtensions(client, metrics, prepareProposalHandler, processProposalHandler)

// Register any on-chain upgrades.
app.setupUpgradeStoreLoaders()
Expand Down
13 changes: 9 additions & 4 deletions app/oracle.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ import (
"context"
"time"

"github.com/cosmos/cosmos-sdk/baseapp"
"github.com/cosmos/cosmos-sdk/server/types"
sdk "github.com/cosmos/cosmos-sdk/types"
oraclepreblock "github.com/skip-mev/connect/v2/abci/preblock/oracle"
"github.com/skip-mev/connect/v2/abci/proposals"
"github.com/skip-mev/connect/v2/abci/strategies/aggregator"
Expand Down Expand Up @@ -56,13 +56,18 @@ func (app *App) initializeOracle(appOpts types.AppOptions) (oracleclient.OracleC
return oracleClient, oracleMetrics, nil
}

func (app *App) initializeABCIExtensions(oracleClient oracleclient.OracleClient, oracleMetrics servicemetrics.Metrics) {
func (app *App) initializeABCIExtensions(
oracleClient oracleclient.OracleClient,
oracleMetrics servicemetrics.Metrics,
prepareProposalHandler sdk.PrepareProposalHandler,
processProposalHandler sdk.ProcessProposalHandler,
) {
// Create the proposal handler that will be used to fill proposals with
// transactions and oracle data.
proposalHandler := proposals.NewProposalHandler(
app.Logger(),
baseapp.NoOpPrepareProposal(),
baseapp.NoOpProcessProposal(),
prepareProposalHandler,
processProposalHandler,
ve.NewDefaultValidateVoteExtensionsFn(app.StakingKeeper),
compression.NewCompressionVoteExtensionCodec(
compression.NewDefaultVoteExtensionCodec(),
Expand Down
Loading
Loading