feat(exclusions): add Mdblist list exclusion support#232
Conversation
|
🐳 A Docker image for this PR will be available after the build completes: docker run -e LOG_LEVEL=DEBUG --rm \
-v ./config:/config \
-v ./logs:/config/logs \
ghcr.io/rfsbraz/deleterr:pr-232
|
|
Is there a Image tag to use to give this a test? |
Yes! |
|
Updated to the new image, added the new options to the config, and this is what I get in the log as an error that wasn't happening previously: It was working previously... EDIT: So after a bit of further testing, I disabled the exclusion by commenting it out for mdblist and it did run normally under this PR image... For reference this is what I added to my settings.yaml: |
|
@RandomNinjaAtk thank you for taking the time, seems like the mdblist integration is working then. I'll check what the other error was and merge this into a new release! |
The mdblist API returns {"movies": [...], "shows": [...]} but the code
assumed a bare JSON array, causing 'str' object has no attribute 'get'
when extending a list with dict keys. Also fixed field names to match
the actual API (id, tvdb_id) instead of non-existent tmdbid/tvdbid.
|
I wouldn't say it worked because with the exclude enabled for mdblist, I get the above error. It only runs normally without mdblist exclusion enabled on the PR build... Sounds confusing I know... Hope that helps |
You're right I misunderstood your message. It is fixed now, and working. |


Closes #226
Adds Mdblist as an exclusion provider, allowing users to protect media that appears on Mdblist lists from deletion. Follows the same pattern as the existing Trakt list exclusion.
Configuration
Global (API credentials)
Per-library exclusion
Movies are matched by TMDB ID, shows by TVDB ID — same as Trakt exclusions.
Testing
@RandomNinjaAtk — we don't use Mdblist ourselves, so we'd appreciate if you could try the Docker image generated from this PR and let us know if it works as expected. 🙏
Changes
app/modules/mdblist.py— API client with pagination supportapp/schema.py—MdblistConfigandMdblistExclusionsmodelsapp/media_cleaner.pyprocessing pipelinescripts/generate_docs.pyfor documentation generationtests/modules/test_mdblist.py