Skip to content

Disable progress on non-capable terminals#7248

Merged
Evangelink merged 1 commit intomainfrom
dev/ygerges/progress-terminal
Jan 17, 2026
Merged

Disable progress on non-capable terminals#7248
Evangelink merged 1 commit intomainfrom
dev/ygerges/progress-terminal

Conversation

@Youssef1313
Copy link
Copy Markdown
Member

On every repo I migrated to MTP, I have always added --no-progress in CI. This PR makes that a default behavior. When not using a terminal that is capable of writing the progress in place, we don't write progress altogether. IMO, it's never useful to keep writing progress every 3 seconds and always results in a messy output. We will need to also make a similar change to dotnet/sdk.

Related to #7056 and other similar issues (not closing any until work is done for dotnet test).

Copy link
Copy Markdown
Member

@Evangelink Evangelink left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's amazing change 🤩

@Evangelink Evangelink merged commit f095074 into main Jan 17, 2026
11 checks passed
@Evangelink Evangelink deleted the dev/ygerges/progress-terminal branch January 17, 2026 22:17
@nohwnd
Copy link
Copy Markdown
Member

nohwnd commented Jan 20, 2026

FWIW personally I don't agree with removing the progress entirely. There was proposal for --progress and --ansi to replace --no-progress and --no-ansi, and that will make --progress not do anything when you explicitly ask for getting progress.

I do agree with disabling it by default for the reasons listed above.

@Youssef1313
Copy link
Copy Markdown
Member Author

Sure, we can add a way for users to force it in future if needed, I would like to wait for user feedback though to see if it's really needed. Especially when --output detailed can provide a better output already without forcing progress every 3 seconds in a non-capable terminal.

The only user feedback in that area that I saw is to force colors when output is redirected, for which we are tracking a feature request already.

@alexaka1
Copy link
Copy Markdown

alexaka1 commented Mar 26, 2026

I would plus 1 having the progress as an option. If you have hundreds of tests, then you could visually scan GHA logs and see at which point what the current state of tests was. How many succeeded, how many failed, skipped etc. Maybe it's skill issue on my part but I found this very useful, and when I noticed (after migrating to MTP v2 and .net 10) it is gone, I immediately went looking how to bring it back. I don't like taking options away.

I am open to alternative suggestions on how to read CI logs, and if I'm missing some hidden feature that I should be using instead to have pretty CI logs.

Also this was merged 2 months ago, however the Microsoft docs were not updated. https://learn.microsoft.com/en-us/dotnet/core/testing/microsoft-testing-platform-terminal-output#progress

Hyrum’s Law ftw.

@Youssef1313
Copy link
Copy Markdown
Member Author

@alexaka1 If you run with --output detailed, do you get a satisfying output?

@alexaka1
Copy link
Copy Markdown

I am already using the detailed output, it's nice that it tells me the what order the tests run in. But personally I would still prefer having the option for the progress.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants