Skip to content

Viuer may get incomplete responses if another input reader is active #92

@hasezoey

Description

@hasezoey

viuer 0.11.0

When there are multiple input readers active (for example a async input reader for a TUI and then viuer), then viuer may not get the complete response and so go into a infinite loop, similar to #70.

In our project where this issue first came up, only viuer 0.11.0 with the kitty protocol is affected (tested on wezterm), due to viuer waiting for a response in the local case.

All-in-all, i dont know what viuer could do to properly fix this instead of doing workarounds.

This issue originally came up in tramhao/termusic#654, which has been introduced in #90 and i also asked for suggestions in crossterm-rs/crossterm#1039 due to the original project where this came up it being the place that "ate" the viuer response.

The only workarounds for viuer i can think of:

  • allow configuring kitty's protocol path to force the use of remote (due to that not waiting for a response); note that this would fix the print paths, but the issue would still occur if the "check support" functions run while another reader is active
  • completely unload the crossterm EventStream in our downstream project (even then i am not sure if that would work, due to crossterm likely keeping the poller around)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions