Repository navigation
Sync main with v1.0.0-beta.20 - #48
Conversation
98294bc keyed each HID candidate by path and refused any candidate with more than one path ("refusing multi-path access", plus a matching "refusing report fan-out" guard). ed5bcd9 then made a non-empty serial the grouping identity, so every top-level collection of a device with a serial lands in one candidate again. On Windows each collection is its own path, so "list" failed for every serial-bearing multi-collection mouse. Allow several paths when every interface reports the same non-empty serial, and keep refusing otherwise. The report path already routes to the path that declares the report ID, so its guard now only rejects a device with no open path. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
GET /v1/local-applications (and the PUT response) now gives each entry
an `iconId`, computed with applications::icon_id(path). The field is
response-only; saved lists are accepted with or without it.
GET /v1/applications/{iconId}/icon serves a saved local application's
icon whether or not it is running: on a cache miss it is extracted from
the saved path, and prune_application_icons keeps saved applications'
icons. It still 404s when extraction fails or off Windows.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Review follow-up on the multi-path fix. A device opened with several paths now sends each report to exactly one of them: the paths that declare the report (or every path, for Razer, whose descriptors are not parsed) are tried in order and the first that takes it is the only one written, so one command never reaches the device twice. start_reader stores the stop flag before spawning, and a later spawn failure stops and joins the readers already running instead of leaving them to block session cleanup. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Replacing the saved local applications prunes the icon cache, so a removed app's icon is no longer served. A failed extraction is not cached, so a path that comes back later gets its icon, and an icon read while the list changed is cached only if a saved app still owns its id. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…cal-app-icons fix/hid serial paths local app icons
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Release v1.0.0-beta.20: HID multi-path fix and icons for saved apps
…pdater bundle-aware - packaging/macos: build OpenMouse Bridge.app (tray-only, icon, bundled native-hid) and a dmgbuild installer window - updater: replace the whole .app in a locked, rolling-back transaction; bare-binary installs keep the existing zip - updater: open archives with a known zero offset so the metadata budget no longer rejects every real (>16 MiB) release archive - release workflow: build, optionally Developer ID sign and notarize, and publish the DMG plus app update archive
|
Warning Review limit reachedYou've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Next included review available in 47 minutes. View limit details
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Macroscope skipped reviewing this pull request. Per-review cost limit exceeded (workspace setting). This review would cost an estimated $22.22, which exceeds your per-review limit of $10.00. The top 3 files driving up this estimate:
Tip To get this pull request reviewed, you can:
|
ApprovabilityVerdict: Needs Human Approval Macroscope's review found this PR requires human approval — This release sync introduces multiple production capabilities and behavior changes, including local profiles, native hardware automation, button injection, hybrid device ownership, a redesigned tray, remote image handling, and new macOS packaging. Its broad runtime and distribution impact warrants human review. Notes:
Review your spending limits in Billing settings, or comment |
feat(macos): ship Bridge as a .app in a styled DMG; fix the updater for real release archives
mainwas rolled back to v1.0.0-beta.18 (#44), so the beta.19 and beta.20 work, including the v1.0.0-beta.20 release, never appeared in its history.This PR brings
mainup to date without rewriting any history:dev-v1.0.0-beta.19, which adds everything in beta.20.The resulting tree is identical to the
v1.0.0-beta.20tag and todev-v1.0.0-beta.19(verified withgit diff).Note: CI republishes the rolling
dev-buildprerelease on every push tomain, so merging will refresh it with the beta.20 code.Note
Sync main with v1.0.0-beta.20
Merge of the v1.0.0-beta.20 release branch into main. The main changes are:
Macroscope summarized be37ad0.