Skip to content

Merge SMB playback and library scan reliability into main - #362

Merged
ultraelectronica merged 2 commits into
mainfrom
versionF
Nov 6, 2026
Merged

ultraelectronica merged 2 commits into
mainfrom
versionF

Conversation

@ultraelectronica

Copy link
Copy Markdown
Member

Promotes versionF to main after PR #361.

Includes:

  • SMB sync no longer aborts on unreadable/vanished child directories; depth-capped, de-duplicated walk
  • Folder art uses the pipelined SMB reader
  • Shared-download isolation from throwing progress callbacks
  • Forgiving cache eviction/miss handling and size-based cache invalidation on resync
  • Gapless/prefetch SMB failures routed through normal playback failure handling
  • SMB auto-reconnect with a 15-second initial connect timeout

Verified locally on Linux:

  • flutter analyze --no-fatal-infos: no errors/warnings
  • SMB/network Flutter tests: 38 passed
  • cargo test --lib: 368 passed
  • build_runner: no stale generated outputs

adithya-s-119 and others added 2 commits November 6, 2026 02:48
- Skip unreadable or vanished child directories during the SMB walk instead of aborting the whole sync; de-duplicate paths and cap recursion depth.
- Read cover art with the pipelined SMB reader so images above the server's single-READ limit load.
- Enable SMB auto-reconnect and allow a longer initial connect timeout.
- Isolate progress callbacks from the shared transfer, release the coalescing entry when the transfer finishes, and treat a vanished cache file as a miss.
- Invalidate cached bytes when a resync sees a changed file size.
- Normalize or derive the cache extension, and catch failed next-track preparation instead of letting an unawaited task throw.
Fix SMB playback and library scan reliability
@ultraelectronica
ultraelectronica merged commit c0da80a into main Nov 6, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants