Skip to content

--show-progress=running polish #2720

@sunshowers

Description

@sunshowers

While trying out --show-progress=running and --show-progress=only, I noticed a few places where we could be more polished:

  • As progress bars are added or removed, the main progress bar shifts up and down. This is more pronounced with --show-progress=running.
  • There's a bunch of flickering which we should try to avoid.

I think for a polished experience indicatif's model is probably not complete enough, and we'd need to switch to using ratatui's inline viewport. There are a few things to handle:

  • the viewport height should be set to the number of test threads
  • we do some careful poking around terminal handling (see https://nexte.st/docs/design/architecture/input-handling/) -- we'll want to probably move terminal handling into its own module that both input and progress handling report to
  • we can't use any of the ratatui init functions directly, since they'll enable terminal raw mode which we don't want. Instead, we'll have to figure out the correct termios options ourselves depending on which combination of input handling and the progress bar is enabled.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions