github Will-Luck/iplayer-arr v1.0.1

5 hours ago

Fixed

BBC daily soaps now reach Sonarr correctly. EastEnders, Casualty, Holby City, Doctors, Coronation Street, Neighbours and any other BBC show whose iPlayer subtitle is just a date were silently broken end-to-end. Two layered bugs prevented Sonarr from ever matching them:

  • Newznab releases were emitted as EastEnders.S01E7307.06042026.1080p... because Tier 2 used parent_position as the episode number. Sonarr's parser interpreted this as season 1 episode 7307, found no matching episode in TVDB, and rejected every release.
  • The Newznab tvsearch filter compared Sonarr's TVDB-style season/ep against iPlayer's internal Series/EpisodeNum, which are both 0 for these shows. Every interactive search returned an empty RSS feed.

What changed

  • internal/newznab/titles.go: added Tier 1.5 — when the iPlayer subtitle parses as a bare date (DD/MM/YYYY, DD-MM-YYYY, DD.MM.YYYY) and an air date is available, the release title is now generated in date form: EastEnders.2026.04.06.1080p.WEB-DL.AAC.H264-iParr. Sonarr's daily-series parser maps these to the correct S{season}E{episode} automatically. No per-show overrides required.
  • internal/newznab/search.go: handleTVSearch now recognises Sonarr's daily-series query convention (season=YYYY&ep=MM/DD) and filters by air date instead of integer season/episode. The standard integer compare remains for normal numbered shows.
  • internal/bbc/ibl.go: IBLResult.AirDate is now normalised to canonical YYYY-MM-DD at parse time via the new normaliseAirDate helper, regardless of whether BBC iBL returned "6 Apr 2026" or "2026-04-09".

Tests

+8 new tests bringing the suite from 84 to 109. Closes the long-standing gap where the only handler test covered the caps endpoint.

Verified end-to-end

  • Sonarr /api/v3/release?episodeId=49265 (live EastEnders S42E54): now returns 3 releases (1080p / 720p / 540p), all mapped to S42E54, rejected: false. Previously returned zero.
  • Future episodes that haven't aired yet correctly return zero items — the filter is precise.
  • Octonauts S1E1, In the Night Garden S1E1 (Tier 1 numbered shows): unchanged.

Container images

```
docker pull ghcr.io/will-luck/iplayer-arr:1.0.1
docker pull willluck/iplayer-arr:1.0.1
```

Full changelog: v1.0.0...v1.0.1

Don't miss a new iplayer-arr release

NewReleases is sending notifications on new releases.