Jonathan McCumber
645ca19d76
fix: address reviewer feedback — rename scroll field to bool, relocate static, drop env var
...
- Rename `ui_scroll_tick_count: u64` → `should_text_scroll: bool` across all 33
call sites; `on_ui_scroll_tick` now assigns true/false instead of 0/1
- Remove two now-redundant comments from `test_on_ui_scroll_tick`
- Move `WHITESPACE_RE` static declaration below module imports in network/mod.rs
- Remove `MANAGARR_TICK_RATE_MS` env var and its parsing helpers; `recv()`-based
blocking already brings idle CPU to near-0, and tuning tick rate silently
stretches the poll cadence — keep `DEFAULT_TICK_RATE_MS` const only
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01C3FpbniZme9mJqgFkMVowz
2026-07-04 20:30:20 -05:00
Jonathan McCumber
a72b2991fd
fix: address reviewer feedback — regex OnceLock and restore tick rate
...
- Compile whitespace regex once via OnceLock instead of on every
non-success response; makes format_error_body infallible (String
return, no Result) eliminating the only practical failure mode
- Revert default tick rate from 100ms back to 50ms to preserve the
existing 20-second Servarr poll cadence (tick_until_poll=400 × 50ms);
the recv() change is the real CPU fix — the tick rate change was
unnecessary and silently halved the data refresh rate
- Keep MANAGARR_TICK_RATE_MS as opt-in override; note that tuning it
proportionally stretches the poll interval alongside the tick rate
2026-06-28 13:00:16 -05:00
Jonathan McCumber
6c41e0704e
fix: reduce TUI idle CPU and improve server error banners
...
- Replace non-blocking try_recv() event loop with blocking recv() to
eliminate idle spin; the sender tick timeout still drives minimum
wakeup rate so the UI stays responsive
- Lower default tick rate from 50 ms to 100 ms (10 ticks/sec vs 20);
add MANAGARR_TICK_RATE_MS env var for runtime tuning
- Move terminal draws to event boundaries (key + tick) instead of every
loop pass, reducing unnecessary redraws
- In network error handling, prefer concise JSON fields (message /
errorMessage / error) over the raw HTTP body, so Radarr ASP.NET
stack traces don't flood the TUI banner; full body still logged
- Add unit tests for tick-rate parsing and Radarr-style JSON error body
Observed: ~0.6% total CPU at idle vs measurably higher with prod defaults
2026-06-28 12:35:37 -05:00
Dark-Alex-17
03d134bec9
refactor: Refactored several usages of sort_by_key and match guards to utilize newer Rust version APIs
2026-06-25 13:18:43 -06:00
Dark-Alex-17
bbcd3f00a9
feat: Created a separate 'ssl' property for the config so users don't have to specify an ssl_cert_path to use SSL or use the uri workaround for HTTPS API access
2026-03-29 12:39:26 -06:00
Dark-Alex-17
5556e48fc0
fix: Improved the system notification feature so it can persist between modals
2026-02-04 08:18:04 -07:00
Dark-Alex-17
af573cac2a
feat: Added support for a system-wide notification popup mechanism that works across Servarrs
2026-02-03 17:03:12 -07:00
Dark-Alex-17
64fad3b9bc
refactor: Removed the filtering of monitored_storage_paths from the networking module and migrated all of it to the UI
2026-01-22 13:12:51 -07:00
Dark-Alex-17
3be7b09da8
feat: Added config option to filter for specific disk space paths to display in the UI (CLI is unaffected)
2026-01-22 10:49:30 -07:00
Dark-Alex-17
d8f7febfe1
feat: Improved disk-space UI and CLI that shows the actual path being monitored instead of just a disk number
Check / stable / fmt (push) Has been cancelled
Check / beta / clippy (push) Has been cancelled
Check / stable / clippy (push) Has been cancelled
Check / nightly / doc (push) Has been cancelled
Check / 1.89.0 / check (push) Has been cancelled
Test Suite / ubuntu / beta (push) Has been cancelled
Test Suite / ubuntu / stable (push) Has been cancelled
Test Suite / macos-latest / stable (push) Has been cancelled
Test Suite / windows-latest / stable (push) Has been cancelled
Test Suite / ubuntu / stable / coverage (push) Has been cancelled
2026-01-22 09:36:58 -07:00
Dark-Alex-17
f17f542e8e
refactor: Refactored the SonarrEvent enum to not unnecessarily wrap dual series_id and season_number values in a tuple when both values can be passed directly
2026-01-19 16:44:10 -07:00
Dark-Alex-17
89f5ff6bc7
feat: Blocklist support in Lidarr in both the CLI and TUI
2026-01-19 16:13:11 -07:00
Dark-Alex-17
eff1a901eb
feat: CLI and TUI support for track history and track details in Lidarr
2026-01-19 14:50:20 -07:00
Dark-Alex-17
7add62b245
fix: Sonarr network wasn't checking for the user to be using the sorting block when populating season details
2026-01-19 14:50:01 -07:00
Dark-Alex-17
7bb5f83a56
feat: Lidarr UI support for album details popup
2026-01-16 23:21:25 -07:00
Dark-Alex-17
bc6ecc39f4
feat: Bulk added CLI support for tracks and album functionalities in Lidarr
2026-01-16 14:38:08 -07:00
Dark-Alex-17
1329589bd6
feat: Implemented the manual artist discography search tab in Lidarr's artist details UI
2026-01-15 14:36:09 -07:00
Dark-Alex-17
c6dc8f6090
feat: Lidarr CLI support for downloading a release
2026-01-15 12:57:54 -07:00
Dark-Alex-17
0ee275d58f
fix: Sonarr manual search TUI and CLI incorrectly displaying the same unfiltered results for both season and episode searches
2026-01-15 12:43:16 -07:00
Dark-Alex-17
8dfa664a06
feat: CLI support for searching for discography releases in Lidarr
2026-01-15 11:39:34 -07:00
Dark-Alex-17
d7f0dd5950
feat: Added TUI and CLI support for viewing Artist history in Lidarr
2026-01-14 16:09:37 -07:00
Dark-Alex-17
8b9467bd39
feat: Full Lidarr system support for both the CLI and TUI
2026-01-14 14:50:33 -07:00
Dark-Alex-17
c74d5936d2
feat: Full CLI and TUI support for the Lidarr Indexers tab
2026-01-14 13:30:51 -07:00
Dark-Alex-17
8abcf44866
feat: Full support for adding a root folder in Lidarr from both the CLI and TUI
2026-01-14 09:06:27 -07:00
Dark-Alex-17
d2217509f2
feat: naive lidarr root folder tab implementation. Needs improved add logic
2026-01-13 14:33:12 -07:00
Dark-Alex-17
c68cd75015
feat: Downloads tab support in Lidarr
2026-01-13 13:40:18 -07:00
Dark-Alex-17
e1a25bfaf2
refactor: Improved and simplified the implementation of history details for both Sonarr and Lidarr
2026-01-13 12:36:21 -07:00
Dark-Alex-17
ad9e2b3671
feat: Created a History tab in the Radarr UI and created a list history command and mark-history-item-as-failed command for Radarr
2026-01-13 12:35:54 -07:00
Dark-Alex-17
68b08d1cd7
feat: Implemented the Lidarr History tab and CLI support
2026-01-12 14:43:05 -07:00
Dark-Alex-17
09bee7473f
feat: CLI support for deleting an album from Lidarr
2026-01-09 16:33:32 -07:00
Dark-Alex-17
b2814371f0
feat: Completed support for viewing Lidarr artist details
2026-01-09 16:22:03 -07:00
Dark-Alex-17
c624d1b9e4
feat: Full CLI and TUI support for adding an artist to Lidarr
2026-01-08 15:16:01 -07:00
Dark-Alex-17
e94f78dc7b
refactor: Let serde serialize Add Series and Add Movie enums instead of calling to_string up front
2026-01-08 10:52:30 -07:00
Dark-Alex-17
243de47cae
feat: Initial Lidarr support for searching for new artists
2026-01-07 15:53:18 -07:00
Dark-Alex-17
d3947d9e15
fix: Improved fault tolerance for search result tables and test all indexer results tables
2026-01-07 14:58:32 -07:00
Dark-Alex-17
a8609e08c5
feat: CLI support for deleting a tag in Lidarr
2026-01-07 12:50:23 -07:00
Dark-Alex-17
a18b047f4f
feat: Lidarr CLI support for listing and adding tags
2026-01-07 12:20:39 -07:00
Dark-Alex-17
b1afdaf541
feat: Added CLI and TUI support for editing Lidarr artists
2026-01-07 12:01:03 -07:00
Dark-Alex-17
3c1634d1e3
testing
2026-01-07 10:45:49 -07:00
Dark-Alex-17
9b4eda6a9d
feat: Support for updating all Lidarr artists in both the CLI and TUI
2026-01-06 12:47:10 -07:00
Dark-Alex-17
96308afeee
feat: Added Lidarr CLI support for fetching the host config and the security config
2026-01-06 11:00:19 -07:00
Dark-Alex-17
a012f6ecd5
feat: Fetch the artist members as part of the artist details query
2026-01-06 10:10:28 -07:00
Dark-Alex-17
5afee1998b
feat: Support for toggling the monitoring of a given artist via the CLI and TUI
2026-01-06 09:40:16 -07:00
Dark-Alex-17
059fa48bd9
style: Applied uniform formatting across all new Lidarr files
2026-01-05 15:46:16 -07:00
Dark-Alex-17
6771a0ab38
feat: Full support for deleting an artist via CLI and TUI
2026-01-05 15:44:51 -07:00
Dark-Alex-17
bc3aeefa6e
feat: TUI support for Lidarr library
2026-01-05 13:10:30 -07:00
Dark-Alex-17
e61537942b
test: Implemented tests for the Lidarr list artists command
2026-01-05 11:28:35 -07:00
Dark-Alex-17
5d09b2402c
feat: CLI support for listing artists
2026-01-05 10:58:48 -07:00
Dark-Alex-17
0532d59746
test: Wrote snapshot tests for all Sonarr UI
2025-12-16 14:12:10 -07:00
Dark-Alex-17
c072c57bbb
style: Applied uniform formatting across all new UI test files
2025-12-15 20:18:28 -07:00