github.com/Finschia/finschia-sdk@v0.48.1/x/distribution/client/cli/utils.go (about) 1 package cli 2 3 import ( 4 "github.com/Finschia/finschia-sdk/codec" 5 "github.com/Finschia/finschia-sdk/internal/os" 6 "github.com/Finschia/finschia-sdk/x/distribution/types" 7 ) 8 9 // ParseCommunityPoolSpendProposalWithDeposit reads and parses a CommunityPoolSpendProposalWithDeposit from a file. 10 func ParseCommunityPoolSpendProposalWithDeposit(cdc codec.JSONCodec, proposalFile string) (types.CommunityPoolSpendProposalWithDeposit, error) { 11 proposal := types.CommunityPoolSpendProposalWithDeposit{} 12 13 // 2M size limit is enough for a proposal. 14 // Check the proposals: 15 // https://hubble.figment.io/cosmos/chains/cosmoshub-4/governance 16 contents, err := os.ReadFileWithSizeLimit(proposalFile, 2*1024*1024) 17 if err != nil { 18 return proposal, err 19 } 20 21 if err = cdc.UnmarshalJSON(contents, &proposal); err != nil { 22 return proposal, err 23 } 24 25 return proposal, nil 26 }