Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(app): V6 UpgradeHandler #48

Merged
merged 4 commits into from
Jan 21, 2025
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: 2 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -125,6 +125,8 @@ mocks:
@echo "--> Generating mocks"
@./scripts/mockgen.sh

test: test-poa test-sim-benchmark-simulation test-sim-full-app-fast

test-poa:
@echo "--> Running POA tests"
@go test $(EXCLUDED_POA_PACKAGES)
Expand Down
2 changes: 1 addition & 1 deletion app/ante.go
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ import (
"github.com/evmos/evmos/v20/app/ante"
ethante "github.com/evmos/evmos/v20/app/ante/evm"
etherminttypes "github.com/evmos/evmos/v20/types"
poaante "github.com/xrplevm/node/v5/x/poa/ante"
poaante "github.com/xrplevm/node/v6/x/poa/ante"
)

type AnteHandlerOptions ante.HandlerOptions
Expand Down
10 changes: 5 additions & 5 deletions app/app.go
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ import (
"github.com/cosmos/cosmos-sdk/x/consensus"
consensusparamkeeper "github.com/cosmos/cosmos-sdk/x/consensus/keeper"
consensusparamtypes "github.com/cosmos/cosmos-sdk/x/consensus/types"
"github.com/xrplevm/node/v5/x/poa"
"github.com/xrplevm/node/v6/x/poa"

"cosmossdk.io/log"
storetypes "cosmossdk.io/store/types"
Expand Down Expand Up @@ -120,11 +120,11 @@ import (
ibckeeper "github.com/cosmos/ibc-go/v8/modules/core/keeper"
ibctestingtypes "github.com/cosmos/ibc-go/v8/testing/types"

"github.com/xrplevm/node/v5/docs"
poakeeper "github.com/xrplevm/node/v5/x/poa/keeper"
poatypes "github.com/xrplevm/node/v5/x/poa/types"
"github.com/xrplevm/node/v6/docs"
poakeeper "github.com/xrplevm/node/v6/x/poa/keeper"
poatypes "github.com/xrplevm/node/v6/x/poa/types"

// "github.com/xrplevm/node/v5/app/ante"
// "github.com/xrplevm/node/v6/app/ante"
"github.com/evmos/evmos/v20/app/ante"
srvflags "github.com/evmos/evmos/v20/server/flags"

Expand Down
2 changes: 1 addition & 1 deletion app/simulation_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ import (
simcli "github.com/cosmos/cosmos-sdk/x/simulation/client/cli"
"github.com/evmos/evmos/v20/app/ante"
"github.com/stretchr/testify/require"
"github.com/xrplevm/node/v5/app"
"github.com/xrplevm/node/v6/app"
)

func init() {
Expand Down
14 changes: 11 additions & 3 deletions app/upgrades.go
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,9 @@ import (
govtypes "github.com/cosmos/cosmos-sdk/x/gov/types"
ratelimittypes "github.com/cosmos/ibc-apps/modules/rate-limiting/v8/types"
icahosttypes "github.com/cosmos/ibc-go/v8/modules/apps/27-interchain-accounts/host/types"
v4 "github.com/xrplevm/node/v5/app/upgrades/v4"
v5 "github.com/xrplevm/node/v5/app/upgrades/v5"
v4 "github.com/xrplevm/node/v6/app/upgrades/v4"
v5 "github.com/xrplevm/node/v6/app/upgrades/v5"
v6 "github.com/xrplevm/node/v6/app/upgrades/v6"
)

func (app *App) setupUpgradeHandlers() {
Expand All @@ -36,6 +37,13 @@ func (app *App) setupUpgradeHandlers() {
app.configurator,
),
)
app.UpgradeKeeper.SetUpgradeHandler(
v6.UpgradeName,
v6.CreateUpgradeHandler(
app.mm,
app.configurator,
),
)

// When a planned update height is reached, the old binary will panic
// writing on disk the height and name of the update that triggered it
Expand All @@ -60,7 +68,7 @@ func (app *App) setupUpgradeHandlers() {
},
Deleted: []string{},
}
case v5.UpgradeName:
case v5.UpgradeName, v6.UpgradeName:
// No store upgrades for v5
storeUpgrades = &storetypes.StoreUpgrades{}
}
Expand Down
5 changes: 5 additions & 0 deletions app/upgrades/v6/constants.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
package v6

const (
UpgradeName = "v6.0.0"
)
21 changes: 21 additions & 0 deletions app/upgrades/v6/upgrades.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
package v6

import (
"context"

upgradetypes "cosmossdk.io/x/upgrade/types"
sdk "github.com/cosmos/cosmos-sdk/types"
"github.com/cosmos/cosmos-sdk/types/module"
)

func CreateUpgradeHandler(
mm *module.Manager,
configurator module.Configurator,
) upgradetypes.UpgradeHandler {
return func(c context.Context, _ upgradetypes.Plan, vm module.VersionMap) (module.VersionMap, error) {
ctx := sdk.UnwrapSDKContext(c)
logger := ctx.Logger().With("upgrade", UpgradeName)
logger.Info("Running v6 upgrade handler...")
return mm.RunMigrations(ctx, configurator, vm)
}
}
2 changes: 1 addition & 1 deletion cmd/exrpd/cmd/root.go
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ import (
ethermintserver "github.com/evmos/evmos/v20/server"
ethermintservercfg "github.com/evmos/evmos/v20/server/config"
ethermintserverflags "github.com/evmos/evmos/v20/server/flags"
"github.com/xrplevm/node/v5/app"
"github.com/xrplevm/node/v6/app"
)

type emptyAppOptions struct{}
Expand Down
4 changes: 2 additions & 2 deletions cmd/exrpd/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,8 @@ import (

svrcmd "github.com/cosmos/cosmos-sdk/server/cmd"

"github.com/xrplevm/node/v5/app"
"github.com/xrplevm/node/v5/cmd/exrpd/cmd"
"github.com/xrplevm/node/v6/app"
"github.com/xrplevm/node/v6/cmd/exrpd/cmd"
)

func main() {
Expand Down
42 changes: 21 additions & 21 deletions go.mod
Original file line number Diff line number Diff line change
@@ -1,25 +1,25 @@
module github.com/xrplevm/node/v5
module github.com/xrplevm/node/v6

go 1.22.7

toolchain go1.22.9

require (
cosmossdk.io/api v0.7.5
cosmossdk.io/api v0.7.6
cosmossdk.io/client/v2 v2.0.0-beta.3
cosmossdk.io/core v0.12.0
cosmossdk.io/errors v1.0.1
cosmossdk.io/log v1.4.0
cosmossdk.io/math v1.3.0
cosmossdk.io/store v1.1.0
cosmossdk.io/log v1.4.1
cosmossdk.io/math v1.4.0
cosmossdk.io/store v1.1.1
cosmossdk.io/tools/confix v0.1.2
cosmossdk.io/x/evidence v0.1.1
cosmossdk.io/x/feegrant v0.1.1
cosmossdk.io/x/upgrade v0.1.4
github.com/cometbft/cometbft v0.38.15
github.com/cosmos/cosmos-db v1.0.2
github.com/cosmos/cosmos-db v1.1.0
github.com/cosmos/cosmos-proto v1.0.0-beta.5
github.com/cosmos/cosmos-sdk v0.50.9
github.com/cosmos/cosmos-sdk v0.50.11
github.com/cosmos/gogoproto v1.7.0
github.com/cosmos/ibc-apps/modules/rate-limiting/v8 v8.0.0
github.com/cosmos/ibc-go/modules/capability v1.0.1
Expand Down Expand Up @@ -50,9 +50,9 @@ require (
cloud.google.com/go/iam v1.1.9 // indirect
cloud.google.com/go/storage v1.41.0 // indirect
cosmossdk.io/collections v0.4.0 // indirect
cosmossdk.io/depinject v1.0.0 // indirect
cosmossdk.io/depinject v1.1.0 // indirect
cosmossdk.io/x/circuit v0.1.1 // indirect
cosmossdk.io/x/tx v0.13.4 // indirect
cosmossdk.io/x/tx v0.13.7 // indirect
filippo.io/edwards25519 v1.1.0 // indirect
github.com/99designs/go-keychain v0.0.0-20191008050251-8e49817e8af4 // indirect
github.com/99designs/keyring v1.2.2 // indirect
Expand All @@ -79,15 +79,15 @@ require (
github.com/cockroachdb/errors v1.11.3 // indirect
github.com/cockroachdb/fifo v0.0.0-20240606204812-0bbfbd93a7ce // indirect
github.com/cockroachdb/logtags v0.0.0-20230118201751-21c54148d20b // indirect
github.com/cockroachdb/pebble v1.1.1 // indirect
github.com/cockroachdb/pebble v1.1.2 // indirect
github.com/cockroachdb/redact v1.1.5 // indirect
github.com/cockroachdb/tokenbucket v0.0.0-20230807174530-cc333fc44b06 // indirect
github.com/coinbase/rosetta-sdk-go v0.7.9 // indirect
github.com/cometbft/cometbft-db v0.14.1 // indirect
github.com/cosmos/btcutil v1.0.5 // indirect
github.com/cosmos/go-bip39 v1.0.0 // indirect
github.com/cosmos/gogogateway v1.2.0 // indirect
github.com/cosmos/iavl v1.1.4 // indirect
github.com/cosmos/iavl v1.2.2 // indirect
github.com/cosmos/ics23/go v0.11.0 // indirect
github.com/cosmos/ledger-cosmos-go v0.13.3 // indirect
github.com/cosmos/rosetta v0.50.9 // indirect
Expand All @@ -109,7 +109,7 @@ require (
github.com/dustin/go-humanize v1.0.1 // indirect
github.com/dvsekhvalnov/jose2go v1.6.0 // indirect
github.com/edsrzf/mmap-go v1.1.0 // indirect
github.com/emicklei/dot v1.6.1 // indirect
github.com/emicklei/dot v1.6.2 // indirect
github.com/fatih/color v1.16.0 // indirect
github.com/felixge/httpsnoop v1.0.4 // indirect
github.com/fsnotify/fsnotify v1.7.0 // indirect
Expand Down Expand Up @@ -234,17 +234,17 @@ require (
go.opentelemetry.io/otel/metric v1.24.0 // indirect
go.opentelemetry.io/otel/trace v1.24.0 // indirect
go.uber.org/multierr v1.11.0 // indirect
golang.org/x/crypto v0.28.0 // indirect
golang.org/x/net v0.30.0 // indirect
golang.org/x/crypto v0.31.0 // indirect
golang.org/x/net v0.33.0 // indirect
golang.org/x/oauth2 v0.23.0 // indirect
golang.org/x/sync v0.8.0 // indirect
golang.org/x/sys v0.26.0 // indirect
golang.org/x/term v0.25.0 // indirect
golang.org/x/text v0.19.0 // indirect
golang.org/x/sync v0.10.0 // indirect
golang.org/x/sys v0.28.0 // indirect
golang.org/x/term v0.27.0 // indirect
golang.org/x/text v0.21.0 // indirect
golang.org/x/time v0.5.0 // indirect
google.golang.org/api v0.186.0 // indirect
google.golang.org/genproto v0.0.0-20240701130421-f6361c86f094 // indirect
google.golang.org/genproto/googleapis/rpc v0.0.0-20240814211410-ddb44dafa142 // indirect
google.golang.org/genproto/googleapis/rpc v0.0.0-20240930140551-af27646dc61f // indirect
gopkg.in/ini.v1 v1.67.0 // indirect
gopkg.in/natefinch/npipe.v2 v2.0.0-20160621034901-c1b8fa8bdcce // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect
Expand All @@ -262,11 +262,11 @@ replace (
// use cosmos fork of keyring
github.com/99designs/keyring => github.com/cosmos/keyring v1.2.0
// use Cosmos-SDK fork to enable Ledger functionality
github.com/cosmos/cosmos-sdk => github.com/evmos/cosmos-sdk v0.50.9-evmos
github.com/cosmos/cosmos-sdk => github.com/xrplevm/cosmos-sdk v0.50.11-evmos
// use Evmos geth fork
github.com/ethereum/go-ethereum => github.com/evmos/go-ethereum v1.10.26-evmos-rc4
// use exrp Evmos fork
github.com/evmos/evmos/v20 => github.com/xrplevm/evmos/v20 v20.0.0-exrp.3
github.com/evmos/evmos/v20 => github.com/xrplevm/evmos/v20 v20.0.0-exrp.4
// Security Advisory https://github.com/advisories/GHSA-h395-qcrw-5vmq
github.com/gin-gonic/gin => github.com/gin-gonic/gin v1.9.1
// replace broken goleveldb
Expand Down
Loading
Loading