From bb30f85fd76249b5da99b728c4325e1ca8b10130 Mon Sep 17 00:00:00 2001 From: Jim McDonald Date: Mon, 25 Nov 2019 16:13:46 +0000 Subject: [PATCH] Update for wallet store v1.5 interface definition --- cmd/walletaccounts.go | 6 ++++-- cmd/walletlist.go | 3 ++- go.mod | 13 +++++++++---- go.sum | 34 ++++++++++++++++++++++++++++------ 4 files changed, 43 insertions(+), 13 deletions(-) diff --git a/cmd/walletaccounts.go b/cmd/walletaccounts.go index ca33203..7105370 100644 --- a/cmd/walletaccounts.go +++ b/cmd/walletaccounts.go @@ -18,6 +18,7 @@ import ( "os" "sort" + "github.com/google/uuid" "github.com/spf13/cobra" types "github.com/wealdtech/go-eth2-types" ) @@ -39,7 +40,7 @@ In quiet mode this will return 0 if the wallet holds any addresses, otherwise 1. // List the accounts. They come to us in random order and we want them in name order, so store them in an array and sort output := make([]addressListResult, 0) for account := range wallet.Accounts() { - output = append(output, addressListResult{name: account.Name(), pubkey: account.PublicKey()}) + output = append(output, addressListResult{id: account.ID(), name: account.Name(), pubkey: account.PublicKey()}) } if quiet { @@ -54,7 +55,7 @@ In quiet mode this will return 0 if the wallet holds any addresses, otherwise 1. }) for _, out := range output { if verbose { - fmt.Printf("%s: 0x%048x\n", out.name, out.pubkey.Marshal()) + fmt.Printf("%s\n\tUUID:\t\t%s\n\tPublic key:\t0x%048x\n", out.name, out.id, out.pubkey.Marshal()) } else if !quiet { fmt.Printf("%s\n", out.name) } @@ -68,6 +69,7 @@ func init() { } type addressListResult struct { + id uuid.UUID name string pubkey types.PublicKey } diff --git a/cmd/walletlist.go b/cmd/walletlist.go index 72e857c..a61ecad 100644 --- a/cmd/walletlist.go +++ b/cmd/walletlist.go @@ -33,7 +33,8 @@ In quiet mode this will return 0 if any wallets are found, otherwise 1.`, walletsFound := false for w := range wallet.Wallets() { walletsFound = true - outputIf(!quiet, fmt.Sprintf("%s", w.Name())) + outputIf(!quiet && !verbose, fmt.Sprintf("%s", w.Name())) + outputIf(verbose, fmt.Sprintf("%s\n\tUUID:\t\t%s", w.Name(), w.ID().String())) } if !walletsFound { diff --git a/go.mod b/go.mod index ae86924..f2ceee4 100644 --- a/go.mod +++ b/go.mod @@ -4,6 +4,8 @@ go 1.13 require ( github.com/FactomProject/go-bip39 v0.3.5 + github.com/aws/aws-sdk-go v1.25.41 // indirect + github.com/google/uuid v1.1.1 github.com/karlseguin/ccache v2.0.3+incompatible // indirect github.com/karlseguin/expect v1.0.1 // indirect github.com/konsorten/go-windows-terminal-sequences v1.0.2 // indirect @@ -11,9 +13,10 @@ require ( github.com/minio/sha256-simd v0.1.1 // indirect github.com/mitchellh/go-homedir v1.1.0 github.com/pelletier/go-toml v1.6.0 // indirect + github.com/phoreproject/bls v0.0.0-20191113194321-fef763a1a842 // indirect github.com/protolambda/zssz v0.1.4 // indirect github.com/prysmaticlabs/go-bitfield v0.0.0-20191017011753-53b773adde52 // indirect - github.com/prysmaticlabs/go-ssz v0.0.0-20191106170054-58b2f86b0f02 + github.com/prysmaticlabs/go-ssz v0.0.0-20191120051632-0052baf3405a github.com/sirupsen/logrus v1.4.2 github.com/spf13/afero v1.2.2 // indirect github.com/spf13/cobra v0.0.5 @@ -23,12 +26,14 @@ require ( github.com/wealdtech/go-bytesutil v1.1.0 github.com/wealdtech/go-eth2-types v1.0.0 github.com/wealdtech/go-eth2-util v1.0.0 - github.com/wealdtech/go-eth2-wallet v1.3.2 - github.com/wealdtech/go-eth2-wallet-types v1.4.0 + github.com/wealdtech/go-eth2-wallet v1.4.0 + github.com/wealdtech/go-eth2-wallet-types v1.5.0 github.com/wealdtech/go-string2eth v1.1.0 github.com/wsxiaoys/terminal v0.0.0-20160513160801-0940f3fc43a0 // indirect + golang.org/x/crypto v0.0.0-20191122220453-ac88ee75c92c // indirect golang.org/x/net v0.0.0-20190628185345-da137c7871d7 // indirect + golang.org/x/sys v0.0.0-20191120155948-bd437916bb0e // indirect golang.org/x/text v0.3.2 // indirect gopkg.in/karlseguin/expect.v1 v1.0.1 // indirect - gopkg.in/yaml.v2 v2.2.5 // indirect + gopkg.in/yaml.v2 v2.2.7 // indirect ) diff --git a/go.sum b/go.sum index 142ae59..c410b55 100644 --- a/go.sum +++ b/go.sum @@ -11,6 +11,8 @@ github.com/aws/aws-sdk-go v1.25.25 h1:j3HLOqcDWjNox1DyvJRs+kVQF42Ghtv6oL6cVBfXS3 github.com/aws/aws-sdk-go v1.25.25/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo= github.com/aws/aws-sdk-go v1.25.33 h1:8muvpP+Bq5e0CDkM9PDZ6tN74fVUq5v3zSCRaZ93ykM= github.com/aws/aws-sdk-go v1.25.33/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo= +github.com/aws/aws-sdk-go v1.25.41 h1:/hj7nZ0586wFqpwjNpzWiUTwtaMgxAZNZKHay80MdXw= +github.com/aws/aws-sdk-go v1.25.41/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo= github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8= github.com/campoy/embedmd v1.0.0/go.mod h1:oxyr9RCiSXg0M3VJ3ks0UGfp98BpSSGr0kpiX3MzVl8= @@ -101,6 +103,8 @@ github.com/phoreproject/bls v0.0.0-20190821133044-da95d4798b09 h1:f0WZnMl5hMHNpf github.com/phoreproject/bls v0.0.0-20190821133044-da95d4798b09/go.mod h1:7pK0Ldy91shCmI47LLTn3i3rfTQcHiJJvPqGqzvN5nE= github.com/phoreproject/bls v0.0.0-20191016230924-b2e57acce2ed h1:pX150rn565RorbtQWv2pR0SGd5rr9iHSGCSR26dg5Wk= github.com/phoreproject/bls v0.0.0-20191016230924-b2e57acce2ed/go.mod h1:7pK0Ldy91shCmI47LLTn3i3rfTQcHiJJvPqGqzvN5nE= +github.com/phoreproject/bls v0.0.0-20191113194321-fef763a1a842 h1:SFS72hX189sQC+kZzAcNv7ENTLJHddmokEM39RsLA24= +github.com/phoreproject/bls v0.0.0-20191113194321-fef763a1a842/go.mod h1:xHJKf2TLXUA39Dhv8k5QmQOxLsbrb1KeTS/3ERfLeqc= github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/errors v0.8.1 h1:iURUrRGxPUNPdy5/HRSm+Yj6okJ6UtLINN0Q9M4+h3I= github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= @@ -119,8 +123,8 @@ github.com/protolambda/zssz v0.1.4 h1:4jkt8sqwhOVR8B1JebREU/gVX0Ply4GypsV8+RWrDu github.com/protolambda/zssz v0.1.4/go.mod h1:a4iwOX5FE7/JkKA+J/PH0Mjo9oXftN6P8NZyL28gpag= github.com/prysmaticlabs/go-bitfield v0.0.0-20191017011753-53b773adde52 h1:kxZ+xSWX0qbxoiDXQBLztKeEmEQg6TgCYWAOa7gSGGU= github.com/prysmaticlabs/go-bitfield v0.0.0-20191017011753-53b773adde52/go.mod h1:hCwmef+4qXWjv0jLDbQdWnL0Ol7cS7/lCSS26WR+u6s= -github.com/prysmaticlabs/go-ssz v0.0.0-20191106170054-58b2f86b0f02 h1:YeOTeOFWp5SRbIGBDr85X1bVT1sja8HloTHeLtORzWg= -github.com/prysmaticlabs/go-ssz v0.0.0-20191106170054-58b2f86b0f02/go.mod h1:VecIJZrewdAuhVckySLFt2wAAHRME934bSDurP8ftkc= +github.com/prysmaticlabs/go-ssz v0.0.0-20191120051632-0052baf3405a h1:BimotdwZoyYs/Uyi2mWawprgyW6oIkR0i0nLJXbmgJI= +github.com/prysmaticlabs/go-ssz v0.0.0-20191120051632-0052baf3405a/go.mod h1:VecIJZrewdAuhVckySLFt2wAAHRME934bSDurP8ftkc= github.com/rogpeppe/fastuuid v0.0.0-20150106093220-6724a57986af/go.mod h1:XWv6SoW27p1b0cqNHllgS5HIMJraePCO15w5zCzIWYg= github.com/russross/blackfriday v1.5.2/go.mod h1:JO/DiYxRf+HjHt06OyowR9PTA263kcR/rfWxYHBV53g= github.com/shibukawa/configdir v0.0.0-20170330084843-e180dbdc8da0 h1:Xuk8ma/ibJ1fOy4Ee11vHhUFHQNpHhrBneOCNHVXS5w= @@ -170,22 +174,36 @@ github.com/wealdtech/go-eth2-types v1.0.0 h1:ggrbQ5HeFcxVm20zxVWr8Sc3uCditaetzWB github.com/wealdtech/go-eth2-types v1.0.0/go.mod h1:fWUgtKQ7hiNVl6263bGeyjlydYuaxkxcUIPIopgz2CM= github.com/wealdtech/go-eth2-util v1.0.0 h1:sKnZ84xLzj1PntxaWeiGmA+1LZ6vOeIXqCHDkVvzRGU= github.com/wealdtech/go-eth2-util v1.0.0/go.mod h1:ZodZI58Seya6uhbMLe3cLydsV0AhneyWCHzmkJCKlIM= -github.com/wealdtech/go-eth2-wallet v1.3.2 h1:bHhTn9yLQlSt+b25YE2Md+mRqoAMSzBAONiC5hnN7Ns= -github.com/wealdtech/go-eth2-wallet v1.3.2/go.mod h1:rQ09/OKCqlJr112mBPQuHKGXFUwRy+G9/oVt3nGjLOE= +github.com/wealdtech/go-eth2-wallet v1.3.3 h1:tOl/kWvKfGJsrdiMgr2zm+iui+Ku5LIOn4XllsWjGOs= +github.com/wealdtech/go-eth2-wallet v1.3.3/go.mod h1:rQ09/OKCqlJr112mBPQuHKGXFUwRy+G9/oVt3nGjLOE= +github.com/wealdtech/go-eth2-wallet v1.4.0 h1:YnIBh6Jc8EzuoYeXbv00XhvyX0HaJ2js2YGTBZnNA9s= +github.com/wealdtech/go-eth2-wallet v1.4.0/go.mod h1:LKEf38uJvfpkzwvwDk25A4ULEadhAqK7pMD4JEeFZwI= github.com/wealdtech/go-eth2-wallet-encryptor-keystorev4 v1.0.0 h1:IcpS4VpXhYz+TVupB5n6C6IQzaKwG+Rc8nvgCa/da4c= github.com/wealdtech/go-eth2-wallet-encryptor-keystorev4 v1.0.0/go.mod h1:X8WRO5hEwbjx8ZOqoRmtS1ngyflKs25GkP7qGv7yOqE= github.com/wealdtech/go-eth2-wallet-hd v1.4.1 h1:e0bHHZbjeQQkC/BXam++47xUFGD8W4YWZORftWgmVO0= github.com/wealdtech/go-eth2-wallet-hd v1.4.1/go.mod h1:CWoJTjdSl/ojfyvRELUsL5ueT2o2vVi504pHptRqass= +github.com/wealdtech/go-eth2-wallet-hd v1.5.0 h1:NDKGcqoX8nskw0vRrGQMZKGkTAJ1Rw7m5eW5chQYxt0= +github.com/wealdtech/go-eth2-wallet-hd v1.5.0/go.mod h1:wxftV2HjDLxSB/iP2d13thdpPcY6CLrEHd6qtP/WK3w= github.com/wealdtech/go-eth2-wallet-nd v1.4.1 h1:FEcIJi/EL6Vhpssjs5AWJR/waNaA40EBPg5onBuwVcY= github.com/wealdtech/go-eth2-wallet-nd v1.4.1/go.mod h1:8Az8cd/BxQY2dCZtXc1o2Ilw7IZsfx8sIFjTYjFc59s= +github.com/wealdtech/go-eth2-wallet-nd v1.5.0 h1:0nOOD0TpvGTSbRF7NGxAzgFPoEdM0Awnr9Mx3mroOm4= +github.com/wealdtech/go-eth2-wallet-nd v1.5.0/go.mod h1:KiORm3eoIq+XR043MPekEPebU8I12918bE7ldrqk9iw= github.com/wealdtech/go-eth2-wallet-store-filesystem v1.3.0 h1:mA5FjIrj3PpP/nSYsoJxzhPjVKJwjWTVTeW49U0/yBo= github.com/wealdtech/go-eth2-wallet-store-filesystem v1.3.0/go.mod h1:GRBsKg9FImVbgMBTuxj9IYDyiHx/LllbyHYQwUUIans= +github.com/wealdtech/go-eth2-wallet-store-filesystem v1.4.0 h1:IH9ncOXxd10A4C6EAptnycuRcoenRmf60oKq5yirfpc= +github.com/wealdtech/go-eth2-wallet-store-filesystem v1.4.0/go.mod h1:FCzZpqn1KqU1ezKKjjxh6l9NjmCAiTwZksgE+bnTD68= github.com/wealdtech/go-eth2-wallet-store-s3 v1.2.0 h1:GkGif1mWaiNRtxwJlgaWrRYvIXWV2dYDbrsm0IUOYiE= github.com/wealdtech/go-eth2-wallet-store-s3 v1.2.0/go.mod h1:ZgjFOkiBTPu/T4gwFl9S65S3Cyk6pItoMO8znVwP8Dg= +github.com/wealdtech/go-eth2-wallet-store-s3 v1.3.0 h1:Cl/XoJUwUPPO1pq8PpFg+UWSO4XyJC5h+kKYBpgQtMM= +github.com/wealdtech/go-eth2-wallet-store-s3 v1.3.0/go.mod h1:bW+mIEvCitsc3+ZYIIzaawCjrCtI+CpGUAIrevesOSw= github.com/wealdtech/go-eth2-wallet-store-scratch v1.1.0 h1:Qwxy5yiIkPcJ+ko2e56d1Cpr2ERatCM5qHJTujfGTR8= github.com/wealdtech/go-eth2-wallet-store-scratch v1.1.0/go.mod h1:SE8+JwO31h9B4L9jnAjay0FRyOZAaJFesIkCBxnQX74= +github.com/wealdtech/go-eth2-wallet-store-scratch v1.2.0 h1:GzwNLhfHlR25PXSNWPFBQwMA4nQS80WLTp9DWKhUDXU= +github.com/wealdtech/go-eth2-wallet-store-scratch v1.2.0/go.mod h1:Rmi0S69tuts1YbVXcimw/4yvYUSiLNIUE9gIT3i1h4E= github.com/wealdtech/go-eth2-wallet-types v1.4.0 h1:Az22OrT+npIB96eVAHLBsEZ3dZjDVcmPq2XjnzbYBP0= github.com/wealdtech/go-eth2-wallet-types v1.4.0/go.mod h1:OQqqr/hWOwNHe9NyXI0cYGQI6CBBmAlcusqWnJCf7T8= +github.com/wealdtech/go-eth2-wallet-types v1.5.0 h1:9uRdSws4Wg42lQ63AEg4X/1Mt/si5MIZOBaVpuCyrLU= +github.com/wealdtech/go-eth2-wallet-types v1.5.0/go.mod h1:OQqqr/hWOwNHe9NyXI0cYGQI6CBBmAlcusqWnJCf7T8= github.com/wealdtech/go-string2eth v1.1.0 h1:USJQmysUrBYYmZs7d45pMb90hRSyEwizP7lZaOZLDAw= github.com/wealdtech/go-string2eth v1.1.0/go.mod h1:RUzsLjJtbZaJ/3UKn9kY19a/vCCUHtEWoUW3uiK6yGU= github.com/wsxiaoys/terminal v0.0.0-20160513160801-0940f3fc43a0 h1:3UeQBvD0TFrlVjOeLOBz+CPAI8dnbqNSVwUwRrkp7vQ= @@ -210,6 +228,8 @@ golang.org/x/crypto v0.0.0-20191111213947-16651526fdb4 h1:AGVXd+IAyeAb3FuQvYDYQ9 golang.org/x/crypto v0.0.0-20191111213947-16651526fdb4/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20191112222119-e1110fd1c708 h1:pXVtWnwHkrWD9ru3sDxY/qFK/bfc0egRovX91EjWjf4= golang.org/x/crypto v0.0.0-20191112222119-e1110fd1c708/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20191122220453-ac88ee75c92c h1:/nJuwDLoL/zrqY6gf57vxC+Pi+pZ8bfhpPkicO5H7W4= +golang.org/x/crypto v0.0.0-20191122220453-ac88ee75c92c/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -239,6 +259,8 @@ golang.org/x/sys v0.0.0-20191110163157-d32e6e3b99c4 h1:Hynbrlo6LbYI3H1IqXpkVDOcX golang.org/x/sys v0.0.0-20191110163157-d32e6e3b99c4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191112214154-59a1497f0cea h1:Mz1TMnfJDRJLk8S8OPCoJYgrsp/Se/2TBre2+vwX128= golang.org/x/sys v0.0.0-20191112214154-59a1497f0cea/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191120155948-bd437916bb0e h1:N7DeIrjYszNmSW409R3frPPwglRwMkXSBzwVbkOjLLA= +golang.org/x/sys v0.0.0-20191120155948-bd437916bb0e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.2 h1:tW2bmiBqwgJj/UpqtC8EpXEZVYOwU0yG4iWbprSVAcs= golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= @@ -266,7 +288,7 @@ gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.2 h1:ZCJp+EgiOT7lHqUV2J862kp8Qj64Jo6az82+3Td9dZw= gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= -gopkg.in/yaml.v2 v2.2.5 h1:ymVxjfMaHvXD8RqPRmzHHsB3VvucivSkIAvJFDI5O3c= -gopkg.in/yaml.v2 v2.2.5/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.2.7 h1:VUgggvou5XRW9mHwD/yXxIYSMtY0zoKQf/v226p2nyo= +gopkg.in/yaml.v2 v2.2.7/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= rsc.io/pdf v0.1.1/go.mod h1:n8OzWcQ6Sp37PL01nO98y4iUCRdTGarVfzxY20ICaU4=