diff --git a/Gopkg.lock b/Gopkg.lock index a7aed3194..eefc701b0 100644 --- a/Gopkg.lock +++ b/Gopkg.lock @@ -15,9 +15,9 @@ [[projects]] branch = "master" - name = "github.com/cosmos/bech32cosmos" - packages = ["go"] - revision = "c12e4b6ed52acc1d35fea49acec35f980914dc95" + name = "github.com/btcsuite/btcutil" + packages = ["bech32"] + revision = "d4cc87b860166d00d6b5b9e0d3b3d71d6088d4d4" [[projects]] name = "github.com/davecgh/go-spew" @@ -351,9 +351,11 @@ version = "v0.20.0-rc0" [[projects]] + branch = "develop" name = "github.com/tendermint/tmlibs" packages = [ "autofile", + "bech32", "cli", "cli/flags", "clist", @@ -361,10 +363,10 @@ "db", "flowrate", "log", - "merkle" + "merkle", + "merkle/tmhash" ] - revision = "d970af87248a4e162590300dbb74e102183a417d" - version = "v0.8.3" + revision = "44f1bdb0d55cc6527e38d0a7aab406e2580f56a4" [[projects]] branch = "master" @@ -461,6 +463,6 @@ [solve-meta] analyzer-name = "dep" analyzer-version = 1 - inputs-digest = "a6a5d886519fa9ca97a23715faa852ee14ecb5337e03641d19ea3d3d1c392fee" + inputs-digest = "c8d0282dfa5b2bb7a0eb54fc24f42021e63f282265332678593658119bf5023b" solver-name = "gps-cdcl" solver-version = 1 diff --git a/Gopkg.toml b/Gopkg.toml index deabcd645..8c3f5131d 100644 --- a/Gopkg.toml +++ b/Gopkg.toml @@ -72,14 +72,10 @@ name = "github.com/tendermint/tendermint" version = "0.20.0-rc0" -[[constraint]] +[[override]] name = "github.com/tendermint/tmlibs" - version = "~0.8.3-rc0" + branch = "develop" -[[constraint]] - name = "github.com/cosmos/bech32cosmos" - branch = "master" - # this got updated and broke, so locked to an old working commit ... [[override]] name = "google.golang.org/genproto" diff --git a/client/keys/utils.go b/client/keys/utils.go index 34e2ebcf3..1c1fd0979 100644 --- a/client/keys/utils.go +++ b/client/keys/utils.go @@ -101,11 +101,11 @@ func printInfos(infos []keys.Info) { } func printKeyOutput(ko KeyOutput) { - bechAccount, err := sdk.Bech32CosmosifyAcc(ko.Address) + bechAccount, err := sdk.Bech32ifyAcc(ko.Address) if err != nil { panic(err) } - bechPubKey, err := sdk.Bech32CosmosifyAccPub(ko.PubKey) + bechPubKey, err := sdk.Bech32ifyAccPub(ko.PubKey) if err != nil { panic(err) } diff --git a/cmd/gaia/cli_test/cli_test.go b/cmd/gaia/cli_test/cli_test.go index a591c9903..ae46a623c 100644 --- a/cmd/gaia/cli_test/cli_test.go +++ b/cmd/gaia/cli_test/cli_test.go @@ -40,10 +40,10 @@ func TestGaiaCLISend(t *testing.T) { tests.WaitForStart(port) fooAddr, _ := executeGetAddrPK(t, "gaiacli keys show foo --output=json") - fooCech, err := sdk.Bech32CosmosifyAcc(fooAddr) + fooCech, err := sdk.Bech32ifyAcc(fooAddr) require.NoError(t, err) barAddr, _ := executeGetAddrPK(t, "gaiacli keys show bar --output=json") - barCech, err := sdk.Bech32CosmosifyAcc(barAddr) + barCech, err := sdk.Bech32ifyAcc(barAddr) require.NoError(t, err) fooAcc := executeGetAccount(t, fmt.Sprintf("gaiacli account %v %v", fooCech, flags)) @@ -87,12 +87,12 @@ func TestGaiaCLICreateValidator(t *testing.T) { tests.WaitForStart(port) fooAddr, _ := executeGetAddrPK(t, "gaiacli keys show foo --output=json") - fooCech, err := sdk.Bech32CosmosifyAcc(fooAddr) + fooCech, err := sdk.Bech32ifyAcc(fooAddr) require.NoError(t, err) barAddr, barPubKey := executeGetAddrPK(t, "gaiacli keys show bar --output=json") - barCech, err := sdk.Bech32CosmosifyAcc(barAddr) + barCech, err := sdk.Bech32ifyAcc(barAddr) require.NoError(t, err) - barCeshPubKey, err := sdk.Bech32CosmosifyValPub(barPubKey) + barCeshPubKey, err := sdk.Bech32ifyValPub(barPubKey) require.NoError(t, err) executeWrite(t, fmt.Sprintf("gaiacli send %v --amount=10steak --to=%v --name=foo", flags, barCech), pass) diff --git a/server/tm_cmds.go b/server/tm_cmds.go index fcec57f09..60eb5a2fa 100644 --- a/server/tm_cmds.go +++ b/server/tm_cmds.go @@ -53,11 +53,11 @@ func ShowValidatorCmd(ctx *Context) *cobra.Command { fmt.Println(string(pubKeyJSONBytes)) return nil } - addr, err := sdk.Bech32CosmosifyValPub(valPubKey) + pubkey, err := sdk.Bech32ifyValPub(valPubKey) if err != nil { return err } - fmt.Println(addr) + fmt.Println(pubkey) return nil }, } diff --git a/types/account.go b/types/account.go index b593dfb53..ad0c58231 100644 --- a/types/account.go +++ b/types/account.go @@ -5,8 +5,8 @@ import ( "errors" "fmt" - bech32cosmos "github.com/cosmos/bech32cosmos/go" crypto "github.com/tendermint/go-crypto" + "github.com/tendermint/tmlibs/bech32" cmn "github.com/tendermint/tmlibs/common" ) @@ -21,24 +21,24 @@ const ( Bech32PrefixValPub = "cosmosvalpub" ) -// Bech32CosmosifyAcc takes Address and returns the Bech32Cosmos encoded string -func Bech32CosmosifyAcc(addr Address) (string, error) { - return bech32cosmos.ConvertAndEncode(Bech32PrefixAccAddr, addr.Bytes()) +// Bech32ifyAcc takes Address and returns the bech32 encoded string +func Bech32ifyAcc(addr Address) (string, error) { + return bech32.ConvertAndEncode(Bech32PrefixAccAddr, addr.Bytes()) } -// Bech32CosmosifyAccPub takes AccountPubKey and returns the Bech32Cosmos encoded string -func Bech32CosmosifyAccPub(pub crypto.PubKey) (string, error) { - return bech32cosmos.ConvertAndEncode(Bech32PrefixAccPub, pub.Bytes()) +// Bech32ifyAccPub takes AccountPubKey and returns the bech32 encoded string +func Bech32ifyAccPub(pub crypto.PubKey) (string, error) { + return bech32.ConvertAndEncode(Bech32PrefixAccPub, pub.Bytes()) } -// Bech32CosmosifyVal returns the Bech32Cosmos encoded string for a validator address -func Bech32CosmosifyVal(addr Address) (string, error) { - return bech32cosmos.ConvertAndEncode(Bech32PrefixValAddr, addr.Bytes()) +// Bech32ifyVal returns the bech32 encoded string for a validator address +func bech32ifyVal(addr Address) (string, error) { + return bech32.ConvertAndEncode(Bech32PrefixValAddr, addr.Bytes()) } -// Bech32CosmosifyValPub returns the Bech32Cosmos encoded string for a validator pubkey -func Bech32CosmosifyValPub(pub crypto.PubKey) (string, error) { - return bech32cosmos.ConvertAndEncode(Bech32PrefixValPub, pub.Bytes()) +// Bech32ifyValPub returns the bech32 encoded string for a validator pubkey +func Bech32ifyValPub(pub crypto.PubKey) (string, error) { + return bech32.ConvertAndEncode(Bech32PrefixValPub, pub.Bytes()) } // create an Address from a string @@ -54,8 +54,8 @@ func GetAccAddressHex(address string) (addr Address, err error) { } // create an Address from a string -func GetAccAddressBech32Cosmos(address string) (addr Address, err error) { - bz, err := getFromBech32Cosmos(address, Bech32PrefixAccAddr) +func GetAccAddressBech32(address string) (addr Address, err error) { + bz, err := getFromBech32(address, Bech32PrefixAccAddr) if err != nil { return nil, err } @@ -74,9 +74,9 @@ func GetValAddressHex(address string) (addr Address, err error) { return Address(bz), nil } -// create an Address from a bech32cosmos string -func GetValAddressBech32Cosmos(address string) (addr Address, err error) { - bz, err := getFromBech32Cosmos(address, Bech32PrefixValAddr) +// create an Address from a bech32 string +func GetValAddressBech32(address string) (addr Address, err error) { + bz, err := getFromBech32(address, Bech32PrefixValAddr) if err != nil { return nil, err } @@ -84,8 +84,8 @@ func GetValAddressBech32Cosmos(address string) (addr Address, err error) { } //Decode a validator publickey into a public key -func GetValPubKeyBech32Cosmos(pubkey string) (pk crypto.PubKey, err error) { - bz, err := getFromBech32Cosmos(pubkey, Bech32PrefixValPub) +func GetValPubKeyBech32(pubkey string) (pk crypto.PubKey, err error) { + bz, err := getFromBech32(pubkey, Bech32PrefixValPub) if err != nil { return nil, err } @@ -98,11 +98,11 @@ func GetValPubKeyBech32Cosmos(pubkey string) (pk crypto.PubKey, err error) { return pk, nil } -func getFromBech32Cosmos(bech32, prefix string) ([]byte, error) { - if len(bech32) == 0 { +func getFromBech32(bech32str, prefix string) ([]byte, error) { + if len(bech32str) == 0 { return nil, errors.New("must provide non-empty string") } - hrp, bz, err := bech32cosmos.DecodeAndConvert(bech32) + hrp, bz, err := bech32.DecodeAndConvert(bech32str) if err != nil { return nil, err } diff --git a/x/auth/client/cli/account.go b/x/auth/client/cli/account.go index 4006baa14..b5af6a686 100644 --- a/x/auth/client/cli/account.go +++ b/x/auth/client/cli/account.go @@ -40,7 +40,7 @@ func GetAccountCmd(storeName string, cdc *wire.Codec, decoder auth.AccountDecode // find the key to look up the account addr := args[0] - key, err := sdk.GetAccAddressBech32Cosmos(addr) + key, err := sdk.GetAccAddressBech32(addr) if err != nil { return err } diff --git a/x/bank/client/cli/sendtx.go b/x/bank/client/cli/sendtx.go index 5ed56a85b..817c9a174 100644 --- a/x/bank/client/cli/sendtx.go +++ b/x/bank/client/cli/sendtx.go @@ -34,7 +34,7 @@ func SendTxCmd(cdc *wire.Codec) *cobra.Command { toStr := viper.GetString(flagTo) - to, err := sdk.GetAccAddressBech32Cosmos(toStr) + to, err := sdk.GetAccAddressBech32(toStr) if err != nil { return err } diff --git a/x/stake/client/cli/query.go b/x/stake/client/cli/query.go index 84ce9886a..eac39b9ef 100644 --- a/x/stake/client/cli/query.go +++ b/x/stake/client/cli/query.go @@ -21,7 +21,7 @@ func GetCmdQueryValidator(storeName string, cdc *wire.Codec) *cobra.Command { Args: cobra.ExactArgs(1), RunE: func(cmd *cobra.Command, args []string) error { - addr, err := sdk.GetAccAddressBech32Cosmos(args[0]) + addr, err := sdk.GetAccAddressBech32(args[0]) if err != nil { return err } @@ -80,7 +80,6 @@ func GetCmdQueryValidators(storeName string, cdc *wire.Codec) *cobra.Command { validators = append(validators, validator) } - switch viper.Get(cli.OutputFlag) { case "text": for _, validator := range validators { @@ -113,7 +112,7 @@ func GetCmdQueryDelegation(storeName string, cdc *wire.Codec) *cobra.Command { Short: "Query a delegations bond based on address and validator address", RunE: func(cmd *cobra.Command, args []string) error { - addr, err := sdk.GetAccAddressBech32Cosmos(viper.GetString(FlagAddressValidator)) + addr, err := sdk.GetAccAddressBech32(viper.GetString(FlagAddressValidator)) if err != nil { return err } @@ -166,7 +165,7 @@ func GetCmdQueryDelegations(storeName string, cdc *wire.Codec) *cobra.Command { Args: cobra.ExactArgs(1), RunE: func(cmd *cobra.Command, args []string) error { - delegatorAddr, err := sdk.GetAccAddressBech32Cosmos(args[0]) + delegatorAddr, err := sdk.GetAccAddressBech32(args[0]) if err != nil { return err } diff --git a/x/stake/client/cli/tx.go b/x/stake/client/cli/tx.go index 3abd366ec..daa4dd9ef 100644 --- a/x/stake/client/cli/tx.go +++ b/x/stake/client/cli/tx.go @@ -25,7 +25,7 @@ func GetCmdCreateValidator(cdc *wire.Codec) *cobra.Command { if err != nil { return err } - validatorAddr, err := sdk.GetAccAddressBech32Cosmos(viper.GetString(FlagAddressValidator)) + validatorAddr, err := sdk.GetAccAddressBech32(viper.GetString(FlagAddressValidator)) if err != nil { return err } @@ -34,7 +34,7 @@ func GetCmdCreateValidator(cdc *wire.Codec) *cobra.Command { if len(pkStr) == 0 { return fmt.Errorf("must use --pubkey flag") } - pk, err := sdk.GetValPubKeyBech32Cosmos(pkStr) + pk, err := sdk.GetValPubKeyBech32(pkStr) if err != nil { return err } @@ -74,7 +74,7 @@ func GetCmdEditValidator(cdc *wire.Codec) *cobra.Command { Short: "edit and existing validator account", RunE: func(cmd *cobra.Command, args []string) error { - validatorAddr, err := sdk.GetAccAddressBech32Cosmos(viper.GetString(FlagAddressValidator)) + validatorAddr, err := sdk.GetAccAddressBech32(viper.GetString(FlagAddressValidator)) if err != nil { return err } @@ -115,8 +115,8 @@ func GetCmdDelegate(cdc *wire.Codec) *cobra.Command { return err } - delegatorAddr, err := sdk.GetAccAddressBech32Cosmos(viper.GetString(FlagAddressDelegator)) - validatorAddr, err := sdk.GetAccAddressBech32Cosmos(viper.GetString(FlagAddressValidator)) + delegatorAddr, err := sdk.GetAccAddressBech32(viper.GetString(FlagAddressDelegator)) + validatorAddr, err := sdk.GetAccAddressBech32(viper.GetString(FlagAddressValidator)) if err != nil { return err } @@ -163,8 +163,8 @@ func GetCmdUnbond(cdc *wire.Codec) *cobra.Command { } } - delegatorAddr, err := sdk.GetAccAddressBech32Cosmos(viper.GetString(FlagAddressDelegator)) - validatorAddr, err := sdk.GetAccAddressBech32Cosmos(viper.GetString(FlagAddressValidator)) + delegatorAddr, err := sdk.GetAccAddressBech32(viper.GetString(FlagAddressDelegator)) + validatorAddr, err := sdk.GetAccAddressBech32(viper.GetString(FlagAddressValidator)) if err != nil { return err } diff --git a/x/stake/delegation.go b/x/stake/delegation.go index 6877034d7..dedac03e5 100644 --- a/x/stake/delegation.go +++ b/x/stake/delegation.go @@ -35,11 +35,11 @@ func (b Delegation) GetBondShares() sdk.Rat { return b.Shares } //Human Friendly pretty printer func (b Delegation) HumanReadableString() (string, error) { - bechAcc, err := sdk.Bech32CosmosifyAcc(b.DelegatorAddr) + bechAcc, err := sdk.Bech32ifyAcc(b.DelegatorAddr) if err != nil { return "", err } - bechVal, err := sdk.Bech32CosmosifyAcc(b.ValidatorAddr) + bechVal, err := sdk.Bech32ifyAcc(b.ValidatorAddr) if err != nil { return "", err } diff --git a/x/stake/test_common.go b/x/stake/test_common.go index ae4adf4d8..d06ac8d0a 100644 --- a/x/stake/test_common.go +++ b/x/stake/test_common.go @@ -22,16 +22,16 @@ import ( // dummy addresses used for testing var ( addrs = []sdk.Address{ - testAddr("A58856F0FD53BF058B4909A21AEC019107BA6160", "cosmosaccaddr:5ky9du8a2wlstz6fpx3p4mqpjyrm5ctqyxjnwh"), - testAddr("A58856F0FD53BF058B4909A21AEC019107BA6161", "cosmosaccaddr:5ky9du8a2wlstz6fpx3p4mqpjyrm5ctpesxxn9"), - testAddr("A58856F0FD53BF058B4909A21AEC019107BA6162", "cosmosaccaddr:5ky9du8a2wlstz6fpx3p4mqpjyrm5ctzhrnsa6"), - testAddr("A58856F0FD53BF058B4909A21AEC019107BA6163", "cosmosaccaddr:5ky9du8a2wlstz6fpx3p4mqpjyrm5ctr2489qg"), - testAddr("A58856F0FD53BF058B4909A21AEC019107BA6164", "cosmosaccaddr:5ky9du8a2wlstz6fpx3p4mqpjyrm5ctytvs4pd"), - testAddr("A58856F0FD53BF058B4909A21AEC019107BA6165", "cosmosaccaddr:5ky9du8a2wlstz6fpx3p4mqpjyrm5ct9k6yqul"), - testAddr("A58856F0FD53BF058B4909A21AEC019107BA6166", "cosmosaccaddr:5ky9du8a2wlstz6fpx3p4mqpjyrm5ctxcf3kjq"), - testAddr("A58856F0FD53BF058B4909A21AEC019107BA6167", "cosmosaccaddr:5ky9du8a2wlstz6fpx3p4mqpjyrm5ct89l9r0j"), - testAddr("A58856F0FD53BF058B4909A21AEC019107BA6168", "cosmosaccaddr:5ky9du8a2wlstz6fpx3p4mqpjyrm5ctg6jkls2"), - testAddr("A58856F0FD53BF058B4909A21AEC019107BA6169", "cosmosaccaddr:5ky9du8a2wlstz6fpx3p4mqpjyrm5ctf8yz2dc"), + testAddr("A58856F0FD53BF058B4909A21AEC019107BA6160", "cosmosaccaddr15ky9du8a2wlstz6fpx3p4mqpjyrm5ctqyxjnwh"), + testAddr("A58856F0FD53BF058B4909A21AEC019107BA6161", "cosmosaccaddr15ky9du8a2wlstz6fpx3p4mqpjyrm5ctpesxxn9"), + testAddr("A58856F0FD53BF058B4909A21AEC019107BA6162", "cosmosaccaddr15ky9du8a2wlstz6fpx3p4mqpjyrm5ctzhrnsa6"), + testAddr("A58856F0FD53BF058B4909A21AEC019107BA6163", "cosmosaccaddr15ky9du8a2wlstz6fpx3p4mqpjyrm5ctr2489qg"), + testAddr("A58856F0FD53BF058B4909A21AEC019107BA6164", "cosmosaccaddr15ky9du8a2wlstz6fpx3p4mqpjyrm5ctytvs4pd"), + testAddr("A58856F0FD53BF058B4909A21AEC019107BA6165", "cosmosaccaddr15ky9du8a2wlstz6fpx3p4mqpjyrm5ct9k6yqul"), + testAddr("A58856F0FD53BF058B4909A21AEC019107BA6166", "cosmosaccaddr15ky9du8a2wlstz6fpx3p4mqpjyrm5ctxcf3kjq"), + testAddr("A58856F0FD53BF058B4909A21AEC019107BA6167", "cosmosaccaddr15ky9du8a2wlstz6fpx3p4mqpjyrm5ct89l9r0j"), + testAddr("A58856F0FD53BF058B4909A21AEC019107BA6168", "cosmosaccaddr15ky9du8a2wlstz6fpx3p4mqpjyrm5ctg6jkls2"), + testAddr("A58856F0FD53BF058B4909A21AEC019107BA6169", "cosmosaccaddr15ky9du8a2wlstz6fpx3p4mqpjyrm5ctf8yz2dc"), } // dummy pubkeys used for testing @@ -144,7 +144,7 @@ func testAddr(addr string, bech string) sdk.Address { if err != nil { panic(err) } - bechexpected, err := sdk.Bech32CosmosifyAcc(res) + bechexpected, err := sdk.Bech32ifyAcc(res) if err != nil { panic(err) } @@ -152,7 +152,7 @@ func testAddr(addr string, bech string) sdk.Address { panic("Bech encoding doesn't match reference") } - bechres, err := sdk.GetAccAddressBech32Cosmos(bech) + bechres, err := sdk.GetAccAddressBech32(bech) if err != nil { panic(err) } diff --git a/x/stake/validator.go b/x/stake/validator.go index 729a605a9..1d9957d99 100644 --- a/x/stake/validator.go +++ b/x/stake/validator.go @@ -258,11 +258,11 @@ func (v Validator) GetBondHeight() int64 { return v.BondHeight } //Human Friendly pretty printer func (v Validator) HumanReadableString() (string, error) { - bechOwner, err := sdk.Bech32CosmosifyAcc(v.Owner) + bechOwner, err := sdk.Bech32ifyAcc(v.Owner) if err != nil { return "", err } - bechVal, err := sdk.Bech32CosmosifyValPub(v.PubKey) + bechVal, err := sdk.Bech32ifyValPub(v.PubKey) if err != nil { return "", err }