The real problem was that some environments remove carriage returns to "clean up" the text, which breaks the progress bar redraw. We should probably instead use
\x1b[0G(move to column 0) terminal escape.
Not sure why this wasn't automatically updated, but it is fixed as of
Is there a problem/bug caused by implicit subtyping?
Doesn't it already work?