Skip to content

0.7.1 — Review & hardening pass

Choose a tag to compare

@aquitaine aquitaine released this 22 Jul 09:22
· 57 commits to main since this release

A whole-codebase review and hardening pass — no new features, nine real bug fixes.

Fixed

  • App Presets no longer lose a display's saved baseline when it's unplugged while a preset is active — the restore stays owed and is paid back when the display returns. A display that connects while a preset is active is now governed immediately instead of waiting for the next app switch.
  • Settings resilience: one unreadable field (e.g. after a downgrade) now falls back to that field's default instead of resetting every setting and the FaceLight / app-preset / evening-preset restore ledgers.
  • Display identity: a paired record can no longer absorb an unrelated anonymous monitor without corroborating evidence.
  • Refresh-rate-only mode changes and 180° rotations now advance the topology generation instead of always waiting out the 2s stabilization timeout.
  • opendisplay edid no longer reports the built-in panel's EDID for an external whose model number is unreadable.
  • CLI: favorite set <display> @2x reports a usage error instead of crashing; DDC brightness writes round instead of truncate.
  • Clock Mode solar anchors queried just after midnight on a DST-transition day are no longer an hour off.
  • Concurrent audit-log writes from the app and CLI can no longer interleave.

Changed

  • Night Shift detection reuses one CoreBrightness client instead of reconnecting every 5 seconds.

Install / upgrade: brew install --cask aquitaine/tap/opendisplay or download the notarized zip below.