Skip to content

Commit b06e7ea

Browse files
deps!: bring cosmos-sdk v50 deps to gaia (#3171)
* upgrade gaia to v50 cosmos-sdk * minor fix * autocli fix, remove old and add new(init) upgrade file * fix autocli errors(update client dep) * sw upgrade tests fixed (without doc update) * keep ModuleBasics.AddTxCommands call for legacy proposal cmds * move ModulBasics in app, register codecs and interfaces in app * Revert "move ModulBasics in app, register codecs and interfaces in app" This reverts commit 89f22e3. * fix provider param change test * fix ica-register and rest interfaces tests * update test provider param change * lint fix part 1 * ics version update * MsgSoftwareUpgrade proposal doc and script update * lint fix * remove dummy vote extension impl * additional minor fixes * libwasmvm version update * integration tests fix * unsafe-start-local-validator fix * lint fix * add tendermint module * ibc fee test fix * fix liveness test * register ibc app param keytables * build: update cosmos-sdk-lsm version; update ics to release/v5.1.x * account for ics v5.1.x details --------- Co-authored-by: MSalopek <[email protected]>
1 parent 8a9bbf7 commit b06e7ea

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

80 files changed

+1264
-3252
lines changed

Makefile

+4-4
Original file line numberDiff line numberDiff line change
@@ -324,11 +324,11 @@ format:
324324
start-localnet-ci: build
325325
rm -rf ~/.gaiad-liveness
326326
./build/gaiad init liveness --chain-id liveness --home ~/.gaiad-liveness
327-
./build/gaiad config chain-id liveness --home ~/.gaiad-liveness
328-
./build/gaiad config keyring-backend test --home ~/.gaiad-liveness
329-
./build/gaiad keys add val --home ~/.gaiad-liveness
327+
./build/gaiad config set client chain-id liveness --home ~/.gaiad-liveness
328+
./build/gaiad config set client keyring-backend test --home ~/.gaiad-liveness
329+
./build/gaiad keys add val --home ~/.gaiad-liveness --keyring-backend test
330330
./build/gaiad genesis add-genesis-account val 10000000000000000000000000stake --home ~/.gaiad-liveness --keyring-backend test
331-
./build/gaiad genesis gentx val 1000000000stake --home ~/.gaiad-liveness --chain-id liveness
331+
./build/gaiad genesis gentx val 1000000000stake --home ~/.gaiad-liveness --chain-id liveness --keyring-backend test
332332
./build/gaiad genesis collect-gentxs --home ~/.gaiad-liveness
333333
sed -i.bak'' 's/minimum-gas-prices = ""/minimum-gas-prices = "0uatom"/' ~/.gaiad-liveness/config/app.toml
334334
./build/gaiad start --home ~/.gaiad-liveness --x-crisis-skip-assert-invariants

ante/ante.go

+11-11
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,13 @@ import (
44
feemarketante "github.com/skip-mev/feemarket/x/feemarket/ante"
55
feemarketkeeper "github.com/skip-mev/feemarket/x/feemarket/keeper"
66

7-
ibcante "github.com/cosmos/ibc-go/v7/modules/core/ante"
8-
ibckeeper "github.com/cosmos/ibc-go/v7/modules/core/keeper"
7+
ibcante "github.com/cosmos/ibc-go/v8/modules/core/ante"
8+
ibckeeper "github.com/cosmos/ibc-go/v8/modules/core/keeper"
99

10+
corestoretypes "cosmossdk.io/core/store"
1011
errorsmod "cosmossdk.io/errors"
1112

1213
"github.com/cosmos/cosmos-sdk/codec"
13-
storetypes "github.com/cosmos/cosmos-sdk/store/types"
1414
sdk "github.com/cosmos/cosmos-sdk/types"
1515
"github.com/cosmos/cosmos-sdk/x/auth/ante"
1616
stakingkeeper "github.com/cosmos/cosmos-sdk/x/staking/keeper"
@@ -28,13 +28,13 @@ var UseFeeMarketDecorator = true
2828
// channel keeper.
2929
type HandlerOptions struct {
3030
ante.HandlerOptions
31-
Codec codec.BinaryCodec
32-
IBCkeeper *ibckeeper.Keeper
33-
StakingKeeper *stakingkeeper.Keeper
34-
FeeMarketKeeper *feemarketkeeper.Keeper
35-
TxFeeChecker ante.TxFeeChecker
36-
TxCounterStoreKey storetypes.StoreKey
37-
WasmConfig *wasmtypes.WasmConfig
31+
Codec codec.BinaryCodec
32+
IBCkeeper *ibckeeper.Keeper
33+
StakingKeeper *stakingkeeper.Keeper
34+
FeeMarketKeeper *feemarketkeeper.Keeper
35+
TxFeeChecker ante.TxFeeChecker
36+
TXCounterStoreService corestoretypes.KVStoreService
37+
WasmConfig *wasmtypes.WasmConfig
3838
}
3939

4040
func NewAnteHandler(opts HandlerOptions) (sdk.AnteHandler, error) {
@@ -66,7 +66,7 @@ func NewAnteHandler(opts HandlerOptions) (sdk.AnteHandler, error) {
6666
anteDecorators := []sdk.AnteDecorator{
6767
ante.NewSetUpContextDecorator(), // outermost AnteDecorator. SetUpContext must be called first
6868
wasmkeeper.NewLimitSimulationGasDecorator(opts.WasmConfig.SimulationGasLimit), // after setup context to enforce limits early
69-
wasmkeeper.NewCountTXDecorator(opts.TxCounterStoreKey),
69+
wasmkeeper.NewCountTXDecorator(opts.TXCounterStoreService),
7070
ante.NewExtensionOptionsDecorator(opts.ExtensionOptionChecker),
7171
ante.NewValidateBasicDecorator(),
7272
ante.NewTxTimeoutHeightDecorator(),

ante/gov_expedited_ante.go

-3
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,6 @@ func SetExpeditedProposalsEnabled(val bool) {
2121
var expeditedPropsWhitelist = map[string]struct{}{
2222
"/cosmos.upgrade.v1beta1.MsgSoftwareUpgrade": {},
2323
"/cosmos.upgrade.v1beta1.MsgCancelUpgrade": {},
24-
// legacy proposals can still be submitted using govv1.MsgSubmitProposal
25-
"/cosmos.upgrade.v1beta1.SoftwareUpgradeProposal": {},
26-
"/cosmos.upgrade.v1beta1.CancelSoftwareUpgradeProposal": {},
2724
}
2825

2926
// Check if the proposal is whitelisted for expedited voting.

ante/gov_expedited_ante_test.go

+7-59
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,14 @@ import (
55

66
"github.com/stretchr/testify/require"
77

8+
"cosmossdk.io/math"
9+
upgradetypes "cosmossdk.io/x/upgrade/types"
10+
811
sdk "github.com/cosmos/cosmos-sdk/types"
912
banktypes "github.com/cosmos/cosmos-sdk/x/bank/types"
1013
distrtypes "github.com/cosmos/cosmos-sdk/x/distribution/types"
1114
govv1 "github.com/cosmos/cosmos-sdk/x/gov/types/v1"
1215
govv1beta1 "github.com/cosmos/cosmos-sdk/x/gov/types/v1beta1"
13-
upgradetypes "github.com/cosmos/cosmos-sdk/x/upgrade/types"
1416

1517
"github.com/cosmos/gaia/v19/ante"
1618
"github.com/cosmos/gaia/v19/app/helpers"
@@ -41,14 +43,6 @@ func TestGovExpeditedProposalsDecorator(t *testing.T) {
4143
},
4244
expectErr: false,
4345
},
44-
{
45-
name: "expedited - govv1.MsgSubmitProposal - LegacySoftwareUpgrade",
46-
ctx: sdk.Context{},
47-
msgs: []sdk.Msg{
48-
newLegacyUpgradeProp(true), // expedite
49-
},
50-
expectErr: false,
51-
},
5246
{
5347
name: "expedited - govv1.MsgSubmitProposal - MsgCancelUpgrade",
5448
ctx: sdk.Context{},
@@ -59,30 +53,6 @@ func TestGovExpeditedProposalsDecorator(t *testing.T) {
5953
},
6054
expectErr: false,
6155
},
62-
{
63-
name: "expedited - govv1.MsgSubmitProposal - LegacyCancelUpgrade",
64-
ctx: sdk.Context{},
65-
msgs: []sdk.Msg{
66-
newLegacyCancelProp(true), // expedite
67-
},
68-
expectErr: false,
69-
},
70-
{
71-
name: "normal - govv1.MsgSubmitProposal - LegacySoftwareUpgrade",
72-
ctx: sdk.Context{},
73-
msgs: []sdk.Msg{
74-
newLegacyUpgradeProp(false), // normal
75-
},
76-
expectErr: false,
77-
},
78-
{
79-
name: "normal - govv1.MsgSubmitProposal - LegacyCancelUpgrade",
80-
ctx: sdk.Context{},
81-
msgs: []sdk.Msg{
82-
newLegacyCancelProp(false), // normal
83-
},
84-
expectErr: false,
85-
},
8656
{
8757
name: "normal - govv1.MsgSubmitProposal - TextProposal",
8858
ctx: sdk.Context{},
@@ -98,7 +68,7 @@ func TestGovExpeditedProposalsDecorator(t *testing.T) {
9868
newGovProp([]sdk.Msg{&distrtypes.MsgCommunityPoolSpend{
9969
Authority: "cosmos10d07y265gmmuvt4z0w9aw880jnsr700j6zn9kn",
10070
Recipient: sdk.AccAddress{}.String(),
101-
Amount: sdk.NewCoins(sdk.NewCoin("stake", sdk.NewInt(100))),
71+
Amount: sdk.NewCoins(sdk.NewCoin("stake", math.NewInt(100))),
10272
}}, false), // normal
10373
},
10474
expectErr: false,
@@ -110,7 +80,7 @@ func TestGovExpeditedProposalsDecorator(t *testing.T) {
11080
newGovProp([]sdk.Msg{&banktypes.MsgSend{
11181
FromAddress: "cosmos10d07y265gmmuvt4z0w9aw880jnsr700j6zn9kn",
11282
ToAddress: "cosmos10d07y265gmmuvt4z0w9aw880jnsr700j6zn9kn",
113-
Amount: sdk.NewCoins(sdk.NewCoin("stake", sdk.NewInt(100))),
83+
Amount: sdk.NewCoins(sdk.NewCoin("stake", math.NewInt(100))),
11484
}}, false), // normal
11585
},
11686
expectErr: false,
@@ -164,7 +134,7 @@ func TestGovExpeditedProposalsDecorator(t *testing.T) {
164134
newGovProp([]sdk.Msg{&distrtypes.MsgCommunityPoolSpend{
165135
Authority: "cosmos10d07y265gmmuvt4z0w9aw880jnsr700j6zn9kn",
166136
Recipient: sdk.AccAddress{}.String(),
167-
Amount: sdk.NewCoins(sdk.NewCoin("stake", sdk.NewInt(100))),
137+
Amount: sdk.NewCoins(sdk.NewCoin("stake", math.NewInt(100))),
168138
}}, true),
169139
},
170140
expectErr: true,
@@ -176,7 +146,7 @@ func TestGovExpeditedProposalsDecorator(t *testing.T) {
176146
newGovProp([]sdk.Msg{&banktypes.MsgSend{
177147
FromAddress: "cosmos10d07y265gmmuvt4z0w9aw880jnsr700j6zn9kn",
178148
ToAddress: "cosmos10d07y265gmmuvt4z0w9aw880jnsr700j6zn9kn",
179-
Amount: sdk.NewCoins(sdk.NewCoin("stake", sdk.NewInt(100))),
149+
Amount: sdk.NewCoins(sdk.NewCoin("stake", math.NewInt(100))),
180150
}}, true),
181151
},
182152
expectErr: true,
@@ -223,19 +193,6 @@ func newLegacyTextProp(expedite bool) *govv1.MsgSubmitProposal {
223193
return newGovProp([]sdk.Msg{msgContent}, expedite)
224194
}
225195

226-
func newLegacyUpgradeProp(expedite bool) *govv1.MsgSubmitProposal {
227-
prop := upgradetypes.NewSoftwareUpgradeProposal("test legacy upgrade", "test legacy upgrade", upgradetypes.Plan{
228-
Name: "upgrade plan-plan",
229-
Info: "some text here",
230-
Height: 123456789,
231-
})
232-
msgContent, err := govv1.NewLegacyContent(prop, "cosmos10d07y265gmmuvt4z0w9aw880jnsr700j6zn9kn")
233-
if err != nil {
234-
return nil
235-
}
236-
return newGovProp([]sdk.Msg{msgContent}, expedite)
237-
}
238-
239196
func newGovV1BETA1LegacyUpgradeProp() *govv1beta1.MsgSubmitProposal {
240197
legacyContent := upgradetypes.NewSoftwareUpgradeProposal("test legacy upgrade", "test legacy upgrade", upgradetypes.Plan{
241198
Name: "upgrade plan-plan",
@@ -254,15 +211,6 @@ func newGovV1BETA1LegacyCancelUpgradeProp() *govv1beta1.MsgSubmitProposal {
254211
return msg
255212
}
256213

257-
func newLegacyCancelProp(expedite bool) *govv1.MsgSubmitProposal {
258-
prop := upgradetypes.NewCancelSoftwareUpgradeProposal("test legacy upgrade", "test legacy upgrade")
259-
msgContent, err := govv1.NewLegacyContent(prop, "cosmos10d07y265gmmuvt4z0w9aw880jnsr700j6zn9kn")
260-
if err != nil {
261-
return nil
262-
}
263-
return newGovProp([]sdk.Msg{msgContent}, expedite)
264-
}
265-
266214
func newGovProp(msgs []sdk.Msg, expedite bool) *govv1.MsgSubmitProposal {
267215
msg, _ := govv1.NewMsgSubmitProposal(msgs, sdk.NewCoins(), sdk.AccAddress{}.String(), "", "expedite", "expedite", expedite)
268216
// fmt.Println("### msg ###", msg, "err", err)

ante/gov_vote_ante.go

+12-7
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package ante
22

33
import (
44
errorsmod "cosmossdk.io/errors"
5+
"cosmossdk.io/math"
56

67
"github.com/cosmos/cosmos-sdk/codec"
78
sdk "github.com/cosmos/cosmos-sdk/types"
@@ -15,13 +16,13 @@ import (
1516
)
1617

1718
var (
18-
minStakedTokens = sdk.NewDec(1000000) // 1_000_000 uatom (or 1 atom)
19-
maxDelegationsChecked = 100 // number of delegation to check for the minStakedTokens
19+
minStakedTokens = math.LegacyNewDec(1000000) // 1_000_000 uatom (or 1 atom)
20+
maxDelegationsChecked = 100 // number of delegation to check for the minStakedTokens
2021
)
2122

2223
// SetMinStakedTokens sets the minimum amount of staked tokens required to vote
2324
// Should only be used in testing
24-
func SetMinStakedTokens(tokens sdk.Dec) {
25+
func SetMinStakedTokens(tokens math.LegacyDec) {
2526
minStakedTokens = tokens
2627
}
2728

@@ -82,14 +83,14 @@ func (g GovVoteDecorator) ValidateVoteMsgs(ctx sdk.Context, msgs []sdk.Msg) erro
8283

8384
enoughStake := false
8485
delegationCount := 0
85-
stakedTokens := sdk.NewDec(0)
86-
g.stakingKeeper.IterateDelegatorDelegations(ctx, accAddr, func(delegation stakingtypes.Delegation) bool {
86+
stakedTokens := math.LegacyNewDec(0)
87+
err = g.stakingKeeper.IterateDelegatorDelegations(ctx, accAddr, func(delegation stakingtypes.Delegation) bool {
8788
validatorAddr, err := sdk.ValAddressFromBech32(delegation.ValidatorAddress)
8889
if err != nil {
8990
panic(err) // shouldn't happen
9091
}
91-
validator, found := g.stakingKeeper.GetValidator(ctx, validatorAddr)
92-
if found {
92+
validator, err := g.stakingKeeper.GetValidator(ctx, validatorAddr)
93+
if err == nil {
9394
shares := delegation.Shares
9495
tokens := validator.TokensFromSharesTruncated(shares)
9596
stakedTokens = stakedTokens.Add(tokens)
@@ -103,6 +104,10 @@ func (g GovVoteDecorator) ValidateVoteMsgs(ctx sdk.Context, msgs []sdk.Msg) erro
103104
return delegationCount >= maxDelegationsChecked
104105
})
105106

107+
if err != nil {
108+
return err
109+
}
110+
106111
if !enoughStake {
107112
return errorsmod.Wrapf(gaiaerrors.ErrInsufficientStake, "insufficient stake for voting - min required %v", minStakedTokens)
108113
}

0 commit comments

Comments
 (0)