* Add accurate context when run rerun fails
* Update tests to verify behaviour for API errors
Signed-off-by: Babak K. Shandiz <babakks@github.com>
* Use the new `httpmock.JSONErrorResponse` helper
Signed-off-by: Babak K. Shandiz <babakks@github.com>
---------
Signed-off-by: Babak K. Shandiz <babakks@github.com>
Co-authored-by: Babak K. Shandiz <babakks@github.com>
* [gh run watch] Support `--compact` flag
* [gh run watch] Support `--compact` flag
* Add changes for updated AC
* Incorporate review changes
* docs(run watch): fill up the line to 80 chars
Signed-off-by: Babak K. Shandiz <babakks@github.com>
---------
Signed-off-by: Babak K. Shandiz <babakks@github.com>
Co-authored-by: Babak K. Shandiz <babakks@github.com>
Signed-off-by: Babak K. Shandiz <babakks@github.com>
This is to make sure we do not pick up the wrong file if there is a
`.txt` sequence in the middle of a job name.
This commit converts all of the places using ColorScheme.Gray and ColorScheme.Grayf to Muted and Mutedf.
There is a little extra tidying up with local variable names or converting code to use Mutedf format.
After discussing this with the team, the `gh config` changes to display `accessible_colors` have been removed from this branch being outside of acceptance criteria. This will be moved to a separate issue along with any other work needed to finalize the public preview such as `gh help` entries for `GH_ACCESSIBLE_COLORS` environment variable.
List commands that use ColorScheme.Gray have been updated to use ColorScheme.Muted.
This commit expands filepathDescendsFrom(string, string) to handle edge cases such as mixing absolute and relative paths or artifact name edge cases.
Additionally, tests for filepathDescendsFrom() and downloadrun() have been expanded to verify additional use cases.
This incorporates the work done by @williammartin to improve reasoning about `gh run download` behavior through testing while verifying a simpler solution to checking if a path is contained within a directory.
This builds off suggestion to reuse logic used already within `gh run download` for detecting path traversals.
This largely works but runs into an issue where detection logic doesn't handle non-separated traversal.
This commit expands the `Step` structure used with GitHub Actions workflow runs to include fields indicating when steps start and complete.
This information is already provided by the GitHub API, so this only involves expanding the structure, fields exported, and the associated tests.
In the future, I could see `gh` including the duration calculation which is used when viewing workflow or workflow run.