Skip to content

Commit d1c0c28

Browse files
authored
Fix duplicate plugins in plugin list command (#218)
--- *Motivation* Fix duplicate plugins in plugin list command
1 parent 55c276e commit d1c0c28

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

pkg/ctl/plugin/list.go

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,7 @@ func listCmd(vc *cmdutils.VerbCmd) {
6767
func doListPlugins(vc *cmdutils.VerbCmd) error {
6868
paths := filepath.SplitList(os.Getenv("PATH"))
6969
plugins := []string{}
70+
cache := make(map[string]bool)
7071

7172
for _, dir := range paths {
7273
files, err := ioutil.ReadDir(dir)
@@ -81,7 +82,10 @@ func doListPlugins(vc *cmdutils.VerbCmd) error {
8182
if !hasValidPrefix(f.Name(), plugin.ValidPluginFilenamePrefixes) {
8283
continue
8384
}
84-
plugins = append(plugins, trimPrefix(f.Name(), plugin.ValidPluginFilenamePrefixes))
85+
if !cache[trimPrefix(f.Name(), plugin.ValidPluginFilenamePrefixes)] {
86+
cache[trimPrefix(f.Name(), plugin.ValidPluginFilenamePrefixes)] = true
87+
plugins = append(plugins, trimPrefix(f.Name(), plugin.ValidPluginFilenamePrefixes))
88+
}
8589
}
8690
}
8791

0 commit comments

Comments
 (0)