skycoin / skywire

Skywire Node implementation
73 stars 45 forks source link

`skywire-cli visor tp rm --all` panic ; `skywire-cli visor tp rm` also panics (show help menu on no arguments) #1712

Closed 0pcom closed 5 months ago

0pcom commented 6 months ago
$ skywire-cli visor tp rm 
panic: runtime error: index out of range [0] with length 0

goroutine 1 [running, locked to thread]:
github.com/skycoin/skywire/cmd/skywire-cli/commands/visor.glob..func38(0xc0005a8a00?, {0x1fca420?, 0x4?, 0x1003b69?})
    /home/runner/work/skywire/skywire/cmd/skywire-cli/commands/visor/transports.go:214 +0x135
github.com/spf13/cobra.(*Command).execute(0x1e5f800, {0x1fca420, 0x0, 0x0})
    /home/runner/work/skywire/skywire/vendor/github.com/spf13/cobra/command.go:944 +0x863
github.com/spf13/cobra.(*Command).ExecuteC(0x1e51aa0)
    /home/runner/work/skywire/skywire/vendor/github.com/spf13/cobra/command.go:1068 +0x3a5
github.com/spf13/cobra.(*Command).Execute(...)
    /home/runner/work/skywire/skywire/vendor/github.com/spf13/cobra/command.go:992
github.com/skycoin/skywire/cmd/skywire-cli/commands.Execute()
    /home/runner/work/skywire/skywire/cmd/skywire-cli/commands/root.go:226 +0x67
main.main()
    /home/runner/work/skywire/skywire/cmd/skywire-cli/skywire-cli.go:9 +0xf

same panic when the --all flag is used

$ skywire-cli visor tp rm --all
panic: runtime error: index out of range [0] with length 0

goroutine 1 [running, locked to thread]:
github.com/skycoin/skywire/cmd/skywire-cli/commands/visor.glob..func38(0xc00037f300?, {0xc00048a250?, 0x4?, 0x1003b69?})
    /home/runner/work/skywire/skywire/cmd/skywire-cli/commands/visor/transports.go:214 +0x135
github.com/spf13/cobra.(*Command).execute(0x1e5f800, {0xc00048a240, 0x1, 0x1})
    /home/runner/work/skywire/skywire/vendor/github.com/spf13/cobra/command.go:944 +0x863
github.com/spf13/cobra.(*Command).ExecuteC(0x1e51aa0)
    /home/runner/work/skywire/skywire/vendor/github.com/spf13/cobra/command.go:1068 +0x3a5
github.com/spf13/cobra.(*Command).Execute(...)
    /home/runner/work/skywire/skywire/vendor/github.com/spf13/cobra/command.go:992
github.com/skycoin/skywire/cmd/skywire-cli/commands.Execute()
    /home/runner/work/skywire/skywire/cmd/skywire-cli/commands/root.go:226 +0x67
main.main()
    /home/runner/work/skywire/skywire/cmd/skywire-cli/skywire-cli.go:9 +0xf

except that in the above instance, using the --all flag, i do have a transport which should have been removed

$ skywire-cli visor tp ls
type      id                                       remote_pk                                                              mode        label
sudph     e90fd998-a500-04ef-958d-213144929af2     024223842bba5a31fb0da23dfc822ef783667b74915edbecfc692a9c2a9c4adb56     regular     automatic