v1.14.0 (2026-06-09)
Features
- Retry upload on 429 Too Many Requests using Retry-After header (#337)
- Retry GET API calls on 5xx errors and network failures (#338)
- Add --trump flag to replace existing RHD torrents (#339)
- Update tag order for enriched Name Generation (#344)
- Add ARTE to streaming service enrichment (#343)
- Handle ATV Streaming service source tag for non-original content downloaded from AppleTV (#357)
- Add pikachu to RocketHD banned group list (#367)
- Add UHD2BD source tag detection (#366)
- Skip releases without any audio tracks (#365)
- Extract IMDB and TMDB IDs from matroska tags if available (#360)
- Add flag to force the TV category for badly named Miniseries releases (#349)
- Auto-flag personal-release and internal uploads by release group (#370)
- Output Links to IMDb, TMDB, TVDB and MAL if found in Release Identification (#362)
Bug Fixes
- Return 500 instead of 403 when RHD user group check fails (#336)
- Run name enrichment and dupe check before upload confirmation in interactive mode (#335)
- Allow season id to be 2 and 4 digits long (#245)
- Replace Mission Specialist with Payload Specialist in RHD allowed groups (#341)
- Handle MediaInfo display format in German language detection (#345)
- Only use DUBBED over SYNCED in the enriched name (#346)
- Handle unset audio with GERMAN in release-name (#347)
- Never modify source files during SRRDB scene verification (#351)
- Sanitize invalid UTF-8 in MediaInfo output before upload (Fixes: #353) (#356)
- Skip screenshot generation when no new torrent will be uploaded (Fixes: #352) (#355)
- If there are no tagged audio languages the ML tag Shouldn't be added (#364)
- Preserve source MKV and NFO names unless authoritative rename available (#359)
- Tolerate partial screenshot upload failures (#368)
- Match split-episode A/B halves to distinct SRRDB releases (#361)
- Re-resolve NFO path after scene verification rename (#369)
- Escape shell vars from Woodpecker ${} interpolation in release pipeline (#376)
Refactor
- Rewrite upload CLI output with a structured ui package (#375)
Documentation
- Revamp CONTRIBUTING with rePollo's cleaner guidance (#374)
Chores
- Bump autobrr/go-qbittorrent to v1.15.0 (Fixes: #350) (#354)
- Add golangci-lint config and clear all 285 findings (#372)
- Replace monolithic pipeline with goreleaser + git-cliff (#371)
- Add .editorconfig for consistent formatting (#373)
- Make nightly changelog robust to a pre-existing tag at HEAD (#377)
- Unshallow the clone so tag ancestry resolves in the release pipeline (#378)
- Compute changelog range in prepare, not in the git-cliff step (#379)