Skip to content
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

[display] Overwrite terminal contents #11695

Merged
merged 4 commits into from Dec 20, 2022
Merged

[display] Overwrite terminal contents #11695

merged 4 commits into from Dec 20, 2022

Conversation

pgavlin
Copy link
Member

@pgavlin pgavlin commented Dec 20, 2022

Instead of clearing the contents of the display with each frame,
overwrite its contents by clearing to the end of each line prior to a
newline. This should eliminate flickering in the interactive display.

This also eliminates a couple of off-by-one errors that were hampering
usability.

Fixes #11691, https://github.com/pulumi/customer-support/issues/837.

Instead of clearing the contents of the display with each frame,
overwrite its contents by clearing to the end of each line prior to a
newline. This should eliminate flickering in the interactive display.

This also eliminates a couple of off-by-one errors that were hampering
usability.
@pulumi-bot
Copy link
Contributor

pulumi-bot commented Dec 20, 2022

Changelog

[uncommitted] (2022-12-20)

Bug Fixes

  • [cli/display] Fix flickering in the interactive display
    #11695

@pgavlin
Copy link
Member Author

pgavlin commented Dec 20, 2022

There are three commits here. The first contains the actual changes, the second updates the baselines, and the third contains the changelog.

@AaronFriel
Copy link
Member

Building and running locally to get an idea of the change.

Hiding the cursor should eliminate the last of the redraw artifacts.
@pgavlin
Copy link
Member Author

pgavlin commented Dec 20, 2022

Added one more commit that hides the cursor in the interactive display, which should eliminate the last of the redraw artifacts.

@pgavlin
Copy link
Member Author

pgavlin commented Dec 20, 2022

Building and running locally to get an idea of the change.

If you have a service dev stack, refreshing that stack is an excellent case study.

Copy link
Member

@AaronFriel AaronFriel left a comment

Choose a reason for hiding this comment

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

Checked this branch with two terminal environments and two Pulumi programs: an EKS cluster and a pathological example of a docker-buildkit provider logging 100k+ lines and did not observe flickering.

This looks like a substantial improvement.

@pgavlin
Copy link
Member Author

pgavlin commented Dec 20, 2022

bors merge

@bors
Copy link
Contributor

bors bot commented Dec 20, 2022

Build succeeded:

@bors bors bot merged commit 78c9bf4 into master Dec 20, 2022
@bors bors bot deleted the pgavlin/clear-to-end branch December 20, 2022 20:55
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.

Intense CLI output flickering during pulumi up
3 participants