-
Notifications
You must be signed in to change notification settings - Fork 13k
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
Indicate compilation progress in a form useful to end users #22227
Comments
Ehh, this only relevant to very big monolithic crates, no? |
I have a 3000 lines crate that takes 37 seconds to compile with trans starting after 10 seconds. |
Note: Without optimization. |
Seems fine as an unstable UI flag like I would not count on anything like this getting into stable Rust 1.0.0. I don't think we should stabilize stuff like this until we have a more cohesive story for UI configuration (see #21406). |
I think we should have |
+1. We can use control codes to update parts of the terminal without spewing output. I will think about how to integrate this with |
I'm imagining that rustc in whiz-bang fancy terminal mode would display progress on a single line, updated at each stage:
And just that last "success" message will remain in your terminal buffer. The spinner has a constant speed in wall-clock terms. Long-running parts of rustc will call After we pass the "rest easy" point, the spinner turns into a calming |
For some phases it would be possible to do actual progress bars, but I don't think the results would be very satisfying. I'd rather have Cargo or another tool generate a whole-project progress bar based on empirical measurements of how long crates took to build last time. |
Fuck you @mahkoh, I put in the effort to turn your shitty ticket into a real, good idea, and now you are closing it out of pure spite. |
Yep, it took me one year to realize how shitty this whole project is. Imagine that effort! |
Closing this in favor of #24335. Thanks for the pointless make-work. |
See https://github.com/mahkoh/rest_easy. This is an essential plugin that limits the pain caused by compile times.
For 1.0.
The text was updated successfully, but these errors were encountered: