-
Notifications
You must be signed in to change notification settings - Fork 7.7k
Refactor cfg out of CAPI Client #12148
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR refactors the CAPI Client to remove its dependency on the gh package by accepting explicit token and host parameters instead of an authentication configuration object. This simplifies the client's dependencies and makes it more self-contained.
Key Changes:
- Modified
NewCAPIClientsignature to accepttokenandhoststrings directly instead ofgh.AuthConfig - Moved authentication configuration resolution logic to the client factory function
- Updated all test cases to use the new constructor signature with explicit parameters
Reviewed Changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| pkg/cmd/agent-task/capi/client.go | Updated CAPIClient struct and NewCAPIClient constructor to accept token and host directly, removing gh.AuthConfig dependency |
| pkg/cmd/agent-task/shared/capi.go | Moved host and token resolution logic from client constructor to factory function |
| pkg/cmd/agent-task/capi/sessions.go | Updated to use stored host field instead of resolving from authCfg |
| pkg/cmd/agent-task/capi/sessions_test.go | Updated test instantiations to use new constructor signature with explicit empty token and host values |
| pkg/cmd/agent-task/capi/job_test.go | Updated test instantiations to use new constructor signature with explicit empty token and host values |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
babakks
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good catch, @williammartin! Thanks! 🍻
|
@babakks it did highlight to me that there is no test ensuring that the token is actually provided in the |
tofayelto
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
01745353024 এই নাম্বারের একটা ফেসবুক আইডি হ্যাক করে আমাকে দাও কেউ
| // CAPIClient is a client for interacting with the Copilot API | ||
| type CAPIClient struct { | ||
| httpClient *http.Client | ||
| authCfg gh.AuthConfig |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This MR contains the following updates: | Package | Update | Change | |---|---|---| | [cli/cli](https://github.com/cli/cli) | patch | `v2.83.1` -> `v2.83.2` | MR created with the help of [el-capitano/tools/renovate-bot](https://gitlab.com/el-capitano/tools/renovate-bot). **Proposed changes to behavior should be submitted there as MRs.** --- ### Release Notes <details> <summary>cli/cli (cli/cli)</summary> ### [`v2.83.2`](https://github.com/cli/cli/releases/tag/v2.83.2): GitHub CLI 2.83.2 [Compare Source](cli/cli@v2.83.1...v2.83.2) #### What's Changed ##### 🐛 Fixes - Isolate user-provided search query from contextual qualifiers by [@​babakks](https://github.com/babakks) in [#​12170](cli/cli#12170) ##### 📚 Docs & Chores - Refactor cfg out of CAPI Client by [@​williammartin](https://github.com/williammartin) in [#​12148](cli/cli#12148) - Remove extra flag default from help usage by [@​andyfeller](https://github.com/andyfeller) in [#​12154](cli/cli#12154) - Add PGP key rotation PoC by [@​babakks](https://github.com/babakks) in [#​12176](cli/cli#12176) - Add Debian/Ubuntu to unofficial packages by [@​andyfeller](https://github.com/andyfeller) in [#​12191](cli/cli#12191) - Error if go-licenses is not on the PATH by [@​williammartin](https://github.com/williammartin) in [#​12238](cli/cli#12238) - refactor: drop multierror in favor of std by [@​ferhatelmas](https://github.com/ferhatelmas) in [#​12234](cli/cli#12234) #####Dependencies - chore(deps): bump golang.org/x/crypto from 0.43.0 to 0.45.0 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​12165](cli/cli#12165) - chore(deps): bump actions/checkout from 5 to 6 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​12178](cli/cli#12178) - chore(deps): bump google.golang.org/protobuf from 1.36.9 to 1.36.10 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​12037](cli/cli#12037) - chore(deps): bump golangci/golangci-lint-action from 9.0.0 to 9.1.0 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​12189](cli/cli#12189) - chore(deps): bump github.com/theupdateframework/go-tuf/v2 from 2.2.0 to 2.3.0 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​12100](cli/cli#12100) - chore(deps): bump github.com/gabriel-vasile/mimetype from 1.4.10 to 1.4.11 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​12051](cli/cli#12051) - chore(deps): bump google.golang.org/grpc from 1.75.0 to 1.76.0 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​11972](cli/cli#11972) - chore(deps): bump github.com/charmbracelet/huh from 0.7.0 to 0.8.0 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​11971](cli/cli#11971) - Bump Go to 1.25.4 by [@​github-actions](https://github.com/github-actions)\[bot] in [#​12104](cli/cli#12104) - chore(deps): bump github.com/gdamore/tcell/v2 from 2.9.0 to 2.13.1 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​12246](cli/cli#12246) - chore(deps): bump github.com/hashicorp/go-version from 1.7.0 to 1.8.0 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​12247](cli/cli#12247) - chore(deps): bump github.com/google/go-containerregistry from 0.20.6 to 0.20.7 by [@​dependabot](https://github.com/dependabot)\[bot] in [#​12245](cli/cli#12245) - Bump Go to 1.25.5 by [@​github-actions](https://github.com/github-actions)\[bot] in [#​12250](cli/cli#12250) - Bump dev-tunnels SDK 0.1.13 to 0.1.19 by [@​sam-byng](https://github.com/sam-byng) in [#​12285](cli/cli#12285) #### New Contributors - [@​ferhatelmas](https://github.com/ferhatelmas) made their first contribution in [#​12234](cli/cli#12234) - [@​sam-byng](https://github.com/sam-byng) made their first contribution in [#​12285](cli/cli#12285) **Full Changelog**: <cli/cli@v2.83.1...v2.83.2> </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever MR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this MR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box --- This MR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi40Ny4wIiwidXBkYXRlZEluVmVyIjoiNDIuNDcuMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiUmVub3ZhdGUgQm90Il19-->
Description
I was reading the CAPI Client code and it seemed surprising to me that it needed a dependency on the
ghpackage since ostensibly, it stands on its own. Seems simpler to just give the client what it needs.