kiwi-el8/.github
Dan Čermák 48817a6441
Refactor Command class
Command.run() currently has a bit of a confusing behavior: if raise_on_error is
False and the executable is not found, then a weird CommandT is returned (return
code is -1 and stdout+stderr is None). This makes it possible to hanlde command
not found errors separately, but it makes that needlessly verbose. So instead,
let's just return None in *this* special case.

That in turn uncovered, that in most cases when we set `raise_on_error=True`, we
actually want an error if the command is not present but no error if the command
fails to execute (e.g. because it returns -1 if you run `$cmd --version`). Hence we
introduce the flag `raise_on_command_not_found`, which causes an exception to
be raised if the command is not found. This makes it independent of the
`raise_on_error` flag.

Additionally, we add a small optimization: if command starts with /, then we
assume it's a full path and we omit the call to which (and just check whether it
exists).

Co-authored-by: Marcus Schäfer <marcus.schaefer@gmail.com>
2024-02-19 16:33:24 +01:00
..
workflows Refactor Command class 2024-02-19 16:33:24 +01:00
CONTRIBUTING.md First draft of issue#43 2016-03-10 13:33:50 +01:00
ISSUE_TEMPLATE.md github: Refresh issue template to cover more operating scenarios 2022-06-22 17:38:20 -04:00
PULL_REQUEST_TEMPLATE.md First draft of issue#43 2016-03-10 13:33:50 +01:00