Skip to content

v0.1.42

Choose a tag to compare

@github-actions github-actions released this 12 Nov 19:59
· 84 commits to main since this release
v0.1.42
b41625a

Actions that fail now tell you why, safer VM and container controls, live
network speed on current Unraid API versions, a hardened self-signed
certificate and key-storage path, and an icon and screenshots for the
store listing.

Added

  • Icon and screenshots in the store listing — the F-Droid listing now
    shows the NOVA icon and six screenshots (Overview, Array, Docker, VMs,
    container details and notifications) (#212, thanks @licaon-kter).

Changed

  • Container details tabs are accessible — the Info/Logs/Ports/Volumes
    tabs now use the standard Material tab bar, so screen readers announce
    them as tabs with the selected one marked and the touch targets are at
    least 48 dp high.
  • Memory and network values no longer cut off in the Docker tab and
    container details
    — the container list shows memory used, the detail
    view shows used with "of " below, and long values wrap instead of
    being truncated on narrow phones. The notifications header now reads
    "1 alert · 1 warning" instead of "1 alerts · 1 warnings" (#226).
  • Logs tab explains an empty log — a running container with no log
    lines now says it may be logging to stderr, which the Unraid API does not
    return yet, instead of a bare "No log lines." (#225).
  • Confirmation before Restart, Update and VM Reboot — restarting or
    updating a single container and rebooting a VM now ask first, like Stop
    already did (#229).
  • VM "Stop" asks the guest to shut down first — it used to cut the
    power (#228). Stop now asks for confirmation, sends a shutdown request and
    Unraid powers the VM off if the guest has not shut down within about 10
    seconds. "Force stop" powers off immediately, as before, behind its own
    confirmation.
  • Privacy policy updated — the policy (effective 2026-11-10) now also
    says that the certificate fingerprint you pin for a self-signed server is
    stored on your device per server and left out of backups; that the app
    checks for updates when it starts as well as in Settings (direct
    download version only); that container icons are loaded straight from
    the addresses your own Unraid server provides, usually third-party hosts
    that can see your IP address; and its list of Android permissions now
    names the internet and network-state permissions (the notification
    permission is no longer listed because the app does not declare it).

Fixed

  • Network interfaces screen no longer shows blank hardware fields —
    vendor, model, link speed and the virtual flag are only available with a
    third-party API plugin; rows without data are now left out instead of
    shown empty. On a stock API the Hardware block still shows the MAC
    address (#223).
  • No more background polling — Settings → Server plugins, Network
    interfaces and the container Logs tab kept refreshing from the server
    while the app was in the background; they now pause until you return.
  • Failed actions now tell you why — stopping a container or VM, array and
    parity actions and notification actions failed silently when the server was
    unreachable or refused them (for example an API key without permission):
    nothing happened and no message appeared. They now show the reason. A failed
    container stop no longer starts the container again on "Restart", and a
    failed notification action no longer triggers a refresh as if it had worked.
  • Container logs keep the last good lines on a hiccup — one failed refresh
    of the live log tail replaced the logs with "no logs".
  • Pull-to-refresh actually refreshes — pulling down now reloads the data
    that is on screen, and the spinner stops as soon as the first refreshed data
    has arrived (or the server did not answer) instead of after a series of
    timeouts.
  • Notification list updates after an action during a refresh — archiving
    or deleting a notification while a refresh was already running could leave
    the list and the bell badge stale for up to a minute.
  • Live stats for every container (#224) — on current Unraid API versions
    one container per refresh never got live CPU/memory/IO numbers because the
    server sent its id with terminal control characters attached.
  • Network card shows speed on Unraid 4.35 and newer — the Overview's
    network card showed no speed on Unraid API 4.35 and newer; it now does.
    Live network speed needs Unraid API 4.35 or newer. Servers below 4.35
    that relied on a third-party API patch for this no longer show network
    speed until the API is updated (#217, thanks @lcadhd).
  • Local self-signed trust hardened — the server name is now checked for every certificate except the one you pinned, so this no longer depends on other app settings.
  • "Reset certificate" now sticks — saving or testing a server after resetting its certificate no longer brings the old certificate back; the next connection asks for confirmation again.
  • Saving a server no longer crashes when key storage is broken — if Android's secure key storage was reset, saving a server used to crash the app every time. It now shows an error with a "Reset key storage" button (after confirmation it deletes all saved API keys, which you then enter again). A save that fails in key storage also no longer leaves a duplicate server, and changing only the API key now takes effect immediately.

What's Changed

  • docs: match the stable release title to practice, intro for 0.1.41 by @nofuturekid in #220
  • ci: Bump the github-actions group across 1 directory with 2 updates by @dependabot[bot] in #216
  • docs: F-Droid store screenshots rendered from the real UI (+ icon) by @nofuturekid in #221
  • fix: read network throughput from the upstream metrics.network shape by @nofuturekid in #222
  • ci: harden release pipeline (guard, SHA pins, token hygiene, doc drift) by @nofuturekid in #227
  • ci: verify the release APK's own version, package and signer before publishing by @nofuturekid in #237
  • docs: draw status bar and gesture pill in store screenshots by @nofuturekid in #232
  • fix: surface failed actions, make pull-to-refresh refresh, stop losing nudges, normalise docker stats ids by @nofuturekid in #233
  • fix: UI review package (VM stop, confirms, polling, memory text, tabs, network hardware, privacy policy) by @nofuturekid in #235
  • fix: harden local self-signed trust, certificate reset and API-key storage recovery by @nofuturekid in #231
  • release: v0.1.42-beta1 — failed actions explain themselves, trust hardening, fresh screenshots by @nofuturekid in #238
  • release: v0.1.42-beta2 — failed actions explain themselves, trust hardening (APK verify fix) by @nofuturekid in #239
  • ci: Bump the github-actions group across 1 directory with 3 updates by @dependabot[bot] in #234
  • docs: reconcile HANDOFF, ADR index, CHANGELOG and tooling docs with 0.1.42-beta2 by @nofuturekid in #261
  • chore: drop the stale token-budget rule from the project CLAUDE.md by @nofuturekid in #240
  • docs: project website on GitHub Pages by @nofuturekid in #262
  • release: 0.1.42 — failed actions explain themselves, safer VM controls, trust hardening (Stable) by @nofuturekid in #265

Full Changelog: v0.1.41...v0.1.42