fwcd / fwcd/tuimake

UI cannot keep up with event generation from `make` process

Open
#5 0 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
Haskell
Stars
2
Forks
0
PR merge metrics
No merged PRs in 30d

Description

The comparatively slow redraws of the UI throttle the speed at which new lines are displayed immensely, especially in very large Make graphs. This can lead to situations where the UI suggests that new lines are still being added despite the `make` process already being done.

Potential solutions include:
- Batching events (an experimental implementation can be found on the branch [`batched-events`](https://github.com/fwcd/tuimake/tree/batched-events))
- This suffers from the issue that the EOF is caught too quickly though and thus events may be dropped... from the user's point of view, the application appears 'stuck' although the make process already terminated)
- Increase the size of the channel (currently 10)
- This works great for small make graphs, but essentially just defers the issue
- Emitting fewer events
- For example, if we could filter the entire debug output from make (e.g. the "Prequisite ..." messages), we might get reasonably few events in many use cases

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reviewing the experimental batched-events branch and the event channel and redraw paths it changes; no specific files or tests are named in the issue. Reproduce the lag with a large Make graph, then verify that all generated lines are displayed and the UI reflects make completion without dropped events.

Written by the indexing model from the issue text.

Assessment

Tech stack
haskell
Domain
cli, performance
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.