From 35d33f75575aef90da0004c6395ad7147ed3d4c3 Mon Sep 17 00:00:00 2001 From: Facundo Medica Date: Tue, 27 Jun 2023 12:21:23 +0200 Subject: [PATCH 1/4] fix(x/consensus): Add missing ABCI consensus param in MsgUpdateParams --- api/cosmos/consensus/v1/tx.pulsar.go | 161 +++++++++++++++++++++------ proto/cosmos/consensus/v1/tx.proto | 3 + x/consensus/types/tx.pb.go | 115 ++++++++++++++----- 3 files changed, 219 insertions(+), 60 deletions(-) diff --git a/api/cosmos/consensus/v1/tx.pulsar.go b/api/cosmos/consensus/v1/tx.pulsar.go index ec2ba1c0bf52..c355aa8f271e 100644 --- a/api/cosmos/consensus/v1/tx.pulsar.go +++ b/api/cosmos/consensus/v1/tx.pulsar.go @@ -22,6 +22,7 @@ var ( fd_MsgUpdateParams_block protoreflect.FieldDescriptor fd_MsgUpdateParams_evidence protoreflect.FieldDescriptor fd_MsgUpdateParams_validator protoreflect.FieldDescriptor + fd_MsgUpdateParams_abci protoreflect.FieldDescriptor ) func init() { @@ -31,6 +32,7 @@ func init() { fd_MsgUpdateParams_block = md_MsgUpdateParams.Fields().ByName("block") fd_MsgUpdateParams_evidence = md_MsgUpdateParams.Fields().ByName("evidence") fd_MsgUpdateParams_validator = md_MsgUpdateParams.Fields().ByName("validator") + fd_MsgUpdateParams_abci = md_MsgUpdateParams.Fields().ByName("abci") } var _ protoreflect.Message = (*fastReflection_MsgUpdateParams)(nil) @@ -122,6 +124,12 @@ func (x *fastReflection_MsgUpdateParams) Range(f func(protoreflect.FieldDescript return } } + if x.Abci != nil { + value := protoreflect.ValueOfMessage(x.Abci.ProtoReflect()) + if !f(fd_MsgUpdateParams_abci, value) { + return + } + } } // Has reports whether a field is populated. @@ -145,6 +153,8 @@ func (x *fastReflection_MsgUpdateParams) Has(fd protoreflect.FieldDescriptor) bo return x.Evidence != nil case "cosmos.consensus.v1.MsgUpdateParams.validator": return x.Validator != nil + case "cosmos.consensus.v1.MsgUpdateParams.abci": + return x.Abci != nil default: if fd.IsExtension() { panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.consensus.v1.MsgUpdateParams")) @@ -169,6 +179,8 @@ func (x *fastReflection_MsgUpdateParams) Clear(fd protoreflect.FieldDescriptor) x.Evidence = nil case "cosmos.consensus.v1.MsgUpdateParams.validator": x.Validator = nil + case "cosmos.consensus.v1.MsgUpdateParams.abci": + x.Abci = nil default: if fd.IsExtension() { panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.consensus.v1.MsgUpdateParams")) @@ -197,6 +209,9 @@ func (x *fastReflection_MsgUpdateParams) Get(descriptor protoreflect.FieldDescri case "cosmos.consensus.v1.MsgUpdateParams.validator": value := x.Validator return protoreflect.ValueOfMessage(value.ProtoReflect()) + case "cosmos.consensus.v1.MsgUpdateParams.abci": + value := x.Abci + return protoreflect.ValueOfMessage(value.ProtoReflect()) default: if descriptor.IsExtension() { panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.consensus.v1.MsgUpdateParams")) @@ -225,6 +240,8 @@ func (x *fastReflection_MsgUpdateParams) Set(fd protoreflect.FieldDescriptor, va x.Evidence = value.Message().Interface().(*types.EvidenceParams) case "cosmos.consensus.v1.MsgUpdateParams.validator": x.Validator = value.Message().Interface().(*types.ValidatorParams) + case "cosmos.consensus.v1.MsgUpdateParams.abci": + x.Abci = value.Message().Interface().(*types.ABCIParams) default: if fd.IsExtension() { panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.consensus.v1.MsgUpdateParams")) @@ -260,6 +277,11 @@ func (x *fastReflection_MsgUpdateParams) Mutable(fd protoreflect.FieldDescriptor x.Validator = new(types.ValidatorParams) } return protoreflect.ValueOfMessage(x.Validator.ProtoReflect()) + case "cosmos.consensus.v1.MsgUpdateParams.abci": + if x.Abci == nil { + x.Abci = new(types.ABCIParams) + } + return protoreflect.ValueOfMessage(x.Abci.ProtoReflect()) case "cosmos.consensus.v1.MsgUpdateParams.authority": panic(fmt.Errorf("field authority of message cosmos.consensus.v1.MsgUpdateParams is not mutable")) default: @@ -286,6 +308,9 @@ func (x *fastReflection_MsgUpdateParams) NewField(fd protoreflect.FieldDescripto case "cosmos.consensus.v1.MsgUpdateParams.validator": m := new(types.ValidatorParams) return protoreflect.ValueOfMessage(m.ProtoReflect()) + case "cosmos.consensus.v1.MsgUpdateParams.abci": + m := new(types.ABCIParams) + return protoreflect.ValueOfMessage(m.ProtoReflect()) default: if fd.IsExtension() { panic(fmt.Errorf("proto3 declared messages do not support extensions: cosmos.consensus.v1.MsgUpdateParams")) @@ -371,6 +396,10 @@ func (x *fastReflection_MsgUpdateParams) ProtoMethods() *protoiface.Methods { l = options.Size(x.Validator) n += 1 + l + runtime.Sov(uint64(l)) } + if x.Abci != nil { + l = options.Size(x.Abci) + n += 1 + l + runtime.Sov(uint64(l)) + } if x.unknownFields != nil { n += len(x.unknownFields) } @@ -400,6 +429,20 @@ func (x *fastReflection_MsgUpdateParams) ProtoMethods() *protoiface.Methods { i -= len(x.unknownFields) copy(dAtA[i:], x.unknownFields) } + if x.Abci != nil { + encoded, err := options.Marshal(x.Abci) + if err != nil { + return protoiface.MarshalOutput{ + NoUnkeyedLiterals: input.NoUnkeyedLiterals, + Buf: input.Buf, + }, err + } + i -= len(encoded) + copy(dAtA[i:], encoded) + i = runtime.EncodeVarint(dAtA, i, uint64(len(encoded))) + i-- + dAtA[i] = 0x2a + } if x.Validator != nil { encoded, err := options.Marshal(x.Validator) if err != nil { @@ -638,6 +681,42 @@ func (x *fastReflection_MsgUpdateParams) ProtoMethods() *protoiface.Methods { return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err } iNdEx = postIndex + case 5: + if wireType != 2 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Abci", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrIntOverflow + } + if iNdEx >= l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, runtime.ErrInvalidLength + } + if postIndex > l { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF + } + if x.Abci == nil { + x.Abci = &types.ABCIParams{} + } + if err := options.Unmarshal(dAtA[iNdEx:postIndex], x.Abci); err != nil { + return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := runtime.Skip(dAtA[iNdEx:]) @@ -1060,6 +1139,8 @@ type MsgUpdateParams struct { Block *types.BlockParams `protobuf:"bytes,2,opt,name=block,proto3" json:"block,omitempty"` Evidence *types.EvidenceParams `protobuf:"bytes,3,opt,name=evidence,proto3" json:"evidence,omitempty"` Validator *types.ValidatorParams `protobuf:"bytes,4,opt,name=validator,proto3" json:"validator,omitempty"` + // Since: cosmos-sdk 0.50 + Abci *types.ABCIParams `protobuf:"bytes,5,opt,name=abci,proto3" json:"abci,omitempty"` } func (x *MsgUpdateParams) Reset() { @@ -1110,6 +1191,13 @@ func (x *MsgUpdateParams) GetValidator() *types.ValidatorParams { return nil } +func (x *MsgUpdateParams) GetAbci() *types.ABCIParams { + if x != nil { + return x.Abci + } + return nil +} + // MsgUpdateParamsResponse defines the response structure for executing a // MsgUpdateParams message. type MsgUpdateParamsResponse struct { @@ -1150,7 +1238,7 @@ var file_cosmos_consensus_v1_tx_proto_rawDesc = []byte{ 0x6f, 0x1a, 0x17, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2f, 0x6d, 0x73, 0x67, 0x2f, 0x76, 0x31, 0x2f, 0x6d, 0x73, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1d, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x74, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2f, 0x70, 0x61, 0x72, - 0x61, 0x6d, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xb8, 0x02, 0x0a, 0x0f, 0x4d, 0x73, + 0x61, 0x6d, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xea, 0x02, 0x0a, 0x0f, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x36, 0x0a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x18, 0xd2, 0xb4, 0x2d, 0x14, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x41, 0x64, 0x64, @@ -1166,32 +1254,35 @@ var file_cosmos_consensus_v1_tx_proto_rawDesc = []byte{ 0x64, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x74, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x09, - 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x3a, 0x39, 0x82, 0xe7, 0xb0, 0x2a, 0x09, - 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x8a, 0xe7, 0xb0, 0x2a, 0x26, 0x63, 0x6f, - 0x73, 0x6d, 0x6f, 0x73, 0x2d, 0x73, 0x64, 0x6b, 0x2f, 0x78, 0x2f, 0x63, 0x6f, 0x6e, 0x73, 0x65, - 0x6e, 0x73, 0x75, 0x73, 0x2f, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, - 0x72, 0x61, 0x6d, 0x73, 0x22, 0x19, 0x0a, 0x17, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x32, - 0x70, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x12, 0x62, 0x0a, 0x0c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x24, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, - 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x1a, 0x2c, 0x2e, 0x63, - 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, - 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, - 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x1a, 0x05, 0x80, 0xe7, 0xb0, 0x2a, - 0x01, 0x42, 0xc2, 0x01, 0x0a, 0x17, 0x63, 0x6f, 0x6d, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, - 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x76, 0x31, 0x42, 0x07, 0x54, - 0x78, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x30, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, - 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x73, 0x6d, 0x6f, - 0x73, 0x2f, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2f, 0x76, 0x31, 0x3b, 0x63, - 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x43, 0x43, 0x58, - 0xaa, 0x02, 0x13, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x73, 0x65, 0x6e, - 0x73, 0x75, 0x73, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x13, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x5c, - 0x43, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x1f, 0x43, - 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x5c, 0x43, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x5c, - 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, - 0x15, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x3a, 0x3a, 0x43, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, - 0x75, 0x73, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x30, 0x0a, 0x04, 0x61, 0x62, 0x63, + 0x69, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x72, + 0x6d, 0x69, 0x6e, 0x74, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x41, 0x42, 0x43, 0x49, 0x50, + 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x04, 0x61, 0x62, 0x63, 0x69, 0x3a, 0x39, 0x82, 0xe7, 0xb0, + 0x2a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x8a, 0xe7, 0xb0, 0x2a, 0x26, + 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2d, 0x73, 0x64, 0x6b, 0x2f, 0x78, 0x2f, 0x63, 0x6f, 0x6e, + 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2f, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0x19, 0x0a, 0x17, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x32, 0x70, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x12, 0x62, 0x0a, 0x0c, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x24, 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, + 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x4d, + 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x1a, 0x2c, + 0x2e, 0x63, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, + 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x73, 0x67, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, + 0x72, 0x61, 0x6d, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x1a, 0x05, 0x80, 0xe7, + 0xb0, 0x2a, 0x01, 0x42, 0xc2, 0x01, 0x0a, 0x17, 0x63, 0x6f, 0x6d, 0x2e, 0x63, 0x6f, 0x73, 0x6d, + 0x6f, 0x73, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x76, 0x31, 0x42, + 0x07, 0x54, 0x78, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x30, 0x63, 0x6f, 0x73, 0x6d, + 0x6f, 0x73, 0x73, 0x64, 0x6b, 0x2e, 0x69, 0x6f, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x73, + 0x6d, 0x6f, 0x73, 0x2f, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2f, 0x76, 0x31, + 0x3b, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x43, + 0x43, 0x58, 0xaa, 0x02, 0x13, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x73, + 0x65, 0x6e, 0x73, 0x75, 0x73, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x13, 0x43, 0x6f, 0x73, 0x6d, 0x6f, + 0x73, 0x5c, 0x43, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x5c, 0x56, 0x31, 0xe2, 0x02, + 0x1f, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x5c, 0x43, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, + 0x73, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, + 0xea, 0x02, 0x15, 0x43, 0x6f, 0x73, 0x6d, 0x6f, 0x73, 0x3a, 0x3a, 0x43, 0x6f, 0x6e, 0x73, 0x65, + 0x6e, 0x73, 0x75, 0x73, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -1213,18 +1304,20 @@ var file_cosmos_consensus_v1_tx_proto_goTypes = []interface{}{ (*types.BlockParams)(nil), // 2: tendermint.types.BlockParams (*types.EvidenceParams)(nil), // 3: tendermint.types.EvidenceParams (*types.ValidatorParams)(nil), // 4: tendermint.types.ValidatorParams + (*types.ABCIParams)(nil), // 5: tendermint.types.ABCIParams } var file_cosmos_consensus_v1_tx_proto_depIdxs = []int32{ 2, // 0: cosmos.consensus.v1.MsgUpdateParams.block:type_name -> tendermint.types.BlockParams 3, // 1: cosmos.consensus.v1.MsgUpdateParams.evidence:type_name -> tendermint.types.EvidenceParams 4, // 2: cosmos.consensus.v1.MsgUpdateParams.validator:type_name -> tendermint.types.ValidatorParams - 0, // 3: cosmos.consensus.v1.Msg.UpdateParams:input_type -> cosmos.consensus.v1.MsgUpdateParams - 1, // 4: cosmos.consensus.v1.Msg.UpdateParams:output_type -> cosmos.consensus.v1.MsgUpdateParamsResponse - 4, // [4:5] is the sub-list for method output_type - 3, // [3:4] is the sub-list for method input_type - 3, // [3:3] is the sub-list for extension type_name - 3, // [3:3] is the sub-list for extension extendee - 0, // [0:3] is the sub-list for field type_name + 5, // 3: cosmos.consensus.v1.MsgUpdateParams.abci:type_name -> tendermint.types.ABCIParams + 0, // 4: cosmos.consensus.v1.Msg.UpdateParams:input_type -> cosmos.consensus.v1.MsgUpdateParams + 1, // 5: cosmos.consensus.v1.Msg.UpdateParams:output_type -> cosmos.consensus.v1.MsgUpdateParamsResponse + 5, // [5:6] is the sub-list for method output_type + 4, // [4:5] is the sub-list for method input_type + 4, // [4:4] is the sub-list for extension type_name + 4, // [4:4] is the sub-list for extension extendee + 0, // [0:4] is the sub-list for field type_name } func init() { file_cosmos_consensus_v1_tx_proto_init() } diff --git a/proto/cosmos/consensus/v1/tx.proto b/proto/cosmos/consensus/v1/tx.proto index 2f798528858d..482cdb10bde3 100644 --- a/proto/cosmos/consensus/v1/tx.proto +++ b/proto/cosmos/consensus/v1/tx.proto @@ -36,6 +36,9 @@ message MsgUpdateParams { tendermint.types.BlockParams block = 2; tendermint.types.EvidenceParams evidence = 3; tendermint.types.ValidatorParams validator = 4; + + // Since: cosmos-sdk 0.50 + tendermint.types.ABCIParams abci = 5; } // MsgUpdateParamsResponse defines the response structure for executing a diff --git a/x/consensus/types/tx.pb.go b/x/consensus/types/tx.pb.go index 48d8732859e9..75f607860a53 100644 --- a/x/consensus/types/tx.pb.go +++ b/x/consensus/types/tx.pb.go @@ -43,6 +43,8 @@ type MsgUpdateParams struct { Block *types.BlockParams `protobuf:"bytes,2,opt,name=block,proto3" json:"block,omitempty"` Evidence *types.EvidenceParams `protobuf:"bytes,3,opt,name=evidence,proto3" json:"evidence,omitempty"` Validator *types.ValidatorParams `protobuf:"bytes,4,opt,name=validator,proto3" json:"validator,omitempty"` + // Since: cosmos-sdk 0.50 + Abci *types.ABCIParams `protobuf:"bytes,5,opt,name=abci,proto3" json:"abci,omitempty"` } func (m *MsgUpdateParams) Reset() { *m = MsgUpdateParams{} } @@ -106,6 +108,13 @@ func (m *MsgUpdateParams) GetValidator() *types.ValidatorParams { return nil } +func (m *MsgUpdateParams) GetAbci() *types.ABCIParams { + if m != nil { + return m.Abci + } + return nil +} + // MsgUpdateParamsResponse defines the response structure for executing a // MsgUpdateParams message. type MsgUpdateParamsResponse struct { @@ -152,32 +161,34 @@ func init() { func init() { proto.RegisterFile("cosmos/consensus/v1/tx.proto", fileDescriptor_2135c60575ab504d) } var fileDescriptor_2135c60575ab504d = []byte{ - // 399 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x92, 0x49, 0xce, 0x2f, 0xce, - 0xcd, 0x2f, 0xd6, 0x4f, 0xce, 0xcf, 0x2b, 0x4e, 0xcd, 0x2b, 0x2e, 0x2d, 0xd6, 0x2f, 0x33, 0xd4, - 0x2f, 0xa9, 0xd0, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0x12, 0x86, 0xc8, 0xea, 0xc1, 0x65, 0xf5, - 0xca, 0x0c, 0xa5, 0x04, 0x13, 0x73, 0x33, 0xf3, 0xf2, 0xf5, 0xc1, 0x24, 0x44, 0x9d, 0x94, 0x24, - 0x44, 0x5d, 0x3c, 0x98, 0xa7, 0x0f, 0xd5, 0x04, 0x91, 0x12, 0x87, 0x5a, 0x90, 0x5b, 0x9c, 0x0e, - 0x32, 0x3a, 0xb7, 0x38, 0x1d, 0x2a, 0x21, 0x5b, 0x92, 0x9a, 0x97, 0x92, 0x5a, 0x94, 0x9b, 0x99, - 0x57, 0xa2, 0x5f, 0x52, 0x59, 0x90, 0x5a, 0xac, 0x5f, 0x90, 0x58, 0x94, 0x98, 0x0b, 0xd5, 0xa7, - 0xb4, 0x83, 0x89, 0x8b, 0xdf, 0xb7, 0x38, 0x3d, 0xb4, 0x20, 0x25, 0xb1, 0x24, 0x35, 0x00, 0x2c, - 0x23, 0x64, 0xc6, 0xc5, 0x99, 0x58, 0x5a, 0x92, 0x91, 0x5f, 0x94, 0x59, 0x52, 0x29, 0xc1, 0xa8, - 0xc0, 0xa8, 0xc1, 0xe9, 0x24, 0x71, 0x69, 0x8b, 0xae, 0x08, 0xd4, 0x42, 0xc7, 0x94, 0x94, 0xa2, - 0xd4, 0xe2, 0xe2, 0xe0, 0x92, 0xa2, 0xcc, 0xbc, 0xf4, 0x20, 0x84, 0x52, 0x21, 0x63, 0x2e, 0xd6, - 0xa4, 0x9c, 0xfc, 0xe4, 0x6c, 0x09, 0x26, 0x05, 0x46, 0x0d, 0x6e, 0x23, 0x59, 0x3d, 0x84, 0xd5, - 0x7a, 0x60, 0xab, 0xf5, 0x9c, 0x40, 0xd2, 0x10, 0x5b, 0x82, 0x20, 0x6a, 0x85, 0x6c, 0xb8, 0x38, - 0x52, 0xcb, 0x32, 0x53, 0x52, 0xf3, 0x92, 0x53, 0x25, 0x98, 0xc1, 0xfa, 0x14, 0x30, 0xf5, 0xb9, - 0x42, 0x55, 0x40, 0xb5, 0xc2, 0x75, 0x08, 0xd9, 0x73, 0x71, 0x96, 0x25, 0xe6, 0x64, 0xa6, 0x24, - 0x96, 0xe4, 0x17, 0x49, 0xb0, 0x80, 0xb5, 0x2b, 0x62, 0x6a, 0x0f, 0x83, 0x29, 0x81, 0xea, 0x47, - 0xe8, 0xb1, 0xb2, 0x6c, 0x7a, 0xbe, 0x41, 0x0b, 0xe1, 0x87, 0xae, 0xe7, 0x1b, 0xb4, 0xd4, 0x20, - 0xfe, 0xd4, 0x2d, 0x4e, 0xc9, 0xd6, 0xaf, 0x40, 0x8a, 0x31, 0xb4, 0x60, 0x52, 0x92, 0xe4, 0x12, - 0x47, 0x13, 0x0a, 0x4a, 0x2d, 0x2e, 0x00, 0x29, 0x37, 0x2a, 0xe0, 0x62, 0xf6, 0x2d, 0x4e, 0x17, - 0x4a, 0xe2, 0xe2, 0x41, 0x09, 0x58, 0x15, 0x3d, 0x2c, 0x11, 0xad, 0x87, 0x66, 0x88, 0x94, 0x0e, - 0x31, 0xaa, 0x60, 0x56, 0x49, 0xb1, 0x36, 0x3c, 0xdf, 0xa0, 0xc5, 0xe8, 0xe4, 0x71, 0xe2, 0x91, - 0x1c, 0xe3, 0x85, 0x47, 0x72, 0x8c, 0x0f, 0x1e, 0xc9, 0x31, 0x4e, 0x78, 0x2c, 0xc7, 0x70, 0xe1, - 0xb1, 0x1c, 0xc3, 0x8d, 0xc7, 0x72, 0x0c, 0x51, 0x7a, 0xe9, 0x99, 0x25, 0x19, 0xa5, 0x49, 0x7a, - 0xc9, 0xf9, 0xb9, 0xfa, 0xf0, 0x54, 0x88, 0xd5, 0x83, 0xe0, 0xc0, 0x4a, 0x62, 0x03, 0x27, 0x0c, - 0x63, 0x40, 0x00, 0x00, 0x00, 0xff, 0xff, 0x79, 0x2c, 0x44, 0x5c, 0xb3, 0x02, 0x00, 0x00, + // 421 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x92, 0x4f, 0xcb, 0x12, 0x41, + 0x1c, 0xc7, 0x5d, 0xff, 0x44, 0x4e, 0x41, 0xb4, 0x05, 0xae, 0x8b, 0x2e, 0x26, 0x11, 0x22, 0x39, + 0x93, 0x0a, 0x41, 0x11, 0x84, 0x1b, 0x41, 0x1d, 0x84, 0x30, 0xea, 0xd0, 0x25, 0x66, 0x77, 0x87, + 0x75, 0xd0, 0xdd, 0x59, 0x76, 0xc6, 0x45, 0x6f, 0xd1, 0xb1, 0x53, 0x2f, 0xc5, 0x43, 0x2f, 0xa2, + 0xa3, 0x74, 0xea, 0xf8, 0xa0, 0x07, 0xe1, 0x79, 0x15, 0x0f, 0xce, 0x8e, 0xee, 0xf3, 0xa8, 0x87, + 0xe7, 0x22, 0xb8, 0xdf, 0xcf, 0x67, 0xbe, 0xcc, 0x6f, 0x7e, 0xa0, 0xe6, 0x32, 0x1e, 0x30, 0x8e, + 0x5c, 0x16, 0x72, 0x12, 0xf2, 0x19, 0x47, 0x49, 0x17, 0x89, 0x39, 0x8c, 0x62, 0x26, 0x98, 0xfe, + 0x28, 0x4d, 0xe1, 0x21, 0x85, 0x49, 0xd7, 0x7c, 0x88, 0x03, 0x1a, 0x32, 0x24, 0x7f, 0x53, 0xce, + 0xac, 0xa6, 0xdc, 0x77, 0xf9, 0x0f, 0x29, 0x29, 0x8d, 0x2a, 0xaa, 0x20, 0xe0, 0xfe, 0xee, 0xe8, + 0x80, 0xfb, 0x2a, 0xa8, 0x0b, 0x12, 0x7a, 0x24, 0x0e, 0x68, 0x28, 0x90, 0x58, 0x44, 0x84, 0xa3, + 0x08, 0xc7, 0x38, 0x50, 0x5e, 0xf3, 0x32, 0x0f, 0x1e, 0x0c, 0xb9, 0xff, 0x25, 0xf2, 0xb0, 0x20, + 0x9f, 0x64, 0xa2, 0xbf, 0x04, 0x65, 0x3c, 0x13, 0x63, 0x16, 0x53, 0xb1, 0x30, 0xb4, 0x86, 0xd6, + 0x2a, 0xdb, 0xc6, 0xbf, 0x3f, 0x9d, 0xc7, 0xaa, 0x70, 0xe0, 0x79, 0x31, 0xe1, 0xfc, 0xb3, 0x88, + 0x69, 0xe8, 0x8f, 0x32, 0x54, 0xef, 0x83, 0x92, 0x33, 0x65, 0xee, 0xc4, 0xc8, 0x37, 0xb4, 0xd6, + 0xbd, 0x5e, 0x1d, 0x66, 0xd5, 0x50, 0x56, 0x43, 0x7b, 0x17, 0xa7, 0x2d, 0xa3, 0x94, 0xd5, 0xdf, + 0x80, 0xbb, 0x24, 0xa1, 0x1e, 0x09, 0x5d, 0x62, 0x14, 0xa4, 0xd7, 0x38, 0xf5, 0xde, 0x2b, 0x42, + 0xa9, 0x07, 0x43, 0x7f, 0x0b, 0xca, 0x09, 0x9e, 0x52, 0x0f, 0x0b, 0x16, 0x1b, 0x45, 0xa9, 0x3f, + 0x39, 0xd5, 0xbf, 0xee, 0x11, 0xe5, 0x67, 0x8e, 0xfe, 0x02, 0x14, 0xb1, 0xe3, 0x52, 0xa3, 0x24, + 0xdd, 0xda, 0xa9, 0x3b, 0xb0, 0xdf, 0x7d, 0x54, 0x9a, 0x24, 0x5f, 0xbf, 0xfa, 0xb9, 0x5d, 0xb6, + 0xb3, 0x5b, 0xff, 0xda, 0x2e, 0xdb, 0xcf, 0xd2, 0xc9, 0x74, 0xb8, 0x37, 0x41, 0xf3, 0x6b, 0x6f, + 0x7c, 0x34, 0xd8, 0x66, 0x15, 0x54, 0x8e, 0x3e, 0x8d, 0x08, 0x8f, 0x76, 0x78, 0x2f, 0x02, 0x85, + 0x21, 0xf7, 0x75, 0x07, 0xdc, 0xbf, 0xf1, 0x14, 0x4f, 0xe1, 0x99, 0xd5, 0x80, 0x47, 0x87, 0x98, + 0xcf, 0x6f, 0x43, 0xed, 0xab, 0xcc, 0xd2, 0x8f, 0xed, 0xb2, 0xad, 0xd9, 0x1f, 0xfe, 0xae, 0x2d, + 0x6d, 0xb5, 0xb6, 0xb4, 0x8b, 0xb5, 0xa5, 0xfd, 0xde, 0x58, 0xb9, 0xd5, 0xc6, 0xca, 0xfd, 0xdf, + 0x58, 0xb9, 0x6f, 0xd0, 0xa7, 0x62, 0x3c, 0x73, 0xa0, 0xcb, 0x02, 0x74, 0xd8, 0xdb, 0xb3, 0x17, + 0x94, 0x23, 0x72, 0xee, 0xc8, 0x55, 0xea, 0x5f, 0x05, 0x00, 0x00, 0xff, 0xff, 0xd1, 0x27, 0xbf, + 0x79, 0xe5, 0x02, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. @@ -288,6 +299,18 @@ func (m *MsgUpdateParams) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.Abci != nil { + { + size, err := m.Abci.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTx(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + } if m.Validator != nil { { size, err := m.Validator.MarshalToSizedBuffer(dAtA[:i]) @@ -390,6 +413,10 @@ func (m *MsgUpdateParams) Size() (n int) { l = m.Validator.Size() n += 1 + l + sovTx(uint64(l)) } + if m.Abci != nil { + l = m.Abci.Size() + n += 1 + l + sovTx(uint64(l)) + } return n } @@ -577,6 +604,42 @@ func (m *MsgUpdateParams) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Abci", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTx + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTx + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTx + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Abci == nil { + m.Abci = &types.ABCIParams{} + } + if err := m.Abci.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTx(dAtA[iNdEx:]) From 1d93a452184147deda54626749f6dbc50dbf491b Mon Sep 17 00:00:00 2001 From: Facundo Medica Date: Tue, 27 Jun 2023 12:37:42 +0200 Subject: [PATCH 2/4] progress --- x/consensus/types/msgs.go | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/x/consensus/types/msgs.go b/x/consensus/types/msgs.go index 8b1a8345eef9..a6ec39ddc187 100644 --- a/x/consensus/types/msgs.go +++ b/x/consensus/types/msgs.go @@ -17,7 +17,7 @@ func (msg MsgUpdateParams) GetSigners() []sdk.AccAddress { } func (msg MsgUpdateParams) ToProtoConsensusParams() cmtproto.ConsensusParams { - return cmtproto.ConsensusParams{ + cp := cmtproto.ConsensusParams{ Block: &cmtproto.BlockParams{ MaxBytes: msg.Block.MaxBytes, MaxGas: msg.Block.MaxGas, @@ -32,4 +32,12 @@ func (msg MsgUpdateParams) ToProtoConsensusParams() cmtproto.ConsensusParams { }, Version: cmttypes.DefaultConsensusParams().ToProto().Version, // Version is stored in x/upgrade } + + if msg.Abci != nil { + cp.Abci = &cmtproto.ABCIParams{ + VoteExtensionsEnableHeight: msg.Abci.VoteExtensionsEnableHeight, + } + } + + return cp } From 8e33387d0a00abe9e84bfca3b662be425fa9e070 Mon Sep 17 00:00:00 2001 From: Facundo Medica Date: Tue, 27 Jun 2023 12:41:45 +0200 Subject: [PATCH 3/4] cl__ --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1dece529d0e8..cdd3bd09dfce 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -68,6 +68,7 @@ Ref: https://keepachangelog.com/en/1.0.0/ * [#16547](https://github.com/cosmos/cosmos-sdk/pull/16547) Ensure a transaction's gas limit cannot exceed the block gas limit. * (x/auth/types) [#16554](https://github.com/cosmos/cosmos-sdk/pull/16554) `ModuleAccount.Validate` now reports a nil `.BaseAccount` instead of panicking. * (baseapp) [#16613](https://github.com/cosmos/cosmos-sdk/pull/16613) Ensure each message in a transaction has a registered handler, otherwise `CheckTx` will fail. +* (x/consensus) [#16713](https://github.com/cosmos/cosmos-sdk/pull/16713) Add missing ABCI param in MsgUpdateParams. ## [v0.50.0-alpha.0](https://github.com/cosmos/cosmos-sdk/releases/tag/v0.50.0-alpha.0) - 2023-06-07 From d3ea89e1ac20ce0363f82f1a44a46b034923b491 Mon Sep 17 00:00:00 2001 From: Facundo Medica Date: Tue, 27 Jun 2023 14:05:23 +0200 Subject: [PATCH 4/4] tests --- x/consensus/keeper/keeper_test.go | 36 +++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/x/consensus/keeper/keeper_test.go b/x/consensus/keeper/keeper_test.go index 0d0013420659..6c36b1c45eeb 100644 --- a/x/consensus/keeper/keeper_test.go +++ b/x/consensus/keeper/keeper_test.go @@ -81,6 +81,34 @@ func (s *KeeperTestSuite) TestGRPCQueryConsensusParams() { }, true, }, + { + "success with abci", + types.QueryParamsRequest{}, + func() { + input := &types.MsgUpdateParams{ + Authority: s.consensusParamsKeeper.GetAuthority(), + Block: defaultConsensusParams.Block, + Validator: defaultConsensusParams.Validator, + Evidence: defaultConsensusParams.Evidence, + Abci: &cmtproto.ABCIParams{ + VoteExtensionsEnableHeight: 1234, + }, + } + s.consensusParamsKeeper.UpdateParams(s.ctx, input) + }, + types.QueryParamsResponse{ + Params: &cmtproto.ConsensusParams{ + Block: defaultConsensusParams.Block, + Validator: defaultConsensusParams.Validator, + Evidence: defaultConsensusParams.Evidence, + Version: defaultConsensusParams.Version, + Abci: &cmtproto.ABCIParams{ + VoteExtensionsEnableHeight: 1234, + }, + }, + }, + true, + }, } for _, tc := range testCases { @@ -155,6 +183,14 @@ func (s *KeeperTestSuite) TestUpdateParams() { s.Require().Contains(err.Error(), tc.expErrMsg) } else { s.Require().NoError(err) + + res, err := s.consensusParamsKeeper.Params(s.ctx, &types.QueryParamsRequest{}) + s.Require().NoError(err) + + s.Require().Equal(tc.input.Abci, res.Params.Abci) + s.Require().Equal(tc.input.Block, res.Params.Block) + s.Require().Equal(tc.input.Evidence, res.Params.Evidence) + s.Require().Equal(tc.input.Validator, res.Params.Validator) } }) }