NEW
- [Sonarr] (Episode Sheet) Show the absolute episode number when available
- [Sonarr] (Episode Sheet) Show queue tile when the episode has queued releases
- [Sonarr] (Releases) Ability to sort by preferred word score
- [Sonarr] (Series Details) Ability to pull-to-refresh series on the season list
- [Sonarr] (Queue) Re-added ability to view all queued releases
- [Sonarr] (Queue) Option to remove from download client and add to blocklist on remove
TWEAKS
- [UI/UX] (Icons) Ensure all icons are of the "rounded" family
- [UI/UX] (List Tiles) Improve consistency in padding between different tile sizes
FIXES
- [Radarr] (Files) Could fail to load with files without media information
- [Sonarr] (Queue) Check monitored download status on pull to refresh
- [Sonarr] (Releases) Correctly display negative preferred word scores
- [Tautulli] (Updates) Checking for updates could fail in some cases
- [UI/UX] (List Tiles) Fix cases where trailing icons were not vertically centered in collapsed tiles
* (fix): [UI] Ensure paged ListView uses correct padding depending on screen type
* (fix): [Calendar] Ensure calendar view is within SafeArea
* (chore): Add reference to Instatus to README.md
NEW
- [-Arr/Releases] Match torrent seeder colours to the web GUI
- [Firebase/Analytics] Added analytics for breadcrumb tracking in crashes
- [Logger] Utilize a new, custom built on-device logging system
- [Logger] Compact/delete old log entries once the log count passes 100
- [Logger] Exported logs are now in JSON format
- [Routing] Protect all module routes by showing a "Not Enabled" screen when the module is not enabled
- [Settings/System] Added toggle to disable Firebase Analytics
- [Tautulli/Activity] Show custom season titles from Plex's new TV agent
TWEAKS
- [Radarr/Files] Add languages to file block
- [Radarr/Files] Small changes to table titles
- [System/Logs] Reimplemented logger view
- [System/Logs] Removed viewing the stack trace within the application (still viewable within the exported logs)
- [System/Logs] Added the exception to the expanded table instead of a separate dialog popup
- [Tautulli/Activity] Minor UI tweaks including showing the full season title and italicizing the episode title
- [UI/Navbar] Jump instead of animate to page when tapping a navbar item
FIXES
- [Firebase/Crashes] Do not log DioError/networking exceptions
- [Flutter] Updated packages
- [Flutter] Upgrade all Comet.Tools packages to null-safety/NNBD
- [Radarr/Releases] Negative format scores were not being shown
- [Share] The sharesheet could break after the first time it was opened
- [Strings] Safe-guard many substring operations
- [Tautulli/Activity] Play/paused/buffering icon was not properly left aligned to the text
- [Tautulli/Users] User images would not be fetched on newer versions of Tautulli
- [UI/UX] Modal scroll controller was not being attached to the ListView in a bottom modal sheet
- [UI/UX] Do not log errors when network images fail to load
- [UI/UX] Prevent attempting to load background images that are passed an empty URL
- [URLs] Safe-guard launching specific invalid URLs
NEW
- [Radarr/Files] Add video and audio codec to the media file card
- [Search] Now supports infinite scrolling for loading additional pages of results
- [Search] Much faster parsing of XML responses
- [Search] Fully adapted for localization
TWEAKS
- [Search] Now returns 50 results per infinite scrolling page
- [Search] Removed support for sorting the catalogue and instead show the results in the order the indexer returns the data
- [Search] Removed support for filtering releases by a search query
- [Search] Minor tweaks to the icons on the indexer, category, and subcategory tiles
FIXES
- [Search] Search would only return 10 results
- [Search] Age of the release could show as "Unknown Age" in some cases
* [Radarr] Added very basic localization file for testing
* Added minimal LunaSea localization file
* Translations update from Weblate (#325)
* Added translation using Weblate (German)
* Translated using Weblate (German)
Currently translated at 25.0% (1 of 4 strings)
Translation: LunaSea/Radarr
Translate-URL: https://hosted.weblate.org/projects/lunasea/radarr/de/
* Added translation using Weblate (French)
* Translated using Weblate (French)
Currently translated at 25.0% (1 of 4 strings)
Translation: LunaSea/Radarr
Translate-URL: https://hosted.weblate.org/projects/lunasea/radarr/fr/
* Translated using Weblate (French)
Currently translated at 100.0% (4 of 4 strings)
Translation: LunaSea/Radarr
Translate-URL: https://hosted.weblate.org/projects/lunasea/radarr/fr/
* Deleted translation using Weblate (German)
Co-authored-by: Jagandeep Brar <me@jagandeepbrar.io>
Co-authored-by: Antoine C <contact+weblate@antoinecardon.fr>
* [Localization] Updated keys
* [Strings] Removed internal constant LunaSea to ease localization efforts
* Added translation using Weblate (French)
* Translated using Weblate (French)
Currently translated at 100.0% (1 of 1 strings)
Translation: LunaSea/LunaSea
Translate-URL: https://hosted.weblate.org/projects/lunasea/lunasea/fr/
* [Radarr] Added additional localization strings
* [Locale/Radarr] Additional strings
* Added translation using Weblate (Norwegian Bokmål)
* Added translation using Weblate (Norwegian Bokmål)
* Translated using Weblate (French)
Currently translated at 100.0% (11 of 11 strings)
Translation: LunaSea/Radarr
Translate-URL: https://hosted.weblate.org/projects/lunasea/radarr/fr/
* Translated using Weblate (Norwegian Bokmål)
Currently translated at 100.0% (1 of 1 strings)
Translation: LunaSea/LunaSea
Translate-URL: https://hosted.weblate.org/projects/lunasea/lunasea/nb_NO/
* Translated using Weblate (Norwegian Bokmål)
Currently translated at 90.9% (10 of 11 strings)
Translation: LunaSea/Radarr
Translate-URL: https://hosted.weblate.org/projects/lunasea/radarr/nb_NO/
* Translated using Weblate (French)
Currently translated at 100.0% (11 of 11 strings)
Translation: LunaSea/Radarr
Translate-URL: https://hosted.weblate.org/projects/lunasea/radarr/fr/
* [localizations] sort keys
* [Packages] Migration to Fluttter v2 and NNBD Compatibility (#329)
* Updated packages
* Added system level Firebase Crashlytics to replace Sentry
* Started migration to crashlytics
* [Crashlytics] Adjusted dialog to reflect analytics, add crash button
* [Settings] Removed test crash tile
* [Changelog] Pull changelog version and build from application package
* Added easy_localization package
* Added stub localization handler
* [Localization] Added package and assembly script (#330)
* Updated packages
* Added system level Firebase Crashlytics to replace Sentry
* Started migration to crashlytics
* [Crashlytics] Adjusted dialog to reflect analytics, add crash button
* [Settings] Removed test crash tile
* [Changelog] Pull changelog version and build from application package
* Added easy_localization package
* Added stub localization handler
* [Localization] Added easy_localization package, added script to concat all localization files
* Removed license shield
* [Localization] Integrated system localization handling (#331)
* [Localization] use dash delimiter
* Translated using Weblate (English)
Currently translated at 100.0% (11 of 11 strings)
Translation: LunaSea/Radarr
Translate-URL: https://hosted.weblate.org/projects/lunasea/radarr/en/
* [Localization] Added ability to switch languages, updated Radarr localization (#333)
* [Scripts, Localization] Updated prepare script to print nicer JSON, add additional strings for Radarr
* Updated localizations, switch remaining Radarr strings that are available
* Translated using Weblate (French)
Currently translated at 100.0% (12 of 12 strings)
Translation: LunaSea/Radarr
Translate-URL: https://hosted.weblate.org/projects/lunasea/radarr/fr/
* Translated using Weblate (Norwegian Bokmål)
Currently translated at 100.0% (12 of 12 strings)
Translation: LunaSea/Radarr
Translate-URL: https://hosted.weblate.org/projects/lunasea/radarr/nb_NO/
* Generated new local assets
* [radarr/add_movie] Strings adapted for localizations and added to localization files
* Translated using Weblate (English)
Currently translated at 100.0% (2 of 2 strings)
Translation: LunaSea/LunaSea
Translate-URL: https://hosted.weblate.org/projects/lunasea/lunasea/en/
* [Localizations] Rebuild
* Translated using Weblate (French)
Currently translated at 100.0% (18 of 18 strings)
Translation: LunaSea/Radarr
Translate-URL: https://hosted.weblate.org/projects/lunasea/radarr/fr/
* Translated using Weblate (French)
Currently translated at 100.0% (2 of 2 strings)
Translation: LunaSea/LunaSea
Translate-URL: https://hosted.weblate.org/projects/lunasea/lunasea/fr/
* Translated using Weblate (Norwegian Bokmål)
Currently translated at 100.0% (2 of 2 strings)
Translation: LunaSea/LunaSea
Translate-URL: https://hosted.weblate.org/projects/lunasea/lunasea/nb_NO/
* [Radarr/Add Movie] Adapted for localized strings
* [Radarr/Add Details] Adapted for localized strings
* [Radarr/Edit Movie] Adapted for localized strings
* Translated using Weblate (French)
Currently translated at 100.0% (3 of 3 strings)
Translation: LunaSea/LunaSea
Translate-URL: https://hosted.weblate.org/projects/lunasea/lunasea/fr/
* Translated using Weblate (French)
Currently translated at 100.0% (25 of 25 strings)
Translation: LunaSea/Radarr
Translate-URL: https://hosted.weblate.org/projects/lunasea/radarr/fr/
* [Chore] Rebuilt localizations
* [Radarr/Dialogs] Updated a few dialogs to reflect localized titles
* [Localization] Ability to disable localization options internally
* [DateTime] Show "Just Now" when time difference is under 10 seconds
* [Search] Switch to new XML parsing package/engine
* Translated using Weblate (Norwegian Bokmål)
Currently translated at 96.7% (30 of 31 strings)
Translation: LunaSea/Radarr
Translate-URL: https://hosted.weblate.org/projects/lunasea/radarr/nb_NO/
* Translated using Weblate (French)
Currently translated at 100.0% (31 of 31 strings)
Translation: LunaSea/Radarr
Translate-URL: https://hosted.weblate.org/projects/lunasea/radarr/fr/
* Translated using Weblate (French)
Currently translated at 100.0% (4 of 4 strings)
Translation: LunaSea/LunaSea
Translate-URL: https://hosted.weblate.org/projects/lunasea/lunasea/fr/
* Translated using Weblate (Norwegian Bokmål)
Currently translated at 100.0% (4 of 4 strings)
Translation: LunaSea/LunaSea
Translate-URL: https://hosted.weblate.org/projects/lunasea/lunasea/nb_NO/
* [Localization] (chore) Rebuild localization
* [Chore] Moved localization to system folder
* Added translation using Weblate (Swedish)
* Added translation using Weblate (Swedish)
* Translated using Weblate (Swedish)
Currently translated at 100.0% (4 of 4 strings)
Translation: LunaSea/LunaSea
Translate-URL: https://hosted.weblate.org/projects/lunasea/lunasea/sv/
* Translated using Weblate (Swedish)
Currently translated at 100.0% (31 of 31 strings)
Translation: LunaSea/Radarr
Translate-URL: https://hosted.weblate.org/projects/lunasea/radarr/sv/
* [Localization] Added support for Swedish (sv)
* [Radarr/Types] Adapted all type readable strings for localization
* [Radarr] Continued work on adapting for localization
* Translated using Weblate (French)
Currently translated at 100.0% (71 of 71 strings)
Translation: LunaSea/Radarr
Translate-URL: https://hosted.weblate.org/projects/lunasea/radarr/fr/
* Translated using Weblate (French)
Currently translated at 100.0% (9 of 9 strings)
Translation: LunaSea/LunaSea
Translate-URL: https://hosted.weblate.org/projects/lunasea/lunasea/fr/
* [Localization] (chore) Build localization
* [Chore] Cleanup, move and adapt drawer to LunaUI
* [Drawer] Cleanup drawer builder
* Translated using Weblate (English)
Currently translated at 100.0% (9 of 9 strings)
Translation: LunaSea/LunaSea
Translate-URL: https://hosted.weblate.org/projects/lunasea/lunasea/en/
* Translated using Weblate (English)
Currently translated at 100.0% (10 of 10 strings)
Translation: LunaSea/LunaSea
Translate-URL: https://hosted.weblate.org/projects/lunasea/lunasea/en/
* [UI] Move "luna_ui" to "ui", old "ui" to "deprecated_ui"
* [-arr/Add] Tags set when adding content are now stored in the database
* [-arr/Links] Added Trakt link, normalize sizes, update TMDB logo
* Add weblate link, disable additional languages on release mode, updated changelog
Co-authored-by: Weblate (bot) <hosted@weblate.org>
Co-authored-by: Antoine C <contact+weblate@antoinecardon.fr>
Co-authored-by: Allan Nordhøy <epost@anotheragency.no>
Co-authored-by: Weblate <noreply@weblate.org>
Co-authored-by: Patrik Hauguth <patrik.hauguth@gmail.com>
NEW
- [Dashboard] "Home" has been renamed to "Dashboard"
- [Radarr/Catalogue] If no movie is found in the search query, given an option to search to add the movie
- [Radarr/Discover] Add the ability to discover movies from your import lists & Radarr recommendations
- [Radarr/Releases] Ability to set sorting direction, category, and filtering method
- [Settings/Radarr] Ability to toggle on or off Radarr suggestions in the discover page
TWEAKS
- [Drawer] Removed the option to use categories/folders in the drawer
- [Settings/Config] Sort configuration options within modules for cleaner isolation and easier expansion for future configuration options
- [Settings/Profiles] Renaming a profile now checks for an existing profile with the same name within the prompt
- [Settings/Profiles] Adding a profile now checks for an existing profile with the same name within the prompt
- [Settings/Profiles] The delete profile prompt now hides the currently enabled profile, and shows a snackbar if only one profile exists
- [Settings/Wake on LAN] Allow clearing the broadcast and MAC addresses to empty values
FIXES
- [Radarr] Support for Radarr v3.1.0+ (nightly builds)
- [Radarr/Add] Instantly show a movie as addable again if removed right after adding it
- [Radarr/Cast] If a job or character name is empty, show a dash instead of an empty space
- [Radarr/Catalogue] Instantly remove the movie tile when removing a movie
- [Radarr/Edit] Padding around the "Update Movie" button was incorrect
- [Toasts] In some cases, the error was not being passed through to the error viewer
- [UI/UX] Upstream framework support for basic mouse/trackpad highlight and scrolling support
- [UI/UX] Tapping the AppBar to scroll back in a nested route would scroll back the parent route as well
- [UI/UX] Use the recommended safe area padding at the bottom of lists for fullscreen devices
NEW
- [Radarr] Completely rewritten from the ground-up
- [Radarr] View system status, disk usage, and manage tags
- [Radarr] Catalogue, upcoming, missing, tags, and quality profiles are now held in-state between module switches
- [Radarr/Add] Long-pressing a search result tile will open the movie's TMDB entry
- [Radarr/History] Now an infinite scrolling list
- [Radarr/Movie] Cast information, movie-specific history, more detailed file information, more detailed overview page
- [Radarr/Filtering] Improved sorting and filtering speed, performance, and consistency
- [Radarr/Filtering] Ability to set sorting and filtering defaults in settings
- [Radarr/Filtering] Many additional filtering options
- [Haptics] Added haptic feedback to all buttons, toggles, and dropdowns
- [Quick Actions] Default "Settings" quick action added to end of the list (if there is room)
- [UI/UX] (Radarr Only For Now) Ability to tap the AppBar to scroll to top
- [UI/UX] (Radarr Only For Now) If the list is in a tabbed PageView, tapping the active tab will scroll the list to the top
- [UI/UX] (Radarr Only For Now) If the keyboard is open, scrolling the list, swiping between pages, or opening the drawer will dismiss the keyboard
- [Webhooks] Notification webhooks will now show as an in-app heads up if LunaSea is open at the time of receiving the notification
TWEAKS
- [Radarr] Now only supports v3.0.0 and higher of Radarr
- [Radarr] Many visual changes, too many to list
- [Radarr] The tab "History" has been replaced with "More"
- [Radarr/Edit] Monitor toggle has been moved to the edit prompt
- [Sonarr/Filtering] Updated button to use standard filtering icon
- [Tautulli/Activity] Show session type and bandwidth type breakdown on activity page
- [Tautulli/Activity] Cleanup player information to more closely resemble web GUI
- [Tautulli/Activity] Show subtitle stream decision
- [UI/UX] Reduced the weight of bold text across the application
- [UI/UX] Added padding to bottom of lists for devices that require a safe area
- [UI/UX] Active tab in navigation bar now has a border with the AMOLED theme
FIXES
- [Changelog] Properly align/pad "Full Changelog" button at the end of the changelog
- [Flutter] Update packages
- [Flutter] Now using the beta channel
- [Quick Actions] Improve internal implementation of quick actions to be more stable and reliable
- [Settings/Modules] Newly set headers would sometimes not be passed to the connection test
- [Sonarr/Edit] Series path prompt would show an incorrect title
- [Sonarr/Description] Show "No summary is available" when there is no summary instead of an empty string
- [Sonarr/Releases] Default sorting direction was using catalogue default value
- [Tautulli/Graphs] Description of some graphs were not correct (Thanks @ZuluWhiskey!)
- [Tautulli/IPs] Fix location showing as null for local addresses
- [UI/UX] Border radius for the splash highlight wouldn't clip correctly on slim buttons
- [UI/UX] Margin/size of sort/filter buttons were off by a few pixels
- [UI/UX] InkWell splash now clips correctly to the rounded borders of popup menu buttons
NEW
- [Settings/Modules] Add an information/help button with module descriptions and links
TWEAKS
- [Radarr] Always show the amount of days content will be available instead of limiting it to only content in the next 30 days
- [Settings] Moved "Backup & Restore" and "Logs" to "System" section
- [Settings] Merged "Customization" and "Modules" sections into "Configuration"
- [Settings/Sonarr] Removed the need to enable Sonarr to test the connection
- [Settings/Tautulli] Removed the need to enable Tautulli to test the connection
FIXES
- [IAPs] Ensure all IAPs are marked as "consumed"
- [Flutter] Updated packages
- [Logging] Updated Sentry to v4 framework to improve capturing fatal/crashing bugs
- [Settings/Logs] Hide exception and stack trace buttons when an error is not available
- [Sonarr/History] Fixed history fetching the oldest entries, not the newest
- [State] Correctly clear state when clearing LunaSea's configuration
- [Tautulli/Activity] Fixed consistency of hardware transcoding indicator compared to the web UI
- [UI/Divider] Fix consistency of divider width across regular and AMOLED dark theme
NEW
- [Backup & Restore] Backup files now use the .lunasea extension (older .json backups are still supported)
- [Filesystem] Any saves to the filesystem now uses the system share sheet
- [Images] Ability to set (or entirely disable) the opacity of the background image for cards
- [Networking] Strict TLS/SSL validation is now disabled globally
- [Routing] Hold the AppBar back button to pop back to the home page of the module
- [Settings/Sonarr] Toggle to enable Sonarr v3 features
- [Sonarr] A ground-up reimplementation of Sonarr
- [Sonarr] State is now held across module switches
- [Sonarr/Add] (v3 only) Tapping an already-added series will take you to the series page
- [Sonarr/Add] Automatically navigate to a newly added series
- [Sonarr/Add] Ability to set tags and (v3 only) language profile when adding a new series
- [Sonarr/Catalogue] Ability to view all, only monitored, or only unmonitored series
- [Sonarr/Catalogue] Ability to set the default sorting type and direction (in the settings)
- [Sonarr/Edit] Ability to update tags and (v3 only) language profile
- [Sonarr/Episodes] If the episode is in the queue, show details of the download status
- [Sonarr/Overview] View tags and (v3 only) language profile applied to the series
- [Sonarr/Queue] Ability to view and manage your queue
- [Sonarr/Releases] (v3 only) Ability to interactively search for season packs
- [Sonarr/Releases] Ability to view all, only approved, or only rejected releases
- [Sonarr/Releases] Ability to set the default sorting type and direction (in the settings)
- [Sonarr/Tags] Ability to add, view, and delete tags
- [Tautulli/Activity] Show the ETA for when the session will be completed
- [Tautulli/Activity] Show if hardware transcoding is being used on the stream
TWEAKS
- [Radarr] Use Radarr v3 icon across the UI
- [Settings/Dialogs] Small tweaks and additional notes for entering hosts and passwords
- [Settings/Host Dialog] Add validator on host to ensure user adds http:// or https://
- [Settings/Resources] Hide link to documentation until I actually finish it
- [Sonarr] Many changes to Sonarr's design
- [Sonarr/Series] Toggling monitored state of series has now been moved to the edit prompt and edit screen
FIXES
- [Backup & Restore] Fix grey screen when restoring a backup without a "default"-named profile (new backups are not required)
- [Build] Reintegrate cocoapods podfile
- [Flutter] Update packages
- [Images] Images will now load for invalid/self-signed certificates
- [Networking] Ensure that insecure (HTTP/80) connections are allowed at the platform-level
- [Tautulli/Activity] Fix grey screen for music activity
- [TextField] Fix TextField actions (cut, copy, paste, etc.) not showing
- [Timestamps] Fix 12:xx AM being shown as 00:xx AM when using 12-hour time
- [UI/Checkbox] Fix overly vibrant checkbox selected background
- Tons of additional minor bugs were fixed