music-assistant-server
Branch:dev-lidarr-plugin
Commit Details
Bandcamp Rate Limiting (#3069)
feat(bandcamp): add rate limiting and retry logic to all API methods - Upgrade bandcamp-async-api to 0.0.7 - Add BandcampRateLimitError import and handling throughout - Configure ThrottlerManager with 50 req/10s rate limit and 10 retry attempts - Add @throttle_with_retries decorator to: get_artist, get_album, get_track, get_album_tracks, get_artist_albums, get_artist_toptracks - Add throttler.acquire() context manager to async generator methods: get_library_artists, get_library_albums - Add proper BandcampRateLimitError handling converting to ResourceTemporarilyUnavailable with backoff_time - Remove redundant exception handlers from get_library_tracks, get_stream_details, get_artist_toptracks (called methods handle exceptions) - Update tests for new default_retry_after parameter
Author
Alexey ALERT Rubashёff<[email protected]>
February 2, 2026 at 09:11 AM UTC
Committer
GitHub<[email protected]>
February 2, 2026 at 09:11 AM UTC
66additions
24deletions
4files changed
Parent commits
Changes
4 files
+66-24
Changed Files (4)
music_assistant/providers/bandcamp/
tests/providers/bandcamp/
music_assistant/providers/bandcamp/__init__.py
+60-22
music_assistant/providers/bandcamp/manifest.json
requirements_all.txt
tests/providers/bandcamp/test_provider.py
+6-2