-
Notifications
You must be signed in to change notification settings - Fork 30.1k
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
Terminal sends the same lines twice #44192
Comments
@Tyriar can you please have a look. This results in a regression with the tasks when using tsc 2.7.x which introduced clearing the terminal when a new compile run triggered through a file change starts. |
I tried to debug this but when debugging it doesn't reproduce. I was only able to track this down by adding console.log statements here https://github.com/Microsoft/vscode/blob/master/src\vs\workbench\parts\tasks\electron-browser\terminalTaskSystem.ts#L263 |
@Tyriar can you please comment. IMO we need to address at least the original bug (even if we introduce some work arounds) for this milestone. It is a bad user experience. |
I'm not really understanding why the problem matcher system doesn't handle this as the events are still being fired in order, just sometimes they can be duplicated? When the problem case happens, |
Looking into it deeper, I'm assuming this is to allow problems to be matched on things like gulp tasks which can have multiple different tasks in a single run of a process. |
@Tyriar I added a workaround on the task side. I am still not understanding why the terminal sends the line twice and I sill think that might be a bug. So to clarify:
Other listeners might be affected by this as well. |
Actually this is more complicated. It is not that the two identical lines come right after each other. There can be any blank lines in between as well and I am actually concerned that if the output contains errors they might interleave with the begin end as well. So deduping them might get more complicated on the matcher side. |
I releases a work around in the problem collector however that meant to capture quite some state. |
Closing. Dups #44018 |
See #44018 for the discussion and the consequences.
To reproduce:
The underlying reason is that the terminal sends lines twice confusing the tracking of the task output.
As you can see in the above screen shot the FIle change detected line at 11:13:12 is send twice resulting in the task to assume that two builds have started but only one compilation complete is send hence the building is kept.
The text was updated successfully, but these errors were encountered: