Repository navigation
feat: add json output for gh pr checks - #9079
Conversation
gh pr checks
In order to filter json fields, the `ExportData` interface needed to be implemented with logic that iterated on the selected fields.
andyfeller
left a comment
There was a problem hiding this comment.
Thank you again, @nobe4, for your contribution! ❤️
[](https://renovatebot.com) This PR contains the following updates: | Package | Update | Change | |---|---|---| | [cli/cli](https://togithub.com/cli/cli) | minor | `v2.49.2` -> `v2.50.0` | --- ### Release Notes <details> <summary>cli/cli (cli/cli)</summary> ### [`v2.50.0`](https://togithub.com/cli/cli/releases/tag/v2.50.0): GitHub CLI 2.50.0 [Compare Source](https://togithub.com/cli/cli/compare/v2.49.2...v2.50.0) #### What's Changed - Refactor git credential flow code by [@​williammartin](https://togithub.com/williammartin) in [https://github.com/cli/cli/pull/9089](https://togithub.com/cli/cli/pull/9089) - feat: add json output for `gh pr checks` by [@​nobe4](https://togithub.com/nobe4) in [https://github.com/cli/cli/pull/9079](https://togithub.com/cli/cli/pull/9079) - Rework first auth tests with new gitcredential abstractions by [@​williammartin](https://togithub.com/williammartin) in [https://github.com/cli/cli/pull/9095](https://togithub.com/cli/cli/pull/9095) - list the various alias permutations for the command and subcommands, via '--help' and 'gh reference' by [@​gabemontero](https://togithub.com/gabemontero) in [https://github.com/cli/cli/pull/8824](https://togithub.com/cli/cli/pull/8824) - Removed tty message when checking for extension upgrades by [@​leevic31](https://togithub.com/leevic31) in [https://github.com/cli/cli/pull/9088](https://togithub.com/cli/cli/pull/9088) - Fix doc bug for gh run watch by [@​jasonodonnell](https://togithub.com/jasonodonnell) in [https://github.com/cli/cli/pull/9052](https://togithub.com/cli/cli/pull/9052) - feat: add support for stateReason in `gh pr view` by [@​nobe4](https://togithub.com/nobe4) in [https://github.com/cli/cli/pull/9080](https://togithub.com/cli/cli/pull/9080) - fix: rename the `Attempts` field to `Attempt`; expose in `gh run view` and `gh run ls` by [@​cawfeecake](https://togithub.com/cawfeecake) in [https://github.com/cli/cli/pull/8905](https://togithub.com/cli/cli/pull/8905) - Update regex in changedFilesNames to handle quoted paths by [@​anda3](https://togithub.com/anda3) in [https://github.com/cli/cli/pull/9115](https://togithub.com/cli/cli/pull/9115) - Add a `gh variable get FOO` command by [@​arnested](https://togithub.com/arnested) in [https://github.com/cli/cli/pull/9106](https://togithub.com/cli/cli/pull/9106) - Add macOS pkg installer to deployment ([#​7554](https://togithub.com/cli/cli/issues/7554)) by [@​paulober](https://togithub.com/paulober) in [https://github.com/cli/cli/pull/7555](https://togithub.com/cli/cli/pull/7555) - Add integration tests for `gh attestation verify` shared workflow use case by [@​malancas](https://togithub.com/malancas) in [https://github.com/cli/cli/pull/9107](https://togithub.com/cli/cli/pull/9107) - Add build provenance for gh CLI releases by [@​malancas](https://togithub.com/malancas) in [https://github.com/cli/cli/pull/9087](https://togithub.com/cli/cli/pull/9087) - build(deps): bump github.com/gabriel-vasile/mimetype from 1.4.3 to 1.4.4 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/cli/cli/pull/9124](https://togithub.com/cli/cli/pull/9124) - Build completions during release on macos by [@​williammartin](https://togithub.com/williammartin) in [https://github.com/cli/cli/pull/9136](https://togithub.com/cli/cli/pull/9136) - Clarify Mac OS Installer packages are unsigned by [@​andyfeller](https://togithub.com/andyfeller) in [https://github.com/cli/cli/pull/9140](https://togithub.com/cli/cli/pull/9140) #### New Contributors - [@​gabemontero](https://togithub.com/gabemontero) made their first contribution in [https://github.com/cli/cli/pull/8824](https://togithub.com/cli/cli/pull/8824) - [@​jasonodonnell](https://togithub.com/jasonodonnell) made their first contribution in [https://github.com/cli/cli/pull/9052](https://togithub.com/cli/cli/pull/9052) - [@​anda3](https://togithub.com/anda3) made their first contribution in [https://github.com/cli/cli/pull/9115](https://togithub.com/cli/cli/pull/9115) - [@​arnested](https://togithub.com/arnested) made their first contribution in [https://github.com/cli/cli/pull/9106](https://togithub.com/cli/cli/pull/9106) - [@​paulober](https://togithub.com/paulober) made their first contribution in [https://github.com/cli/cli/pull/7555](https://togithub.com/cli/cli/pull/7555) **Full Changelog**: cli/cli@v2.49.2...v2.50.0 </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- 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/izumin5210/dotfiles). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4zNzcuOCIsInVwZGF0ZWRJblZlciI6IjM3LjM3Ny44IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: izumin5210-update-aqua-checksum[bot] <169593670+izumin5210-update-aqua-checksum[bot]@users.noreply.github.com>
[](https://renovatebot.com) This PR contains the following updates: | Package | Update | Change | |---|---|---| | [aquaproj/aqua-registry](https://togithub.com/aquaproj/aqua-registry) | minor | `v4.185.1` -> `v4.188.0` | | [casey/just](https://togithub.com/casey/just) | minor | `1.26.0` -> `1.27.0` | | [charmbracelet/gum](https://togithub.com/charmbracelet/gum) | patch | `v0.14.0` -> `v0.14.1` | | [cli/cli](https://togithub.com/cli/cli) | minor | `v2.49.2` -> `v2.50.0` | | [dagger/dagger](https://togithub.com/dagger/dagger) | patch | `v0.11.4` -> `v0.11.6` | | [dprint/dprint](https://togithub.com/dprint/dprint) | minor | `0.45.1` -> `0.46.1` | | [fujiwara/awslim](https://togithub.com/fujiwara/awslim) | patch | `v0.1.1` -> `v0.1.2` | | [golangci/golangci-lint](https://togithub.com/golangci/golangci-lint) | minor | `v1.58.2` -> `v1.59.0` | | [simulot/immich-go](https://togithub.com/simulot/immich-go) | minor | `0.14.1` -> `0.15.0` | | [snyk/cli](https://togithub.com/snyk/cli) | patch | `v1.1291.0` -> `v1.1291.1` | | [twpayne/chezmoi](https://togithub.com/twpayne/chezmoi) | patch | `v2.48.1` -> `v2.48.2` | | [weaveworks/eksctl](https://togithub.com/weaveworks/eksctl) | minor | `v0.179.0` -> `v0.180.0` | --- > [!WARNING] > Some dependencies could not be looked up. Check the Dependency Dashboard for more information. --- ### Release Notes <details> <summary>aquaproj/aqua-registry (aquaproj/aqua-registry)</summary> ### [`v4.188.0`](https://togithub.com/aquaproj/aqua-registry/releases/tag/v4.188.0) [Compare Source](https://togithub.com/aquaproj/aqua-registry/compare/v4.187.1...v4.188.0) [Issues](https://togithub.com/aquaproj/aqua-registry/issues?q=is%3Aissue+milestone%3Av4.188.0) | [Pull Requests](https://togithub.com/aquaproj/aqua-registry/pulls?q=is%3Apr+milestone%3Av4.188.0) | aquaproj/aqua-registry@v4.187.1...v4.188.0 #### 🎉 New Packages [#​23408](https://togithub.com/aquaproj/aqua-registry/issues/23408) [getsavvyinc/savvy-cli](https://togithub.com/getsavvyinc/savvy-cli): Create, share, and run runbooks from your terminal [#​23384](https://togithub.com/aquaproj/aqua-registry/issues/23384) [joshmedeski/sesh](https://togithub.com/joshmedeski/sesh): Smart session manager for the terminal [@​CrystalMethod](https://togithub.com/CrystalMethod) ### [`v4.187.1`](https://togithub.com/aquaproj/aqua-registry/releases/tag/v4.187.1) [Compare Source](https://togithub.com/aquaproj/aqua-registry/compare/v4.187.0...v4.187.1) [Issues](https://togithub.com/aquaproj/aqua-registry/issues?q=is%3Aissue+milestone%3Av4.187.1) | [Pull Requests](https://togithub.com/aquaproj/aqua-registry/pulls?q=is%3Apr+milestone%3Av4.187.1) | aquaproj/aqua-registry@v4.187.0...v4.187.1 #### Fixes [#​23378](https://togithub.com/aquaproj/aqua-registry/issues/23378) authzed/zed: Use gnu binary instead of musl binary [@​sapphi-red](https://togithub.com/sapphi-red) musl version exists for linux, but it is dynamically linked to musl libc and therefore doesn't work on glibc systems. ### [`v4.187.0`](https://togithub.com/aquaproj/aqua-registry/releases/tag/v4.187.0) [Compare Source](https://togithub.com/aquaproj/aqua-registry/compare/v4.186.0...v4.187.0) [Issues](https://togithub.com/aquaproj/aqua-registry/issues?q=is%3Aissue+milestone%3Av4.187.0) | [Pull Requests](https://togithub.com/aquaproj/aqua-registry/pulls?q=is%3Apr+milestone%3Av4.187.0) | aquaproj/aqua-registry@v4.186.0...v4.187.0 #### 🎉 New Packages [#​23375](https://togithub.com/aquaproj/aqua-registry/issues/23375) [authzed/zed](https://togithub.com/authzed/zed): Official command-line tool for managing SpiceDB [@​sapphi-red](https://togithub.com/sapphi-red) [#​23277](https://togithub.com/aquaproj/aqua-registry/issues/23277) [nucleuscloud/neosync](https://togithub.com/nucleuscloud/neosync): Open source data anonymization and synthetic data orchestration for developers. Create high fidelity synthetic data and sync it across your environments ### [`v4.186.0`](https://togithub.com/aquaproj/aqua-registry/releases/tag/v4.186.0) [Compare Source](https://togithub.com/aquaproj/aqua-registry/compare/v4.185.1...v4.186.0) [Issues](https://togithub.com/aquaproj/aqua-registry/issues?q=is%3Aissue+milestone%3Av4.186.0) | [Pull Requests](https://togithub.com/aquaproj/aqua-registry/pulls?q=is%3Apr+milestone%3Av4.186.0) | aquaproj/aqua-registry@v4.185.1...v4.186.0 #### 🎉 New Packages [#​23253](https://togithub.com/aquaproj/aqua-registry/issues/23253) [stripe/stripe-cli](https://togithub.com/stripe/stripe-cli): A command-line tool for Stripe #### Fix [#​23254](https://togithub.com/aquaproj/aqua-registry/issues/23254) dlvhdr/gh-dash: Follow up changes of gh-dash v4.0.0 - [https://github.com/dlvhdr/gh-dash/pull/336](https://togithub.com/dlvhdr/gh-dash/pull/336) </details> <details> <summary>casey/just (casey/just)</summary> ### [`v1.27.0`](https://togithub.com/casey/just/blob/HEAD/CHANGELOG.md#1270---2024-05-25) [Compare Source](https://togithub.com/casey/just/compare/1.26.0...1.27.0) ##### Changed - Use cache dir for temporary files ([#​2067](https://togithub.com/casey/just/pull/2067)) ##### Added - Add `[doc]` attribute to set and suppress documentation comments ([#​2050](https://togithub.com/casey/just/pull/2050) by [neunenak](https://togithub.com/neunenak)) - Add source_file() and source_directory() functions ([#​2088](https://togithub.com/casey/just/pull/2088)) - Add recipe groups ([#​1842](https://togithub.com/casey/just/pull/1842) by [neunenak](https://togithub.com/neunenak)) - Add shell() function for running external commands ([#​2047](https://togithub.com/casey/just/pull/2047) by [gyreas](https://togithub.com/gyreas)) - Add `--global-justfile` flag ([#​1846](https://togithub.com/casey/just/pull/1846) by [neunenak](https://togithub.com/neunenak)) - Add shell-expanded strings ([#​2055](https://togithub.com/casey/just/pull/2055)) - Add `encode_uri_component` function ([#​2052](https://togithub.com/casey/just/pull/2052) by [laniakea64](https://togithub.com/laniakea64)) - Add `choose` function for generating random strings ([#​2049](https://togithub.com/casey/just/pull/2049) by [laniakea64](https://togithub.com/laniakea64)) - Add predefined constants ([#​2054](https://togithub.com/casey/just/pull/2054)) - Allow setting some command-line options with environment variables ([#​2044](https://togithub.com/casey/just/pull/2044) by [neunenak](https://togithub.com/neunenak)) - Add prepend() function ([#​2045](https://togithub.com/casey/just/pull/2045) by [gyreas](https://togithub.com/gyreas)) - Add append() function ([#​2046](https://togithub.com/casey/just/pull/2046) by [gyreas](https://togithub.com/gyreas)) - Add --man subcommand ([#​2041](https://togithub.com/casey/just/pull/2041)) - Make `dotenv-path` relative to working directory ([#​2040](https://togithub.com/casey/just/pull/2040)) - Add `assert` expression ([#​1845](https://togithub.com/casey/just/pull/1845) by [de1iza](https://togithub.com/de1iza)) - Add 'allow-duplicate-variables' setting ([#​1922](https://togithub.com/casey/just/pull/1922) by [Mijago](https://togithub.com/Mijago)) ##### Fixed - List modules in source order with `--unsorted` ([#​2085](https://togithub.com/casey/just/pull/2085)) - Show submodule recipes in --choose ([#​2069](https://togithub.com/casey/just/pull/2069)) - Allow multiple imports of the same file in different modules ([#​2065](https://togithub.com/casey/just/pull/2065)) - Fix submodule recipe listing indentation ([#​2063](https://togithub.com/casey/just/pull/2063)) - Pass command as first argument to `shell` ([#​2061](https://togithub.com/casey/just/pull/2061)) - Allow shell expanded strings in mod and import paths ([#​2059](https://togithub.com/casey/just/pull/2059)) - Run imported recipes in root justfile with correct working directory ([#​2056](https://togithub.com/casey/just/pull/2056)) - Fix output `\r\n` stripping ([#​2035](https://togithub.com/casey/just/pull/2035)) ##### Misc - Forbid whitespace in shell-expanded string prefixes ([#​2083](https://togithub.com/casey/just/pull/2083)) - Add Debian and Ubuntu install instructions to readme ([#​2072](https://togithub.com/casey/just/pull/2072)) - Remove snap installation instructions from readme ([#​2070](https://togithub.com/casey/just/pull/2070)) - Fallback to wget in install script if curl isn't available([#​1913](https://togithub.com/casey/just/pull/1913) by [tgross35](https://togithub.com/tgross35)) - Use std::io::IsTerminal instead of atty crate ([#​2066](https://togithub.com/casey/just/pull/2066)) - Improve `shell()` documentation ([#​2060](https://togithub.com/casey/just/pull/2060) by [laniakea64](https://togithub.com/laniakea64)) - Add bash completion for snap ([#​2058](https://togithub.com/casey/just/pull/2058) by [albertodonato](https://togithub.com/albertodonato)) - Refactor list subcommand ([#​2062](https://togithub.com/casey/just/pull/2062)) - Document working directory ([#​2053](https://togithub.com/casey/just/pull/2053)) - Replace FunctionContext with Evaluator ([#​2048](https://togithub.com/casey/just/pull/2048)) - Update clap to version 4 ([#​1924](https://togithub.com/casey/just/pull/1924) by [poliorcetics](https://togithub.com/poliorcetics)) - Cleanup ([#​2026](https://togithub.com/casey/just/pull/2026) by [adamnemecek](https://togithub.com/adamnemecek)) - Increase --list maximum alignable width from 30 to 50 ([#​2039](https://togithub.com/casey/just/pull/2039)) - Document using `env -S` ([#​2038](https://togithub.com/casey/just/pull/2038)) - Update line continuation documentation ([#​1998](https://togithub.com/casey/just/pull/1998) by [laniakea64](https://togithub.com/laniakea64)) - Add example using GNU parallel to run tasks in concurrently ([#​1915](https://togithub.com/casey/just/pull/1915) by [amarao](https://togithub.com/amarao)) - Placate clippy: use `clone_into` ([#​2037](https://togithub.com/casey/just/pull/2037)) - Use --command-color when printing shebang recipe commands ([#​1911](https://togithub.com/casey/just/pull/1911) by [avi-cenna](https://togithub.com/avi-cenna)) - Document how to use watchexec to re-run recipes when files change ([#​2036](https://togithub.com/casey/just/pull/2036)) - Update VS Code extensions in readme ([#​2034](https://togithub.com/casey/just/pull/2034)) - Add rust:just repology package table to readme ([#​2032](https://togithub.com/casey/just/pull/2032)) </details> <details> <summary>charmbracelet/gum (charmbracelet/gum)</summary> ### [`v0.14.1`](https://togithub.com/charmbracelet/gum/releases/tag/v0.14.1) [Compare Source](https://togithub.com/charmbracelet/gum/compare/v0.14.0...v0.14.1) #### What's Changed - Show help with Huh? by [@​maaslalani](https://togithub.com/maaslalani) in [https://github.com/charmbracelet/gum/pull/587](https://togithub.com/charmbracelet/gum/pull/587) - Support using the Home/End keys in pager by [@​lzm0](https://togithub.com/lzm0) in [https://github.com/charmbracelet/gum/pull/548](https://togithub.com/charmbracelet/gum/pull/548) ##### Fixes - Handle `huh?` user aborted error by [@​MikaelFangel](https://togithub.com/MikaelFangel) in [https://github.com/charmbracelet/gum/pull/578](https://togithub.com/charmbracelet/gum/pull/578) - Cursor styling by [@​MikaelFangel](https://togithub.com/MikaelFangel) in [https://github.com/charmbracelet/gum/pull/592](https://togithub.com/charmbracelet/gum/pull/592) - Re-introduce <kbd>ESC</kbd> for `gum write` by [@​MikaelFangel](https://togithub.com/MikaelFangel) in [https://github.com/charmbracelet/gum/pull/579](https://togithub.com/charmbracelet/gum/pull/579) #### New Contributors - [@​CodeZea1ot](https://togithub.com/CodeZea1ot) made their first contribution in [https://github.com/charmbracelet/gum/pull/542](https://togithub.com/charmbracelet/gum/pull/542) - [@​camcui](https://togithub.com/camcui) made their first contribution in [https://github.com/charmbracelet/gum/pull/537](https://togithub.com/charmbracelet/gum/pull/537) - [@​lzm0](https://togithub.com/lzm0) made their first contribution in [https://github.com/charmbracelet/gum/pull/548](https://togithub.com/charmbracelet/gum/pull/548) **Full Changelog**: charmbracelet/gum@v0.14.0...v0.14.1 *** <a href="https://charm.sh/"><img alt="The Charm logo" src="https://stuff.charm.sh/charm-badge.jpg" width="400"></a> Thoughts? Questions? We love hearing from you. Feel free to reach out on [Twitter](https://twitter.com/charmcli), [The Fediverse](https://mastodon.technology/@​charm), or [Slack](https://charm.sh/slack). </details> <details> <summary>cli/cli (cli/cli)</summary> ### [`v2.50.0`](https://togithub.com/cli/cli/releases/tag/v2.50.0): GitHub CLI 2.50.0 [Compare Source](https://togithub.com/cli/cli/compare/v2.49.2...v2.50.0) #### What's Changed - Refactor git credential flow code by [@​williammartin](https://togithub.com/williammartin) in [https://github.com/cli/cli/pull/9089](https://togithub.com/cli/cli/pull/9089) - feat: add json output for `gh pr checks` by [@​nobe4](https://togithub.com/nobe4) in [https://github.com/cli/cli/pull/9079](https://togithub.com/cli/cli/pull/9079) - Rework first auth tests with new gitcredential abstractions by [@​williammartin](https://togithub.com/williammartin) in [https://github.com/cli/cli/pull/9095](https://togithub.com/cli/cli/pull/9095) - list the various alias permutations for the command and subcommands, via '--help' and 'gh reference' by [@​gabemontero](https://togithub.com/gabemontero) in [https://github.com/cli/cli/pull/8824](https://togithub.com/cli/cli/pull/8824) - Removed tty message when checking for extension upgrades by [@​leevic31](https://togithub.com/leevic31) in [https://github.com/cli/cli/pull/9088](https://togithub.com/cli/cli/pull/9088) - Fix doc bug for gh run watch by [@​jasonodonnell](https://togithub.com/jasonodonnell) in [https://github.com/cli/cli/pull/9052](https://togithub.com/cli/cli/pull/9052) - feat: add support for stateReason in `gh pr view` by [@​nobe4](https://togithub.com/nobe4) in [https://github.com/cli/cli/pull/9080](https://togithub.com/cli/cli/pull/9080) - fix: rename the `Attempts` field to `Attempt`; expose in `gh run view` and `gh run ls` by [@​cawfeecake](https://togithub.com/cawfeecake) in [https://github.com/cli/cli/pull/8905](https://togithub.com/cli/cli/pull/8905) - Update regex in changedFilesNames to handle quoted paths by [@​anda3](https://togithub.com/anda3) in [https://github.com/cli/cli/pull/9115](https://togithub.com/cli/cli/pull/9115) - Add a `gh variable get FOO` command by [@​arnested](https://togithub.com/arnested) in [https://github.com/cli/cli/pull/9106](https://togithub.com/cli/cli/pull/9106) - Add macOS pkg installer to deployment ([#​7554](https://togithub.com/cli/cli/issues/7554)) by [@​paulober](https://togithub.com/paulober) in [https://github.com/cli/cli/pull/7555](https://togithub.com/cli/cli/pull/7555) - Add integration tests for `gh attestation verify` shared workflow use case by [@​malancas](https://togithub.com/malancas) in [https://github.com/cli/cli/pull/9107](https://togithub.com/cli/cli/pull/9107) - Add build provenance for gh CLI releases by [@​malancas](https://togithub.com/malancas) in [https://github.com/cli/cli/pull/9087](https://togithub.com/cli/cli/pull/9087) - build(deps): bump github.com/gabriel-vasile/mimetype from 1.4.3 to 1.4.4 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/cli/cli/pull/9124](https://togithub.com/cli/cli/pull/9124) - Build completions during release on macos by [@​williammartin](https://togithub.com/williammartin) in [https://github.com/cli/cli/pull/9136](https://togithub.com/cli/cli/pull/9136) - Clarify Mac OS Installer packages are unsigned by [@​andyfeller](https://togithub.com/andyfeller) in [https://github.com/cli/cli/pull/9140](https://togithub.com/cli/cli/pull/9140) #### New Contributors - [@​gabemontero](https://togithub.com/gabemontero) made their first contribution in [https://github.com/cli/cli/pull/8824](https://togithub.com/cli/cli/pull/8824) - [@​jasonodonnell](https://togithub.com/jasonodonnell) made their first contribution in [https://github.com/cli/cli/pull/9052](https://togithub.com/cli/cli/pull/9052) - [@​anda3](https://togithub.com/anda3) made their first contribution in [https://github.com/cli/cli/pull/9115](https://togithub.com/cli/cli/pull/9115) - [@​arnested](https://togithub.com/arnested) made their first contribution in [https://github.com/cli/cli/pull/9106](https://togithub.com/cli/cli/pull/9106) - [@​paulober](https://togithub.com/paulober) made their first contribution in [https://github.com/cli/cli/pull/7555](https://togithub.com/cli/cli/pull/7555) **Full Changelog**: cli/cli@v2.49.2...v2.50.0 </details> <details> <summary>dagger/dagger (dagger/dagger)</summary> ### [`v0.11.6`](https://togithub.com/dagger/dagger/blob/HEAD/CHANGELOG.md#v0116---2024-05-30) [Compare Source](https://togithub.com/dagger/dagger/compare/v0.11.5...v0.11.6) ##### Added - Add `withName` method to File by [@​TomChv](https://togithub.com/TomChv) in [https://github.com/dagger/dagger/pull/7491](https://togithub.com/dagger/dagger/pull/7491) ##### Fixed - cli: don't validate flags when requesting `--help` by [@​helderco](https://togithub.com/helderco) in [https://github.com/dagger/dagger/pull/7417](https://togithub.com/dagger/dagger/pull/7417) - fix container init being wrong platform in arm image by [@​sipsma](https://togithub.com/sipsma) in [https://github.com/dagger/dagger/pull/7497](https://togithub.com/dagger/dagger/pull/7497) - fix container DNS resolution when host has no search domains by [@​sipsma](https://togithub.com/sipsma) in [https://github.com/dagger/dagger/pull/7501](https://togithub.com/dagger/dagger/pull/7501) - honor system proxy config during git operations by [@​sipsma](https://togithub.com/sipsma) in [https://github.com/dagger/dagger/pull/7504](https://togithub.com/dagger/dagger/pull/7504) - fix windows-style paths used as file+directory arg values in dagger call by [@​sipsma](https://togithub.com/sipsma) in [https://github.com/dagger/dagger/pull/7506](https://togithub.com/dagger/dagger/pull/7506) ##### What to do next? - Read the [documentation](https://docs.dagger.io) - Join our [Discord server](https://discord.gg/dagger-io) - Follow us on [Twitter](https://twitter.com/dagger_io) ### [`v0.11.5`](https://togithub.com/dagger/dagger/blob/HEAD/CHANGELOG.md#v0115---2024-05-27) [Compare Source](https://togithub.com/dagger/dagger/compare/v0.11.4...v0.11.5) ##### Added - cli: `dagger login` cloud traces support by [@​aluzzardi](https://togithub.com/aluzzardi) in [https://github.com/dagger/dagger/pull/7125](https://togithub.com/dagger/dagger/pull/7125) - cli: improved `--progress=plain` implementation for better visibility by [@​jedevc](https://togithub.com/jedevc) in [https://github.com/dagger/dagger/pull/7272](https://togithub.com/dagger/dagger/pull/7272) ##### Changed - cli: cleaner tty progress view by [@​jedevc](https://togithub.com/jedevc) in [https://github.com/dagger/dagger/pull/7347](https://togithub.com/dagger/dagger/pull/7347) [https://github.com/dagger/dagger/pull/7371](https://togithub.com/dagger/dagger/pull/7371) [https://github.com/dagger/dagger/pull/7386](https://togithub.com/dagger/dagger/pull/7386) - cli: don't show functions that can't be called by [@​helderco](https://togithub.com/helderco) in [https://github.com/dagger/dagger/pull/7418](https://togithub.com/dagger/dagger/pull/7418) - cli: don't show inherited flags in function commands by [@​helderco](https://togithub.com/helderco) in [https://github.com/dagger/dagger/pull/7419](https://togithub.com/dagger/dagger/pull/7419) - core: remove shim and switch to [dumb-init](https://togithub.com/Yelp/dumb-init) by [@​sipsma](https://togithub.com/sipsma) in [https://github.com/dagger/dagger/pull/7367](https://togithub.com/dagger/dagger/pull/7367) ##### Fixed - core: fixed custom CA certs in modules by [@​sipsma](https://togithub.com/sipsma) in [https://github.com/dagger/dagger/pull/7356](https://togithub.com/dagger/dagger/pull/7356) - cli: don't validate flags when requesting `--help` by [@​helderco](https://togithub.com/helderco) in [https://github.com/dagger/dagger/pull/7417](https://togithub.com/dagger/dagger/pull/7417) ##### What to do next? - Read the [documentation](https://docs.dagger.io) - Join our [Discord server](https://discord.gg/dagger-io) - Follow us on [Twitter](https://twitter.com/dagger_io) </details> <details> <summary>dprint/dprint (dprint/dprint)</summary> ### [`v0.46.1`](https://togithub.com/dprint/dprint/releases/tag/0.46.1) [Compare Source](https://togithub.com/dprint/dprint/compare/0.46.0...0.46.1) #### Changes - fix: dprint 0.46 release for `cargo install` without `--locked` flag ([#​852](https://togithub.com/dprint/dprint/issues/852)) - fix: upgrade to rustls 0.23.8 ([#​853](https://togithub.com/dprint/dprint/issues/853)) Please run `dprint config update` after upgrading as some BOM handling happens in the plugins now and some may fail to parse files with a BOM now. See [#​854](https://togithub.com/dprint/dprint/issues/854) and sorry for any headaches (I'm unsure of the impact of this change, so let me know if this is a huge hassle for you). #### Install Run `dprint upgrade` or see https://dprint.dev/install/ #### Checksums |Artifact|SHA-256 Checksum| |:--|:--| |dprint-x86\_64-apple-darwin.zip|cdea84bce1d84c26e8eced2265d246b79a849ec2e7d1377d98dd7bdb21c7ce83| |dprint-aarch64-apple-darwin.zip|f3ff4faef83d14c3b4ae262e79a40d4e0fc3fa1903d0b6e9b82f0b25b00e9499| |dprint-x86\_64-pc-windows-msvc.zip|74e5ab38c744d5903862c2b5174d0fef9759b5506da775e1fb93b6a68c63101d| |dprint-x86\_64-pc-windows-msvc-installer.exe|107786c41be76b49463a50d7d9d788397bba723e107e723347f8e8dde65339dc| |dprint-x86\_64-unknown-linux-gnu.zip|cb72fa6b474e2847a3cf5705b43ee2cbfdafddd7c69ff162309fd1f4f43c872a| |dprint-x86\_64-unknown-linux-musl.zip|4a7d6fa6b920ab150f580965556086cdd7992e07078e627ab9a9d1c3bd30ba85| |dprint-aarch64-unknown-linux-gnu.zip|c4e892d5d237a57ede7900255e5ce669b56160e61c89798c118fbd4c36d48ff2| |dprint-aarch64-unknown-linux-musl.zip|e2b6d87167d21f1f01571790e79526ef9caff3b8b75f5cac348c4f06f60a8c16| ### [`v0.46.0`](https://togithub.com/dprint/dprint/releases/tag/0.46.0) [Compare Source](https://togithub.com/dprint/dprint/compare/0.45.1...0.46.0) ##### Changes - feat: gitignore support ([#​832](https://togithub.com/dprint/dprint/issues/832)) - feat: `DPRINT_TLS_CA_STORE` and `DPRINT_CERT` ([#​850](https://togithub.com/dprint/dprint/issues/850)) - fix: remove BOM handling from the CLI ([#​844](https://togithub.com/dprint/dprint/issues/844)) Please run `dprint config update` after upgrading as some BOM handling happens in the plugins now and some may fail to parse files with a BOM now. See [#​854](https://togithub.com/dprint/dprint/issues/854) and sorry for any headaches (I'm unsure of the impact of this change, so let me know if this is a huge hassle for you). ##### Install Run `dprint upgrade` or see https://dprint.dev/install/ ##### Checksums |Artifact|SHA-256 Checksum| |:--|:--| |dprint-x86\_64-apple-darwin.zip|e339f1f891c60087676d72f70ba5f80dcaedde4bdc58730b9cb68a5483b3abfd| |dprint-aarch64-apple-darwin.zip|4b608b3676f10e04328c3d8be396bded96328ebca9b95b70bf5baf67bed7b135| |dprint-x86\_64-pc-windows-msvc.zip|786201545938f6f7c6d407e6404b31ae9bbf9e5a4abc4c88dc9bd73da369a906| |dprint-x86\_64-pc-windows-msvc-installer.exe|e445b37af124e5d8ef691685632509d2bfc701962c58db89eebc8a8de7352ab4| |dprint-x86\_64-unknown-linux-gnu.zip|8274ea44d2ab4d10b8bdfcc824d946a6d051594aede49c9db8c5e810887abd67| |dprint-x86\_64-unknown-linux-musl.zip|7a2c12edc868259be890174c4ec3bd51c81ec8773aa294e12fac0634f36d15f5| |dprint-aarch64-unknown-linux-gnu.zip|6617465acba53c9b939e73f20538a8027e45593342c34f7ac4826c9f4e6cf53b| |dprint-aarch64-unknown-linux-musl.zip|e52c0a3398e34e88ffe560e719bf8361ba3f35b4e0927ab9ba0761796884ce24| </details> <details> <summary>fujiwara/awslim (fujiwara/awslim)</summary> ### [`v0.1.2`](https://togithub.com/fujiwara/awslim/releases/tag/v0.1.2) [Compare Source](https://togithub.com/fujiwara/awslim/compare/v0.1.1...v0.1.2) #### What's Changed - feature: Add suport for building with specified OS/Arch by [@​ToshihitoKon](https://togithub.com/ToshihitoKon) in [https://github.com/fujiwara/awslim/pull/20](https://togithub.com/fujiwara/awslim/pull/20) - merge [#​20](https://togithub.com/fujiwara/awslim/issues/20) into main by [@​fujiwara](https://togithub.com/fujiwara) in [https://github.com/fujiwara/awslim/pull/21](https://togithub.com/fujiwara/awslim/pull/21) #### New Contributors - [@​ToshihitoKon](https://togithub.com/ToshihitoKon) made their first contribution in [https://github.com/fujiwara/awslim/pull/20](https://togithub.com/fujiwara/awslim/pull/20) **Full Changelog**: fujiwara/awslim@v0.1.1...v0.1.2 </details> <details> <summary>golangci/golangci-lint (golangci/golangci-lint)</summary> ### [`v1.59.0`](https://togithub.com/golangci/golangci-lint/compare/v1.58.2...v1.59.0) [Compare Source](https://togithub.com/golangci/golangci-lint/compare/v1.58.2...v1.59.0) </details> <details> <summary>simulot/immich-go (simulot/immich-go)</summary> ### [`v0.15.0`](https://togithub.com/simulot/immich-go/releases/tag/0.15.0) [Compare Source](https://togithub.com/simulot/immich-go/compare/0.14.1...0.15.0) ##### fix [#​255](https://togithub.com/simulot/immich-go/issues/255) Last percents of google puzzle solving are very slow when processing very large takeout archive The google puzzle solving is now much faster for large takeout archives. ##### fix [#​215](https://togithub.com/simulot/immich-go/issues/215) Use XDG_CONFIG_HOME for storing config The configuration file that contains the server and the key is now stored by default in following folder: - Linux `$HOME/.config/immich-go/immich-go.json` - Windows `%AppData%\immich-go\immich-go.json` - Apple `$HOME/Library/Application Support/immich-go/immich-go.json` ##### Store the log files into sensible dir for user's system The default log file is: - Linux `$HOME/.cache/immich-go/immich-go_YYYY-MM-DD_HH-MI-SS.log` - Windows `%LocalAppData%\immich-go\immich-go_YYYY-MM-DD_HH-MI-SS.log` - Apple `$HOME/Library/Caches/immich-go/immich-go_YYYY-MM-DD_HH-MI-SS.log` ##### Feat: \[[#​249](https://togithub.com/simulot/immich-go/issues/249)] Fix Display the path of log file name The log file name is printed when the program exits. #### Changelog - [`87471f6`](https://togithub.com/simulot/immich-go/commit/87471f6) Edit releases.md - [`d4269ee`](https://togithub.com/simulot/immich-go/commit/d4269ee) Fix Display the path of log file name ([#​251](https://togithub.com/simulot/immich-go/issues/251)) - [`49bf673`](https://togithub.com/simulot/immich-go/commit/49bf673) Fix Display the path of log file name ([#​256](https://togithub.com/simulot/immich-go/issues/256)) - [`73fde8d`](https://togithub.com/simulot/immich-go/commit/73fde8d) Fixes [#​255](https://togithub.com/simulot/immich-go/issues/255) - [`9b70932`](https://togithub.com/simulot/immich-go/commit/9b70932) Merge branch 'main' into simulot/issue215 - [`734bbeb`](https://togithub.com/simulot/immich-go/commit/734bbeb) Merge pull request [#​257](https://togithub.com/simulot/immich-go/issues/257) from simulot:simulot/issue255 - [`8805ca7`](https://togithub.com/simulot/immich-go/commit/8805ca7) Merge pull request [#​258](https://togithub.com/simulot/immich-go/issues/258) from simulot:simulot/issue215 - [`c63dc09`](https://togithub.com/simulot/immich-go/commit/c63dc09) Merge pull request [#​260](https://togithub.com/simulot/immich-go/issues/260) from simulot:simulot/issue259 - [`e4d1643`](https://togithub.com/simulot/immich-go/commit/e4d1643) Set a timeout for all http queries ([#​253](https://togithub.com/simulot/immich-go/issues/253)) - [`f968bd6`](https://togithub.com/simulot/immich-go/commit/f968bd6) The log doesn't show discared files Fixes [#​259](https://togithub.com/simulot/immich-go/issues/259) - [`37f4b83`](https://togithub.com/simulot/immich-go/commit/37f4b83) Use XDG_CONFIG_HOME for storing config ([#​248](https://togithub.com/simulot/immich-go/issues/248)) - [`755e1b7`](https://togithub.com/simulot/immich-go/commit/755e1b7) Use XDG_CONFIG_HOME for storing config Fixes [#​215](https://togithub.com/simulot/immich-go/issues/215) </details> <details> <summary>snyk/cli (snyk/cli)</summary> ### [`v1.1291.1`](https://togithub.com/snyk/cli/releases/tag/v1.1291.1) [Compare Source](https://togithub.com/snyk/cli/compare/v1.1291.0...v1.1291.1) The Snyk CLI is being deployed to different deployment channels, users can select the stability level according to their needs. For details please see [this documentation](https://docs.snyk.io/snyk-cli/releases-and-channels-for-the-snyk-cli) ##### Bug Fixes - **dependencies:** Upgrade go-getter to v1.7.4 to fix vulnerabilities ([#​5252](https://togithub.com/snyk/snyk/issues/5252)) </details> <details> <summary>twpayne/chezmoi (twpayne/chezmoi)</summary> ### [`v2.48.2`](https://togithub.com/twpayne/chezmoi/compare/v2.48.1...v2.48.2) [Compare Source](https://togithub.com/twpayne/chezmoi/compare/v2.48.1...v2.48.2) </details> <details> <summary>weaveworks/eksctl (weaveworks/eksctl)</summary> ### [`v0.180.0`](https://togithub.com/eksctl-io/eksctl/releases/tag/v0.180.0): eksctl 0.180.0 [Compare Source](https://togithub.com/weaveworks/eksctl/compare/0.179.0-rc.0...0.180.0) ### Release v0.180.0 #### 🐛 Bug Fixes - Add option to create service account for pod identities which defaults to `false` ([#​7784](https://togithub.com/weaveworks/eksctl/issues/7784)) </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:eyJjcmVhdGVkSW5WZXIiOiIzNy4zNzcuOCIsInVwZGF0ZWRJblZlciI6IjM3LjM3Ny44IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=--> --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: scottames-github-bot[bot] <162828115+scottames-github-bot[bot]@users.noreply.github.com>
| "startedAt", | ||
| "completedAt", | ||
| "link", | ||
| "bucket", |
There was a problem hiding this comment.
I know this is not the right place to ask this, but can't find the better one and https://cli.github.com/manual/gh_pr_checks is light on details.
What is the bucket field? Looking at the values it has, it's similar to status, right?
There was a problem hiding this comment.
FWIW, it's defined and filled in
cli/pkg/cmd/pr/checks/aggregate.go
Lines 72 to 88 in e36d8f1
It seems to be grouping checks by results
There was a problem hiding this comment.
@findepi : I think this is a great question and might be worth opening a new issue for improving the --help output to include a little more information about buckets.
There was a problem hiding this comment.
thanks @nobe4 for the link, the code suggests i want to use this field for filtering
thanks @andyfeller for suggestion -- #9205
[](https://renovatebot.com) This PR contains the following updates: | Package | Update | Change | |---|---|---| | [cli/cli](https://togithub.com/cli/cli) | minor | `v2.42.1` -> `v2.53.0` | --- ### Release Notes <details> <summary>cli/cli (cli/cli)</summary> ### [`v2.53.0`](https://togithub.com/cli/cli/releases/tag/v2.53.0): GitHub CLI 2.53.0 [Compare Source](https://togithub.com/cli/cli/compare/v2.52.0...v2.53.0) #### What's Changed - Add `--json` option to `variable get` command by [@​babakks](https://togithub.com/babakks) in [https://github.com/cli/cli/pull/9128](https://togithub.com/cli/cli/pull/9128) - Add GH_DEBUG to issue template by [@​TWiStErRob](https://togithub.com/TWiStErRob) in [https://github.com/cli/cli/pull/9167](https://togithub.com/cli/cli/pull/9167) - Fetch variable selected repo relationship when required by [@​williammartin](https://togithub.com/williammartin) in [https://github.com/cli/cli/pull/9256](https://togithub.com/cli/cli/pull/9256) - build(deps): bump github.com/hashicorp/go-retryablehttp from 0.7.5 to 0.7.7 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/cli/cli/pull/9250](https://togithub.com/cli/cli/pull/9250) - Alternate gh attestation trusted-root subcommand by [@​steiza](https://togithub.com/steiza) in [https://github.com/cli/cli/pull/9206](https://togithub.com/cli/cli/pull/9206) - fix: indentation in 'gh release create --help' by [@​cchristous](https://togithub.com/cchristous) in [https://github.com/cli/cli/pull/9296](https://togithub.com/cli/cli/pull/9296) - build(deps): bump actions/attest-build-provenance from 1.3.2 to 1.3.3 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/cli/cli/pull/9305](https://togithub.com/cli/cli/pull/9305) - docs: Update documentation for `gh repo create` to clarify owner by [@​jessehouwing](https://togithub.com/jessehouwing) in [https://github.com/cli/cli/pull/9309](https://togithub.com/cli/cli/pull/9309) - Fix panic when calling `gh pr view --json stateReason` by [@​williammartin](https://togithub.com/williammartin) in [https://github.com/cli/cli/pull/9307](https://togithub.com/cli/cli/pull/9307) - Add `issue create --editor` by [@​notomo](https://togithub.com/notomo) in [https://github.com/cli/cli/pull/7193](https://togithub.com/cli/cli/pull/7193) - Add `pr update-branch` command by [@​babakks](https://togithub.com/babakks) in [https://github.com/cli/cli/pull/8953](https://togithub.com/cli/cli/pull/8953) #### New Contributors - [@​TWiStErRob](https://togithub.com/TWiStErRob) made their first contribution in [https://github.com/cli/cli/pull/9167](https://togithub.com/cli/cli/pull/9167) - [@​cchristous](https://togithub.com/cchristous) made their first contribution in [https://github.com/cli/cli/pull/9296](https://togithub.com/cli/cli/pull/9296) - [@​jessehouwing](https://togithub.com/jessehouwing) made their first contribution in [https://github.com/cli/cli/pull/9309](https://togithub.com/cli/cli/pull/9309) - [@​notomo](https://togithub.com/notomo) made their first contribution in [https://github.com/cli/cli/pull/7193](https://togithub.com/cli/cli/pull/7193) **Full Changelog**: cli/cli@v2.52.0...v2.53.0 ### [`v2.52.0`](https://togithub.com/cli/cli/releases/tag/v2.52.0): GitHub CLI 2.52.0 [Compare Source](https://togithub.com/cli/cli/compare/v2.51.0...v2.52.0) #### What's Changed - feat: add `-a` flag to `gh run list` by [@​joshuajtward](https://togithub.com/joshuajtward) in [https://github.com/cli/cli/pull/9162](https://togithub.com/cli/cli/pull/9162) - Attestation Verification - Buffer Fix by [@​Forrin](https://togithub.com/Forrin) in [https://github.com/cli/cli/pull/9198](https://togithub.com/cli/cli/pull/9198) - build(deps): bump actions/attest-build-provenance from 1.2.0 to 1.3.2 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/cli/cli/pull/9222](https://togithub.com/cli/cli/pull/9222) - build(deps): bump github.com/gorilla/websocket from 1.5.2 to 1.5.3 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/cli/cli/pull/9211](https://togithub.com/cli/cli/pull/9211) - build(deps): bump github.com/spf13/cobra from 1.8.0 to 1.8.1 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/cli/cli/pull/9218](https://togithub.com/cli/cli/pull/9218) - build(deps): bump github.com/google/go-containerregistry from 0.19.1 to 0.19.2 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/cli/cli/pull/9217](https://togithub.com/cli/cli/pull/9217) - Remove `gh at verify` public beta note by [@​phillmv](https://togithub.com/phillmv) in [https://github.com/cli/cli/pull/9243](https://togithub.com/cli/cli/pull/9243) #### New Contributors - [@​joshuajtward](https://togithub.com/joshuajtward) made their first contribution in [https://github.com/cli/cli/pull/9162](https://togithub.com/cli/cli/pull/9162) - [@​Forrin](https://togithub.com/Forrin) made their first contribution in [https://github.com/cli/cli/pull/9198](https://togithub.com/cli/cli/pull/9198) **Full Changelog**: cli/cli@v2.51.0...v2.52.0 ### [`v2.51.0`](https://togithub.com/cli/cli/releases/tag/v2.51.0): GitHub CLI 2.51.0 [Compare Source](https://togithub.com/cli/cli/compare/v2.50.0...v2.51.0) #### What's Changed - Ensure signed RPMs have attestations by [@​andyfeller](https://togithub.com/andyfeller) in [https://github.com/cli/cli/pull/9143](https://togithub.com/cli/cli/pull/9143) - Add `signer-repo` and `signer-workflow` flags to `gh attestation verify` by [@​malancas](https://togithub.com/malancas) in [https://github.com/cli/cli/pull/9137](https://togithub.com/cli/cli/pull/9137) - Docs: Specify rpm repository to avoid conflicts with community repositories by [@​hbenali](https://togithub.com/hbenali) in [https://github.com/cli/cli/pull/9151](https://togithub.com/cli/cli/pull/9151) - Replace `--json-result` flag with `--format=json` in the attestation cmd by [@​phillmv](https://togithub.com/phillmv) in [https://github.com/cli/cli/pull/9172](https://togithub.com/cli/cli/pull/9172) - Bump go-keyring to fix keepassxc prompt confirmation by [@​AlanD20](https://togithub.com/AlanD20) in [https://github.com/cli/cli/pull/9179](https://togithub.com/cli/cli/pull/9179) - build(deps): bump actions/attest-build-provenance from 1.1.2 to 1.2.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/cli/cli/pull/9169](https://togithub.com/cli/cli/pull/9169) - build(deps): bump goreleaser/goreleaser-action from 5 to 6 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/cli/cli/pull/9175](https://togithub.com/cli/cli/pull/9175) - build(deps): bump github.com/gorilla/websocket from 1.5.1 to 1.5.2 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/cli/cli/pull/9192](https://togithub.com/cli/cli/pull/9192) - build(deps): bump google.golang.org/protobuf from 1.34.1 to 1.34.2 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/cli/cli/pull/9197](https://togithub.com/cli/cli/pull/9197) - watch - handle annotation errors gracefully by [@​wingleung](https://togithub.com/wingleung) in [https://github.com/cli/cli/pull/9113](https://togithub.com/cli/cli/pull/9113) #### New Contributors - [@​hbenali](https://togithub.com/hbenali) made their first contribution in [https://github.com/cli/cli/pull/9151](https://togithub.com/cli/cli/pull/9151) - [@​AlanD20](https://togithub.com/AlanD20) made their first contribution in [https://github.com/cli/cli/pull/9179](https://togithub.com/cli/cli/pull/9179) - [@​wingleung](https://togithub.com/wingleung) made their first contribution in [https://github.com/cli/cli/pull/9113](https://togithub.com/cli/cli/pull/9113) **Full Changelog**: cli/cli@v2.50.0...v2.51.0 ### [`v2.50.0`](https://togithub.com/cli/cli/releases/tag/v2.50.0): GitHub CLI 2.50.0 [Compare Source](https://togithub.com/cli/cli/compare/v2.49.2...v2.50.0) #### What's Changed - Refactor git credential flow code by [@​williammartin](https://togithub.com/williammartin) in [https://github.com/cli/cli/pull/9089](https://togithub.com/cli/cli/pull/9089) - feat: add json output for `gh pr checks` by [@​nobe4](https://togithub.com/nobe4) in [https://github.com/cli/cli/pull/9079](https://togithub.com/cli/cli/pull/9079) - Rework first auth tests with new gitcredential abstractions by [@​williammartin](https://togithub.com/williammartin) in [https://github.com/cli/cli/pull/9095](https://togithub.com/cli/cli/pull/9095) - list the various alias permutations for the command and subcommands, via '--help' and 'gh reference' by [@​gabemontero](https://togithub.com/gabemontero) in [https://github.com/cli/cli/pull/8824](https://togithub.com/cli/cli/pull/8824) - Removed tty message when checking for extension upgrades by [@​leevic31](https://togithub.com/leevic31) in [https://github.com/cli/cli/pull/9088](https://togithub.com/cli/cli/pull/9088) - Fix doc bug for gh run watch by [@​jasonodonnell](https://togithub.com/jasonodonnell) in [https://github.com/cli/cli/pull/9052](https://togithub.com/cli/cli/pull/9052) - feat: add support for stateReason in `gh pr view` by [@​nobe4](https://togithub.com/nobe4) in [https://github.com/cli/cli/pull/9080](https://togithub.com/cli/cli/pull/9080) - fix: rename the `Attempts` field to `Attempt`; expose in `gh run view` and `gh run ls` by [@​cawfeecake](https://togithub.com/cawfeecake) in [https://github.com/cli/cli/pull/8905](https://togithub.com/cli/cli/pull/8905) - Update regex in changedFilesNames to handle quoted paths by [@​anda3](https://togithub.com/anda3) in [https://github.com/cli/cli/pull/9115](https://togithub.com/cli/cli/pull/9115) - Add a `gh variable get FOO` command by [@​arnested](https://togithub.com/arnested) in [https://github.com/cli/cli/pull/9106](https://togithub.com/cli/cli/pull/9106) - Add macOS pkg installer to deployment ([#​7554](https://togithub.com/cli/cli/issues/7554)) by [@​paulober](https://togithub.com/paulober) in [https://github.com/cli/cli/pull/7555](https://togithub.com/cli/cli/pull/7555) - Add integration tests for `gh attestation verify` shared workflow use case by [@​malancas](https://togithub.com/malancas) in [https://github.com/cli/cli/pull/9107](https://togithub.com/cli/cli/pull/9107) - Add build provenance for gh CLI releases by [@​malancas](https://togithub.com/malancas) in [https://github.com/cli/cli/pull/9087](https://togithub.com/cli/cli/pull/9087) - build(deps): bump github.com/gabriel-vasile/mimetype from 1.4.3 to 1.4.4 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/cli/cli/pull/9124](https://togithub.com/cli/cli/pull/9124) - Build completions during release on macos by [@​williammartin](https://togithub.com/williammartin) in [https://github.com/cli/cli/pull/9136](https://togithub.com/cli/cli/pull/9136) - Clarify Mac OS Installer packages are unsigned by [@​andyfeller](https://togithub.com/andyfeller) in [https://github.com/cli/cli/pull/9140](https://togithub.com/cli/cli/pull/9140) #### New Contributors - [@​gabemontero](https://togithub.com/gabemontero) made their first contribution in [https://github.com/cli/cli/pull/8824](https://togithub.com/cli/cli/pull/8824) - [@​jasonodonnell](https://togithub.com/jasonodonnell) made their first contribution in [https://github.com/cli/cli/pull/9052](https://togithub.com/cli/cli/pull/9052) - [@​anda3](https://togithub.com/anda3) made their first contribution in [https://github.com/cli/cli/pull/9115](https://togithub.com/cli/cli/pull/9115) - [@​arnested](https://togithub.com/arnested) made their first contribution in [https://github.com/cli/cli/pull/9106](https://togithub.com/cli/cli/pull/9106) - [@​paulober](https://togithub.com/paulober) made their first contribution in [https://github.com/cli/cli/pull/7555](https://togithub.com/cli/cli/pull/7555) **Full Changelog**: cli/cli@v2.49.2...v2.50.0 ### [`v2.49.2`](https://togithub.com/cli/cli/releases/tag/v2.49.2): GitHub CLI 2.49.2 [Compare Source](https://togithub.com/cli/cli/compare/v2.49.1...v2.49.2) #### What's Changed - Improve `run list` doc with available `--json` fields by [@​babakks](https://togithub.com/babakks) in [https://github.com/cli/cli/pull/8934](https://togithub.com/cli/cli/pull/8934) - Fix typos by [@​szepeviktor](https://togithub.com/szepeviktor) in [https://github.com/cli/cli/pull/9068](https://togithub.com/cli/cli/pull/9068) - Move config interfaces into gh package by [@​williammartin](https://togithub.com/williammartin) in [https://github.com/cli/cli/pull/9060](https://togithub.com/cli/cli/pull/9060) - Creating doc to capture Codespace usage guidance by [@​andyfeller](https://togithub.com/andyfeller) in [https://github.com/cli/cli/pull/9066](https://togithub.com/cli/cli/pull/9066) - Fix repo fork regression by [@​williammartin](https://togithub.com/williammartin) in [https://github.com/cli/cli/pull/9063](https://togithub.com/cli/cli/pull/9063) - Add --latest=false to `gh release create` docs by [@​kuzdogan](https://togithub.com/kuzdogan) in [https://github.com/cli/cli/pull/8987](https://togithub.com/cli/cli/pull/8987) - build(deps): bump github.com/sigstore/protobuf-specs from 0.3.1 to 0.3.2 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/cli/cli/pull/9075](https://togithub.com/cli/cli/pull/9075) #### New Contributors - [@​szepeviktor](https://togithub.com/szepeviktor) made their first contribution in [https://github.com/cli/cli/pull/9068](https://togithub.com/cli/cli/pull/9068) - [@​kuzdogan](https://togithub.com/kuzdogan) made their first contribution in [https://github.com/cli/cli/pull/8987](https://togithub.com/cli/cli/pull/8987) **Full Changelog**: cli/cli@v2.49.1...v2.49.2 ### [`v2.49.1`](https://togithub.com/cli/cli/releases/tag/v2.49.1): GitHub CLI 2.49.1 [Compare Source](https://togithub.com/cli/cli/compare/v2.49.0...v2.49.1) #### What's Changed - Do not mutate headers when initialising tableprinter by [@​williammartin](https://togithub.com/williammartin) in [https://github.com/cli/cli/pull/9033](https://togithub.com/cli/cli/pull/9033) - Document relationship between host and active account by [@​williammartin](https://togithub.com/williammartin) in [https://github.com/cli/cli/pull/9032](https://togithub.com/cli/cli/pull/9032) - build(deps): bump golang.org/x/net from 0.22.0 to 0.23.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/cli/cli/pull/9034](https://togithub.com/cli/cli/pull/9034) - Run `attestation` command set integration tests separately by [@​malancas](https://togithub.com/malancas) in [https://github.com/cli/cli/pull/9035](https://togithub.com/cli/cli/pull/9035) - Added support for jobs with long filenames by [@​shayn-orca](https://togithub.com/shayn-orca) in [https://github.com/cli/cli/pull/8684](https://togithub.com/cli/cli/pull/8684) - Fix unused params across project by [@​williammartin](https://togithub.com/williammartin) in [https://github.com/cli/cli/pull/9059](https://togithub.com/cli/cli/pull/9059) - Fix `attestation verify` source repository check bug by [@​malancas](https://togithub.com/malancas) in [https://github.com/cli/cli/pull/9053](https://togithub.com/cli/cli/pull/9053) #### New Contributors - [@​shayn-orca](https://togithub.com/shayn-orca) made their first contribution in [https://github.com/cli/cli/pull/8684](https://togithub.com/cli/cli/pull/8684) **Full Changelog**: cli/cli@v2.49.0...v2.49.1 ### [`v2.49.0`](https://togithub.com/cli/cli/releases/tag/v2.49.0): GitHub CLI 2.49.0 [Compare Source](https://togithub.com/cli/cli/compare/v2.48.0...v2.49.0) #### Support for GitHub Artifact Attestations `v2.49.0` release introduces the `attestation` command set for downloading and verifying attestations about artifacts built in GitHub Actions! This is part of the larger Artifact Attestations initiative. An artifact attestation is a piece of cryptographically signed metadata that is generated as part of your artifact build process. These attestations bind artifacts to the details of the workflow run that produced them, and allow you to guarantee the integrity and provenance of any artifact built in GitHub Actions. ```shell ### Verify a local artifact gh attestation verify artifact.bin -o <your org> ### Verify a local artifact against a local artifact attestation gh attestation verify artifact.bin -b ./artifact-v0.0.1-bundle.json -o <your org> ### Verify an OCI image gh attestation verify oci://ghcr.io/foo/bar:latest -o <your org> ### Download artifact attestations gh attestation download artifact.bin -o <your org> ``` To get started, check out gh help attestation. You can also use the `gh at <command>` alias for short. #### What's Changed - Improve gh run rerun docs by [@​sochotnicky](https://togithub.com/sochotnicky) in [https://github.com/cli/cli/pull/8969](https://togithub.com/cli/cli/pull/8969) - build(deps): bump golang.org/x/net from 0.21.0 to 0.23.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/cli/cli/pull/8981](https://togithub.com/cli/cli/pull/8981) - Update `sigstore-go` dependency to v0.3.0 by [@​malancas](https://togithub.com/malancas) in [https://github.com/cli/cli/pull/8977](https://togithub.com/cli/cli/pull/8977) - `gh attestation tuf-root-verify` offline test fix by [@​malancas](https://togithub.com/malancas) in [https://github.com/cli/cli/pull/8975](https://togithub.com/cli/cli/pull/8975) - Update `gh attestation verify` output by [@​malancas](https://togithub.com/malancas) in [https://github.com/cli/cli/pull/8991](https://togithub.com/cli/cli/pull/8991) - build(deps): bump google.golang.org/grpc from 1.62.1 to 1.62.2 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/cli/cli/pull/8989](https://togithub.com/cli/cli/pull/8989) - Remove `Hidden` flag from `gh attestation` command by [@​malancas](https://togithub.com/malancas) in [https://github.com/cli/cli/pull/8998](https://togithub.com/cli/cli/pull/8998) - Add colon for `gh secret set` by [@​NeroBlackstone](https://togithub.com/NeroBlackstone) in [https://github.com/cli/cli/pull/9004](https://togithub.com/cli/cli/pull/9004) - Improve errors when loading bundle locally fails by [@​williammartin](https://togithub.com/williammartin) in [https://github.com/cli/cli/pull/8996](https://togithub.com/cli/cli/pull/8996) - Support offline mode for `gh attestation verify` by [@​steiza](https://togithub.com/steiza) in [https://github.com/cli/cli/pull/8997](https://togithub.com/cli/cli/pull/8997) - Add `projectsV2` to JSON fields of `gh repo` commands by [@​babakks](https://togithub.com/babakks) in [https://github.com/cli/cli/pull/9007](https://togithub.com/cli/cli/pull/9007) - Support long URLs in `gh repo clone` by [@​babakks](https://togithub.com/babakks) in [https://github.com/cli/cli/pull/9008](https://togithub.com/cli/cli/pull/9008) - Fix issue with closing pager stream by [@​babakks](https://togithub.com/babakks) in [https://github.com/cli/cli/pull/9020](https://togithub.com/cli/cli/pull/9020) - proof of concept for flag-level disable auth check by [@​andyfeller](https://togithub.com/andyfeller) in [https://github.com/cli/cli/pull/9000](https://togithub.com/cli/cli/pull/9000) - Be more general with attestation host checks by [@​williammartin](https://togithub.com/williammartin) in [https://github.com/cli/cli/pull/9019](https://togithub.com/cli/cli/pull/9019) - Add beta designation on attestation command set by [@​andyfeller](https://togithub.com/andyfeller) in [https://github.com/cli/cli/pull/9022](https://togithub.com/cli/cli/pull/9022) - Tweaked gh attestation help strings to generate nicer cli manual site. by [@​phillmv](https://togithub.com/phillmv) in [https://github.com/cli/cli/pull/9025](https://togithub.com/cli/cli/pull/9025) - Update cli/go-gh to v2.9.0 by [@​andyfeller](https://togithub.com/andyfeller) in [https://github.com/cli/cli/pull/9023](https://togithub.com/cli/cli/pull/9023) - Document repo clone protocol behaviour by [@​williammartin](https://togithub.com/williammartin) in [https://github.com/cli/cli/pull/9030](https://togithub.com/cli/cli/pull/9030) #### New Contributors - [@​sochotnicky](https://togithub.com/sochotnicky) made their first contribution in [https://github.com/cli/cli/pull/8969](https://togithub.com/cli/cli/pull/8969) - [@​NeroBlackstone](https://togithub.com/NeroBlackstone) made their first contribution in [https://github.com/cli/cli/pull/9004](https://togithub.com/cli/cli/pull/9004) - [@​phillmv](https://togithub.com/phillmv) made their first contribution in [https://github.com/cli/cli/pull/9025](https://togithub.com/cli/cli/pull/9025) **Full Changelog**: cli/cli@v2.48.0...v2.49.0 ### [`v2.48.0`](https://togithub.com/cli/cli/releases/tag/v2.48.0): GitHub CLI 2.48.0 [Compare Source](https://togithub.com/cli/cli/compare/v2.47.0...v2.48.0) #### The Big Stuff - Added support for `--slurp`ing JSON responses in `gh api` by [@​heaths](https://togithub.com/heaths) in [https://github.com/cli/cli/pull/8620](https://togithub.com/cli/cli/pull/8620) - Added `--skip-ssh-key` option to `gh auth login` command by [@​babakks](https://togithub.com/babakks) in [https://github.com/cli/cli/pull/8935](https://togithub.com/cli/cli/pull/8935) - Added `numSelectedRepos` to JSON output of `gh secret list` by [@​babakks](https://togithub.com/babakks) in [https://github.com/cli/cli/pull/8899](https://togithub.com/cli/cli/pull/8899) - Added support for multiple items in `gh api` nested array by [@​Ebonsignori](https://togithub.com/Ebonsignori) in [https://github.com/cli/cli/pull/8762](https://togithub.com/cli/cli/pull/8762) - Fixed panic when running `gh repo rename` by [@​babakks](https://togithub.com/babakks) in [https://github.com/cli/cli/pull/8906](https://togithub.com/cli/cli/pull/8906) - Fixed panic when parsing IPv6 remote URLs by [@​babakks](https://togithub.com/babakks) in [https://github.com/cli/cli/pull/8893](https://togithub.com/cli/cli/pull/8893) - Fixed `gh pr lock/unlock` not working when URL is passed by [@​t4kamura](https://togithub.com/t4kamura) in [https://github.com/cli/cli/pull/8837](https://togithub.com/cli/cli/pull/8837) - Fixed viewing run logs with filenames that the regex didn't handle [@​zdrve](https://togithub.com/zdrve) in [https://github.com/cli/cli/pull/8882](https://togithub.com/cli/cli/pull/8882) #### The Rest - Tidy `go.mod` by [@​matthewhughes934](https://togithub.com/matthewhughes934) in [https://github.com/cli/cli/pull/8958](https://togithub.com/cli/cli/pull/8958) - Fix cache contention in Go CI jobs by [@​matthewhughes934](https://togithub.com/matthewhughes934) in [https://github.com/cli/cli/pull/8957](https://togithub.com/cli/cli/pull/8957) - Fix `go` directive in `go.mod` by [@​matthewhughes934](https://togithub.com/matthewhughes934) in [https://github.com/cli/cli/pull/8956](https://togithub.com/cli/cli/pull/8956) - Update install_linux.md by [@​richterdavid](https://togithub.com/richterdavid) in [https://github.com/cli/cli/pull/8950](https://togithub.com/cli/cli/pull/8950) - build(deps): bump google.golang.org/grpc from 1.61.1 to 1.61.2 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/cli/cli/pull/8925](https://togithub.com/cli/cli/pull/8925) - Add codeowners entry for the GitHub TUF root included in the `attestation` command set by [@​malancas](https://togithub.com/malancas) in [https://github.com/cli/cli/pull/8919](https://togithub.com/cli/cli/pull/8919) - Create stronger run log cache abstraction by [@​williammartin](https://togithub.com/williammartin) in [https://github.com/cli/cli/pull/8931](https://togithub.com/cli/cli/pull/8931) - Remove naked returns from git ParseURL by [@​williammartin](https://togithub.com/williammartin) in [https://github.com/cli/cli/pull/8929](https://togithub.com/cli/cli/pull/8929) - Fix api cache test by [@​williammartin](https://togithub.com/williammartin) in [https://github.com/cli/cli/pull/8932](https://togithub.com/cli/cli/pull/8932) - Ensure run log cache creates cache dir if it doesn't exist by [@​williammartin](https://togithub.com/williammartin) in [https://github.com/cli/cli/pull/8944](https://togithub.com/cli/cli/pull/8944) - Close zip file in run view tests by [@​williammartin](https://togithub.com/williammartin) in [https://github.com/cli/cli/pull/8945](https://togithub.com/cli/cli/pull/8945) - Fix `attestation` cmd offline unit test failure by [@​malancas](https://togithub.com/malancas) in [https://github.com/cli/cli/pull/8933](https://togithub.com/cli/cli/pull/8933) - Add support to `attestation` command for more predicate types. by [@​steiza](https://togithub.com/steiza) in [https://github.com/cli/cli/pull/8949](https://togithub.com/cli/cli/pull/8949) #### New Contributors - [@​babakks](https://togithub.com/babakks) made their first contribution in [https://github.com/cli/cli/pull/8906](https://togithub.com/cli/cli/pull/8906) - [@​t4kamura](https://togithub.com/t4kamura) made their first contribution in [https://github.com/cli/cli/pull/8837](https://togithub.com/cli/cli/pull/8837) - [@​zdrve](https://togithub.com/zdrve) made their first contribution in [https://github.com/cli/cli/pull/8882](https://togithub.com/cli/cli/pull/8882) - [@​Ebonsignori](https://togithub.com/Ebonsignori) made their first contribution in [https://github.com/cli/cli/pull/8762](https://togithub.com/cli/cli/pull/8762) - [@​matthewhughes934](https://togithub.com/matthewhughes934) made their first contribution in [https://github.com/cli/cli/pull/8958](https://togithub.com/cli/cli/pull/8958) - [@​richterdavid](https://togithub.com/richterdavid) made their first contribution in [https://github.com/cli/cli/pull/8950](https://togithub.com/cli/cli/pull/8950) **Full Changelog**: cli/cli@v2.47.0...v2.48.0 ### [`v2.47.0`](https://togithub.com/cli/cli/releases/tag/v2.47.0): GitHub CLI 2.47.0 [Compare Source](https://togithub.com/cli/cli/compare/v2.46.0...v2.47.0) #### What's Changed - Fix typo in auth switch help example by [@​ihommani](https://togithub.com/ihommani) in [https://github.com/cli/cli/pull/8870](https://togithub.com/cli/cli/pull/8870) - Bump go-gh to 2.7.0 by [@​williammartin](https://togithub.com/williammartin) in [https://github.com/cli/cli/pull/8884](https://togithub.com/cli/cli/pull/8884) - gh-attestation cmd integration by [@​malancas](https://togithub.com/malancas) in [https://github.com/cli/cli/pull/8698](https://togithub.com/cli/cli/pull/8698) - Upgrade to Go 1.22 by [@​yanskun](https://togithub.com/yanskun) in [https://github.com/cli/cli/pull/8836](https://togithub.com/cli/cli/pull/8836) - Rely on go.mod go version in all workflows by [@​williammartin](https://togithub.com/williammartin) in [https://github.com/cli/cli/pull/8911](https://togithub.com/cli/cli/pull/8911) - build(deps): bump gopkg.in/go-jose/go-jose.v2 from 2.6.1 to 2.6.3 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/cli/cli/pull/8902](https://togithub.com/cli/cli/pull/8902) - build(deps): bump github.com/docker/docker from 24.0.7+incompatible to 24.0.9+incompatible by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/cli/cli/pull/8903](https://togithub.com/cli/cli/pull/8903) - Fix segfault in error handling of `gh repo rename` by [@​satoqz](https://togithub.com/satoqz) in [https://github.com/cli/cli/pull/8888](https://togithub.com/cli/cli/pull/8888) - build(deps): bump google.golang.org/grpc from 1.61.0 to 1.61.1 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/cli/cli/pull/8912](https://togithub.com/cli/cli/pull/8912) - build(deps): bump github.com/gorilla/websocket from 1.5.0 to 1.5.1 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/cli/cli/pull/8913](https://togithub.com/cli/cli/pull/8913) - build(deps): bump github.com/google/go-containerregistry from 0.19.0 to 0.19.1 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/cli/cli/pull/8914](https://togithub.com/cli/cli/pull/8914) - build(deps): bump github.com/sigstore/protobuf-specs from 0.3.0 to 0.3.1 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/cli/cli/pull/8923](https://togithub.com/cli/cli/pull/8923) - Bump glamour to v0.7.0 and go mod tidy by [@​williammartin](https://togithub.com/williammartin) in [https://github.com/cli/cli/pull/8920](https://togithub.com/cli/cli/pull/8920) #### New Contributors - [@​ihommani](https://togithub.com/ihommani) made their first contribution in [https://github.com/cli/cli/pull/8870](https://togithub.com/cli/cli/pull/8870) - [@​malancas](https://togithub.com/malancas) made their first contribution in [https://github.com/cli/cli/pull/8698](https://togithub.com/cli/cli/pull/8698) - [@​satoqz](https://togithub.com/satoqz) made their first contribution in [https://github.com/cli/cli/pull/8888](https://togithub.com/cli/cli/pull/8888) **Full Changelog**: cli/cli@v2.46.0...v2.47.0 ### [`v2.46.0`](https://togithub.com/cli/cli/releases/tag/v2.46.0): GitHub CLI 2.46.0 [Compare Source](https://togithub.com/cli/cli/compare/v2.45.0...v2.46.0) #### What's Changed - Draft issue IDs are included in `project item-list` output by [@​yasunori0418](https://togithub.com/yasunori0418) in [https://github.com/cli/cli/pull/8754](https://togithub.com/cli/cli/pull/8754) - New `--dry-run` option for `pr create` by [@​v1v](https://togithub.com/v1v) in [https://github.com/cli/cli/pull/8376](https://togithub.com/cli/cli/pull/8376) - Bump go-keyring to fix race condition by [@​williammartin](https://togithub.com/williammartin) in [https://github.com/cli/cli/pull/8833](https://togithub.com/cli/cli/pull/8833) - PR numbers are prefixed with owner/repo for context by [@​nobe4](https://togithub.com/nobe4) in [https://github.com/cli/cli/pull/8778](https://togithub.com/cli/cli/pull/8778) - Extra word removed in `codespaces` code comments by [@​cuinix](https://togithub.com/cuinix) in [https://github.com/cli/cli/pull/8795](https://togithub.com/cli/cli/pull/8795) - Clarified description of the `-u`, `--user` option for `gh auth token` by [@​gregsmi](https://togithub.com/gregsmi) in [https://github.com/cli/cli/pull/8797](https://togithub.com/cli/cli/pull/8797) - Fixed formatting for the description of `release upload` by [@​malor](https://togithub.com/malor) in [https://github.com/cli/cli/pull/8834](https://togithub.com/cli/cli/pull/8834) - Clarified the usage of `auth status` to list all authenticated accounts by [@​jsoref](https://togithub.com/jsoref) in [https://github.com/cli/cli/pull/8838](https://togithub.com/cli/cli/pull/8838) - Document auth switch behavior for two or more accounts by [@​williammartin](https://togithub.com/williammartin) in [https://github.com/cli/cli/pull/8839](https://togithub.com/cli/cli/pull/8839) - Document run watch and view not supporting fine grained PATs by [@​williammartin](https://togithub.com/williammartin) in [https://github.com/cli/cli/pull/8843](https://togithub.com/cli/cli/pull/8843) - build(deps): bump google.golang.org/protobuf from 1.30.0 to 1.33.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/cli/cli/pull/8811](https://togithub.com/cli/cli/pull/8811) - build(deps): bump github.com/cpuguy83/go-md2man/v2 from 2.0.3 to 2.0.4 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/cli/cli/pull/8844](https://togithub.com/cli/cli/pull/8844) #### New Contributors - [@​cuinix](https://togithub.com/cuinix) made their first contribution in [https://github.com/cli/cli/pull/8795](https://togithub.com/cli/cli/pull/8795) - [@​gregsmi](https://togithub.com/gregsmi) made their first contribution in [https://github.com/cli/cli/pull/8797](https://togithub.com/cli/cli/pull/8797) - [@​nobe4](https://togithub.com/nobe4) made their first contribution in [https://github.com/cli/cli/pull/8778](https://togithub.com/cli/cli/pull/8778) - [@​malor](https://togithub.com/malor) made their first contribution in [https://github.com/cli/cli/pull/8834](https://togithub.com/cli/cli/pull/8834) - [@​yasunori0418](https://togithub.com/yasunori0418) made their first contribution in [https://github.com/cli/cli/pull/8754](https://togithub.com/cli/cli/pull/8754) **Full Changelog**: cli/cli@v2.45.0...v2.46.0 ### [`v2.45.0`](https://togithub.com/cli/cli/releases/tag/v2.45.0): GitHub CLI 2.45.0 [Compare Source](https://togithub.com/cli/cli/compare/v2.44.1...v2.45.0) #### What's Changed - Resolve go compiler regression by [@​williammartin](https://togithub.com/williammartin) in [https://github.com/cli/cli/pull/8716](https://togithub.com/cli/cli/pull/8716) - bug: fixed the msg returned for patching a repo variable by [@​dean-tate](https://togithub.com/dean-tate) in [https://github.com/cli/cli/pull/8715](https://togithub.com/cli/cli/pull/8715) - Fix regression around commas in commit titles during `pr create` by [@​williammartin](https://togithub.com/williammartin) in [https://github.com/cli/cli/pull/8768](https://togithub.com/cli/cli/pull/8768) - feat: Add `ref` option to `gh cache list` by [@​toshimaru](https://togithub.com/toshimaru) in [https://github.com/cli/cli/pull/8711](https://togithub.com/cli/cli/pull/8711) - Make comments in the default config file more informative by [@​bartekpacia](https://togithub.com/bartekpacia) in [https://github.com/cli/cli/pull/8756](https://togithub.com/cli/cli/pull/8756) - Link Project to Repository or Team Command by [@​benebsiny](https://togithub.com/benebsiny) in [https://github.com/cli/cli/pull/8595](https://togithub.com/cli/cli/pull/8595) - Clarify helptext for search prs regarding archived repos by [@​stuart-leitch](https://togithub.com/stuart-leitch) in [https://github.com/cli/cli/pull/8738](https://togithub.com/cli/cli/pull/8738) - Simplify install command for Debian & Ubuntu by [@​hongquan](https://togithub.com/hongquan) in [https://github.com/cli/cli/pull/8693](https://togithub.com/cli/cli/pull/8693) - Support `project view --web` with TTY by [@​harveysanders](https://togithub.com/harveysanders) in [https://github.com/cli/cli/pull/8773](https://togithub.com/cli/cli/pull/8773) - Bump cli/go-gh v2.6.0 for tenant using GH_TOKEN by [@​andyfeller](https://togithub.com/andyfeller) in [https://github.com/cli/cli/pull/8787](https://togithub.com/cli/cli/pull/8787) #### New Contributors - [@​dean-tate](https://togithub.com/dean-tate) made their first contribution in [https://github.com/cli/cli/pull/8715](https://togithub.com/cli/cli/pull/8715) - [@​bartekpacia](https://togithub.com/bartekpacia) made their first contribution in [https://github.com/cli/cli/pull/8756](https://togithub.com/cli/cli/pull/8756) - [@​stuart-leitch](https://togithub.com/stuart-leitch) made their first contribution in [https://github.com/cli/cli/pull/8738](https://togithub.com/cli/cli/pull/8738) - [@​hongquan](https://togithub.com/hongquan) made their first contribution in [https://github.com/cli/cli/pull/8693](https://togithub.com/cli/cli/pull/8693) **Full Changelog**: cli/cli@v2.44.1...v2.45.0 ### [`v2.44.1`](https://togithub.com/cli/cli/releases/tag/v2.44.1): GitHub CLI 2.44.1 [Compare Source](https://togithub.com/cli/cli/compare/v2.44.0...v2.44.1) #### What's Changed - Fix PR create regression around title and body when there is only one commit by [@​williammartin](https://togithub.com/williammartin) in [https://github.com/cli/cli/pull/8707](https://togithub.com/cli/cli/pull/8707) **Full Changelog**: cli/cli@v2.44.0...v2.44.1 ### [`v2.44.0`](https://togithub.com/cli/cli/releases/tag/v2.44.0): GitHub CLI 2.44.0 [Compare Source](https://togithub.com/cli/cli/compare/v2.43.1...v2.44.0) #### What's Changed - Feature: added Order flag for release list command by [@​leevic31](https://togithub.com/leevic31) in [https://github.com/cli/cli/pull/8632](https://togithub.com/cli/cli/pull/8632) - autofill with body by [@​guerinoni](https://togithub.com/guerinoni) in [https://github.com/cli/cli/pull/8423](https://togithub.com/cli/cli/pull/8423) - Add default values to web manual and man pages by [@​zsloane](https://togithub.com/zsloane) in [https://github.com/cli/cli/pull/8395](https://togithub.com/cli/cli/pull/8395) - build(deps): bump microsoft/setup-msbuild from 1.3.2 to 2.0.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/cli/cli/pull/8648](https://togithub.com/cli/cli/pull/8648) - Documentation for built-in aliases by [@​Rebeccasun31](https://togithub.com/Rebeccasun31) in [https://github.com/cli/cli/pull/8367](https://togithub.com/cli/cli/pull/8367) - Add more detail to fork failure message by [@​chrisroat](https://togithub.com/chrisroat) in [https://github.com/cli/cli/pull/8614](https://togithub.com/cli/cli/pull/8614) - feat: Add cache key option to `gh cache list` by [@​toshimaru](https://togithub.com/toshimaru) in [https://github.com/cli/cli/pull/8667](https://togithub.com/cli/cli/pull/8667) #### New Contributors - [@​zsloane](https://togithub.com/zsloane) made their first contribution in [https://github.com/cli/cli/pull/8395](https://togithub.com/cli/cli/pull/8395) - [@​Rebeccasun31](https://togithub.com/Rebeccasun31) made their first contribution in [https://github.com/cli/cli/pull/8367](https://togithub.com/cli/cli/pull/8367) - [@​chrisroat](https://togithub.com/chrisroat) made their first contribution in [https://github.com/cli/cli/pull/8614](https://togithub.com/cli/cli/pull/8614) - [@​toshimaru](https://togithub.com/toshimaru) made their first contribution in [https://github.com/cli/cli/pull/8667](https://togithub.com/cli/cli/pull/8667) **Full Changelog**: cli/cli@v2.43.1...v2.44.0 ### [`v2.43.1`](https://togithub.com/cli/cli/releases/tag/v2.43.1): GitHub CLI 2.43.1 [Compare Source](https://togithub.com/cli/cli/compare/v2.43.0...v2.43.1) #### What's Changed - Fix label create regression in v2.43.0 by [@​williammartin](https://togithub.com/williammartin) in [https://github.com/cli/cli/pull/8653](https://togithub.com/cli/cli/pull/8653) **Full Changelog**: cli/cli@v2.43.0...v2.43.1 ### [`v2.43.0`](https://togithub.com/cli/cli/releases/tag/v2.43.0): GitHub CLI 2.43.0 [Compare Source](https://togithub.com/cli/cli/compare/v2.42.1...v2.43.0) #### Special note With this release, the GitHub CLI team sees [@​samcoe](https://togithub.com/samcoe) off to new adventures beyond GitHub! 😿 Sam has been an amazing maintainer and colleague who has helped so many people adopt `gh` while trying to connect with the community regarding its needs. There will forever be a Sam-shaped hole no one can fill but hope he continues to be a part wherever his whirlwind journey takes him! ❤️ #### What's Changed - Remove project JSON formatting objects by [@​heaths](https://togithub.com/heaths) in [https://github.com/cli/cli/pull/8541](https://togithub.com/cli/cli/pull/8541) - build(deps): bump actions/upload-artifact from 3 to 4 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/cli/cli/pull/8467](https://togithub.com/cli/cli/pull/8467) - build(deps): bump actions/download-artifact from 3 to 4 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/cli/cli/pull/8466](https://togithub.com/cli/cli/pull/8466) - Add option --json for gh variable list by [@​w1mvy](https://togithub.com/w1mvy) in [https://github.com/cli/cli/pull/8516](https://togithub.com/cli/cli/pull/8516) - Add `--json` export flag for release list by [@​v1v](https://togithub.com/v1v) in [https://github.com/cli/cli/pull/8474](https://togithub.com/cli/cli/pull/8474) - 📝 (search/repos) add usage tips for --archived=false by [@​shion1305](https://togithub.com/shion1305) in [https://github.com/cli/cli/pull/8391](https://togithub.com/cli/cli/pull/8391) - fix: Prevent nil dereference in `pr view`. by [@​octo](https://togithub.com/octo) in [https://github.com/cli/cli/pull/8566](https://togithub.com/cli/cli/pull/8566) - Fix some typos raised by codespell by [@​fpistm](https://togithub.com/fpistm) in [https://github.com/cli/cli/pull/8589](https://togithub.com/cli/cli/pull/8589) - Add force flag to setup-git command by [@​rajhawaldar](https://togithub.com/rajhawaldar) in [https://github.com/cli/cli/pull/8552](https://togithub.com/cli/cli/pull/8552) - build(deps): bump actions/cache from 3 to 4 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/cli/cli/pull/8594](https://togithub.com/cli/cli/pull/8594) - Feature: output URL for newly created repo by [@​leevic31](https://togithub.com/leevic31) in [https://github.com/cli/cli/pull/8574](https://togithub.com/cli/cli/pull/8574) - Update Arch repo to \[extra] by [@​Xeonacid](https://togithub.com/Xeonacid) in [https://github.com/cli/cli/pull/8607](https://togithub.com/cli/cli/pull/8607) - build(deps): bump microsoft/setup-msbuild from 1.3.1 to 1.3.2 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/cli/cli/pull/8629](https://togithub.com/cli/cli/pull/8629) - fix(pr create): clarify refspec to push to correct branch in the event of a conflicting tag by [@​arunsathiya](https://togithub.com/arunsathiya) in [https://github.com/cli/cli/pull/8618](https://togithub.com/cli/cli/pull/8618) - Send activity signals during non-interactive codespace SSH command by [@​dmgardiner25](https://togithub.com/dmgardiner25) in [https://github.com/cli/cli/pull/8639](https://togithub.com/cli/cli/pull/8639) - Upgrade cli/go-gh to v2.5.0 for home-manager fix by [@​andyfeller](https://togithub.com/andyfeller) in [https://github.com/cli/cli/pull/8647](https://togithub.com/cli/cli/pull/8647) #### New Contributors - [@​w1mvy](https://togithub.com/w1mvy) made their first contribution in [https://github.com/cli/cli/pull/8516](https://togithub.com/cli/cli/pull/8516) - [@​v1v](https://togithub.com/v1v) made their first contribution in [https://github.com/cli/cli/pull/8474](https://togithub.com/cli/cli/pull/8474) - [@​octo](https://togithub.com/octo) made their first contribution in [https://github.com/cli/cli/pull/8566](https://togithub.com/cli/cli/pull/8566) - [@​fpistm](https://togithub.com/fpistm) made their first contribution in [https://github.com/cli/cli/pull/8589](https://togithub.com/cli/cli/pull/8589) - [@​leevic31](https://togithub.com/leevic31) made their first contribution in [https://github.com/cli/cli/pull/8574](https://togithub.com/cli/cli/pull/8574) - [@​Xeonacid](https://togithub.com/Xeonacid) made their first contribution in [https://github.com/cli/cli/pull/8607](https://togithub.com/cli/cli/pull/8607) **Full Changelog**: cli/cli@v2.42.1...v2.43.0 </details> --- ### Configuration 📅 **Schedule**: Branch creation - "before 4am on Monday" (UTC), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- 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/DelineaXPM/github-workflows). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yOTMuMCIsInVwZGF0ZWRJblZlciI6IjM3LjQzMS40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
gh pr checks --json was added in gh v2.50.0 (cli/cli#9079); on older gh (e.g. distro-packaged 2.45.0) it fails every poll with "unknown flag: --json" and no-mistakes' ci step spins until ci_timeout even on a green, mergeable PR. GetChecks now detects that specific stderr, memoizes it per Host so the unsupported flag is attempted at most once per process, and falls back to `gh pr view --json statusCheckRollup`, which has been stable far longer and exits 0 regardless of check state (unlike `pr checks`, which uses nonzero exits to signal pending/failing). The fallback mapper reuses normalizeCheckBucket, and explicitly coerces its empty-string default to CheckBucketPending: an unmapped bucket is neither Failing() nor Pending(), so ci.go's aggregation would otherwise count an unrecognized future gh state as passed and green-light the merge gate.
gh pr checks --json was added in gh v2.50.0 (cli/cli#9079); on older gh (e.g. distro-packaged 2.45.0) it fails every poll with "unknown flag: --json" and no-mistakes' ci step spins until ci_timeout even on a green, mergeable PR. GetChecks now detects that specific stderr, memoizes it per Host so the unsupported flag is attempted at most once per process, and falls back to `gh pr view --json statusCheckRollup`, which has been stable far longer and exits 0 regardless of check state (unlike `pr checks`, which uses nonzero exits to signal pending/failing). The fallback mapper reuses normalizeCheckBucket, and explicitly coerces its empty-string default to CheckBucketPending: an unmapped bucket is neither Failing() nor Pending(), so ci.go's aggregation would otherwise count an unrecognized future gh state as passed and green-light the merge gate.
…d (DER-2774) `parseChecksOutput` read the human `gh pr checks` TSV, matched a row literally NAMED `checks`, and returned `checks: null` when it found none. That one answer meant three different things at once: the probe died, the repo has no CI, and — on any repo whose required job is not called `checks` — the CI is RED. This repo is the third case (`tests (node 20|22|24)`, `static checks`, `public-comment security regression`). `readyVerdict` waived a null `checks` under `repo.allowMergeWithoutChecks: true`, which is the loosening the SHIPPED example config hands adopters alongside `"mergeMode": "direct"`. So on most adopter repos the key an owner enabled to mean "I have no CI" silently also meant "ignore CI". Executed on the parent commit against PR #2 of this repo, a genuinely red tree: `ready` printed `*** MERGEABLE (direct) ***`. The probe now runs `gh pr checks <n> --json name,state,bucket,link` and the parser answers from every check's BUCKET, returning pass / fail / pending / absent / unknown. Ground truth measured against gh 2.76.2 and 2.86.0 (the exit-code lore from the TSV mode does not carry over — the JSON exporter writes and returns BEFORE the exit-code logic, so a failing tree exits 0): - exit 0 → classify from buckets only; exit 0 is never itself "pass" - exit != 0 and stderr "no checks reported on the '<b>' branch" → ABSENT - anything else (auth, 404, throttle, SIGKILL timeout, no gh) → UNKNOWN The waiver now keys on ABSENT alone; fail, pending and UNKNOWN all block with the flag on. The zero-checks sentence is pinned as an exported sample and the matcher is DERIVED from it, so it is load-bearing rather than a test-only fixture. Second fix: `mergeAction` emits `--match-head-commit <sha>` in direct mode, and `ready` threads the `headRefOid` every other gate was evaluated against. `ready` prints a command someone runs later; without the pin a push landing in that window merges a tree nothing gated. Queue mode is unchanged — the native queue re-evaluates its own entry. Regression tests were run against the parent commit and observed FAILING first (9 failures), including the end-to-end P0. Rewrote, not supplemented, the tests that pinned the old shape: the mergeAction argv deep-equals now expect the head binding, and the waiver test constructs its input THROUGH THE REAL PARSER from recorded gh captures — handing it a `checks: null` literal is why it passed while the shipped pair waived a red tree. Added a call-site test that derives the production call sites from source, so a parameter threaded nowhere cannot pass. Docs swept for copy that asserted the old behavior: work.config.example.json, work-shepherd/SKILL.md, work/SKILL.md, and README (which now states the gh >= 2.50 floor that `pr checks --json` needs — cli/cli#9079; verified 2.76.2 and 2.86.0). Co-Authored-By: Claude Opus 5 (1M context) <[email protected]>
…d (DER-2774) (#18) * fix(ready): a red CI is not an absent CI; direct merges bind to a head (DER-2774) `parseChecksOutput` read the human `gh pr checks` TSV, matched a row literally NAMED `checks`, and returned `checks: null` when it found none. That one answer meant three different things at once: the probe died, the repo has no CI, and — on any repo whose required job is not called `checks` — the CI is RED. This repo is the third case (`tests (node 20|22|24)`, `static checks`, `public-comment security regression`). `readyVerdict` waived a null `checks` under `repo.allowMergeWithoutChecks: true`, which is the loosening the SHIPPED example config hands adopters alongside `"mergeMode": "direct"`. So on most adopter repos the key an owner enabled to mean "I have no CI" silently also meant "ignore CI". Executed on the parent commit against PR #2 of this repo, a genuinely red tree: `ready` printed `*** MERGEABLE (direct) ***`. The probe now runs `gh pr checks <n> --json name,state,bucket,link` and the parser answers from every check's BUCKET, returning pass / fail / pending / absent / unknown. Ground truth measured against gh 2.76.2 and 2.86.0 (the exit-code lore from the TSV mode does not carry over — the JSON exporter writes and returns BEFORE the exit-code logic, so a failing tree exits 0): - exit 0 → classify from buckets only; exit 0 is never itself "pass" - exit != 0 and stderr "no checks reported on the '<b>' branch" → ABSENT - anything else (auth, 404, throttle, SIGKILL timeout, no gh) → UNKNOWN The waiver now keys on ABSENT alone; fail, pending and UNKNOWN all block with the flag on. The zero-checks sentence is pinned as an exported sample and the matcher is DERIVED from it, so it is load-bearing rather than a test-only fixture. Second fix: `mergeAction` emits `--match-head-commit <sha>` in direct mode, and `ready` threads the `headRefOid` every other gate was evaluated against. `ready` prints a command someone runs later; without the pin a push landing in that window merges a tree nothing gated. Queue mode is unchanged — the native queue re-evaluates its own entry. Regression tests were run against the parent commit and observed FAILING first (9 failures), including the end-to-end P0. Rewrote, not supplemented, the tests that pinned the old shape: the mergeAction argv deep-equals now expect the head binding, and the waiver test constructs its input THROUGH THE REAL PARSER from recorded gh captures — handing it a `checks: null` literal is why it passed while the shipped pair waived a red tree. Added a call-site test that derives the production call sites from source, so a parameter threaded nowhere cannot pass. Docs swept for copy that asserted the old behavior: work.config.example.json, work-shepherd/SKILL.md, work/SKILL.md, and README (which now states the gh >= 2.50 floor that `pr checks --json` needs — cli/cli#9079; verified 2.76.2 and 2.86.0). Co-Authored-By: Claude Opus 5 (1M context) <[email protected]> * test(ready): a never-probed `checks` is not a verified-absent one (DER-2774) Orchestrator constraint: assert directly on `readyVerdict` that no UNSET value can route into the `allowMergeWithoutChecks` waiver. The pre-fix predicate was `checks == null || checks === ""`, so a caller that never ran the probe — or ran it and dropped the result — was indistinguishable from a repo with genuinely no CI, and the opt-in merged it. Covers null, undefined, "" and the key omitted entirely. Observed failing on the parent commit in isolation first: 4/4 assertions failed, each returning `{ready:true, why:"all gates pass (checks UNKNOWN — WAIVED …)"}`; 4/4 pass on the fix. The surrounding test's earlier assertions mask this one, which is why it was also proven standalone. Co-Authored-By: Claude Opus 5 (1M context) <[email protected]> --------- Co-authored-by: Derrek Wiedeman <[email protected]> Co-authored-by: Claude Opus 5 (1M context) <[email protected]>
…tity check (#148) README and the quickstart state the gh floor (pr checks --json, cli/cli#9079; #119 findings 21, 30) and that a protected default branch makes the scaffold the first PR (finding 4); the README says App-held seats arrive by dispatch (finding 5); identities.md gets the qa permission rationale (finding 14), per-agent GH_CONFIG_DIR and the 401 rule (findings 10, 22), that an App cannot create a repo (finding 3), and an identity check that works under an installation token (#139).
…tity check (#148) README and the quickstart state the gh floor (pr checks --json, cli/cli#9079; #119 findings 21, 30) and that a protected default branch makes the scaffold the first PR (finding 4); the README says App-held seats arrive by dispatch (finding 5); identities.md gets the qa permission rationale (finding 14), per-agent GH_CONFIG_DIR and the 401 rule (findings 10, 22), that an App cannot create a repo (finding 3), and an identity check that works under an installation token (#139).
…tity check (#148) README and the quickstart state the gh floor (pr checks --json, cli/cli#9079; #119 findings 21, 30) and that a protected default branch makes the scaffold the first PR (finding 4); the README says App-held seats arrive by dispatch (finding 5); identities.md gets the qa permission rationale (finding 14), per-agent GH_CONFIG_DIR and the 401 rule (findings 10, 22), that an App cannot create a repo (finding 3), and an identity check that works under an installation token (#139).
…iling inside a gate (#153) gh.Version parses the gh --version banner; load() checks it against ghFloor (2.50.0, for gh pr checks --json, cli/cli#9079) and refuses GH_TOO_OLD naming both versions. A banner that does not parse proceeds with a note. The crew's container carried Debian's 2.46: task finish died inside gh and milestone close skipped its sweep (#119 findings 21, 30; #149). Table tests for the parser and comparator; the check is stubbed through a func var.
…iling inside a gate (#153) gh.Version parses the gh --version banner; load() checks it against ghFloor (2.50.0, for gh pr checks --json, cli/cli#9079) and refuses GH_TOO_OLD naming both versions. A banner that does not parse proceeds with a note. The crew's container carried Debian's 2.46: task finish died inside gh and milestone close skipped its sweep (#119 findings 21, 30; #149). Table tests for the parser and comparator; the check is stubbed through a func var.
…iling inside a gate (#153) gh.Version parses the gh --version banner; load() checks it against ghFloor (2.50.0, for gh pr checks --json, cli/cli#9079) and refuses GH_TOO_OLD naming both versions. A banner that does not parse proceeds with a note. The crew's container carried Debian's 2.46: task finish died inside gh and milestone close skipped its sweep (#119 findings 21, 30; #149). Table tests for the parser and comparator; the check is stubbed through a func var.
#54) * add plan: github-pull-requests-part-1-gh-cli-macos * feat: the gh seam, command vocabulary, version bound and availability Task 1 of the GitHub pull requests plan: everything that can be decided before any GitHub data is parsed, all of it Foundation-only in PisakaCore. - GitHubCLI.swift: the narrow app/Core seam — GitHubCommand (arguments, working directory, per-command deadline, refreshesExecutableLocation), GitHubCommandResult, the GitHubCLITransport protocol, GitHubCLIError's three launch-side failures with their sentences, and the non-interactive environment overlay as a Core value the app merges over the inherited one. - GitHubCommands.swift: eight factories over the seven gh commands in scope, with the three --json field lists as ordered constants shared with the parsers. No --repo anywhere (gh resolves the repository from the remote, which is what makes Enterprise work for free) and no --web. - GitHubVersion.swift: parse gh's two-line --version output by the line's first two words, drop prerelease/build suffixes, compare, and pin 2.50.0 with the one flag that is the reason (pr checks --json, cli/cli#9079). - GitHubAvailability.swift: the four states from the two probes alone, the version judged before the sign-in, each carrying its sentence and its exact next step. Tests: every argument list byte for byte, the re-location flag by set equality over the factories, version parsing and comparison, and all four availability states. Co-Authored-By: Claude Opus 5 (1M context) <[email protected]> * feat: the one gh schema file, its closed tables, parsers and the summary rule `GitHubPullRequest.swift` carries the value types and the five closed vocabularies — a `CheckRun`'s status and conclusion, a `StatusContext`'s state, `gh`'s own five-way bucket and the review decision whose `""` is `.none` rather than an absence. `GitHubAPI.swift` is the one schema file: the parsers for `pr list` (both `__typename`s), `pr checks`, `repo view` and the create URL, and `GitHubSchemaError`, which names the key path that did not match. The summary rule is pinned in the order it is applied — `noChecks` on an empty rollup, then `pending` (unfinished outranks a failure already in, as GitHub's own badge does), then `failure`, then `success` — and a mixed array is decided over both tables at once, which is why the rollup keeps the two kinds apart instead of flattening them. Fixtures under `Tests/PisakaCoreTests/Fixtures/github/` are four verbatim captures from `gh 2.99.0` against this repository plus two authored violation cases; provenance in that directory's README, and the folder is listed in the test target's `exclude:` like the other two. Co-Authored-By: Claude Opus 5 (1M context) <[email protected]> * feat: PullRequestModel — the reader, its two tokens and the scripted seam The main-actor model behind both GitHub surfaces: it re-probes availability on every refresh and never more often, lists the open pull requests, looks the current branch's own up with a `--head` filter, and reads a row's per-job checks when it is expanded. Two generation tokens counted apart — a refresh and a checks load are independently re-triggerable — each bumped in its method's synchronous prefix, so a superseded run publishes nothing at all. A failed command or a schema refusal lands in the one message slot and leaves the rows exactly as they were; the slot records whose sentence it holds, so a refresh that succeeded cannot clear the only explanation an expanded row's empty jobs list has. Availability going not-ready is the stated exception and does clear the rows: a `gh` that is gone, too old or signed out is a different state of the world, not a failed read. `pr checks` is judged on its stdout parsing and never on its exit status (exit 8 is "pending", exit 1 is "a check failed", and both print the JSON); an empty `--head` array is "no pull request", not an error. `ScriptedGitHubCLI` joins the shared support helpers: answers keyed by the argument list `GitHubCommands` composes, a queue per key with a sticky last step, an unscripted call throws, every command logged in order, and a `Gate` per key so the superseding races are staged causally rather than timed. Co-Authored-By: Claude Opus 5 (1M context) <[email protected]> * feat: the create flow — the repo view base, push-first and the one-write rule `GitHubCreatePlan` is the New Pull Request sheet's pure half: the base comes from `gh repo view` and nowhere else, the two refusals are `PushUnavailableReason.detachedHEAD`/`.noRemote` verbatim (they are literally the same two impossibilities the commit dialog's push half names), and an empty base is the third way Create is off — carrying no sentence of its own, because the `repo view` failure that produced it already put gh's words in the model's one message slot. `PullRequestModel` gains the sheet's read (`prepareCreate`, under a third generation token so a branch-change refresh cannot blank an open sheet's picker) and the write: raise `isWriteInFlight`, read a *fresh* `CommitContext`, refuse per the plan, push through the existing `GitServicing.push(_:root:)` on both `PushPlan` branches, then `gh pr create` with an always-explicit `--base`, the number read out of the printed URL and the new row selected after the refresh. A push that fails never reaches `pr create`. Co-Authored-By: Claude Opus 5 (1M context) <[email protected]> * feat: the shared executable locator and the one gh Process transport `ExecutableLocator` is now the one definition of "where is this program on this Mac": inherited `PATH` → a caller-supplied well-known directory list → the login shell's own `$PATH` (`-l -c /usr/bin/env`, the `PATH=` line), with the found path carried together with the `PATH` that found it. It was lifted verbatim out of `LSPRustToolchainService`, which is now one of its two callers; `LSPGoToolchainService` is deliberately left alone. The one step that costs a subprocess is handed out as a closure, so each caller keeps its own child registry, deadline and teardown. `GitHubCLIProcessTransport` is the one app file that runs `Process` for `gh`. It merges Core's non-interactive overlay over the inherited environment (with the discovered `PATH`), runs in the repository root, drains both pipes on queues of their own, bounds the command by its own deadline and tears a late child down as a process group (SIGTERM → grace → SIGKILL), so a quit during `gh pr checkout` leaves behind neither `gh` nor the `git` it shelled out to. It decides nothing but the three `GitHubCLIError` cases; a non-zero status is an answer, not a failure. Discovery is per refresh, not per command and not per app run: the located `gh` is cached with its `PATH` and re-located only when the command carries `refreshesExecutableLocation` (the version probe, the first command of every refresh), when the cached path is gone from disk, or when a launch fails — in which case the search re-runs once and the command is retried. One login-shell spawn per refresh is the budget, and a `gh` installed a moment ago from the embedded terminal still lands on the next refresh. No new Core tests are possible here — `Process` cannot be linked from the test target — so the rules are pinned statically in Task 8. The Rust service's existing suites pass unchanged. Co-Authored-By: Claude Opus 5 (1M context) <[email protected]> * feat: the panel case, the coordinator and the eighth gated operation `BottomPanel.pullRequests` and `LocalHistoryEvent.pullRequest` (tag written out, because the case name is not the tag), `PullRequestModel.checkout(_:)` — which composes the command, asks an injected gate before anything is sent and hands the operation out exactly once — and `PullRequestCoordinator`, the `DatabaseViewerTabs` analogue that owns the model, the transport and the one site through which a checkout reaches the writer bracket. `runBranchOperation` is generalised to take the Local History event and an operation answering `String?`: `nil` is success, a sentence is a failure worth an alert, and `""` is a failure already published where the reader is looking — which is the only one this feature returns. The two branch callers keep passing `.branch`; the coordinator passes `.pullRequest`. The measured lint ceilings move with the scene's twenty-one lines (1838→1859, 1822→1843), with the reason recorded in `.swiftlint.yml` beside the number. The macOS app target does not build at this commit: `ContentView.panelContent` is exhaustive over `BottomPanel`, and the new case's branch — with the panel view it hosts — is the next task's. `swift test` and `swiftlint --strict` are both green. Co-Authored-By: Claude Opus 5 (1M context) <[email protected]> * feat: the panel, the sheet, the indicator and the refresh triggers The Pull Requests feature's three macOS surfaces, plus the two refresh triggers that were still missing. `PullRequestsPanelView` is the sixth bottom-dock panel: the three not-ready states each printing `GitHubAvailability`'s sentence and its one next step, rows carrying number, title, author, head -> base, the draft marker, the review decision and the checks summary, Checkout and Open on GitHub per row, and an expandable per-job checks list with each job's link. New Pull Request, Checkout and refresh all disable on the one write term, `isWriteInFlight`. It states no minimum height, like its five siblings. The **panel-shown trigger** is its one `.onAppear` — `ContentView`'s owner holds the selected panel in `@State` and publishes nothing the coordinator could subscribe to, so the panel's own view is where "the panel is on screen" is known. `NewPullRequestSheet` is the commit dialog's shape: the title seeded from `HEAD`'s subject, a body, a base picker defaulting to `repo view`'s answer, a Draft checkbox, and the plan's three sentences — the base, the publish-to-remote line and the uncommitted-changes note. A failure leaves the sheet open with every field intact. `PullRequestIndicatorView` sits beside the branch widget and draws nothing at all unless the checked-out branch has an open pull request — which is also the answer on a detached HEAD and when `gh` is not ready. Clicking it opens the panel with that row expanded. `PullRequestCoordinator` gains the **branch-change subscription** (the publisher's value, never `branchSwitcher.current`, which `@Published` leaves one behind; `dropFirst()` so the value that was already current at wiring time is not read as a change) and the **post-checkout refresh**; create's post-operation read is the model's own tail, so there is deliberately no second one. It also answers the sheet's two reads: `HEAD`'s subject and the local branch list. `ContentView` gains the sixth bar button, the `panelContent(_:)` branch and the indicator, reading the coordinator out of the window environment. `PisakaApp.swift` grows by **zero** lines — the injection is chained onto the existing `.environmentObject(databaseViewers)` modifier, so both measured ceilings stay where they are, and the scene still names no refresh trigger. `BottomPanelSourceGatingTests`' per-panel table gains the new case, so the new panel root is checked for a stated minimum height like the other five; the table is pinned to `panelContent(_:)`'s case labels by set equality, which is what forced this edit. `swift test` 4846/4846, `swiftlint --strict` clean, macOS and iOS Simulator builds green. Co-Authored-By: Claude Opus 5 (1M context) <[email protected]> * feat: the source-gating suite for the Pull Requests feature GitHubSourceGatingTests reads the feature's sources through #filePath and pins the rules the compiler cannot see: Process runs gh in one app file and Core names it nowhere; the app half is macOS-gated by set equality and the iOS layer names none of it; no gh argument is spelled in the app layer while the whole vocabulary is composed in GitHubCommands.swift; the checkout reaches the writer bracket through one site and no file under the feature names the gate; the executable locator has one definition and two callers; the refresh triggers live in the coordinator and the panel view, with the scene naming none; and the feature never polls, with GitHubCLIProcessTransport as the one stated exception. The vocabulary rule reads a second, comment-only stripper: the flags and subcommands *are* string literals, so the repository's usual scanner would delete the very text the rule is about. Co-Authored-By: Claude Opus 5 (1M context) <[email protected]> * feat: verify the Pull Requests feature's acceptance gates Runs the plan's Task 9 gates on the landed feature and records the results: `swift test` (4861 tests, 0 failures), `swiftlint --strict` from the repository root (0 violations over 492 files), `xcodegen generate`, the Release macOS build and the iOS Simulator build (both succeeded), and the ci.yml launch smoke test against the built `Pisaka.app` — the app survived its 5s deadline and was terminated by the step, with an empty log, so the dyld gate is clear. No source change: this task is verification only. Co-Authored-By: Claude Opus 5 (1M context) <[email protected]> * feat: the Pull Requests feature's documentation `docs/architecture/core-github.md` carries both halves with decisions G1–G12: the narrow seam, the one schema file and its closed tables, the checks exit-status rule, the 2.50.0 minimum and the flag that sets it, the non-interactive environment, why nothing composes `owner/repo`, discovery and its per-refresh cache, the four availability states, event-driven freshness and the three tokens, one write in flight, push-before-create with the `repo view` base, and the eighth gated operation's capture-first order — plus a per-file entry for each of the eight Core and six app files, the test inventory and the known limits. `CLAUDE.md` gains the two index blocks and one invariant paragraph; the disk-writer and Local History invariants now say eight. `README.md` and `docs/FEATURES.md` describe the panel, the sheet, the indicator and what is deliberately not there. The moved ceilings (1838→1859, 1822→1843) are itemised in `style-lint.md` with what each line bought. Four sibling docs were stale as of the code that shipped and are corrected here: `core-local-history.md` (nine events, eight operations across seven brackets, the new tag's raw value), `app-window.md` (six bar buttons, the sixth `panelContent` branch, the environment-injected coordinator, the indicator), `core-services.md` (the enum's sixth case) and `app-shell.md` (the sixth View menu command and `runBranchOperation`'s generalisation). `swift test` 4861 tests green; `swiftlint --strict` clean. Co-Authored-By: Claude Opus 5 (1M context) <[email protected]> * fix: address code review findings Correctness and safety - The checks link opens only http/https, `LeetCodeDescriptionView`'s rule for its reason: a check's `detailsUrl` is published by whatever integration posted the check, and `NSWorkspace.open` would hand a `file:` url to the Finder. - A failed `pr checks` read is recorded in `checksFailures` and drawn as its own answer: `checks[number] == nil` means "still reading", so the expanded row was left spinning forever on the one state the two-state split does not cover. - The create sheet draws `createMessage` — the slot only when the sentence is the create's own — so a background refresh's failure no longer reads as a refusal on a sheet where nothing has been submitted. - `clearRows()` drops `repository`, `createPlan` and the context they were planned over: an open sheet kept an enabled Create over a `create` that had started returning at its readiness guard without a word. - An empty title is refused by `create(...)` before anything is pushed, rather than by the sheet's button alone. - `gh pr checkout` now asks the same dirty-tree confirmation `switchBranch` and `checkoutRemote` ask, and an unwired coordinator refuses before the model raises the one-write flag — both in `PullRequestCoordinator.checkout(_:)`, because the flag is raised at the hand-out and a refusal after it would strand. - `pullRequests.terminateNow()` is called from the terminate observer beside the language servers' own; it existed and had no caller, so a `pr checkout` in flight could outlive the app with a `git` beneath it. - The bottom bar's Pull Requests glyph is `arrow.triangle.merge`, not Changes' own `arrow.triangle.pull`; the indicator expands only a row the panel has. Tests - `ScriptedGitHubCLI` gains `hold(_:on:forCall:)`. Holding a key holds both racers, so they resume in call order, the stale run publishes first and the token tests passed over a deleted guard — verified by mutation. The two superseded-refresh tests now let the fresh run finish and the stale one land last; both fail with the guard removed. - New coverage, each mutation-checked: the create sheet's token (two cases), the `auth status` failure branch, `pruneChecks` clearing a stale selection, the root guard on a model whose folder was closed under a ready panel (the old test refused at `isReady` a line earlier), the fractional-seconds timestamp and the last-`/pull/N`-wins rule. Docs - `GitHubSourceGatingTests`, `ScriptedGitHubCLI` and the comment-only stripper's stated exception in CLAUDE.md; `gh` in the hardened-runtime subprocess lists; `gh` as a requirement and a network destination in README; the sixth panel in core-zoom and FEATURES; the coordinator in app-shell; `ExecutableLocator` in app-editor's Rust entry, which still described the moved search as its own. - Both measured lint ceilings move by the scene's two new lines, with the reason recorded beside the numbers. Co-Authored-By: Claude Opus 5 (1M context) <[email protected]> * fix: address code review findings - `gh pr checks` prints no JSON for a pull request without CI: it exits non-zero with "no checks reported on the … branch" on stderr. That was read as a failed read, so expanding a healthy pull request with no checks put an orange warning strip across the panel and "Could not read checks" under the row — while the row's own badge already said `noChecks`, and the view's empty-list branch was unreachable. An empty stdout under a `noChecks` row now publishes the empty list the panel has a state for; the same shape under a row that does claim checks is still `gh` declining to answer, shown verbatim. - The post-checkout refresh asked `gh pr list --head` about the branch that was just *left*: `didWrite()` only starts the branch widget's re-read, so `branchSwitcher.current` is still the old branch on the next line. It now names the pull request's own `headRefName`, recorded at the click. - Re-expanding a row kept the previous read's failure for the whole of the new read, so "Could not read checks" outlived its reason and the "Reading checks…" state was reachable only on a row's first expansion. - The two moments the model blanks everything a sentence could be about — availability going not-ready, and the project closing — cleared the message slot only when a *refresh* had filled it, leaving a checks or create sentence standing above a panel drawing no rows. - `blockedMessage`'s doc comment had been spliced onto `untitledMessage`. Co-Authored-By: Claude Opus 5 (1M context) <[email protected]> * fix: address code review findings Co-Authored-By: Claude Opus 5 (1M context) <[email protected]> * fix: address code review findings Co-Authored-By: Claude Opus 5 (1M context) <[email protected]> * fix: address code review findings Co-Authored-By: Claude Opus 5 (1M context) <[email protected]> * fix: address code review findings Co-Authored-By: Claude Opus 5 (1M context) <[email protected]> * fix: address codex review findings Co-Authored-By: Claude Opus 5 (1M context) <[email protected]> * fix: address code review findings Co-Authored-By: Claude Opus 5 (1M context) <[email protected]> * fix: address code review findings Co-Authored-By: Claude Opus 5 (1M context) <[email protected]> * fix: address code review findings Co-Authored-By: Claude Opus 5 (1M context) <[email protected]> * fix: address code review findings Co-Authored-By: Claude Opus 5 (1M context) <[email protected]> * fix: address code review findings Co-Authored-By: Claude Opus 5 (1M context) <[email protected]> * move completed plan: 20260903-github-pull-requests-part-1-gh-cli-macos.md --------- Co-authored-by: Claude Opus 5 (1M context) <[email protected]>
…o verdict `q` discarded gh's stderr, so a failed call and an empty answer were the same empty string. On gh 2.46.0 (Debian 13's package) `gh pr checks --json` fails with `unknown flag: --json`, which read as "no checks yet", and the watcher waited out its whole timeout; an unauthenticated gh read as "cannot read PR (transient?)" until timeout the same way. Every read is now judged by gh's exit code, with its stderr kept for `gh_failed` to classify: - an unknown flag exits 2 at once, naming the installed gh and the minimum, 2.50.0 -- the first release with `gh pr checks --json` (cli/cli#9079; 2.49.2 rejects the flag, 2.50.0 takes it, both run); - gh's auth exit code 4, or an HTTP 401, exits 2 at once; - gh's "no checks reported" error (how gh >= 2.50 answers an empty set) is the existing "no checks reported yet -- waiting (not green)"; - any other error is named while the loop waits, and is never a verdict. The same discarded error was worse on five other reads: with the pending count, the failing-check names, the head branch, the runs list or a run's jobs failing, the loop reported "all N checks settled green" and exited 0 -- for a PR with a check still pending or red. Those reads are checked too, and stuck_runs returns gh's exit code instead of reporting nothing stuck. Exit codes are unchanged for every case that already reached one: 2 still means no verdict (the header now says so), and gh too old or unauthenticated was already exit 2, after the timeout. Tests: the fake gh can now fail any read as a recorded gh did (stderr, exit code), and logs the reads it is asked; the read list is checked against a green run, so a new read cannot go untested. Closes #113 Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]> Claude-Session: https://claude.ai/code/session_01XzBqCe1mXzakoALxqcyyzx
This PR proposes JSON ouptup support for the
gh pr checkscommand.Unlike the suggestion in #6056 (comment), it doesn't do any aggregation, and rather returns the plain values.
The fields were extracted from
cli/pkg/cmd/pr/checks/aggregate.go
Lines 12 to 20 in 178fc2e
The logic was inspired by https://github.com/cli/cli/blob/4b077daf7e74dbe6bf933f69e220066e3a12e8b4/pkg/cmd/repo/deploy-key/list/list.go upon suggestions from @andyfeller.
Fixes #6056