v0.7.0
AprilNEA/OpenLogiv0.7.0Aug 15, 2026by github-actions[bot]
AI Summary
This release focuses on architectural refactoring, including the centralization of HID++ logic, the introduction of a generic macro for hardware features, and improved macOS permission handling.
Key Highlights
- Refactored macOS permissions using typed objc2 bindings
- Generic HID++ feature handling via a derive macro
- Centralized device identities and collapsed inject backends
- Improved build system and CI with Nix integration
New Features
- Improved macOS bundle identity verification
- Generic and derive macro for HID++ features
- Platform-neutral Effect IR for inject backends
- Refactored Action label/category/icon/catalog
- Improved IPC contract extraction
Full Release Notes
## What's Changed * fix(xtask): stamp and verify the macOS bundle identity per channel by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/593 * refactor(macos): read TCC permissions through typed objc2 bindings by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/595 * fix(hid): four defects from the Actions Ring review by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/596 * fix(hid): never cache a haptic feature for a retired channel by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/597 * fix(agent): bound the Actions Ring haptic worker to the session it serves by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/598 * fix: keep the ring session alive as long as the ring is clickable by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/599 * build(nix): build dependencies once with crane, and stop gating source-only PRs on it by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/600 * ci(nix): run the Linux build weekly, and revert crane by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/603 * chore(lints): adopt the shared clippy lint set, and fix what it surfaced by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/609 * refactor(core,inject): collapse inject backends onto a platform-neutral Effect IR by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/610 * refactor(agent): collapse hardware.rs's duplicated write skeletons into DeviceOp by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/612 * refactor(gui): fold AppState's per-device side tables and dpi/smartshift twins by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/613 * refactor(core): move pure HID++ wire types into openlogi-core, drop openlogi-hid from the GUI by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/611 * chore(agent): drop three dead hardware.rs entry points by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/616 * refactor(ipc): extract the IPC contract into a leaf crate so the GUI stops building the HID stack by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/617 * fix(release): put openlogi-camera in the workspace version group by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/618 * refactor(camera): fold per-control UVC attributes into one spec table by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/622 * refactor(core): drive Action label/category/icon/catalog from one table by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/623 * chore(deps): bump tarpc to 0.38 and drop the vendored patch by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/624 * refactor(hidpp): replace the per-feature boilerplate with a generic and a derive macro by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/625 * docs(ci): add rustdoc to the local gate and cover the derive crate by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/626 * chore(hidpp): inherit the workspace lint table by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/627 * refactor(hidpp): test the receiver decoders, split channel.rs, finish the hard-fork cleanup by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/628 * fix(hid): drive the DPI and lighting features whose predecessors we hardcoded by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/629 * fix(config): harden schema and persistence by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/604 * chore: release v0.7.0 by @aprilnea[bot] in https://github.com/AprilNEA/OpenLogi/pull/594 **Full Changelog**: https://github.com/AprilNEA/OpenLogi/compare/v0.6.27...v0.7.0