Feature
- ⭐ feat(webui): add GUI output mode for upload runs by @wastaken7 in #781
- feat: add TorrentHaven tracker support by @Jediten in #779
- feat: add Vultu tracker support by @wastaken7 in #762
- feat(bluray): richer edition cards with cover, flag and link, and explain the choice by @wastaken7 in #795
- feat(books): cover and ISBN page screenshots, background capture and WebUI review by @wastaken7 in #790
- feat(ci): group and sort release notes automatically by @wastaken7 in #808
- feat(darkpeers,infinityhd): IMDb AKA in TV names, banned groups API by @Jediten in #778
- feat(description): add rip logs section to music descriptions by @wastaken7 in #805
- feat(music): add cover column for AsianCinema/TorrentLeech and compact music details by @wastaken7 in #804
- feat(naming): enhance TV year determination with TMDB homonym check by @wastaken7 in #809
- feat(orpheus): add music slot rules for dupes and trumps by @wastaken7 in #777
- feat(orpheus): align uploads with Orpheus rules and upload form by @wastaken7 in #758
- feat(orpheus): seed the torrent file downloaded from Orpheus after upload by @wastaken7 in #767
- feat(unit3d): map album genres to keywords for music uploads by @wastaken7 in #803
- feat(vultu): use CapybaraBR naming by @wastaken7 in #769
- feat(webui): add persistent Personal Release and Debug Run badges by @FortKnox1337 in #792
- feat(webui): improve upload queue creation by @wastaken7 in #768
- feat(webui): revamp Arguments panel with category views and inline controls by @wastaken7 in #784
- feat(webui): separate skipped trackers from GUI upload confirmation by @FortKnox1337 in #814
- feat(webui): show each queue item's cover in Results by @wastaken7 in #810
- feat(webui): show free-text and multi-select prompts as GUI forms by @wastaken7 in #786
- feat(webui): show tracker progress during duplicate review in GUI mode by @FortKnox1337 in #793
- feat(webui): toggle run options on the confirmation prompt by @wastaken7 in #812
Fix
- fix: local disc menu screenshot ordering by @gizeto in #752
- fix: normalize meta string fields before comparing by @wastaken7 in #753
- fix(beyondhd): align uploads with BHD upload rules by @wastaken7 in #760
- fix(beyondhd): match x264/x265 encodes with profile prefix by @wastaken7 in #787
- fix(bj-share): improve fallback logic for response handling by @wastaken7 in #757
- fix(bjs,bt): send Outro audio for explicit pt-PT MediaInfo by @wastaken7 in #776
- fix(cathoderaytube): strip MediaInfo ReportBy footer from description by @wastaken7 in #802
- fix(mediainfo): stop cover attachments merging into audio/text tracks by @wastaken7 in #796
- fix(music): start early torrent creation during music prep by @wastaken7 in #782
- fix(orpheus): find existing groups whose title or artist credit is written differently by @wastaken7 in #761
- fix(screenshots): use manifest discovery across upload paths by @gizeto in #774
- fix(seedpool): require album genres in keywords for music uploads by @wastaken7 in #807
- fix(seedpool): require cover image for music uploads by @wastaken7 in #806
- fix(trackers): skip redundant shared screenshot hosting by @gizeto in #773
- fix(ulcx): detect TrueHD/DTS-HD MA from real MediaInfo fields by @wastaken7 in #791
- fix(usenet): support Linux ARM64 Pesto binaries by @franzopl in #763
- fix(webui): draw stats donut slices as explicit arcs by @wastaken7 in #783
- fix(webui): explain failed tracker checks and skipped results in GUI mode by @FortKnox1337 in #788
- fix(webui): harden authentication and credential storage by @wastaken7 in #775
- fix(webui): hide obsolete DVD MediaInfo Path setting by @FortKnox1337 in #789
- fix(webui): raise rate limits for preview cover and per-upload routes by @wastaken7 in #759
Maintenance
- chore(deps): bump aiohttp from 3.14.3 to 3.14.4 in the uv group across 1 directory by @dependabot[bot] in #766
- chore(deps): bump the uv group across 1 directory with 2 updates by @dependabot[bot] in #770
- chore(deps): remove unused dependencies by @wastaken7 in #772
- perf: speed up startup imports and dependency check by @wastaken7 in #756
- perf(mediainfo): run text and JSON exports concurrently by @wastaken7 in #816
- refactor(spectrogram): render with FFmpeg at native sample rate by @wastaken7 in #813
New Contributors
Full Changelog: v4.7...v4.8