From 2220ab17eb01c6d70acc23a2c013eac2f0867bb2 Mon Sep 17 00:00:00 2001 From: jolheiser Date: Sat, 27 Feb 2021 22:45:39 -0600 Subject: [PATCH] Revert remove command, too easy to remove all packages Signed-off-by: jolheiser --- cmd/cmd.go | 2 +- cmd/remove.go | 48 +++++++++++++++++++++++------------------------- cmd/update.go | 1 + 3 files changed, 25 insertions(+), 26 deletions(-) diff --git a/cmd/cmd.go b/cmd/cmd.go index bb879f4..3ceae54 100644 --- a/cmd/cmd.go +++ b/cmd/cmd.go @@ -3,11 +3,11 @@ package cmd import ( "context" "errors" - "go.jolheiser.com/gpm/database" "os" "path/filepath" "go.jolheiser.com/gpm/cmd/flags" + "go.jolheiser.com/gpm/database" "go.jolheiser.com/gpm/go-gpm" "go.jolheiser.com/gpm/router" diff --git a/cmd/remove.go b/cmd/remove.go index ac90730..ad15807 100644 --- a/cmd/remove.go +++ b/cmd/remove.go @@ -2,7 +2,6 @@ package cmd import ( "context" - "go.jolheiser.com/beaver" "go.jolheiser.com/gpm/cmd/flags" "go.jolheiser.com/gpm/database" @@ -10,6 +9,7 @@ import ( "github.com/AlecAivazis/survey/v2" "github.com/urfave/cli/v2" + "go.jolheiser.com/beaver" ) var Remove = cli.Command{ @@ -33,38 +33,36 @@ func doRemove(_ *cli.Context) error { pkgMap[pkg.Name] = pkg } - pkgQuestion := &survey.MultiSelect{ + pkgQuestion := &survey.Select{ Message: "Select package to remove", Options: pkgSlice, } - var pkgNames []string - if err := survey.AskOne(pkgQuestion, &pkgNames); err != nil { + var pkgName string + if err := survey.AskOne(pkgQuestion, &pkgName); err != nil { return err } - for _, pkgName := range pkgNames { - pkg := gpm.Package{ - Name: pkgName, - Import: pkgMap[pkgName].Import, - } - - if flags.Local { - db, err := database.Load(flags.Database) - if err != nil { - return err - } - if err := db.RemovePackage(pkg.Name); err != nil { - return err - } - } else { - client := gpm.New(flags.Token, gpm.WithServer(flags.Server)) - if err := client.Remove(context.Background(), pkg); err != nil { - return err - } - } - beaver.Infof("Removed %s", yellow.Format(pkgName)) + pkg := gpm.Package{ + Name: pkgName, + Import: pkgMap[pkgName].Import, } + if flags.Local { + db, err := database.Load(flags.Database) + if err != nil { + return err + } + if err := db.RemovePackage(pkg.Name); err != nil { + return err + } + } else { + client := gpm.New(flags.Token, gpm.WithServer(flags.Server)) + if err := client.Remove(context.Background(), pkg); err != nil { + return err + } + } + + beaver.Infof("Removed %s", yellow.Format(pkgName)) return nil } diff --git a/cmd/update.go b/cmd/update.go index 78915d1..eb65e4f 100644 --- a/cmd/update.go +++ b/cmd/update.go @@ -2,6 +2,7 @@ package cmd import ( "context" + "go.jolheiser.com/gpm/cmd/flags" "go.jolheiser.com/gpm/database" "go.jolheiser.com/gpm/go-gpm"