*: Remove use of cliapp library as it seems unmaintained
-
Implement continuous reading of stdin and stdout over subprocess.POpen instead of cliapp.runcmd(). We loose the ability to run multiple commands using a pipe. This is okay for now.
-
Use threads instead of select() to keep the implementation relatively simple. Overall build performance is unlikely to be effected.
-
Use subprocess.run() terminology instead of cliapp terminology.
Tests:
-
Run unittests.
-
Build amd64 and a20-olinuxino-lime2 targets. The latter failed with slapd related failures.
-
Interrupt the build process in the middle and confirm that cleanups are happening as expected.
-
Confirm that logging output is same as before the changes.