Skip to content

fix(tui): show flash on clipboard copy failure#703

Merged
wesm merged 2 commits intomainfrom
fix/xclip-error
May 7, 2026
Merged

fix(tui): show flash on clipboard copy failure#703
wesm merged 2 commits intomainfrom
fix/xclip-error

Conversation

@wesm
Copy link
Copy Markdown
Collaborator

@wesm wesm commented May 7, 2026

Summary

  • Copy failures (e.g., missing xclip/wl-clipboard on Linux) wrote to m.err, which no view ever renders, so pressing y produced no feedback at all.
  • Surface the failure as a warning flash via setWarningFlash (the same channel as the success flash).
  • Map atotto's "No clipboard utilities available..." error to a shorter, actionable hint: Copy failed: install xclip, wl-clipboard, or xsel. Other errors render as Copy failed: <err>.
  • The original error is still stored in m.err for debugging.

🤖 Generated with Claude Code

Copy failures stored the error in m.err, which is never rendered, so
pressing y on a Linux box without xclip/wl-clipboard installed produced
no feedback at all. Surface the failure as a warning flash, mapping the
atotto "No clipboard utilities available" error to a shorter, actionable
hint.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@roborev-ci
Copy link
Copy Markdown

roborev-ci Bot commented May 7, 2026

roborev: Combined Review (59b4463)

No medium-or-higher issues found; all agents agree the change is clean.

The clipboard error handling update appears sound, including the warning flash path and Linux clipboard-tool hint.


Synthesized from 3 reviews (agents: codex, gemini | types: default, security)

@codecov-commenter
Copy link
Copy Markdown

⚠️ Please install the 'codecov app svg image' to ensure uploads and comments are reliably processed by Codecov.

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

TestHandleEnqueueExcludedCommitPattern's "range with corrupt mid-commit"
subtest deleted a loose git object to break GetRangeCommits. On Windows
that loose object isn't always where expected (auto-gc packing, AV
latency), causing flaky "system cannot find the path specified" failures
and at least one timeout on a recent main run.

Replace the corruption mechanism: write a synthetic commit via
hash-object whose parent line points at a SHA that does not exist, then
update the branch ref to that synthetic tip. GetRangeCommits walks back
from tip, fails to load the fake parent, and returns an error — same
failure mode as before, with no dependency on .git/objects layout.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@roborev-ci
Copy link
Copy Markdown

roborev-ci Bot commented May 7, 2026

roborev: Combined Review (df898c2)

Clean verdict: no Medium, High, or Critical issues found across the reviews.


Synthesized from 3 reviews (agents: codex, gemini | types: default, security)

@wesm wesm merged commit ca085ac into main May 7, 2026
8 checks passed
@wesm wesm deleted the fix/xclip-error branch May 7, 2026 21:31
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.

2 participants