Note: versions 0.13.5 and 0.13.6 were only published on iOS. This changelog includes changes between 0.13.4 and 0.13.7.
Features
- Porkbun DNS provider support (#677, resolves #507)
- Automatic server token rotation (#686)
- Allow installing a server without Backblaze credentials (backups can be configured later)
- Allow entering a new volume size manually when extending storage (#652, resolves #174)
Bug Fixes
- Do not silently mint a new encryption key when the existing one cannot be loaded — prevents accidental data loss (#693)
- Fix refetch TTL being a no-op, which caused the app to refresh everything every 10 seconds (#686)
- Filter out Hetzner tiers that are no longer available, and sort the list by price (#681, resolves #665)
- Improve job subscription teardown (#686)
- Fix Hive failing to find its path on Linux, which resulted in a black screen (#687)
- Fix unclickable hyperlinks in Markdown instructions on Flatpak builds (#674, resolves #578)
- Re-enable APK compression after the Flutter update inflated APK size to ~80 MB (#694)
- Report the correct app version on Flatpak and Windows builds (resolves #503)
Refactor
- Detach non-setup layers of the UI from
ServerInstallationCubit — a step towards retiring it as the global app status source of truth (#685)
- Properly dispose subscriptions when rotating the GraphQL token (#686)
- Fix potential cold start issues (#686)
- Return
null instead of empty lists on failures so callers can distinguish "empty" from "errored" (#686)
Build & Packaging
- Major CI rehaul: the entire build pipeline is now driven by a Nix flake (#680, #684, resolves #498, #383)
- Linux: native Nix package, portable build targeting glibc 2.28, AppImage, DEB, RPM, Arch Linux, Snap, and Flatpak packages
- Windows: ZIP and unsigned MSIX packages
- macOS and iOS: unsigned builds produced in CI (#682)
- Android: signed Google Play, F-Droid, and Standalone APK/AAB releases built via gradle2nix
- Update Flutter to 3.35 (#664, #671)
- Flake maintenance and upgrades for building on current nixpkgs (#660)
- Reformat the project to the new styling rules