microsoft / RTVS

R Tools for Visual Studio.
MIT License
390 stars 110 forks source link

Updating progress bar erases existing output lines in REPL #4270

Closed hongooi73 closed 6 years ago

hongooi73 commented 6 years ago

Howdy!

Just something I noticed in the latest RTVS, as of VS 15.6.2.

If I have a dplyr operation that takes more than a certain length of time, a progress bar is displayed. RTVS will now update this correctly, as opposed to inserting newlines each time the bar gets extended. Hooray! Unfortunately, when it does this, any existing output lines in the REPL are wiped.

Here is a repro:

library(dplyr)
df <- rowwise(data.frame(a=1:1e4, b=1:1e4))
out <- do(df, { data_frame(.$a + .$b) })

If you run this, you should find that any existing output lines will be erased.

MikhailArkhipov commented 6 years ago

I'll look into this.

hongooi73 commented 6 years ago

Possibly related: after this happens, the output text afterwards will sometimes be randomly coloured red.

image

MikhailArkhipov commented 6 years ago

I didn't get output erased, so it probably relates to odd colorization - which we were able to repro but like once or twice - https://github.com/Microsoft/RTVS/issues/4065.

MikhailArkhipov commented 6 years ago

https://github.com/Microsoft/RTVS/commit/e83ab28203c1380dae8dbb739174cbc7efa70882

hongooi73 commented 6 years ago

I've updated to the latest VS 15.6.7 (RTVS 1.3.40104.1351), and the problem is still there. Will the fix only go live in 15.7?

MikhailArkhipov commented 6 years ago

Yes, it is 15.7. Preview 1 should be public very soon.