Skip to content

fix: improve checks before using colors & tput

Christian Heusel requested to merge fun-with-term into master

The latest release of devtools has included some pretty printing capabilities and fancy terminal stuff with the spinner and so on.

It seems like the existing safeguards to disable this for incapable terminals were not enough though, therefore we saw two types of errors:

  • offload-build:
    ==> Building in chroot for [extra] (x86_64)...
    tput: unknown terminal "unknown"
    tput: unknown terminal "unknown"
    tput: unknown terminal "unknown"
  • repro builders:
    ==> Successfully switched <package> to version <version>
    tput: No value for $TERM and no -T specified
    ERROR: Failed checkout <package>

The recently included fail option made this error populate to the command level and therefore increased its impact from a not so nice logging message to a more severe problem which made the command abort.

We fix this by putting more safeguard around the usages of the color escape sequences and tput commands.

Fixes: fedfc80c ("feat(term): add terminal utils to handle a dynamic spinner")
Fixes: 66e83c95 ("feat(version): pretty print and group together version check results")
Fixes: d0dc0e1a ("feat(search): add optional plain output formatting")
Signed-off-by: Christian Heusel christian@heusel.eu

Edited by Christian Heusel

Merge request reports