Version 0.9.0 Release

Backups, DeSEC DNS and more!

Release banner showcasing new UI

This release is made possible with the support of NlNet foundation

Changelog

Features

  • New backups implementation (#228, #274, #324, #325, #326, #331, #332)
  • DeSEC as a DNS provider (#211)
  • DigitalOcean as a DNS provider (#213)
  • Support drawer and basic support documentation logic unit (#203)
  • Automatic day/night theme (#203)
  • New router and adaptive layouts (#203)
  • New Material 3 animation curves (#203)
  • Add jobs button to the app bar of more screens (#203)
  • Refreshed UI of modal sheets (#228)
  • Support for XDG_DATA_HOME storage path on Linux for app data (#240)
  • Accept-Language header for the server API (#243, resolves #205)
  • Visible providers names during server recovery (#264, resolves #249)
  • Volume and IPv4 cost added to overall monthly cost of the server (#270, resolves #115)
  • Support for autofocus on text fields for keyboard displaying (#294, resolves #292)
  • New dialogue to choose a domain if user DNS token provides access to several (#330, resolves #328)
  • New app log console (#203)

Bug Fixes

  • Fix opening URLs from the app (#213)
  • Fix parsing of RAM size with DigitalOcean (#200, resolves #199)
  • Devices and Recovery Key cubits couldn’t initialize right after server installation (#203)
  • Fix BottomBar showing incorrect animation when navigating from sibling routes (#203)
  • PopUpDialogs couldn’t find the context. (#203)
  • Update recovery flow to use new support drawer (#203)
  • Improve installation failure dialogues (#213)
  • Privacy policy link pointed at wrong domain (#207)
  • Remove price lists for DNS (#211)
  • Implement better domain id check on DNS restoration (#211)
  • Add forced JSON content type to REST APIs (#212)
  • Remove unneded DNS check depending on CLOUDFLARE (#212)
  • Add background for dialogue pop ups and move them to root navigator (#233, resolves #231)
  • Make currency be properly shown again via shortcode (#234, related to #223)
  • Add proper server type value loading (#236, resolves #215)
  • Implement proper load functions for DNS and Server providers (#237, resolves #220)
  • Prevent moving a service if volume is null for some reason (#245)
  • Replace hard reset from server provider with direct server reboot (#269, resolves #266)
  • Normalize Hetzner CPU usage percentage by cached amount of cores (#272, resolves #156)
  • Change broken validations string for superuser SSH (#276)
  • Don’t let service migration to start if the same volume was picked (#297, resolves #289)
  • Wrap DNS check in catch to avoid runtime crash (#322)
  • Implement Backblaze bucket restoration on server recovery (#324)

Refactor

  • Migrate to Flutter 3.10 and Dart 3.0
  • Migrate to AutoRouter v6 (#203)
  • Get rid of BrandText and restructure the buttons (#203)
  • Remove brand alert dialogs and bottom sheet (#203)
  • Remove unused UI components (#203)
  • Remove BrandCards (#203)
  • Allow changing values for TLS settings
  • Replace String shortcode with Currency class (#226)
  • Rearrange Server Provider interface (#227)
  • Remove unused service state getters (#228)
  • Remove unused utils, add duration formatter (#228)
  • Move rest api methods according to their business logic files positions (#235, partially resolves #217 and #219)
  • Make flag getter a part of server provider location object (#238, resolves #222)

Translation contributions

  • Ukrainian

    • FoxMeste (3)
    • Mithras (31)
  • Latvian

    • Not Telling Lol (183)
  • German

    • Mithras (41)
    • FoxMeste (213)
  • Thai

    • FoxMeste (77)
  • Polish

    • Mithras (41)
    • Thary (43)
    • FoxMeste (163)
  • Slovenian

    • Mithras (212)
  • Czech

    • NaiJi ✨ (2)
    • Mithras (109)
    • FoxMeste (308)
  • Russian

    • FoxMeste (4)
    • Revertron (8)
    • NaiJi ✨ (23)
    • Mithras (54)
    • Inex Code (59)
  • Slovak

    • Mithras (29)
    • Revertron (396)
  • Macedonian

    • FoxMeste (7)
  • Belarusian

    • Thary (1)
    • FoxMeste (3)
    • Mithras (47)
  • French

    • Côme (211)
  • Spanish

    • FoxMeste (7)
  • Azerbaijani

    • Mithras (28)
    • Ortibexon (403)

Patch 0.9.1

Bug Fixes

  • Fix volume resizing on Digital Ocean (#368, resolves #367)
  • Disable the storage card while volume information is being fetched (#369, resolves #317)

Features

  • Add copy-to-clipboard for email on user page (#329, resolves #287)
  • Add support for ECDSA SSH keys (#362, resolves #319)
  • Implement confirmation modal for the volume resize (#372, resolves #308)

Other changes

  • Move service descriptions above login info for service cards (#342, resolves #341)
  • Add measure units to ‘Extending volume’ page (#344, resolves #301)
  • Make users to be ordered properly on users page (#343, resolves #340)
  • Move service card name to its icon row (#352, resolves #350)
  • Reorganize placeholders for empty pages (#359, resolves #348)
  • Remove redundant zone id cache for Cloudflare (#371)