From fbd97b658f1c4ee008475b0a64c31deb0bf1734c Mon Sep 17 00:00:00 2001 From: Ophestra Date: Thu, 5 Mar 2026 22:11:26 +0900 Subject: [PATCH] cmd/mbf: display metadata For viewing package metadata before the website is ready. Signed-off-by: Ophestra --- cmd/mbf/main.go | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/cmd/mbf/main.go b/cmd/mbf/main.go index 4b2c541..8d9a232 100644 --- a/cmd/mbf/main.go +++ b/cmd/mbf/main.go @@ -11,6 +11,7 @@ import ( "path/filepath" "runtime" "strconv" + "strings" "syscall" "time" "unique" @@ -130,6 +131,37 @@ func main() { ) } + c.NewCommand( + "info", + "Display out-of-band metadata of an artifact", + func(args []string) error { + if len(args) != 1 { + return errors.New("info requires 1 argument") + } + if p, ok := rosa.ResolveName(args[0]); !ok { + return fmt.Errorf("unknown artifact %q", args[0]) + } else { + segments := make([]string, 0, 3) + + if version := rosa.Std.Version(p); version != rosa.Unversioned { + segments = append(segments, "version:\n\t"+version) + } + + meta := rosa.GetMetadata(p) + segments = append(segments, "description:\n\t"+meta.Description) + if meta.Website != "" { + + segments = append(segments, + "website:\n\t"+strings.TrimSuffix(meta.Website, "/"), + ) + } + + fmt.Println(strings.Join(segments, "\n\n")) + return nil + } + }, + ) + c.NewCommand("updates", command.UsageInternal, func([]string) error { var n int for i := range rosa.PresetEnd {