diff options
Diffstat (limited to 'goList.go')
| -rw-r--r-- | goList.go | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/goList.go b/goList.go new file mode 100644 index 0000000..b49ecd2 --- /dev/null +++ b/goList.go @@ -0,0 +1,34 @@ +package repostatus + +import ( + "encoding/json" + "errors" + + "go.wit.com/lib/gui/shell" + "go.wit.com/log" +) + +// go list -json -m go.wit.com/apps/go-clone@latest + +// go list -json -m go.wit.com/apps/go-clone@latest +// { +// "Path": "go.wit.com/apps/go-clone", +// "Version": "v0.0.6", +// "Query": "latest", +// "Time": "2024-03-10T04:12:15Z", +// "GoMod": "/home/jcarr/go/pkg/mod/cache/download/go.wit.com/apps/go-clone/@v/v0.0.6.mod", +// "GoVersion": "1.22.0" +// } + +func runGoList(url string) (string, error) { + r := shell.RunPath("", []string{"go", "list", "-json", "-m", url + "@latest"}) + log.Info("runGoList() r.Output =", r.Output) + var modInfo any + err := json.Unmarshal(r.Output, &modInfo) + if err != nil { + log.Info("runGoList() json.Unmarshal() error =", err) + return "", err + } + log.Spew(modInfo) + return "", errors.New("todo: parse json") +} |
