diff --git a/codecov.yml b/.codecov.yml similarity index 100% rename from codecov.yml rename to .codecov.yml diff --git a/.gitignore b/.gitignore index 783cd5b..175b291 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ *.swp +multibase-conv/multibase-conv diff --git a/.travis.yml b/.travis.yml index 6a741bc..b95a291 100644 --- a/.travis.yml +++ b/.travis.yml @@ -14,7 +14,7 @@ install: script: - gx-go rewrite - - go test -race -coverprofile=unittest.coverprofile -covermode=atomic ./... + - go test -race -coverprofile=unittest.coverprofile -covermode=atomic . after_success: diff --git a/multibase-conv/main.go b/multibase-conv/main.go new file mode 100644 index 0000000..cec445b --- /dev/null +++ b/multibase-conv/main.go @@ -0,0 +1,41 @@ +package main + +import ( + "fmt" + "os" + + multibase "github.com/multiformats/go-multibase" +) + +func main() { + if len(os.Args) < 3 { + fmt.Printf("usage: %s ...\n", os.Args[0]) + os.Exit(1) + } + + var newBase multibase.Encoding + if baseParm := os.Args[1]; len(baseParm) != 0 { + newBase = multibase.Encoding(baseParm[0]) + } else { + fmt.Fprintln(os.Stderr, " is empty") + os.Exit(1) + } + + input := os.Args[2:] + + for _, strmbase := range input { + _, data, err := multibase.Decode(strmbase) + if err != nil { + fmt.Fprintf(os.Stderr, "error while decoding: %s\n", err) + os.Exit(1) + } + + newCid, err := multibase.Encode(newBase, data) + if err != nil { + fmt.Fprintf(os.Stderr, "error while encoding: %s\n", err) + os.Exit(1) + } + fmt.Println(newCid) + } + +}