Skip to content

Conversation

@JunNishimura
Copy link
Contributor

@JunNishimura JunNishimura commented Aug 11, 2023

Overview

I added verbose flag to api command to output debugging information.

Explanation

Checking if GH_DEBUG=api is set is done in the NewHTTPClient function. This NewHTTPClient function is called before the NewCmdApi function which initializes api command. Therefore, it is necessary to use a slightly cumbersome approach to output debugging information in the same way as GH_DEBUG=api with the verbose flag.

My approach is to create the http client again with LogVerboseHTTP set to true when the verbose flag is set. LogVerboseHTTP is a required field to output debugging information.

There might be better approaches, so let me know if you have any ideas.

Releated Issue

@JunNishimura JunNishimura marked this pull request as ready for review August 11, 2023 09:36
@JunNishimura JunNishimura requested a review from a team as a code owner August 11, 2023 09:36
@JunNishimura JunNishimura requested review from vilmibm and removed request for a team August 11, 2023 09:36
@cliAutomation cliAutomation added the external pull request originating outside of the CLI core team label Aug 11, 2023
@JunNishimura JunNishimura changed the title [WIP] add verbose flag to api cmd add verbose flag to api cmd Aug 11, 2023
@andyfeller
Copy link
Member

@JunNishimura : Thank you for opening this pull request! ✨ Please allow me some time to review these changes and confirm with my team on any feedback. 🙇

@JunNishimura
Copy link
Contributor Author

@andyfeller
Thanks for the message, and it is fine when you have time to spare!!

@andyfeller
Copy link
Member

andyfeller commented Aug 16, 2023

@JunNishimura : How extensive do you envision adding verbose logging to be?

I ask because I think there is more to adding this support than the current PR touches upon because gh api commands use different http.Client instantiation function because of unique concerns:

cli/pkg/cmd/root/root.go

Lines 154 to 159 in e4cddb5

// the `api` command should not inherit any extra HTTP headers
bareHTTPCmdFactory := *f
bareHTTPCmdFactory.HttpClient = bareHTTPClient(f, version)
bareHTTPCmdFactory.BaseRepo = factory.SmartBaseRepoFunc(&bareHTTPCmdFactory)
cmd.AddCommand(apiCmd.NewCmdApi(&bareHTTPCmdFactory, nil))

cli/pkg/cmd/root/root.go

Lines 226 to 241 in e4cddb5

func bareHTTPClient(f *cmdutil.Factory, version string) func() (*http.Client, error) {
return func() (*http.Client, error) {
cfg, err := f.Config()
if err != nil {
return nil, err
}
opts := api.HTTPClientOptions{
AppVersion: version,
Config: cfg.Authentication(),
Log: f.IOStreams.ErrOut,
LogColorize: f.IOStreams.ColorEnabled(),
SkipAcceptHeaders: true,
}
return api.NewHTTPClient(opts)
}
}

So, we need a way that commands like gh api can the cmdutil.Factory that the http.Client needs LogVerboseHTTP set differently.

Does that make sense?

@JunNishimura
Copy link
Contributor Author

@andyfeller

How extensive do you envision adding verbose logging to be?

At this stage, it is assumed that verbose logging will be added only for gh api command. However, it is possible that there will be requests to add verbose logging to other commands in the future, so it will be desirable to implement it in a versatile way.

we need a way that commands like gh api can the cmdutil.Factory that the http.Client needs LogVerboseHTTP set differently.

I assume that the implementation is to add the method to the Factory struct to set LogVerboseHTTP differently, is that correct?

@andyfeller
Copy link
Member

At this stage, it is assumed that verbose logging will be added only for gh api command. However, it is possible that there will be requests to add verbose logging to other commands in the future, so it will be desirable to implement it in a versatile way.

I appreciate you having the same mindset as we have been discussing about how this work might apply to other commands in the future. 🙇

I assume that the implementation is to add the method to the Factory struct to set LogVerboseHTTP differently, is that correct?

Yeah, that is line of thought I was working through.

If api.NewHTTPClient() assumes api.HTTPClientOptions.LogVerboseHTTP is the only thing determining whether verbose logging is needed, then the func() (*http.Client, error) functions would need to check the environment for a global setting or something else for a command-specific flag.

Changing the func() (*http.Client, error) to accept an argument for LogVerboseHTTP would be problematic given everywhere it is used for generating a http.Client.

Instead, the simplest idea I can consider would be:

  1. Add LogVerboseHTTP to cmdutil.Factory struct
  2. Update cmd.factory.httpClientFunc() to set api.HTTPClientOptions.LogVerboseHTTP based on checking utils.IsDebugEnabled() value with f.LogVerboseHTTP
  3. Update root.bareHTTPClient() with the same logic
  4. Update api.NewHTTPClient() to only check opts.HTTPClientOptions.LogVerboseHTTP

Hopefully this puts us in a place where we can update other commands to signal verbose logging from a flag or globally with only the 2 places we're facilitating api.HttpClient generation.

What do you think about that?

Again, thank you for your patience working through this PR! 🫂

@JunNishimura
Copy link
Contributor Author

@andyfeller
Thank you for the detailed explanation. I agree with your idea.

I've followed your ideas and implemented them, but there is one point I would like to ask.

I assign opts.LogVerboseHTTP to factory.LogVerboseHTTP in RunE (not in apiRun function) as follows. Do you see any issues with this implementation?

cli/pkg/cmd/api/api.go

Lines 221 to 223 in 5f465c9

if c.Flags().Changed("verbose") {
f.LogVerboseHTTP = opts.LogVerboseHTTP
}

@samcoe
Copy link
Contributor

samcoe commented Aug 21, 2023

@andyfeller @JunNishimura Appreciate your work getting this feature implemented. There has been quiet a bit of back and forth on correct ways to implement this due to how connected the uses of http.Client are throughout our codebase. As it stands now I feel like this implementation has a bit too far reaching of an impact for the small feature we are trying to add. I have an alternative idea that I would like to implement, it is a bit complicated to describe though, so if no one minds I can push a commit on top of the work already done?

@JunNishimura
Copy link
Contributor Author

@samcoe
Thanks for the message and contribution.

If there is a better approach, I would prefer that. So I am open to adopt your approach👍

@samcoe samcoe self-assigned this Aug 25, 2023
@samcoe samcoe merged commit 508065b into cli:trunk Aug 25, 2023
@JunNishimura JunNishimura deleted the add-verbose-flag-to-api-cmd branch August 25, 2023 17:03
harveysanders added a commit to harveysanders/cli that referenced this pull request Sep 2, 2023
* 'trunk' of github.com:cli/cli:
  Add JSON output flags to workflow list command (cli#7902)
  Add config clear-cache command (cli#7693)
  Allow --disable-wiki flag with --template flag in repo create command (cli#7886)
  Reword token invalid message (cli#7906)
  🐛 (repo create)execute clone when readme option is enabled (cli#7837)
  Use go-gh prompter package (cli#7896)
  pr checks return distinct exit code for PENDING checks (cli#7866)
  Properly rename remote for GHES hosts (cli#7890)
  Add verbose flag to api cmd (cli#7826)
  Fix up Nix installation instructions (cli#7891)
renovate bot referenced this pull request in scottames/dots Sep 13, 2023
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [aquaproj/aqua-registry](https://togithub.com/aquaproj/aqua-registry)
| minor | `v4.43.0` -> `v4.48.0` |
| [cli/cli](https://togithub.com/cli/cli) | minor | `v2.33.0` ->
`v2.34.0` |
| [kevincobain2000/gobrew](https://togithub.com/kevincobain2000/gobrew)
| minor | `v1.8.7` -> `v1.9.0` |
|
[terraform-linters/tflint](https://togithub.com/terraform-linters/tflint)
| minor | `v0.47.0` -> `v0.48.0` |
| [twpayne/chezmoi](https://togithub.com/twpayne/chezmoi) | minor |
`v2.38.0` -> `v2.39.1` |
| [weaveworks/eksctl](https://togithub.com/weaveworks/eksctl) | minor |
`v0.155.0` -> `v0.156.0` |

---

### Release Notes

<details>
<summary>aquaproj/aqua-registry (aquaproj/aqua-registry)</summary>

###
[`v4.48.0`](https://togithub.com/aquaproj/aqua-registry/releases/tag/v4.48.0)

[Compare
Source](https://togithub.com/aquaproj/aqua-registry/compare/v4.47.0...v4.48.0)


[Issues](https://togithub.com/aquaproj/aqua-registry/issues?q=is%3Aissue+milestone%3Av4.48.0)
| [Pull
Requests](https://togithub.com/aquaproj/aqua-registry/pulls?q=is%3Apr+milestone%3Av4.48.0)
| aquaproj/aqua-registry@v4.47.0...v4.48.0

#### 🎉 New Packages


[#&#8203;15348](https://togithub.com/aquaproj/aqua-registry/issues/15348)
[go-to-k/cls3](https://togithub.com/go-to-k/cls3): The CLI tool "cls3"
is to CLear S3 Buckets. It empties (so deletes all objects and
versions/delete-markers in) S3 Buckets or deletes the buckets themselves
[@&#8203;ponkio-o](https://togithub.com/ponkio-o)

[#&#8203;15347](https://togithub.com/aquaproj/aqua-registry/issues/15347)
[go-to-k/delstack](https://togithub.com/go-to-k/delstack): CLI tool to
force delete the entire AWS CloudFormation stack, even if it contains
resources that fail to delete by the CloudFormation delete operation
[@&#8203;ponkio-o](https://togithub.com/ponkio-o)

#### Fixes


[#&#8203;15346](https://togithub.com/aquaproj/aqua-registry/issues/15346)
eza-community/eza: Follow up changes of eza
[v0.11.1](https://togithub.com/eza-community/eza/releases/tag/v0.11.1)

###
[`v4.47.0`](https://togithub.com/aquaproj/aqua-registry/releases/tag/v4.47.0)

[Compare
Source](https://togithub.com/aquaproj/aqua-registry/compare/v4.46.0...v4.47.0)


[Issues](https://togithub.com/aquaproj/aqua-registry/issues?q=is%3Aissue+milestone%3Av4.47.0)
| [Pull
Requests](https://togithub.com/aquaproj/aqua-registry/pulls?q=is%3Apr+milestone%3Av4.47.0)
| aquaproj/aqua-registry@v4.46.0...v4.47.0

#### 🎉 New Packages


[#&#8203;15293](https://togithub.com/aquaproj/aqua-registry/issues/15293)
[dev.yorhel.nl/ncdu](https://dev.yorhel.nl/ncdu): Ncdu is a disk usage
analyzer with an ncurses interface
[@&#8203;4513ECHO](https://togithub.com/4513ECHO)

[#&#8203;15291](https://togithub.com/aquaproj/aqua-registry/issues/15291)
[#&#8203;15292](https://togithub.com/aquaproj/aqua-registry/issues/15292)
[eza-community/eza](https://togithub.com/eza-community/eza): A modern,
maintained replacement for ls
[@&#8203;4513ECHO](https://togithub.com/4513ECHO)

[#&#8203;15296](https://togithub.com/aquaproj/aqua-registry/issues/15296)
[fujiwara/greenlight](https://togithub.com/fujiwara/greenlight):
greenlight is a graceful health check agent
[@&#8203;ponkio-o](https://togithub.com/ponkio-o)

###
[`v4.46.0`](https://togithub.com/aquaproj/aqua-registry/releases/tag/v4.46.0)

[Compare
Source](https://togithub.com/aquaproj/aqua-registry/compare/v4.45.0...v4.46.0)


[Issues](https://togithub.com/aquaproj/aqua-registry/issues?q=is%3Aissue+milestone%3Av4.46.0)
| [Pull
Requests](https://togithub.com/aquaproj/aqua-registry/pulls?q=is%3Apr+milestone%3Av4.46.0)
| aquaproj/aqua-registry@v4.45.0...v4.46.0

#### 🎉 New Packages


[#&#8203;15274](https://togithub.com/aquaproj/aqua-registry/issues/15274)
[aws/session-manager-plugin](https://togithub.com/aws/session-manager-plugin):
This plugin helps you to use the AWS Command Line Interface (AWS CLI) to
start and end sessions to your managed instances
[@&#8203;ponkio-o](https://togithub.com/ponkio-o)

#### Fixes


[#&#8203;15290](https://togithub.com/aquaproj/aqua-registry/issues/15290)
Rename the package `weaveworks/eksctl` to `eksctl-io/eksctl`
[@&#8203;mikutas](https://togithub.com/mikutas)

https://github.com/weaveworks/eksctl is redirected to
https://github.com/eksctl-io/eksctl .

[Weaveworks and AWS Collaborate to Enhance the Official CLI for EKS
(eksctl)](https://www.weave.works/blog/weaveworks-and-aws-collaborate-to-enhance-the-open-source-eks-cli)

###
[`v4.45.0`](https://togithub.com/aquaproj/aqua-registry/releases/tag/v4.45.0)

[Compare
Source](https://togithub.com/aquaproj/aqua-registry/compare/v4.44.3...v4.45.0)


[Issues](https://togithub.com/aquaproj/aqua-registry/issues?q=is%3Aissue+milestone%3Av4.45.0)
| [Pull
Requests](https://togithub.com/aquaproj/aqua-registry/pulls?q=is%3Apr+milestone%3Av4.45.0)
| aquaproj/aqua-registry@v4.44.3...v4.45.0

#### 🎉 New Packages


[#&#8203;15261](https://togithub.com/aquaproj/aqua-registry/issues/15261)
[go-to-k/lamver](https://togithub.com/go-to-k/lamver): CLI tool to
search AWS Lambda runtime and versions across regions

[#&#8203;15263](https://togithub.com/aquaproj/aqua-registry/issues/15263)
[okta/okta-aws-cli](https://togithub.com/okta/okta-aws-cli): A CLI for
having Okta as the IdP for AWS CLI operations
[@&#8203;ponkio-o](https://togithub.com/ponkio-o)

###
[`v4.44.3`](https://togithub.com/aquaproj/aqua-registry/releases/tag/v4.44.3)

[Compare
Source](https://togithub.com/aquaproj/aqua-registry/compare/v4.44.2...v4.44.3)


[Issues](https://togithub.com/aquaproj/aqua-registry/issues?q=is%3Aissue+milestone%3Av4.44.3)
| [Pull
Requests](https://togithub.com/aquaproj/aqua-registry/pulls?q=is%3Apr+milestone%3Av4.44.3)
| aquaproj/aqua-registry@v4.44.2...v4.44.3

#### Fixes


[#&#8203;15242](https://togithub.com/aquaproj/aqua-registry/issues/15242)
fix(jqlang/jq): Optimize version_overrides and recover the alias
`stedolan/jq` [@&#8203;4513ECHO](https://togithub.com/4513ECHO)

###
[`v4.44.2`](https://togithub.com/aquaproj/aqua-registry/releases/tag/v4.44.2)

[Compare
Source](https://togithub.com/aquaproj/aqua-registry/compare/v4.44.1...v4.44.2)


[Issues](https://togithub.com/aquaproj/aqua-registry/issues?q=is%3Aissue+milestone%3Av4.44.2)
| [Pull
Requests](https://togithub.com/aquaproj/aqua-registry/pulls?q=is%3Apr+milestone%3Av4.44.2)
| aquaproj/aqua-registry@v4.44.1...v4.44.2

#### Fixes


[#&#8203;15230](https://togithub.com/aquaproj/aqua-registry/issues/15230)
getsops/sops: Rename the package `mozilla/sops` to `getsops/sops`
[@&#8203;natemccurdy](https://togithub.com/natemccurdy)

The repository [mozilla/sops](https://togithub.com/mozilla/sops) was
transferred to [getsops/sops](https://togithub.com/getsops/sops).


[#&#8203;15233](https://togithub.com/aquaproj/aqua-registry/issues/15233)
jqlang/jq: Follow up changes of jq 1.7

#### 🎉 New Contributors 🎉

Thank you for your contribution!

[@&#8203;natemccurdy](https://togithub.com/natemccurdy)
[#&#8203;15230](https://togithub.com/aquaproj/aqua-registry/issues/15230)

###
[`v4.44.1`](https://togithub.com/aquaproj/aqua-registry/releases/tag/v4.44.1)

[Compare
Source](https://togithub.com/aquaproj/aqua-registry/compare/v4.44.0...v4.44.1)


[Issues](https://togithub.com/aquaproj/aqua-registry/issues?q=is%3Aissue+milestone%3Av4.44.1)
| [Pull
Requests](https://togithub.com/aquaproj/aqua-registry/pulls?q=is%3Apr+milestone%3Av4.44.1)
| aquaproj/aqua-registry@v4.44.0...v4.44.1

#### Fixes


[#&#8203;15165](https://togithub.com/aquaproj/aqua-registry/issues/15165)
Rename packages b4b4r07/\* to babarot/\*

The GitHub User was renamed.

-   https://github.com/b4b4r07
-   https://github.com/babarot

###
[`v4.44.0`](https://togithub.com/aquaproj/aqua-registry/releases/tag/v4.44.0)

[Compare
Source](https://togithub.com/aquaproj/aqua-registry/compare/v4.43.1...v4.44.0)


[Issues](https://togithub.com/aquaproj/aqua-registry/issues?q=is%3Aissue+milestone%3Av4.44.0)
| [Pull
Requests](https://togithub.com/aquaproj/aqua-registry/pulls?q=is%3Apr+milestone%3Av4.44.0)
| aquaproj/aqua-registry@v4.43.1...v4.44.0

#### 🎉 New Packages


[#&#8203;15122](https://togithub.com/aquaproj/aqua-registry/issues/15122)
[theurichde/go-aws-sso](https://togithub.com/theurichde/go-aws-sso):
Makes dealing with AWS SSO Logins an ease
[@&#8203;ponkio-o](https://togithub.com/ponkio-o)

###
[`v4.43.1`](https://togithub.com/aquaproj/aqua-registry/releases/tag/v4.43.1)

[Compare
Source](https://togithub.com/aquaproj/aqua-registry/compare/v4.43.0...v4.43.1)


[Issues](https://togithub.com/aquaproj/aqua-registry/issues?q=is%3Aissue+milestone%3Av4.43.1)
| [Pull
Requests](https://togithub.com/aquaproj/aqua-registry/pulls?q=is%3Apr+milestone%3Av4.43.1)
| aquaproj/aqua-registry@v4.43.0...v4.43.1

##### Fixes


[#&#8203;15106](https://togithub.com/aquaproj/aqua-registry/issues/15106)
aquasecurity/tfsec: Support old versions

[#&#8203;15073](https://togithub.com/aquaproj/aqua-registry/issues/15073)
johnkerl/miller: Follow up changes of miller v6.9.0

assets were renamed.
[https://github.com/aquaproj/aqua-registry/pull/15046#issuecomment-1702170214](https://togithub.com/aquaproj/aqua-registry/pull/15046#issuecomment-1702170214)


[#&#8203;15021](https://togithub.com/aquaproj/aqua-registry/issues/15021)
Rename the package `acorn-io/acorn` to `acorn-io/runtime`

The repository was transferred.

https://github.com/acorn-io/acorn is redirected to
https://github.com/acorn-io/runtime


[#&#8203;15019](https://togithub.com/aquaproj/aqua-registry/issues/15019)
telepresenceio/telepresence: Change the package type to `github_release`

</details>

<details>
<summary>cli/cli (cli/cli)</summary>

### [`v2.34.0`](https://togithub.com/cli/cli/releases/tag/v2.34.0):
GitHub CLI 2.34.0

[Compare Source](https://togithub.com/cli/cli/compare/v2.33.0...v2.34.0)

#### What's New

- `api`: Add `--verbose` flag by
[@&#8203;JunNishimura](https://togithub.com/JunNishimura) in
[https://github.com/cli/cli/pull/7826](https://togithub.com/cli/cli/pull/7826)
- `config clear-cache`: New command to clear the cli cache by
[@&#8203;ffalor](https://togithub.com/ffalor) in
[https://github.com/cli/cli/pull/7693](https://togithub.com/cli/cli/pull/7693)
- `workflow list`: Add `--json`, `--jq` and `--template` flags by
[@&#8203;rajhawaldar](https://togithub.com/rajhawaldar) in
[https://github.com/cli/cli/pull/7902](https://togithub.com/cli/cli/pull/7902)
- `project mark-template`: New command to control project template
options by [@&#8203;mntlty](https://togithub.com/mntlty) in
[https://github.com/cli/cli/pull/7916](https://togithub.com/cli/cli/pull/7916)
[https://github.com/cli/cli/pull/7923](https://togithub.com/cli/cli/pull/7923)

#### What's Changed

- `docs`: Fix Nix/NixOS install docs by
[@&#8203;junaga](https://togithub.com/junaga) in
[https://github.com/cli/cli/pull/7891](https://togithub.com/cli/cli/pull/7891)
- `repo rename`: Properly rename remote for GHES hosts by
[@&#8203;samcoe](https://togithub.com/samcoe) in
[https://github.com/cli/cli/pull/7890](https://togithub.com/cli/cli/pull/7890)
- `pr checks`: Return different exit code for PENDING vs FAILED by
[@&#8203;rajhawaldar](https://togithub.com/rajhawaldar) in
[https://github.com/cli/cli/pull/7866](https://togithub.com/cli/cli/pull/7866)
- `repo create`: Execute clone when readme option is enabled by
[@&#8203;shion1305](https://togithub.com/shion1305) in
[https://github.com/cli/cli/pull/7837](https://togithub.com/cli/cli/pull/7837)
- `repo create`: Allow `--disable-wiki` flag with `--template` flag by
[@&#8203;utouto97](https://togithub.com/utouto97) in
[https://github.com/cli/cli/pull/7886](https://togithub.com/cli/cli/pull/7886)
- `auth status`: Reword token invalid message by
[@&#8203;kousikmitra](https://togithub.com/kousikmitra) in
[https://github.com/cli/cli/pull/7906](https://togithub.com/cli/cli/pull/7906)
- `status`: Show status even if a comment 404s by
[@&#8203;rwe](https://togithub.com/rwe) in
[https://github.com/cli/cli/pull/7873](https://togithub.com/cli/cli/pull/7873)
- `run view`: Fetch all run jobs by
[@&#8203;harveysanders](https://togithub.com/harveysanders) in
[https://github.com/cli/cli/pull/7879](https://togithub.com/cli/cli/pull/7879)
- Use go-gh prompter package by
[@&#8203;samcoe](https://togithub.com/samcoe) in
[https://github.com/cli/cli/pull/7896](https://togithub.com/cli/cli/pull/7896)
- Add formula-path to homebrew-bump step by
[@&#8203;williammartin](https://togithub.com/williammartin) in
[https://github.com/cli/cli/pull/7930](https://togithub.com/cli/cli/pull/7930)
- build(deps): bump actions/checkout from 3 to 4 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/cli/cli/pull/7937](https://togithub.com/cli/cli/pull/7937)

#### New Contributors

- [@&#8203;junaga](https://togithub.com/junaga) made their first
contribution in
[https://github.com/cli/cli/pull/7891](https://togithub.com/cli/cli/pull/7891)
- [@&#8203;utouto97](https://togithub.com/utouto97) made their first
contribution in
[https://github.com/cli/cli/pull/7886](https://togithub.com/cli/cli/pull/7886)
- [@&#8203;rwe](https://togithub.com/rwe) made their first contribution
in
[https://github.com/cli/cli/pull/7873](https://togithub.com/cli/cli/pull/7873)

**Full Changelog**: cli/cli@v2.33.0...v2.34.0

</details>

<details>
<summary>kevincobain2000/gobrew (kevincobain2000/gobrew)</summary>

###
[`v1.9.0`](https://togithub.com/kevincobain2000/gobrew/releases/tag/v1.9.0)

[Compare
Source](https://togithub.com/kevincobain2000/gobrew/compare/v1.8.9...v1.9.0)

#### Changelog

-
[`10c5b48`](https://togithub.com/kevincobain2000/gobrew/commit/10c5b48)
Merge pull request
[#&#8203;130](https://togithub.com/kevincobain2000/gobrew/issues/130)
from kevincobain2000/status-code
-
[`e21e4c3`](https://togithub.com/kevincobain2000/gobrew/commit/e21e4c3)
Merge pull request
[#&#8203;131](https://togithub.com/kevincobain2000/gobrew/issues/131)
from kevincobain2000/limit-versions
-
[`2675532`](https://togithub.com/kevincobain2000/gobrew/commit/2675532)
feat: check statusCode from response
-
[`2505d29`](https://togithub.com/kevincobain2000/gobrew/commit/2505d29)
feat: do not print blacklisted versions

###
[`v1.8.9`](https://togithub.com/kevincobain2000/gobrew/releases/tag/v1.8.9)

[Compare
Source](https://togithub.com/kevincobain2000/gobrew/compare/v1.8.8...v1.8.9)

#### Changelog

-
[`6d9a33b`](https://togithub.com/kevincobain2000/gobrew/commit/6d9a33b)
Merge pull request
[#&#8203;125](https://togithub.com/kevincobain2000/gobrew/issues/125)
from kevincobain2000/version_match
-
[`ca774a8`](https://togithub.com/kevincobain2000/gobrew/commit/ca774a8)
Merge pull request
[#&#8203;126](https://togithub.com/kevincobain2000/gobrew/issues/126)
from kevincobain2000/versions
-
[`7f5a2ec`](https://togithub.com/kevincobain2000/gobrew/commit/7f5a2ec)
fix: check version before changing
-
[`cc35d7b`](https://togithub.com/kevincobain2000/gobrew/commit/cc35d7b)
fix: goreleaser config for gobrew version

###
[`v1.8.8`](https://togithub.com/kevincobain2000/gobrew/releases/tag/v1.8.8)

[Compare
Source](https://togithub.com/kevincobain2000/gobrew/compare/v1.8.7...v1.8.8)

#### Changelog

-
[`46f21db`](https://togithub.com/kevincobain2000/gobrew/commit/46f21db)
(ci) coveritup metrics
-
[`f1834c5`](https://togithub.com/kevincobain2000/gobrew/commit/f1834c5)
(ci) gosec install
-
[`5dd6379`](https://togithub.com/kevincobain2000/gobrew/commit/5dd6379)
(ci) gosec issues
-
[`ef5a09d`](https://togithub.com/kevincobain2000/gobrew/commit/ef5a09d)
(ci) links updated
-
[`64a22ea`](https://togithub.com/kevincobain2000/gobrew/commit/64a22ea)
(ci) missing deps and version
-
[`ee5aeb4`](https://togithub.com/kevincobain2000/gobrew/commit/ee5aeb4)
(ci) strategy
-
[`107bd0f`](https://togithub.com/kevincobain2000/gobrew/commit/107bd0f)
(embed) link updated
-
[`0241c56`](https://togithub.com/kevincobain2000/gobrew/commit/0241c56)
Merge pull request
[#&#8203;116](https://togithub.com/kevincobain2000/gobrew/issues/116)
from kevincobain2000/develop
-
[`eb5a14c`](https://togithub.com/kevincobain2000/gobrew/commit/eb5a14c)
Merge pull request
[#&#8203;117](https://togithub.com/kevincobain2000/gobrew/issues/117)
from kevincobain2000/develop
-
[`053f982`](https://togithub.com/kevincobain2000/gobrew/commit/053f982)
Merge pull request
[#&#8203;120](https://togithub.com/kevincobain2000/gobrew/issues/120)
from kevincobain2000/develop
-
[`29348d7`](https://togithub.com/kevincobain2000/gobrew/commit/29348d7)
Merge pull request
[#&#8203;122](https://togithub.com/kevincobain2000/gobrew/issues/122)
from kevincobain2000/refactoring
-
[`61edf64`](https://togithub.com/kevincobain2000/gobrew/commit/61edf64)
Update README.md
-
[`91dbe02`](https://togithub.com/kevincobain2000/gobrew/commit/91dbe02)
feat: improvement of tests
-
[`27ba27c`](https://togithub.com/kevincobain2000/gobrew/commit/27ba27c)
feat: update actions/checkout v2 -> v4
-
[`eb4ef09`](https://togithub.com/kevincobain2000/gobrew/commit/eb4ef09)
feat: use CheckError for handling errors
-
[`9fdc3a4`](https://togithub.com/kevincobain2000/gobrew/commit/9fdc3a4)
feat: use gookit/color for printing
-
[`c8abc38`](https://togithub.com/kevincobain2000/gobrew/commit/c8abc38)
feat: use gookit/color for printing

</details>

<details>
<summary>terraform-linters/tflint (terraform-linters/tflint)</summary>

###
[`v0.48.0`](https://togithub.com/terraform-linters/tflint/releases/tag/v0.48.0)

[Compare
Source](https://togithub.com/terraform-linters/tflint/compare/v0.47.0...v0.48.0)

##### What's Changed

##### Breaking Changes

- Bump tflint-plugin-sdk to v0.18.0 by
[@&#8203;wata727](https://togithub.com/wata727) in
[https://github.com/terraform-linters/tflint/pull/1813](https://togithub.com/terraform-linters/tflint/pull/1813)
- This change causes the deprecated `IncludeNotCreated` option to be
ignored. Most plugin users will not be affected.

##### BugFixes

- langserver: Trap os.Interrupt and syscall.SIGTERM by
[@&#8203;wata727](https://togithub.com/wata727) in
[https://github.com/terraform-linters/tflint/pull/1809](https://togithub.com/terraform-linters/tflint/pull/1809)
- Bump github.com/hashicorp/hcl to v2.18.0 by
[@&#8203;wata727](https://togithub.com/wata727) in
[https://github.com/terraform-linters/tflint/pull/1833](https://togithub.com/terraform-linters/tflint/pull/1833)
- tflint: Allow commas with spaces in annotations by
[@&#8203;wata727](https://togithub.com/wata727) in
[https://github.com/terraform-linters/tflint/pull/1834](https://togithub.com/terraform-linters/tflint/pull/1834)

##### Chores

- build(deps): Bump alpine from 3.18.0 to 3.18.2 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/terraform-linters/tflint/pull/1784](https://togithub.com/terraform-linters/tflint/pull/1784)
- build(deps): Bump google.golang.org/grpc from 1.55.0 to 1.56.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/terraform-linters/tflint/pull/1785](https://togithub.com/terraform-linters/tflint/pull/1785)
- build(deps): Bump golang.org/x/oauth2 from 0.8.0 to 0.9.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/terraform-linters/tflint/pull/1786](https://togithub.com/terraform-linters/tflint/pull/1786)
- build(deps): Bump sigstore/cosign-installer from 3.0.5 to 3.1.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/terraform-linters/tflint/pull/1792](https://togithub.com/terraform-linters/tflint/pull/1792)
- build(deps): Bump google.golang.org/grpc from 1.56.0 to 1.56.1 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/terraform-linters/tflint/pull/1793](https://togithub.com/terraform-linters/tflint/pull/1793)
- build(deps): Bump sigstore/cosign-installer from 3.1.0 to 3.1.1 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/terraform-linters/tflint/pull/1798](https://togithub.com/terraform-linters/tflint/pull/1798)
- Remove hard-coded versions from integration tests by
[@&#8203;wata727](https://togithub.com/wata727) in
[https://github.com/terraform-linters/tflint/pull/1799](https://togithub.com/terraform-linters/tflint/pull/1799)
- build(deps): Bump golang.org/x/text from 0.10.0 to 0.11.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/terraform-linters/tflint/pull/1806](https://togithub.com/terraform-linters/tflint/pull/1806)
- build(deps): Bump golang.org/x/crypto from 0.10.0 to 0.11.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/terraform-linters/tflint/pull/1804](https://togithub.com/terraform-linters/tflint/pull/1804)
- build(deps): Bump golang.org/x/oauth2 from 0.9.0 to 0.10.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/terraform-linters/tflint/pull/1803](https://togithub.com/terraform-linters/tflint/pull/1803)
- build(deps): Bump google.golang.org/grpc from 1.56.1 to 1.56.2 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/terraform-linters/tflint/pull/1805](https://togithub.com/terraform-linters/tflint/pull/1805)
- Remove obsoleted PGP public key by
[@&#8203;wata727](https://togithub.com/wata727) in
[https://github.com/terraform-linters/tflint/pull/1800](https://togithub.com/terraform-linters/tflint/pull/1800)
- Add make release for release automation by
[@&#8203;wata727](https://togithub.com/wata727) in
[https://github.com/terraform-linters/tflint/pull/1802](https://togithub.com/terraform-linters/tflint/pull/1802)
- build(deps): Bump google.golang.org/grpc from 1.56.2 to 1.57.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/terraform-linters/tflint/pull/1815](https://togithub.com/terraform-linters/tflint/pull/1815)
- build(deps): Bump golang.org/x/crypto from 0.11.0 to 0.12.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/terraform-linters/tflint/pull/1820](https://togithub.com/terraform-linters/tflint/pull/1820)
- build(deps): Bump golang.org/x/text from 0.11.0 to 0.12.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/terraform-linters/tflint/pull/1821](https://togithub.com/terraform-linters/tflint/pull/1821)
- build(deps): Bump golang.org/x/oauth2 from 0.10.0 to 0.11.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/terraform-linters/tflint/pull/1822](https://togithub.com/terraform-linters/tflint/pull/1822)
- deps: upgrade to use go1.21 by
[@&#8203;chenrui333](https://togithub.com/chenrui333) in
[https://github.com/terraform-linters/tflint/pull/1823](https://togithub.com/terraform-linters/tflint/pull/1823)
- build(deps): Bump github.com/google/uuid from 1.3.0 to 1.3.1 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/terraform-linters/tflint/pull/1829](https://togithub.com/terraform-linters/tflint/pull/1829)
- build(deps): Bump golangci/golangci-lint-action from 3.6.0 to 3.7.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/terraform-linters/tflint/pull/1830](https://togithub.com/terraform-linters/tflint/pull/1830)

**Full Changelog**:
terraform-linters/tflint@v0.47.0...v0.48.0

</details>

<details>
<summary>twpayne/chezmoi (twpayne/chezmoi)</summary>

###
[`v2.39.1`](https://togithub.com/twpayne/chezmoi/releases/tag/v2.39.1)

[Compare
Source](https://togithub.com/twpayne/chezmoi/compare/v2.39.0...v2.39.1)

#### Changelog

##### Fixes

- [`46e13ed`](https://togithub.com/twpayne/chezmoi/commit/46e13edd) fix:
Ensure default template data when reading .chezmoidata in subdir

##### Documentation updates

- [`fe10a69`](https://togithub.com/twpayne/chezmoi/commit/fe10a696)
docs: Improve developer experience under fish
- [`5b738bd`](https://togithub.com/twpayne/chezmoi/commit/5b738bde)
docs: Fix documentation on dirs vs content in .chezmoiignore

###
[`v2.39.0`](https://togithub.com/twpayne/chezmoi/releases/tag/v2.39.0)

[Compare
Source](https://togithub.com/twpayne/chezmoi/compare/v2.38.0...v2.39.0)

#### Changelog

##### Features

- [`acb8937`](https://togithub.com/twpayne/chezmoi/commit/acb89370)
feat: add .chezmoi.targetFile template variable
- [`205fd6c`](https://togithub.com/twpayne/chezmoi/commit/205fd6c5)
feat: Add age command
- [`f6947d3`](https://togithub.com/twpayne/chezmoi/commit/f6947d39)
feat: Add bitwardenSecrets template function

##### Fixes

- [`40b711d`](https://togithub.com/twpayne/chezmoi/commit/40b711d1) fix:
Handle .chezmoidata files in subdirectories when template has already
been executed
- [`6fa4fe4`](https://togithub.com/twpayne/chezmoi/commit/6fa4fe40) fix:
Update goreleaser changelog

##### Documentation updates

- [`a89e0e0`](https://togithub.com/twpayne/chezmoi/commit/a89e0e08)
docs: Tweak location of private key in age onetime passphrase how-to
- [`da9f3c6`](https://togithub.com/twpayne/chezmoi/commit/da9f3c63)
docs: Use age command in onetime passphrase how-to
- [`fe903d4`](https://togithub.com/twpayne/chezmoi/commit/fe903d4b)
docs: Minor expansion of application order docs
- [`02ffbd7`](https://togithub.com/twpayne/chezmoi/commit/02ffbd76)
docs: Add link to article

</details>

<details>
<summary>weaveworks/eksctl (weaveworks/eksctl)</summary>

###
[`v0.156.0`](https://togithub.com/eksctl-io/eksctl/releases/tag/v0.156.0):
eksctl 0.156.0 (permalink)

[Compare
Source](https://togithub.com/weaveworks/eksctl/compare/0.155.0...0.156.0)

### Release v0.156.0

#### 🚀 Features

- Adopters for eksctl
([#&#8203;7027](https://togithub.com/weaveworks/eksctl/issues/7027))

#### 🐛 Bug Fixes

- Cleanup subnets with invalid AZs before importing VPC from CFN stack
([#&#8203;6935](https://togithub.com/weaveworks/eksctl/issues/6935))

#### 🧰 Maintenance

- Bump dependencies
([#&#8203;7025](https://togithub.com/weaveworks/eksctl/issues/7025))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "after 4pm on thursday" in timezone
America/Los_Angeles, Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR is behind base branch, or you tick the
rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config help](https://togithub.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/scottames/dots).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNi44My4wIiwidXBkYXRlZEluVmVyIjoiMzYuODMuMCIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

external pull request originating outside of the CLI core team

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants