From 27a3fcc8072b2d55b9d59cb44352281ba448a2cd Mon Sep 17 00:00:00 2001 From: Caleb Brose <5447118+cmbrose@users.noreply.github.com> Date: Wed, 5 Apr 2023 19:33:50 -0500 Subject: [PATCH 1/2] Fix invoker immediately closing --- pkg/cmd/codespace/jupyter.go | 12 +++++++++--- pkg/cmd/codespace/ssh.go | 12 +++++++++--- 2 files changed, 18 insertions(+), 6 deletions(-) diff --git a/pkg/cmd/codespace/jupyter.go b/pkg/cmd/codespace/jupyter.go index 2fe6083bc..db55c434d 100644 --- a/pkg/cmd/codespace/jupyter.go +++ b/pkg/cmd/codespace/jupyter.go @@ -45,17 +45,23 @@ func (a *App) Jupyter(ctx context.Context, selector *CodespaceSelector) (err err } defer safeClose(session, &err) - serverPort, serverUrl := 0, "" + var ( + invoker rpc.Invoker + serverPort int + serverUrl string + ) err = a.RunWithProgress("Starting JupyterLab on codespace", func() (err error) { - invoker, err := rpc.CreateInvoker(ctx, session) + invoker, err = rpc.CreateInvoker(ctx, session) if err != nil { return } - defer safeClose(invoker, &err) serverPort, serverUrl, err = invoker.StartJupyterServer(ctx) return }) + if invoker != nil { + defer safeClose(invoker, &err) + } if err != nil { return err } diff --git a/pkg/cmd/codespace/ssh.go b/pkg/cmd/codespace/ssh.go index f8889a56b..37a4ee88c 100644 --- a/pkg/cmd/codespace/ssh.go +++ b/pkg/cmd/codespace/ssh.go @@ -171,17 +171,23 @@ func (a *App) SSH(ctx context.Context, sshArgs []string, opts sshOptions) (err e } defer safeClose(session, &err) - remoteSSHServerPort, sshUser := 0, "" + var ( + invoker rpc.Invoker + remoteSSHServerPort int + sshUser string + ) err = a.RunWithProgress("Fetching SSH Details", func() (err error) { - invoker, err := rpc.CreateInvoker(ctx, session) + invoker, err = rpc.CreateInvoker(ctx, session) if err != nil { return } - defer safeClose(invoker, &err) remoteSSHServerPort, sshUser, err = invoker.StartSSHServerWithOptions(ctx, startSSHOptions) return }) + if invoker != nil { + defer safeClose(invoker, &err) + } if err != nil { return fmt.Errorf("error getting ssh server details: %w", err) } From 89caedf1817c21e4bdb9b136a46444225ec4c982 Mon Sep 17 00:00:00 2001 From: Kenichi Kocha <64531971+kkocha@users.noreply.github.com> Date: Fri, 7 Apr 2023 16:41:51 +0900 Subject: [PATCH 2/2] Add `-R` as shorthand of `--repo` flag for search commands (#7274) --- pkg/cmd/search/commits/commits.go | 2 +- pkg/cmd/search/issues/issues.go | 2 +- pkg/cmd/search/prs/prs.go | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/pkg/cmd/search/commits/commits.go b/pkg/cmd/search/commits/commits.go index 7e98cae8a..3a6bd9e2a 100644 --- a/pkg/cmd/search/commits/commits.go +++ b/pkg/cmd/search/commits/commits.go @@ -112,7 +112,7 @@ func NewCmdCommits(f *cmdutil.Factory, runF func(*CommitsOptions) error) *cobra. cmd.Flags().StringVar(&opts.Query.Qualifiers.Hash, "hash", "", "Filter by commit hash") cmdutil.NilBoolFlag(cmd, &opts.Query.Qualifiers.Merge, "merge", "", "Filter on merge commits") cmd.Flags().StringVar(&opts.Query.Qualifiers.Parent, "parent", "", "Filter by parent hash") - cmd.Flags().StringSliceVar(&opts.Query.Qualifiers.Repo, "repo", nil, "Filter on repository") + cmd.Flags().StringSliceVarP(&opts.Query.Qualifiers.Repo, "repo", "R", nil, "Filter on repository") cmd.Flags().StringVar(&opts.Query.Qualifiers.Tree, "tree", "", "Filter by tree hash") cmd.Flags().StringVar(&opts.Query.Qualifiers.User, "owner", "", "Filter on repository owner") cmdutil.StringSliceEnumFlag(cmd, &opts.Query.Qualifiers.Is, "visibility", "", nil, []string{"public", "private", "internal"}, "Filter based on repository visibility") diff --git a/pkg/cmd/search/issues/issues.go b/pkg/cmd/search/issues/issues.go index 90794053b..5349268a7 100644 --- a/pkg/cmd/search/issues/issues.go +++ b/pkg/cmd/search/issues/issues.go @@ -156,7 +156,7 @@ func NewCmdIssues(f *cmdutil.Factory, runF func(*shared.IssuesOptions) error) *c cmd.Flags().BoolVar(&noProject, "no-project", false, "Filter on missing project") cmd.Flags().StringVar(&opts.Query.Qualifiers.Project, "project", "", "Filter on project board `number`") cmd.Flags().StringVar(&opts.Query.Qualifiers.Reactions, "reactions", "", "Filter on `number` of reactions") - cmd.Flags().StringSliceVar(&opts.Query.Qualifiers.Repo, "repo", nil, "Filter on repository") + cmd.Flags().StringSliceVarP(&opts.Query.Qualifiers.Repo, "repo", "R", nil, "Filter on repository") cmdutil.StringEnumFlag(cmd, &opts.Query.Qualifiers.State, "state", "", "", []string{"open", "closed"}, "Filter based on state") cmd.Flags().StringVar(&opts.Query.Qualifiers.Team, "team-mentions", "", "Filter based on team mentions") cmd.Flags().StringVar(&opts.Query.Qualifiers.Updated, "updated", "", "Filter on last updated at `date`") diff --git a/pkg/cmd/search/prs/prs.go b/pkg/cmd/search/prs/prs.go index 2ef37b2ef..a7ff37e5e 100644 --- a/pkg/cmd/search/prs/prs.go +++ b/pkg/cmd/search/prs/prs.go @@ -167,7 +167,7 @@ func NewCmdPrs(f *cmdutil.Factory, runF func(*shared.IssuesOptions) error) *cobr cmd.Flags().BoolVar(&noProject, "no-project", false, "Filter on missing project") cmd.Flags().StringVar(&opts.Query.Qualifiers.Project, "project", "", "Filter on project board `number`") cmd.Flags().StringVar(&opts.Query.Qualifiers.Reactions, "reactions", "", "Filter on `number` of reactions") - cmd.Flags().StringSliceVar(&opts.Query.Qualifiers.Repo, "repo", nil, "Filter on repository") + cmd.Flags().StringSliceVarP(&opts.Query.Qualifiers.Repo, "repo", "R", nil, "Filter on repository") cmdutil.StringEnumFlag(cmd, &opts.Query.Qualifiers.State, "state", "", "", []string{"open", "closed"}, "Filter based on state") cmd.Flags().StringVar(&opts.Query.Qualifiers.Team, "team-mentions", "", "Filter based on team mentions") cmd.Flags().StringVar(&opts.Query.Qualifiers.Updated, "updated", "", "Filter on last updated at `date`")