Fix: Prevent individual track failures from aborting entire playlist/album downloads#814
Conversation
- Add exception handling and logging for track and media item downloads - Capture and log errors during album, playlist, and media ripping - Provide summary of failed items when download process completes
|
I thought this behavior was already handled here: streamrip/streamrip/media/track.py Lines 51 to 55 in fe169fe Can you give an example of how this fails? |
You're right that there's error handling for track downloads in I was encountering this specific error that would abort entire playlist downloads: The key problem is:
The PR fixes this by adding |
|
Oh, I see metadata errors aren't handled. Good catch! |
Problem
When downloading playlists or albums, a single failing track (often resulting in a JSONDecodeError) would cause the entire download process to fail, preventing users from getting any content at all.
Solution
asyncio.gather(return_exceptions=True)to prevent exceptions from stopping concurrent downloadsTesting
Impact
Users can now successfully download as much content as possible from playlists and albums, even when individual tracks fail. Instead of getting nothing when a single track fails, they'll get all the working tracks with only problematic ones being skipped.
Closes #812