Repository navigation
Conversation
The paste path only reads and writes text. arboard's default image-data feature pulled the image crate and its codecs into every build with the paste feature on. Co-authored-by: Medulla <medulla@tinyhumans.ai>
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
Tiny Sweeper reviewTiny Sweeper reviewed this change across 6 lane(s) and found 1 active actionable finding(s). Detailed lane evidence and any incomplete work are listed below. State: Ready for maintainer review Review snapshot
Completeness: Complete What changedThe review could not produce a supported behavioral summary; inspect the cited changed surface and lane details below. FeaturesNone identified with supported citations. TestsNo supported feature-to-test mapping was produced. Test execution is not inferred. Findings
Before mergeNone. Agent review detailscritique
security
tests
commits
description
e2e
Evidence and run details
|
There was a problem hiding this comment.
tinysweeper found nothing blocking. Approving.
$0.0025 · 42,725 in / 4,063 out · 3,816 cached (9%) · gpt-5.6-luna, glm-5.3-flash
critique: $0.0011 · 16,701 in / 1,496 out · 2,030 cached (12%) · gpt-5.6-luna
security: $0.0013 · 20,458 in / 1,834 out · 1,786 cached (9%) · gpt-5.6-luna
description: $0.0000 · 3,750 in / 91 out · 0 cached (0%) · glm-5.3-flash
| cpal = { workspace = true, optional = true } | ||
| # Clipboard and synthetic keystrokes behind `paste`. | ||
| arboard = { version = "3", optional = true } | ||
| arboard = { version = "3", default-features = false, optional = true } |
There was a problem hiding this comment.
Enable arboard's Wayland clipboard backend
Disabling arboard's default features also disables wayland-data-control. The paste feature still exposes insert_text on Linux, but Wayland hosts will no longer have a functioning clipboard backend and paste will fail at runtime. Keep default features disabled if desired, but explicitly enable wayland-data-control so the existing Linux Wayland path continues to work.
| arboard = { version = "3", default-features = false, optional = true } | |
| arboard = { version = "3", default-features = false, features = ["wayland-data-control"], optional = true } |
[RULE] missing-platform-feature ·
Summary
tinycomputer-accessibility'spastefeature depended onarboardwith its default features, which includeimage-data. That pulls theimagecrate and its codecs into every build that enablespaste.src/paste.rsonly reads and writes text, so this setsdefault-features = falseonarboard. On Linux,wayland-data-controlis not a default feature either, so behaviour there is unchanged; it is not added.Measured in the OpenHuman product build: 6 extra crates on Linux (image, moxcms, pxfm, byteorder, byteorder-lite, ...), 11 on macOS (incl. tiff, zune-jpeg, half, fax), 8 on Windows (incl. png, clipboard-win, error-code).
Related issue
None
API or behavior changes
None. No use of
set_image,get_imageorImageDataanywhere in the repo.Cargo.lockdrops crunchy, fax, half, tiff and weezl; the rest of the image stack stays in the lock for other dependents but is no longer reachable from this crate.Validation
cargo fmt --all -- --checkpassescargo clippy -p tinycomputer-accessibility --all-targets --features paste -- -D warningspassescargo check -p tinycomputer-accessibility --features pastepasses (linux)cargo test -p tinycomputer-accessibility --features paste: 82 passedcargo tree -p tinycomputer-accessibility --features paste -e normal -i image:image v0.25.10via arboardimagenot in treeimage v0.25.10via arboardimagenot in treeimage v0.25.10via arboardimagenot in treecargo checkfor the apple and windows targets was skipped: those toolchain targets are not installed.Tests
No new tests; the existing paste tests cover the text-only path.
Documentation
Not needed. The repo has no CHANGELOG file.
Checklist
#[allow(...)],#[ignore], or relaxed lints.envcontents in the diff or the descriptionSummary by CodeRabbit