canonical / craft-cli

https://canonical-craft-cli.readthedocs-hosted.com/en/latest/
GNU Lesser General Public License v3.0
9 stars 15 forks source link

Multiprocess operations can lead to spinner deadlock #172

Open cmatsuoka opened 1 year ago

cmatsuoka commented 1 year ago

Bug Description

There is a bad interaction between the way we perform overlay operations (a chroot in a multiprocess-created subprocess) and the way craft applications indicate progress on the cli (a spinner in a thread).

The consequence of the bad interaction is that trying to write an info message to the terminal ends up deadlocking the main thread in the subprocess because the thread that could unblock it does not exist.

See https://github.com/canonical/craft-parts/pull/535.

To Reproduce

TODO

part yaml

No response

Relevant log output

TODO