aboutsummaryrefslogtreecommitdiffstats
path: root/commands/ls.go
diff options
context:
space:
mode:
authorSteve Moyer <smoyer1@selesy.com>2022-09-25 08:05:34 -0400
committerSteve Moyer <smoyer1@selesy.com>2022-09-25 08:05:48 -0400
commit10ba2246f9b5285f5118a5ba5be134724af4bbe0 (patch)
tree0981e099599f2d1ad0180cc60854d5d5be3bcc24 /commands/ls.go
parent1a5f4be6904694189b8f2461529f1160191a7810 (diff)
downloadgit-bug-10ba2246f9b5285f5118a5ba5be134724af4bbe0.tar.gz
refactor(git-bug-863): merge ls-id into ls
The "ls" command allows filtering and sorting and already features different output formatters. Merging "ls-id" into "ls" cleans up the command hierarchy and allows users to take advantage of these querying features. Resolves #863.
Diffstat (limited to 'commands/ls.go')
-rw-r--r--commands/ls.go14
1 files changed, 12 insertions, 2 deletions
diff --git a/commands/ls.go b/commands/ls.go
index 6ec06f39..7ed897fa 100644
--- a/commands/ls.go
+++ b/commands/ls.go
@@ -92,9 +92,9 @@ git bug ls status:open --by creation "foo bar" baz
"Select the sorting direction. Valid values are [asc,desc]")
cmd.RegisterFlagCompletionFunc("direction", completeFrom([]string{"asc", "desc"}))
flags.StringVarP(&options.outputFormat, "format", "f", "default",
- "Select the output formatting style. Valid values are [default,plain,compact,json,org-mode]")
+ "Select the output formatting style. Valid values are [default,plain,compact,id,json,org-mode]")
cmd.RegisterFlagCompletionFunc("format",
- completeFrom([]string{"default", "plain", "compact", "json", "org-mode"}))
+ completeFrom([]string{"default", "plain", "compact", "id", "json", "org-mode"}))
return cmd
}
@@ -143,6 +143,8 @@ func runLs(env *Env, opts lsOptions, args []string) error {
return lsJsonFormatter(env, bugExcerpt)
case "compact":
return lsCompactFormatter(env, bugExcerpt)
+ case "id":
+ return lsIDFormatter(env, bugExcerpt)
case "default":
return lsDefaultFormatter(env, bugExcerpt)
default:
@@ -252,6 +254,14 @@ func lsCompactFormatter(env *Env, bugExcerpts []*cache.BugExcerpt) error {
return nil
}
+func lsIDFormatter(env *Env, bugExcerpts []*cache.BugExcerpt) error {
+ for _, b := range bugExcerpts {
+ env.out.Println(b.Id.String())
+ }
+
+ return nil
+}
+
func lsDefaultFormatter(env *Env, bugExcerpts []*cache.BugExcerpt) error {
for _, b := range bugExcerpts {
author, err := env.backend.ResolveIdentityExcerpt(b.AuthorId)