Commit Graph

45 Commits

Author SHA1 Message Date
AI User 6d8bc7f166 Overhaul tracing: fix span misattribution, broaden coverage
The old pattern passed a Span in every channel message and entered it
with a guard that was held across await points, which misattributed
events from interleaved tasks. Messages are now {span, command} pairs:
the span is captured automatically at send time (Span::current) and the
consumer instruments the whole handler future with a child span
(playback_command/provider_command with a command name field), so events
are attributed correctly across the queue boundary and all the manual
in_current_span() plumbing is gone.

Also:
- server: EnvFilter with RUST_LOG support (default: own crates at
  debug, rest at info), log-crate bridge for symphonia/cpal
- cbd-tui: logs to a file under the state dir (the terminal belongs to
  the TUI), EnvFilter, no more println into the alternate screen
- tidaldy: fix misused levels (error->debug), structured fields,
  payload dumps moved to trace, login flow at info/warn
- no panic on missing notification daemon in the TUI
- no panic on backwards clock steps in QueueManager
- provider init errors propagate instead of expect()

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-19 21:48:00 +02:00
AI User 6eb5a87b15 Update all dependencies to current versions
- tonic 0.9 -> 0.14 (tonic-prost/tonic-prost-build split), prost 0.14
- ratatui 0.20 -> 0.30 (Frame no longer generic, Line instead of Spans),
  crossterm 0.29
- rodio 0.17 -> 0.22: replace the custom symphonia decoder with rodio's
  built-in decoder, seeking (try_seek) and position tracking (get_pos);
  end-of-stream is now signalled via an EmptyCallback source with a
  generation counter so a replaced track can never emit a stale EOS
- replace the vendored stream-download crate with the published
  stream-download 0.24 (rustls), with a 30s open timeout
- reqwest 0.12->0.13 (rustls/webpki-roots/query features), base64 0.22
  Engine API, rand 0.10, flume 0.12, thiserror 2, dirs 6, toml 1
- unify everything under [workspace.dependencies]; drop unused deps
  (once_cell, serde_json in server; confique, secrecy in tidaldy)
- devenv: add protobuf (protoc) for prost-build

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-19 21:41:10 +02:00
chmanie a1987869c2 Styling fixes
CI checks / stable / fmt (push) Has been cancelled Details
2023-10-08 23:48:49 +02:00
chmanie 2f89886e5d Show album and release date
stable / fmt Details
stable / cross-${{ matrix.target }} (aarch64-unknown-linux-gnu) Details
stable / cross-${{ matrix.target }} (armv7-unknown-linux-gnueabihf) Details
stable / cross-${{ matrix.target }} (x86_64-unknown-linux-gnu) Details
2023-06-13 00:59:54 +02:00
chmanie 4b34fa7233 Add key command to select currently playing track
stable / fmt Details
stable / cross-${{ matrix.target }} (aarch64-unknown-linux-gnu) Details
stable / cross-${{ matrix.target }} (armv7-unknown-linux-gnueabihf) Details
stable / cross-${{ matrix.target }} (x86_64-unknown-linux-gnu) Details
2023-06-13 00:17:56 +02:00
chmanie 02f47d682b Implement clear queue in tui
stable / fmt Details
stable / cross-${{ matrix.target }} (aarch64-unknown-linux-gnu) Details
stable / cross-${{ matrix.target }} (armv7-unknown-linux-gnueabihf) Details
stable / cross-${{ matrix.target }} (x86_64-unknown-linux-gnu) Details
2023-06-12 22:07:41 +02:00
chmanie 17a0e8606e Try to add release files
stable / fmt Details
stable / cross-${{ matrix.target }} (armv7-unknown-linux-gnueabihf) Details
stable / cross-${{ matrix.target }} (aarch64-unknown-linux-gnu) Details
2023-06-12 18:06:00 +02:00
chmanie 79ac68479e Remove unused import statements
ubuntu / stable / cross-${{ matrix.target }} (aarch64-unknown-linux-gnu) Details
ubuntu / stable / cross-${{ matrix.target }} (armv7-unknown-linux-gnueabihf) Details
ubuntu / stable / fmt Details
2023-06-12 13:03:24 +02:00
chmanie 7f48bca5df Split up cbd-tui into components 2023-06-11 20:06:06 +02:00
chmanie d970e372af TUI: Add config file and argument parsing w/ clap 2023-06-11 01:02:14 +02:00
chmanie a65ad793dc Implement shuffle, repeat and their indicators 2023-06-10 13:01:29 +02:00
chmanie 773cb511e0 Implement multi track queue, replace, append, insert 2023-06-09 18:47:27 +02:00
chmanie 191ed4eed2 Always send prev and next 2023-06-09 15:05:39 +02:00
chmanie ef6249d9d7 Improve completion widget 2023-06-09 15:05:17 +02:00
chmanie 0bfe7438ec Divide completion by 1000 in the tui
Ideally we should make all these durations consistent (see #6)
2023-06-09 03:16:51 +02:00
chmanie a16da8a400 Fix completion display in tui 2023-06-08 16:16:24 +02:00
chmanie 5de624ffab Update tui position on position change 2023-06-08 16:00:25 +02:00
chmanie e0f7ad5a9b Fix shift key commands 2023-06-02 22:16:17 +02:00
chmanie 326dc82594 Implement missing UI functions 2023-06-02 21:25:51 +02:00
chmanie c19b025818 Properly select active queue item 2023-06-02 20:29:06 +02:00
chmanie d1bd0adf4f Add init function 2023-06-02 18:53:09 +02:00
Hans Mündelein 5a42ddfbdb
Adjust server to new proto spec 2023-06-02 18:41:19 +02:00
chmanie 8d01cfce73 Adjust tui to new protobuf spec 2023-06-02 15:36:08 +02:00
chmanie 615113faf6 Actually play next track on skip 2023-05-31 17:20:53 +02:00
chmanie 0d59789e40 Make current track bold 2023-05-30 13:41:22 +02:00
chmanie dc3be2bd0d Improve notificition 2023-05-30 13:41:20 +02:00
chmanie eabe115759 Go to first, last item in list 2023-05-30 11:59:37 +02:00
chmanie 10abece425 Add rudimentary notification support 2023-05-30 11:59:15 +02:00
chmanie 02749464c3 Fix queue selection with one item only 2023-05-29 11:42:37 +02:00
chmanie edc67b7a07 Improve border styles 2023-05-29 11:42:21 +02:00
chmanie 9a8b9a778e Improve current track style 2023-05-29 11:27:00 +02:00
chmanie 9aad0532ff Improve focus behavior and colors 2023-05-28 11:09:23 +02:00
chmanie 25249dc244 Improve now playing view 2023-05-28 01:56:34 +02:00
chmanie 88369b9b24 Fix up/down index overflow 2023-05-27 22:14:41 +02:00
chmanie ca882a6226 Handle quit properly 2023-05-27 20:11:05 +02:00
chmanie cce9e89eeb Reconnect streams after connection failure 2023-05-27 19:15:21 +02:00
chmanie af0dba7a25 Implement up, down, current track 2023-05-27 14:21:17 +02:00
chmanie ea5597aab2 Implement track queueing, play current queue track 2023-05-27 02:13:16 +02:00
chmanie 5b80868872 Refactor view states 2023-05-27 01:01:47 +02:00
chmanie 0731f61c41 Sort out string problems 2023-05-26 15:42:23 +02:00
chmanie 13ff6a741d Add rpc module 2023-05-26 15:42:23 +02:00
chmanie acf34c2722 Add placeholders for request and stream testing 2023-05-23 14:42:53 +02:00
chmanie 596a97c99d Remove crabidy, graphql from cbd-tui 2023-05-23 13:43:48 +02:00
chmanie 861391f7d8 Add threaded ui model 2023-05-17 23:45:18 +02:00
chmanie c542b10738 Add cbd-tui 2023-05-17 19:08:48 +02:00