oxidecomputer / oxidecomputer/console
Serial console width and resize issues
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 228
- Forks
- 22
- Avg merge
- 19h 42m
- Merged PRs (30d)
- 32
Description
This issue is a bit vague, and I'll rename it when we figure it out better. There are a set of probably related issues that came up when @jmpesp was testing and demoing the streaming serial console.
Resize on window resize doesn't fully work. Once you load the serial console with a given window size, resizing the window does resize the terminal window displaying the stream, but the source doesn't seem to be aware of that. Now that I think about it that kind of makes sense? Once the text comes into the buffer in propolis from the VM itself, it's there, it's not gonna change width. Since multiple clients can connect to it, doesn't make sense for it to be dynamic. Most likely it is assuming a particular width and we should also assume that width. That means we may not need the fit addon at all. Instead we can just fix a particular width like 80 characters, and if the window gets smaller than that we'll have to scroll horizontally.
Need to figure out what to do about height as well, of course.
The starting tasks here are
- Check hunch that propolis is assuming/forcing 80 character width on stream
- Figure out how to get some realistic example data into the mock serial console so we can do dev easily
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by examining the streaming serial console and how its terminal dimensions respond to window resizing. Check whether propolis assumes or forces an 80-character stream width, then investigate how realistic example data can be added to the mock serial console for development. Done should include an agreed width and height behavior plus usable mock data.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- frontend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100