Skip to content

Releases

Draugr Time v1.3.1

Choose a tag to compare

@github-actions github-actions released this 04 Nov 20:30

Draugr Time 1.3.1

Fix tracking after the system clock moves backwards, including after booting
Windows and then Linux on a dual-boot computer.
Draugr Time is in active development: the interface and features are still evolving.

Fixes

  • Tracking no longer stays stuck with "heartbeat timestamp precedes the last event
    in its bucket" after a backwards clock adjustment of at least three seconds.
    This also recovers an existing database whose latest samples are in the future.
  • Before replacing conflicting native tracking samples, Draugr Time saves a full,
    verified database copy beside the active database as clock-rollback-*.sqlite.
    Samples crossing the corrected time are clipped; later native samples remain
    available in the copy. Manual tags, rules and imported web events are unchanged.
    If the backup cannot be created, the conflicting history is left intact and an
    error is shown. The application does not change the system clock.
  • Timed pauses retain their remaining duration after clock recovery, including
    across another restart. Pausing and stopping also handle a clock correction
    before the next tracking tick.
  • Settings → Status & permissions now shows general tracker errors and the path
    to the recovery copy. The timeline reloads corrected history instead of keeping
    previously loaded future samples on screen.

This release also includes the backups, persistent timed pauses, quick tagging
and keyboard shortcuts prepared for 1.3.0.

Updating and limitations

  • Quit the old instance through its tray, then start the new version. Your data
    remains in its existing local folder; the database format is unchanged.
  • Clock-recovery copies contain the original full history. They are not removed
    by automatic-backup retention or later history deletion; remove them manually
    when no longer needed. Their location is shown for the current process.
  • Backwards differences smaller than three seconds do not rewrite history;
    strict timestamp validation recovers as the clock catches up.
  • Automated tests reproduce backwards jumps, restart recovery, pause persistence,
    failed backups and failed history writes. A real Windows → Linux reboot still
    needs manual verification.
  • Windows installers are not publisher-signed; macOS bundles are not notarized.

Draugr Time v1.2.1

Choose a tag to compare

@github-actions github-actions released this 23 Oct 15:48

Draugr Time 1.2.1

Layout fixes and fewer background history updates.
Draugr Time is in active development: the interface and features are still evolving.

Changes

  • Expanded timeline lane labels stay on one line instead of overlapping adjacent rows.
  • The Day summary scrollbar has its own space and no longer covers highlight buttons.
  • The Week panel shows up to 10 most-used applications instead of 5.
  • Live history loading stops when the window loses focus, including when minimized.
    Background recording continues, and history refresh resumes on focus. Visible
    unfocused windows also pause history refresh because Wayland does not provide a
    portable minimized-state query through the current UI framework.

Verification and limitations

  • A regression test covers 7,200 queued ticks without hidden history loads and
    confirms that loading resumes on focus. This is not a two-hour memory measurement;
    the reported growth to 300 MiB still needs verification in a real desktop session.
  • Windows installers are not publisher-signed; macOS bundles are not notarized.
  • Quit the previous instance through its tray before starting the new version.
    Your local history remains in its existing data folder.

Draugr Time v1.2.0

Choose a tag to compare

@github-actions github-actions released this 23 Oct 12:24

Draugr Time 1.2.0

A redesigned desktop interface, title masking and more responsive local tracking.
Draugr Time is in active development: the interface and features are still evolving.

What's new

  • New dark and light interface: bundled Inter Tight and JetBrains Mono fonts,
    refreshed branding, compact navigation and layouts that adapt to narrow windows.
  • Day timeline: active-hours/full-day/selection ranges, clearer track spacing,
    expandable application/document lanes, selection actions, an hourly activity chart
    and a filterable Apps/Documents/Tags panel.
  • Week, Tags and Rules: weekly timelines and timesheets, a hierarchical tag table
    with an editor, and ordered rules with live previews and undoable history tagging.
  • Settings and tray: six settings sections, removable privacy-list entries, timed
    pauses of 5/10/15/30/60 minutes, Resume and +5/+15 extensions. New installations
    get a one-time startup-at-login question; existing installations are not asked again.
  • Motion and accessibility: short, interruptible transitions, keyboard controls,
    visible focus and reduced-motion support. Animation frame timers stop when complete
    or when the window loses focus or closes.
  • Title masking: selected applications keep their recorded time while new window
    titles are replaced with [masked]. Exclusions take precedence; existing history
    is not rewritten.
  • Resource use: fewer background UI wakeups, release-time optimization, indexed
    tag lookups and improved memory reclamation. No new idle CPU/PSS claim is made for
    the redesign without native measurements.

Fixes

  • The first-launch CI diagnostic now answers the new startup question before checking
    that Day view is recording, preventing its onboarding timeout.
  • The Windows installer reports the same version as the application; a regression
    check keeps the two versions aligned.

Install

  • Windows: use the per-user Setup executable or extract the portable ZIP. Both
    include draugr-time-cli.exe.
  • macOS: open the DMG and drag Draugr Time to Applications, or use the portable
    archive. The bundle is ad-hoc signed, not Developer ID signed/notarized; macOS may
    require Privacy & Security → Open Anyway.
  • Linux: make the AppImage executable and run it, or extract the portable archive.
    Quit an older running instance through its tray before starting the new version.

Your history stays in its existing local data folder. No account, telemetry, cloud
uploads or network updater is added. Uninstalling does not delete stored history.

Known limitations

  • Timed pauses are not restored after restarting the process. Backups and ActivityWatch
    category interchange remain planned work; existing history import/export remains.
  • Date changes that load history settle immediately; an old/new day cross-fade is not
    implemented. Unknown reduced-motion preferences conservatively skip animation.
    Windows/macOS preferences refresh when the app regains focus.
  • GNOME/KDE Wayland tracking still needs its local bridge. Real-desktop permission,
    input and idle-memory checks remain platform-dependent; CI does not replace these.
  • Windows installers are not publisher-signed; macOS bundles are not notarized.

Draugr Time v1.1.1

Choose a tag to compare

@github-actions github-actions released this 18 Oct 13:59

Draugr Time 1.1.1

Fixes "start at login" for the Linux AppImage.

Fixed

  • Linux AppImage start-at-login. Enabling Start Draugr Time when I log in
    recorded the executable path inside the AppImage's temporary squashfs mount
    (/tmp/.mount_…/usr/bin/draugr-time), which disappears when the app exits, so
    nothing launched at login. The autostart entry now points at the persistent
    .AppImage file via $APPIMAGE and falls back to the executable path when not
    running from an AppImage.

    If you enabled startup in 1.1.0, toggle the setting off and on again once so
    the corrected path is registered.

Install

Same artifacts as 1.1.0: Windows installer + portable zip, macOS DMG, Linux
AppImage + portable archive. History remains local; no telemetry or network
updater.

Draugr Time v1.1.0

Choose a tag to compare

@github-actions github-actions released this 17 Oct 18:36

Draugr Time 1.1.0

Installers for the first time, alongside the existing portable archives.

What's new

  • Windows: a per-user installer (Inno Setup) installs the desktop app and the
    draugr-time-cli console tool, adds the CLI to your command line (PATH), and
    creates Start-menu and optional desktop shortcuts. A portable zip is still
    published if you prefer to run without installing.
  • macOS: Draugr Time.app now ships in a DMG with a link to Applications for
    drag-and-drop install.
  • Linux: an AppImage bundles the desktop app, launcher entry and icon.
  • The About panel (Settings) links to the GitHub repository and credits the
    creator, hlophlopgaming, with links that open in your browser.

Install

  • Windows: run Draugr-Time-...-Windows-Setup.exe, or extract the portable
    zip and run draugr-time.exe.
  • macOS: open the DMG and drag Draugr Time.app to Applications. The app is
    ad-hoc signed, not Developer ID signed/notarized; macOS may ask you to open it
    via Privacy & Security → Open Anyway.
  • Linux: make the AppImage executable and run it, or use the portable archive
    and its Add to application menu action.

Uninstalling leaves your history in place (Windows
%LOCALAPPDATA%\DraugrTime, macOS ~/Library/Application Support/DraugrTime,
Linux ~/.local/share/DraugrTime) unless you delete it yourself.

History remains local. No telemetry, browser extension or network updater.
Flatpak is deferred to a later release; Windows/macOS installers are not
publisher-signed/notarized.

Draugr Time v1.0.1

Choose a tag to compare

@github-actions github-actions released this 17 Oct 16:03

Draugr Time 1.0.1

  • The open window wakes once per second only when it has something to load: a day
    that has not been shown yet, or the Day screen while it shows today. A loaded
    past day, Settings, Tags, Rules, Week, Reports, Overview and the preview stay
    idle, so a mostly-hidden tracker uses less CPU.
  • Leaving the Day screen pauses today's refresh; returning to it resumes within a
    second. Closing the window already paused it.
  • On Linux the system theme now follows the desktop portal's change signal
    instead of polling every two seconds.

Download the archive for your OS and extract it before launching. On macOS use
Draugr Time.app; on Windows/Linux use the desktop executable. On Linux, choose
Add to application menu after extracting to a permanent folder.

History remains local. No telemetry, browser extension or network updater.
Installers are planned for 1.1; backups and title masking remain later work.
Windows/macOS downloads are not publisher-signed/notarized.

Draugr Time v1.0.0

Choose a tag to compare

@github-actions github-actions released this 16 Oct 19:16

Draugr Time 1.0

  • Two-screen first-run setup explains local collection/storage, offers permission
    hints and starts recording into the Day view.
  • Application icons for Windows executables, the macOS app bundle and Linux
    desktop menus, alongside the existing window/tray icons.
  • Built-in headless CLI on Linux/macOS: draugr-time report, export, import,
    status, and --help. Windows keeps draugr-time-cli.exe.
  • Minimal privacy: excluded applications, confirmed range deletion and an optional
    local weekday/everyday recording schedule.
  • Improved Reports/Overview legend layout and timeline scrolling.

Download the archive for your OS and extract it before launching. On macOS use
Draugr Time.app; on Windows/Linux use the desktop executable. On Linux, choose
Add to application menu after extracting to a permanent folder.

History remains local. No telemetry, browser extension or network updater.
Installers are planned for 1.1; backups and title masking remain later work.
Windows/macOS downloads are not publisher-signed/notarized. Real OS permission,
login and fresh-archive verification steps are listed in M10.

Draugr Time v0.2.4

Choose a tag to compare

@github-actions github-actions released this 15 Oct 13:56

Full Changelog: v0.2.3...v0.2.4

Draugr Time v0.2.3 — Week grid and responsive history

Choose a tag to compare

@github-actions github-actions released this 15 Oct 12:57

Draugr Time v0.2.3 — shared Week grid and responsive history reads

Week now uses one shared local-clock grid with compact clickable dates,
colored tag chips, interval tooltips and cross-day tag highlighting. Today and
its current-time marker are highlighted; future time stays blank. The default
hour range follows observed activity. Daily totals and relative bars make busy
days easier to compare, and all seven rows fit with the legend at 900×600.

  • Reports and JSON history export release storage between event prefixes;
    aggregation runs outside the storage mutex. The desktop retains its last
    status during tracker contention instead of blocking the UI, including macOS
    main-thread sampling.
  • CSV/JSON export replaces a destination confirmed in the save dialog using a
    synced temporary file beside it. Failed writes preserve the previous file.
  • Legacy AFK queries stop at the global first computer observation, matching
    the existing Day runtime and reports without constructing reversed intervals.
  • Overview hour labels follow real local-hour timestamps on 23/25-hour days.
    Week aligns local clock hours across days; repeated DST hours share a column,
    while exact UTC intervals and numeric totals retain their actual durations.
  • Refreshing Week preserves the custom date range entered in Reports.
  • Concurrent metadata/history edits reject an in-progress report/export with a
    localized retry message rather than producing mixed edits.

All tracking data remains local. No database migration is needed. The app uses
its existing tempfile dependency directly for safe export replacement. Each
platform archive contains the desktop app and draugr-time-cli.

Validation and limitations

Local cargo fmt --check, cargo clippy --all-targets -- -D warnings and cargo test
passed: 184 tests, 0 failures, 7 environment-dependent tests ignored. The separate
serial native rendering check passed for eight languages and both themes at
900×600. Regression tests cover export replacement and cleanup, history-prefix
parity, concurrent edits, AFK parity, DST hour labels, Week interactions and cache
invalidation. GitHub CI checks Linux, Windows and macOS before publishing assets.

A native smoke launch could not connect to a Wayland compositor in the local
sandbox. Real window/tray interactions, recording during dense-week loading and
save-dialog replacement still need manual verification on Windows/macOS and
Linux X11/Wayland. Week's minute bands approximate subminute visual detail;
reports and tooltip durations remain exact. D-Bus theme polling, thread joining
and the minute-cell color representation are unchanged. See docs/m7.md.

Draugr Time v0.2.2 — lower memory usage

Choose a tag to compare

@github-actions github-actions released this 14 Oct 20:06

Draugr Time v0.2.2 — lower memory usage

This release reduces memory retained by tag undo, Week and Reports, and fixes
reports and JSON history export for ranges containing more than 100,000 events.

  • Tag undo stores typed changes only for affected rows, preserving up to 20
    actions without copying the entire tag history. Conflicting edits reject undo
    atomically; independent newer records remain intact.
  • Week retains compressed color bands and caches canvas geometry. Daily
    timesheets retain totals rather than full tracks or duplicate reports.
  • Report history loads in event batches, shares repeated labels through Arc
    and merges intervals before allocating strings.
  • Leaving Week/Reports frees loaded data and caches, invalidates pending results
    and reclaims freed allocator pages on Linux/glibc. Tray and away-tag navigation
    receive the same cleanup.
  • Large reports and JSON archive export no longer hit the 100,000-event cap.
    The localhost raw-event API retains its safety limit.

Synthetic Linux release measurements: Week open-window PSS decreased from
76.55 to 35.62 MiB; a monthly CLI report with 93,031 events decreased peak RSS
from 159.65 to 26.62 MiB, with identical CSV output. These are fixture results,
not guaranteed memory limits for personal history. Window buffers still scale
with window size and are released when the window closes.

All data remains local. No database migration or new dependency is required.
Each platform archive contains the desktop app and draugr-time-cli.

Validation and limitations

Local fmt, clippy with warnings denied and tests passed: 174 tests, 0 failures,
7 environment-dependent tests ignored. Native Wayland Week smoke and X11
benchmark runs passed. GitHub CI checks Linux, Windows and macOS before release.
See docs/desktop-memory.md for measurements and reproduction details.

Week's 1,440 elapsed-time bins approximate subminute visual detail; numeric
reports and Day selection remain exact. Real Windows/macOS desktop interactions,
1440p/4K windows and CJK/emoji fallback-font usage need manual verification.