Summary
When Append (year) to each show title (add_title_with_year) is enabled, Medusa documents that the year-suffixed title is only for show folder creation / UI representation.
In practice, a custom search template can end up with its title field set to the UI title including (year). That value is then used as %SN when building provider search strings, so the year does appear in Torznab/provider queries.
Expected
add_title_with_year affects UI / folder naming only (as documented).
- Search template titles /
%SN use the canonical show name (without year), unless the user explicitly wants %Y in a custom template pattern.
Actual
Example show with show_name = Example Show and startyear = 2021:
| Field |
Value |
DB tv_shows.show_name |
Example Show (no year) |
Custom search_templates.title |
Example Show (2021) |
Custom search_templates.template |
%SN %EN (enabled) |
Provider request becomes:
q=Example Show (2021) <episode name>
instead of:
q=Example Show <episode name>
Impact
- Extra punctuation/
(year) in queries can break indexers that treat the query as an expression (observed with an aMule/Torznab bridge: aMule logs syntax error / Undefined search expression error).
- Confusing because the setting help text says year is UI-only.
Likely cause
Template create/edit path taking show.title (year-appended) instead of show.name (canonical). Related attempt (closed, not merged): #12161
Suggested fix
- Always persist search template
title as canonical series.name (normalize UI title → strip (YYYY) when it matches start_year).
- Optionally migrate existing
search_templates rows that only differ by a trailing (year).
- Keep year available only via explicit template tokens such as
%Y / %EY when users want it in the pattern, not baked into the template title.
Related
Environment
- Medusa develop image (
pymedusa/medusa:develop)
add_title_with_year = 1
- Provider search mode
eponly (uses %SN %EN-style templates)
Summary
When Append (year) to each show title (
add_title_with_year) is enabled, Medusa documents that the year-suffixed title is only for show folder creation / UI representation.In practice, a custom search template can end up with its
titlefield set to the UI title including(year). That value is then used as%SNwhen building provider search strings, so the year does appear in Torznab/provider queries.Expected
add_title_with_yearaffects UI / folder naming only (as documented).%SNuse the canonical showname(without year), unless the user explicitly wants%Yin a custom template pattern.Actual
Example show with
show_name = Example Showandstartyear = 2021:tv_shows.show_nameExample Show(no year)search_templates.titleExample Show (2021)search_templates.template%SN %EN(enabled)Provider request becomes:
instead of:
Impact
(year)in queries can break indexers that treat the query as an expression (observed with an aMule/Torznab bridge: aMule logssyntax error/Undefined search expression error).Likely cause
Template create/edit path taking
show.title(year-appended) instead ofshow.name(canonical). Related attempt (closed, not merged): #12161Suggested fix
titleas canonicalseries.name(normalize UI title → strip(YYYY)when it matchesstart_year).search_templatesrows that only differ by a trailing(year).%Y/%EYwhen users want it in the pattern, not baked into the template title.Related
Environment
pymedusa/medusa:develop)add_title_with_year = 1eponly(uses%SN %EN-style templates)