codespace: Hint adding codespace scope when not logged in by @rajhawaldar in https://github.com/cli/cli/pull/7961codespace ports: Forward codespace ports over Dev Tunnels by @dmgardiner25 in https://github.com/cli/cli/pull/8023cache delete: Percent-encode keys by @benoit-pierre in https://github.com/cli/cli/pull/8030gpg-key delete, run watch: Return HTTP errors properly by @heaths in https://github.com/cli/cli/pull/8037pr checks: Show cancelled checks by @rajhawaldar in https://github.com/cli/cli/pull/7960cache list: Add JSON exporting support by @siketyan in https://github.com/cli/cli/pull/7954auth: Fix startup panic when logged out by @alrs in https://github.com/cli/cli/pull/8105secret list, deploy-key list: Support standard output format flags by @rajhawaldar in https://github.com/cli/cli/pull/8081pr create: Update the docs on flag --fill by @peterramaldes in https://github.com/cli/cli/pull/8080run view: Use attempt input when fetching jobs by @arunsathiya in https://github.com/cli/cli/pull/7831project item-edit: New clear flag to remove item field value by @arunsathiya in https://github.com/cli/cli/pull/8024Full Changelog: https://github.com/cli/cli/compare/v2.35.0...v2.36.0
gh alias delete now supports the --all flag by @JunNishimura in https://github.com/cli/cli/pull/7900gh release delete now supports the --cleanup-tag flag by @kemingy in https://github.com/cli/cli/pull/7884gh release create now supports the --notes-from-tag flag by @kbailey4444 in https://github.com/cli/cli/pull/7861gh repo list --fork and --source behavior for orgs @ncalteen in https://github.com/cli/cli/pull/7964gh cs create now shows the full permissions URL by @joshmgross in https://github.com/cli/cli/pull/7983gh auth login falls back to using insecure storage by @kbailey4444 in https://github.com/cli/cli/pull/7781Full Changelog: https://github.com/cli/cli/compare/v2.34.0...v2.35.0
api: Add --verbose flag by @JunNishimura in https://github.com/cli/cli/pull/7826config clear-cache: New command to clear the cli cache by @ffalor in https://github.com/cli/cli/pull/7693workflow list: Add --json, --jq and --template flags by @rajhawaldar in https://github.com/cli/cli/pull/7902project mark-template: New command to control project template options by @mntlty in https://github.com/cli/cli/pull/7916 https://github.com/cli/cli/pull/7923docs: Fix Nix/NixOS install docs by @junaga in https://github.com/cli/cli/pull/7891repo rename: Properly rename remote for GHES hosts by @samcoe in https://github.com/cli/cli/pull/7890pr checks: Return different exit code for PENDING vs FAILED by @rajhawaldar in https://github.com/cli/cli/pull/7866repo create: Execute clone when readme option is enabled by @shion1305 in https://github.com/cli/cli/pull/7837repo create: Allow --disable-wiki flag with --template flag by @utouto97 in https://github.com/cli/cli/pull/7886auth status: Reword token invalid message by @kousikmitra in https://github.com/cli/cli/pull/7906status: Show status even if a comment 404s by @rwe in https://github.com/cli/cli/pull/7873run view: Fetch all run jobs by @harveysanders in https://github.com/cli/cli/pull/7879Full Changelog: https://github.com/cli/cli/compare/v2.33.0...v2.34.0
Meowdy terminal aficionados! 😸
Before moving onto the freshest gh release notes, I have some GitHub CLI team news to share with the community:
Our dear friend and college @vilmibm has moved on from GitHub in following his passions for digital humanities 😿
The core GitHub CLI team could not be happier for Nate as those same passions has brought gh to this point. 😻 So a tremendous unimaginable thanks to our dear friend as he chases the wind with the hopes he continues as part of the GitHub CLI community 💯
We welcome a new GitHub CLI team member: @andyfeller 😹
Andy has been a long-time CLI extension advocate within GitHub for some time, maintaining extensions for unique user challenges. Please warmly welcome him as he gets up to speed with supporting our community officially! ❤️
release create: Trim spaces on tag name by @harveysanders in https://github.com/cli/cli/pull/7759ls aliases to list subcommands by @cawfeecake in https://github.com/cli/cli/pull/7818alias set by @JunNishimura in https://github.com/cli/cli/pull/7787workflow by @jamietanna in https://github.com/cli/cli/pull/7841Full Changelog: https://github.com/cli/cli/compare/v2.32.1...v2.33.0
pr checks: Fix regression making it unusable in GHES versions older than 3.9 by @samcoe in https://github.com/cli/cli/pull/7725pr edit: Do not make reviewer update request if there are no reviewer changes by @samcoe in https://github.com/cli/cli/pull/7730repo view: Sanitize file contents before displaying them by @samcoe in https://github.com/cli/cli/pull/7694release download: Use filepath.Clean to sanitize path for archive downloads by @samcoe in https://github.com/cli/cli/pull/7720auth: Do not add auth token to redirect requests which do not have the same host as the initial request by @samcoe in https://github.com/cli/cli/pull/7692Full Changelog: https://github.com/cli/cli/compare/v2.32.0...v2.32.1
hello terminal fans, it's me @vilmibm .
We are pleased to bring you a new release of the GitHub CLI on this Confusion 46, 3189 YOLD.
We've got features. we've got bugfixes. This release has a real zest for life; can you feel it?
First though, a sad note. @mislav has moved on from GitHub. He was instrumental to this project and without him I don't think it would have ever happened. BIG THANKS MUCH LOVE to this wonderful person!
Happily, we have a new core team member who is, truly, a delight. Please welcome @williammartin , whom you'll see a lot more on issues and pull requests moving forward.
Now, let's talk BUSINESS.
Repository Rulesets are in beta on git hub dot com and they are now also in beta on git hub sea ell eye. You can list, view, and check branches against rulesets set at the repository or organization level. Major shoutouts to @vaindil for this big contribution. My favorite command in here is gh rs check <branch> which will tell you what rules would apply to a hypothetical branch name. To learn more, run gh help ruleset.
gh cache is a new top level command in our suite of support for Actions. It lets you list and delete caches saved in Actions. It's neat and I like it. Thanks, @joshkraft ! To learn more, run gh help cache.
gh pr create behavior like gh repo fork by @leavesster in https://github.com/cli/cli/pull/7330--server-port=0 and printing connection details by @josebalius in https://github.com/cli/cli/pull/7655fill-first flag to pr create command by @kousikmitra in https://github.com/cli/cli/pull/7398GH_REPO is set by @alex-petrov-vt in https://github.com/cli/cli/pull/7626repo sync by @samcoe in https://github.com/cli/cli/pull/7610Full Changelog: https://github.com/cli/cli/compare/v2.31.0...v2.32.0
project commands for interacting with and manipulating projects. Huge shoutout 🥳 for the time and effort put into this work by @mntlty in https://github.com/cli/cli/pull/7375 https://github.com/cli/cli/pull/7578search code command by @joshkraft in https://github.com/cli/cli/pull/7376cs view command by @dmgardiner25 in https://github.com/cli/cli/pull/7496 https://github.com/cli/cli/pull/7539api: output a single JSON array in REST pagination mode by @mislav in https://github.com/cli/cli/pull/7190api: support array params in GET queries by @mislav in https://github.com/cli/cli/pull/7513api: force method to uppercase by @ffalor in https://github.com/cli/cli/pull/7514alias: Allow aliases to recognize extended commands by @srz-zumix in https://github.com/cli/cli/pull/7523alias import: Fix --clobber flag by @samcoe in https://github.com/cli/cli/pull/7569run rerun: Improve docs around --job flag by @williammartin in https://github.com/cli/cli/pull/7527run view: Support viewing logs for jobs with composite actions by @williammartin in https://github.com/cli/cli/pull/7526gist edit: Add selector option to gist edit command by @kousikmitra in https://github.com/cli/cli/pull/7537repo clone: Set upstream remote to track all branches after initial fetch by @samcoe in https://github.com/cli/cli/pull/7542extension: Speed up listing extensions by lazy-loading extension information when needed by @mislav in https://github.com/cli/cli/pull/7493auth: Add timeouts to keyring operations by @samcoe in https://github.com/cli/cli/pull/7580auth status: write to stdout on success by @rajhawaldar in https://github.com/cli/cli/pull/7540completion: Fix bash completions for extensions and aliases by @mislav in https://github.com/cli/cli/pull/7525issue/pr view: alphabetically sort labels for gh pr/issue view by @ffalor in https://github.com/cli/cli/pull/7587Full Changelog: https://github.com/cli/cli/compare/v2.30.0...v2.31.0
repo set-default --view can now be called without a repo argument by @Jackenmen in https://github.com/cli/cli/pull/7441release upload sanitizes asset filenames prior to uploading by @jtpetty in https://github.com/cli/cli/pull/7477pr status uses lighter API in supported environments by @williammartin in https://github.com/cli/cli/pull/7462pr create respects GH_REPO env variable by @ffalor in https://github.com/cli/cli/pull/7445gh repo set-default --view without repo argument by @Jackenmen in https://github.com/cli/cli/pull/7441pr create by @ffalor in https://github.com/cli/cli/pull/7445gh run commands by @vilmibm in https://github.com/cli/cli/pull/7302Full Changelog: https://github.com/cli/cli/compare/v2.29.0...v2.30.0
alias import command by @kevhlee in https://github.com/cli/cli/pull/7118codespace: Add capability to filter by --repo-owner by @kousikmitra in https://github.com/cli/cli/pull/7347pr status: display auto-merge information by @mjpieters in https://github.com/cli/cli/pull/7386pr view: display auto-merge information by @mjpieters in https://github.com/cli/cli/pull/7385pr: add autoMergeRequest field to JSON output by @mjpieters in https://github.com/cli/cli/pull/7384repo create: fix empty default description for local repository by @vwkd in https://github.com/cli/cli/pull/7383release download: show progress bar by @joshkraft in https://github.com/cli/cli/pull/7380codespace delete: print confirmation message by @kousikmitra in https://github.com/cli/cli/pull/7353make install: fix for macOS by @Xerkus in https://github.com/cli/cli/pull/7369Full Changelog: https://github.com/cli/cli/compare/v2.28.0...v2.29.0
macOS binaries are now signed and notarized
.tar.gz, but .zip instead. This is because .tar.gz archives cannot be notarized.checksums.txt file attached to every release now includes the checksum of the Windows MSI installer too.macOS and Windows binaries are now compiled from their respective platforms and have cgo enabled. This might help resolve respecting system proxy settings and avoid related networking issues.
issue edit: edit multiple issues at the same time by @heaths in https://github.com/cli/cli/pull/7259
Add gh org list by @joshkraft in https://github.com/cli/cli/pull/7257
ssh-key: add ability to manage signing keys by @kousikmitra in https://github.com/cli/cli/pull/7270
search: enable owner flag to take multiple values by @kousikmitra in https://github.com/cli/cli/pull/7305
codespace: add --web flag for list & create commands by @doaortu in https://github.com/cli/cli/pull/7288
Our Debian & RPM packages now ship with shell completion scripts by @Xerkus in https://github.com/cli/cli/pull/7293
run list: add --event and --created filters by @cawfeecake in https://github.com/cli/cli/pull/7363 https://github.com/cli/cli/pull/7352
repo: add visibility JSON field by @yeikel in https://github.com/cli/cli/pull/7337
cs stop command: Stoppping -> Stopping by @FalseDev in https://github.com/cli/cli/pull/7318auth login: normalize host name by @tuananhlai in https://github.com/cli/cli/pull/6999gh codespace ssh by @jkeech in https://github.com/cli/cli/pull/7325gh cs ports requiring sudo for privileged port numbers by @cmbrose in https://github.com/cli/cli/pull/7326CODEOWNERS inside the .github/ dir by @SauravMaheshkar in https://github.com/cli/cli/pull/7366Full Changelog: https://github.com/cli/cli/compare/v2.27.0...v2.28.0
This is primarily an out of band bugfix release for codespaces users, but does include a new command gh run delete.
gh run delete by @phillippbertram in https://github.com/cli/cli/pull/7254--repo for search subcommands by @kkocha in https://github.com/cli/cli/pull/7274Full Changelog: https://github.com/cli/cli/compare/v2.26.1...v2.27.0-pre0
Full Changelog: https://github.com/cli/cli/compare/v2.26.0...v2.26.1
When running gh auth login, your credentials will now be stored in your operating system's credential storage instead of directly on disk. In other words, --secure-storage is now default behavior. We've added a new flag, --insecure-storage, to opt into the old insecure behavior in case you need to debug an issue with credential storage.
As before, to take advantage of credential storage, please re-run gh auth login.
For more context, you can read the v2.24.0 release notes
Ref: secure storage by default by @vilmibm in https://github.com/cli/cli/pull/7276
--fail-fast option to pr checks --watch by @benjlevesque in https://github.com/cli/cli/pull/7203--template for issue and PR by @guerinoni in https://github.com/cli/cli/pull/7185Full Changelog: https://github.com/cli/cli/compare/v2.25.1...v2.26.0-pre0
variable: fix listing and deleting per-environment variables by @rsteube in https://github.com/cli/cli/pull/7207Full Changelog: https://github.com/cli/cli/compare/v2.25.0...v2.25.1
variable set by @atirikt in https://github.com/cli/cli/pull/6928variable list by @atirikt in https://github.com/cli/cli/pull/6995variable delete by @atirikt in https://github.com/cli/cli/pull/6929ext install: Introduce new --force flag by @heaths in https://github.com/cli/cli/pull/7173browse: Improve documentation and consistency of the --commit flag by @alex-petrov-vt in https://github.com/cli/cli/pull/7105repo sync: Ensure git fetch is always authenticated by @samcoe in https://github.com/cli/cli/pull/7139repo delete: Don't delete repos that have transfered ownership by @samcoe in https://github.com/cli/cli/pull/7106auth: Skip searching keyring when checking for environment tokens by @benjlevesque in https://github.com/cli/cli/pull/7169auth refresh: Improve documentation of --scopes flag behavior by @alex-petrov-vt in https://github.com/cli/cli/pull/7132pr status: Hide "current branch" when using --repo flag by @jtpetty in https://github.com/cli/cli/pull/7180repo archive: Change to use Prompter package by @Ruminateer in https://github.com/cli/cli/pull/7083search: Fix multiword keyword quoting by @samcoe in https://github.com/cli/cli/pull/7170Full Changelog: https://github.com/cli/cli/compare/v2.24.3...v2.25.0
Full Changelog: https://github.com/cli/cli/compare/v2.24.2...v2.24.3
Full Changelog: https://github.com/cli/cli/compare/v2.24.1...v2.24.2
auth login: Fix retrieving current login name when pasting auth token @samcoe in https://github.com/cli/cli/pull/7114Full Changelog: https://github.com/cli/cli/compare/v2.24.0...v2.24.1
The gh auth login and gh auth refresh commands gained the new --secure-storage flag. In this mode, the access token that GitHub CLI uses for GitHub API requests will now be stored in the system keyring instead of in the plain text config file.
To migrate as an existing GitHub CLI user, re-authenticate like so:
gh auth refresh --secure-storage -h github.com
Depending on your system, you could get an interactive prompt to allow the CLI tool to access the system keyring. The systems that are supported are:
Please note:
This feature is currently opt-in, but will become the default in the near future.
If none of the system storage providers are found, or the store operation fails, the token will be written to the config file as before.
Using this feature could result in Go extensions breaking if they were not updated to the latest go-gh version. If extensions you are using no longer work after migrating your token to secure token storage, please report the issue to that extension's repository.
Storing tokens in system keyring most likely won't work in “headless” environments.
browse: add --releases option by @owenvoke in https://github.com/cli/cli/pull/6996gpg-key add --title to name GPG keys by @rpadaki in https://github.com/cli/cli/pull/6993gh repo unarchive by @Ruminateer in https://github.com/cli/cli/pull/7003arm64 prebuilt binaries by @beret in https://github.com/cli/cli/pull/4435repo fork: retry git clone on git clone failure by @jsoref in https://github.com/cli/cli/pull/6962repo fork: add newline after printing error about existing fork by @digitalfu in https://github.com/cli/cli/pull/7030codespace: add --repo filter to more commands by @cmbrose in https://github.com/cli/cli/pull/6669codespace code: always open new VS Code window by @cmbrose in https://github.com/cli/cli/pull/7092pr diff: sanitize control characters for terminal output by @mislav in https://github.com/cli/cli/pull/7108browse: use --commit flag to browse commit SHAs containing only digits by @yanskun in https://github.com/cli/cli/pull/7038pr status: fix when on a detached HEAD by @alex-petrov-vt in https://github.com/cli/cli/pull/7082auth token: respect GH_HOST if a hostname is not provided by @samcoe in https://github.com/cli/cli/pull/7094config.AuthToken and config.DefaultHost methods by @samcoe in https://github.com/cli/cli/pull/7049working-with-us.md by @vilmibm in https://github.com/cli/cli/pull/7077Full Changelog: https://github.com/cli/cli/compare/v2.23.0...v2.24.0
repo fork: Add --default-branch-only flag by @jsoref in https://github.com/cli/cli/pull/6983repo edit: Add visibility warning by @tuananhlai and @samcoe in https://github.com/cli/cli/pull/6980secret set: Fix setting Codespaces user secrets by @joshmgross in https://github.com/cli/cli/pull/6923secret set: Fix setting Dependabot org secrets by @samcoe in https://github.com/cli/cli/pull/6941secret set: Fix multiline values when reading from .env file by @mislav in https://github.com/cli/cli/pull/6932run: Fix integer overflow error when more than 255 run attempts by @samcoe in https://github.com/cli/cli/pull/6935extension browse: Improve usability and accessibility by @vilmibm in https://github.com/cli/cli/pull/6584issue/pr edit: Fix adding/removing projects using flags by @samcoe in https://github.com/cli/cli/pull/6955codespace delete: Default to authenticated user by @luanzeba in https://github.com/cli/cli/pull/6944codespace create: Default to using current repo by @rneatherway in https://github.com/cli/cli/pull/6596repo set-default: Fix interactive mode not showing all remotes by @despreston in https://github.com/cli/cli/pull/6969GH_DEBUG: Fix API logging corrupting response bodies by @mislav in https://github.com/cli/cli/pull/6976pr create/repo fork: Avoid implicitly fetching when adding a new git remote by @mislav in https://github.com/cli/cli/pull/6990Full Changelog: https://github.com/cli/cli/compare/v2.22.1...v2.23.0