Skip to content

[metadata.themoviedb.org.python@nexus] 3.2.0#599

Merged
rmrector merged 1 commit intoxbmc:nexusfrom
rmrector:metadata.themoviedb.org.python@nexus
Mar 8, 2026
Merged

[metadata.themoviedb.org.python@nexus] 3.2.0#599
rmrector merged 1 commit intoxbmc:nexusfrom
rmrector:metadata.themoviedb.org.python@nexus

Conversation

@rmrector
Copy link
Copy Markdown

@rmrector rmrector commented Mar 8, 2026

Add-on details:

themoviedb.org is a free and open movie database. It's completely user driven by people like you. TMDb is currently used by millions of people every month and with their powerful API, it is also used by many popular media centers like Kodi to retrieve Movie Metadata, Posters and Fanart to enrich the user's experience.

Description of changes:

v3.2.0 (2026-03-08)

  • add option for keyart from TMDB
  • add whitelist option for "keywords as tags"
  • fix - don't save empty uniqueID values

v3.0.0 (2024-04-17)

  • version 3 for Kodi 20 Nexus and above

Checklist:

  • My code follows the add-on rules and piracy stance of this project.
  • I have read the CONTRIBUTING document
  • Each add-on submission should be a single commit with using the following style: [plugin.video.foo] v1.0.0

@kodiai
Copy link
Copy Markdown

kodiai bot commented Mar 8, 2026

Kodiai Review Summary

What Changed

This PR adds version 3.2.0 with keyart artwork support, a whitelist option for "keywords as tags," and fixes empty uniqueID values.

Reviewed: core logic, docs

Strengths

  • ✅ The fix for empty uniqueID values uses a proper null-check pattern (movie.get('imdb_id')) at metadata.themoviedb.org.python/python/lib/tmdbscraper/tmdb.py:169, preventing empty strings from being saved
  • ✅ Keyart artwork feature is implemented consistently for both movies and collections with parallel structure to existing landscape/fanart handling

Observations

Impact

[MAJOR] metadata.themoviedb.org.python/python/scraper_config.py (86-90): KeyError when tags disabled with whitelist enabled
Line 87 deletes the 'tag' key when add_tags is False, then line 90 accesses it when enable_tag_whitelist is True, causing a crash since both conditions can be true simultaneously.

Verdict

🔴 Address before merging -- 1 blocking issue(s) found

Review Details
  • Files reviewed: 83

  • Lines changed: +754 -58

  • Profile: minimal (auto, lines changed: 812)

  • Author: newcomer (adapted tone)

  • Findings: 0 critical, 1 major, 0 medium, 0 minor (includes 1 from summary observations)

  • Review completed: 2026-03-08T15:47:59.081Z

  • Review scope: Reviewed 50/83 files, prioritized by risk

  • Full review: 30 files | Abbreviated review: 20 files | Not reviewed: 33 files

Files not fully reviewed (sorted by risk score)
  • metadata.themoviedb.org.python/resources/language/resource.language.hr_hr/strings.po (risk: 43)
  • metadata.themoviedb.org.python/resources/language/resource.language.hu_hu/strings.po (risk: 43)
  • metadata.themoviedb.org.python/resources/language/resource.language.hy_am/strings.po (risk: 43)
  • metadata.themoviedb.org.python/resources/language/resource.language.ja_jp/strings.po (risk: 43)
  • metadata.themoviedb.org.python/resources/language/resource.language.lt_lt/strings.po (risk: 43)
  • metadata.themoviedb.org.python/resources/language/resource.language.lv_lv/strings.po (risk: 43)
  • metadata.themoviedb.org.python/resources/language/resource.language.mi/strings.po (risk: 43)
  • metadata.themoviedb.org.python/resources/language/resource.language.mk_mk/strings.po (risk: 43)
  • metadata.themoviedb.org.python/resources/language/resource.language.ml_in/strings.po (risk: 43)
  • metadata.themoviedb.org.python/resources/language/resource.language.mn_mn/strings.po (risk: 43)
  • metadata.themoviedb.org.python/resources/language/resource.language.ms_my/strings.po (risk: 43)
  • metadata.themoviedb.org.python/resources/language/resource.language.mt_mt/strings.po (risk: 43)
  • metadata.themoviedb.org.python/resources/language/resource.language.my_mm/strings.po (risk: 43)
  • metadata.themoviedb.org.python/resources/language/resource.language.nb_no/strings.po (risk: 43)
  • metadata.themoviedb.org.python/resources/language/resource.language.nl_nl/strings.po (risk: 43)
  • metadata.themoviedb.org.python/resources/language/resource.language.prs/strings.po (risk: 43)
  • metadata.themoviedb.org.python/resources/language/resource.language.pt_pt/strings.po (risk: 43)
  • metadata.themoviedb.org.python/resources/language/resource.language.ro_ro/strings.po (risk: 43)
  • metadata.themoviedb.org.python/resources/language/resource.language.si_lk/strings.po (risk: 43)
  • metadata.themoviedb.org.python/resources/language/resource.language.sk_sk/strings.po (risk: 43)
  • metadata.themoviedb.org.python/resources/language/resource.language.sl_si/strings.po (risk: 43)
  • metadata.themoviedb.org.python/resources/language/resource.language.sq_al/strings.po (risk: 43)
  • metadata.themoviedb.org.python/resources/language/resource.language.sr_rs/strings.po (risk: 43)
  • metadata.themoviedb.org.python/resources/language/resource.language.sr_rs@latin/strings.po (risk: 43)
  • metadata.themoviedb.org.python/resources/language/resource.language.szl/strings.po (risk: 43)
  • metadata.themoviedb.org.python/resources/language/resource.language.ta_in/strings.po (risk: 43)
  • metadata.themoviedb.org.python/resources/language/resource.language.te_in/strings.po (risk: 43)
  • metadata.themoviedb.org.python/resources/language/resource.language.tg_tj/strings.po (risk: 43)
  • metadata.themoviedb.org.python/resources/language/resource.language.th_th/strings.po (risk: 43)
  • metadata.themoviedb.org.python/resources/language/resource.language.tr_tr/strings.po (risk: 43)
  • metadata.themoviedb.org.python/resources/language/resource.language.uz_uz/strings.po (risk: 43)
  • metadata.themoviedb.org.python/resources/language/resource.language.vi_vn/strings.po (risk: 43)
  • metadata.themoviedb.org.python/changelog.txt (risk: 22)
- Keyword parsing: - focus hints: [METADATA.THEMOVIEDB.ORG.PYTHON@NEXUS], [METADATA.THEMOVIEDB.ORG.PYTHON]

@rmrector rmrector merged commit 4c13367 into xbmc:nexus Mar 8, 2026
1 check 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.

1 participant