Skip to content

v0.1.2

Latest

Choose a tag to compare

@github-actions github-actions released this 30 Aug 16:51
· 2 commits to main since this release

Fixes found by a full review of the Win32 layer, plus the first release whose
notes say what actually changed.

Fixed

  • The countdown stopped while the tray menu was open. Windows runs its own
    message loop for a popup menu, so the once-a-second tick never got a turn: a
    5 minute hold with the menu left open simply did not expire, and the
    "remaining" row you were looking at was frozen while you looked at it.
  • A tray started or restarted while caffeinate was already holding the machine
    awake never learned about the hold. It showed the idle icon and a tooltip
    saying "off" for as long as the hold lasted.
  • Tray icons were generated at one size and then shrunk by the shell, which
    threw away the sharpness the DPI manifest exists to preserve. The icons now
    carry every size from 16 to 64px, and the tray asks for the one the
    notification area actually draws at.
  • A dead caffeinate whose process handle could not be waited on was treated as
    still running, leaving its row in the menu forever.
  • Labels containing non-BMP characters could be cut in the middle of a surrogate
    pair.

Changed

  • Announcements from caffeinate are now checked: the sender has to actually be
    running caffeinate.exe. Any process in your session could previously put
    arbitrary text in the tray menu, and one naming a process that never exits
    produced a row that never went away.
  • The IPC wire format is version 2. A 0.1.1 caffeinate and a 0.1.2 tray will
    not talk to each other, so mid-upgrade a hold may not appear in the tray. The
    hold itself is unaffected: the CLI owns the power request either way.

Install

scoop bucket add zet235 https://github.com/zet235/scoop-bucket
scoop install caffeinate

Or unzip anywhere: put caffeinate.exe on your PATH and run
caffeinate-tray.exe when you want the tray icon.

Checksum

SHA256  2e19ce9e500803769f41a4961bed63745d892f509addbe4c01897aaf382859f4