* docs(release create): distinguish difference between '--generate-notes' and '--notes-from-tag'
Signed-off-by: Andrey <andrekabatareika@gmail.com>
* Clarify release notes behavior for unannotated tags
Updated help text to specify that if a git tag is not annotated, the release notes will use the commit message instead of the tag annotation.
---------
Signed-off-by: Andrey <andrekabatareika@gmail.com>
Co-authored-by: Kynan Ware <47394200+BagToad@users.noreply.github.com>
Refactor the logic for checking `workflow` scope checking in releases to be in the positive - check if the scope is there, not check if it isn't there. Then, when the function is called we invert it.
Also update comments to be more imperative.
This refactor also incorporates @andyfeller's suggestion to use `slices`.
Co-Authored-By: Andy Feller <andyfeller@github.com>
Changing to `release-notes.md` from `changelog.md` may help users better contextually understand usage.
Co-authored-by: Tyler McGoffin <jtmcg@github.com>
Found with
rg '(^ | \t|\t )' -g '*.go' -g '!*_test.go'
Mixed indent exceptions:
- wrapped long list items with extra 2-space indent
- code snippets using space indent
- commented code lines having "\t*// \t+" prefix
- gh help actions
- highlight 3 commands to run for more information
- gh extension
- wrapping url for online linking
- fix install subcommand missing backtick formatting
- gh release create
- fixing mixed indenting causing usage misalignment
- root help
- backtick wrap help command for more info for consistency
- gh help environment
- backtick wrap missed OWNER/REPO
- gh variable
- brought consistency to output when deleting or setting variable
Enables up to 3 retries of uploading a single asset when encountering a network error or a HTTP 5xx error.
Bonus:
- simplifies ConcurrentUpload implementation
- support Go context cancellation
Fixes https://github.com/cli/cli/issues/6566
When running `gh release create <tag> --verify-tag`, we query <tag>
among repository tags via the GitHub API before creating the release,
and abort the command if the tag was not found.
When publishing a release, we rely on server-side validation to abort the operation if an existing published release with the same tag name already exists.
However, then creating a release with assets, we first create a draft release, upload assets to it, then publish. If there was an existing release with the same tag name, the operation would fail but it would leave behind a temporary draft release with assets. This makes the operation fail earlier, before creating any records.