-
-
Notifications
You must be signed in to change notification settings - Fork 371
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Ugly log output in Mill 0.12.4 #4171
Comments
Probably a consequence of #4053, which tried to minimize screen clears to avoid jittering in the prompt during refreshes It seems that on your example, spaces and tab characters do not clear any text they are printed over. Not sure if it's a shell thing or a terminal thing. What shell and terminal are you using? Does it reproduce on other terminals? |
You could also revert that commit and see if thet fixes the issue, just to confirm its the culprit |
|
Same issue with |
Reverting seems to fix the issue. (I took |
one mitigation could be to write a clear-line-right before writing every tab character. That would still minimize the amount of clearing going on in the common case, but at least would ensure tabs get printed on a properly blank canvas |
@lefou maybe you could try adding
|
This seems to fix the issue for me. diff --git a/main/util/src/mill/util/PromptLogger.scala b/main/util/src/mill/util/PromptLogger.scala
index c55e9dc73f0..12cbd91c79d 100644
--- a/main/util/src/mill/util/PromptLogger.scala
+++ b/main/util/src/mill/util/PromptLogger.scala
@@ -300,7 +300,7 @@ private[mill] object PromptLogger {
// https://stackoverflow.com/questions/71452837/how-to-reduce-flicker-in-terminal-re-drawing
dest.write(
new String(buf, 0, end)
- .replaceAll("(\r\n|\n)", AnsiNav.clearLine(0) + "$1")
+ .replaceAll("(\r\n|\n|\t)", AnsiNav.clearLine(0) + "$1")
.getBytes
)
} |
After bumping a project from Mill
0.12.2
to0.12.4
, the log often contains parts of the progress output ruler.Example output (excerpt):
mill __.compile
The text was updated successfully, but these errors were encountered: