0.8.5 #13
AHS12
announced in
Announcements
0.8.5
#13
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
What's Changed
[0.8.5] - 2026-09-06
Heka learns to introduce itself and to scale: a first-run tour, a What's New
dialog fed by the changelog embedded right in the binary, a hidden
heka devtoolbox for rehearsing both, and — the big one — server-side search with
cursor pagination for the tasks and schedules lists, so the pages stay fast
and complete even with hundreds of entries. Freshness is engineered rather
than polled: a tiny revision pulse catches scheduled runs, CLI commands, and
on-disk YAML edits without ever refetching the pages you're scrolling.
Added
update the shell greets you with every release newer than the one you last
saw (newest first), rendered as proper markdown; a fresh install shows this
release's notes right after the first tour. The About page carries a
"View changelog" button that opens the whole file, plus Website and Docs
buttons (heka.ahs12.xyz) beside the existing GitHub link.
chrome — nav pills, daemon status, theme toggle, Settings — with
high-contrast popover and arrow styling that stays legible on every theme
variant, plus a visible ring around the highlighted element. Replayable
from Settings → Appearance or the About page; the tour hands straight over
to the release notes on a fresh install.
lists. Search is debounced (one request per settled query — tasks match
name and slug, schedules match slug and task slug) and runs on the daemon;
type and enabled filters (tasks) and the kind filter (schedules) moved into
SQL as well. The lists load 50 rows at a time over stable slug keyset
cursors and keep every page already scrolled into memory as you scroll for
more, with a "X shown · Y total" footer and honest loading states: a
spinner in the search field while a query is in flight, a "Loading more…"
row while the next page arrives.
/v1/revisionendpoint exposes one cheapaggregate signature per domain (tasks, schedules, runs). The GUI diffs it
every few seconds and invalidates exactly the list whose signature moved —
so a scheduled run firing in the background, a
heka runfrom anotherterminal, or a YAML file edited on disk all appear in the open lists within
seconds, without refetching a single page.
Changed
invalidations (Run Now, enable/disable, delete, create/update/import,
reconcile) plus the revision pulse for everything outside the GUI;
window focus still refetches as a safety net. Run-toggling stays
optimistic — chips flip instantly and roll back on failure, now correct
across every loaded page.
/v1/tasksand/v1/schedulesnow return{items, total, next_cursor}envelopes instead of bare arrays. Calls without a
limit(the CLI, thedashboard's next-run panel, the schedule-form picker) still receive full
lists —
heka list --jsonoutput is byte-identical. Schedules'kindfilter moved from the handler's in-memory loop into SQL.
sit side by side next to it.
runs change task chips.
Fixed
containing spaces,
%, or&reaches the daemon intact (the older runsfilter path keeps its behavior).
Full Changelog: 0.8.2...0.8.5
This discussion was created from the release 0.8.5.
All reactions