Changelog
New Features
- 202e950: feat(automations): Add
free_spacecondition (#1061) (@Barcode-eng) - 3b106d6: feat(automations): make conditions optional for non-delete rules and add drag reorder (#939) (@s0up4200)
- 0684d75: feat(config): Add QUI__OIDC_CLIENT_SECRET_FILE env var (#841) (@PedDavid)
- dac0173: feat(config): allow disabling tracker icon fetching (#823) (@s0up4200)
- dc10bad: feat(crossseed): add cancel run and opt-in errored torrent recovery (#918) (@s0up4200)
- cd1fcc9: feat(crossseed): add custom category option for cross-seeds (#907) (@s0up4200)
- d189fe9: feat(crossseed): add indexerName to webhook apply + fix category mode defaults (#916) (@s0up4200)
- 03a147e: feat(crossseed): add option to skip recheck-required matches (#825) (@s0up4200)
- edae00a: feat(crossseed): add optional hardlink mode for cross-seeding (#849) (@s0up4200)
- 0938436: feat(crossseed): add source aliasing for WEB/WEB-DL/WEBRip precheck matching (#874) (@s0up4200)
- 65f6129: feat(crossseed): show failure reasons, prune runs, and add cache cleanup (#923) (@s0up4200)
- e10fba8: feat(details): torrent details panel improvements (#884) (@s0up4200)
- 6921140: feat(docs): add Docusaurus documentation site (@s0up4200)
- 6a5a66c: feat(docs): add Icon and webUI variables to the Unraid install guide (#942) (@BaukeZwart)
- 281fce7: feat(docs): add local search plugin (#1076) (@s0up4200)
- 566de08: feat(docs): add qui logo, update readme, remove v4 flag (@s0up4200)
- b83ac5a: feat(docs): apply minimal.css theme to Docusaurus (@s0up4200)
- fe6a6df: feat(docs): improve documentation pages and add support page (@s0up4200)
- 62a7ad5: feat(docs): use qui favicon (@s0up4200)
- 5d124c0: feat(orphan): add auto cleanup mode (#897) (@s0up4200)
- 3172ad9: feat(settings): add log settings + live log stream (#876) (@s0up4200)
- 3c1b34b: feat(torrents): add "torrent introuvable" to unregistered status (#836) (@kephasdev)
- afe4d39: feat(torrents): add tracker URL editing for single torrents (#848) (@s0up4200)
- 76dedd7: feat(torrents): update GeneralTabHorizontal to display limits and improve layout (#1078) (@martylukyy)
- 6831c24: feat(ui): unify payment options into single dialog (@s0up4200)
- 4dcdf7f: feat(web): add local file access indicator to instance cards (#911) (@s0up4200)
- a560e5e: feat(web): compact torrent details panel (#833) (@martylukyy)
- 557e7bd: feat: add issue/discussion template (#945) (@s0up4200)
- 8b93719: feat: add workflow automation system with category actions, orphan scanner, and hardlink detection (#818) (@s0up4200)
Bug Fixes
- b85ad6b: fix(automations): allow delete rules to match incomplete torrents (#926) (@s0up4200)
- ae06200: fix(automations): make tags field condition operators tag-aware (#908) (@s0up4200)
- ace0101: fix(crossseed): detect folder mismatch for bare file to folder cross-seeds (#846) (@s0up4200)
- 1cc1243: fix(crossseed): enforce resolution and language matching with sensible defaults (#855) (@s0up4200)
- cefb9cd: fix(crossseed): execute external program reliably after injection (#1083) (@s0up4200)
- 867e2da: fix(crossseed): improve matching with size validation and relaxed audio checks (#845) (@s0up4200)
- 4b5079b: fix(crossseed): persist custom category settings in PATCH handler (#913) (@s0up4200)
- cfbbc1f: fix(crossseed): prevent season packs matching episodes (#854) (@s0up4200)
- c7c1706: fix(crossseed): reconcile interrupted runs on startup (#1084) (@s0up4200)
- 7d633bd: fix(crossseed): use ContentPath for manually-managed single-file torrents (#832) (@s0up4200)
- d5db761: fix(database): include arr_instances in string pool cleanup + remove auto-recovery (#898) (@s0up4200)
- c73ec6f: fix(database): prevent race between stmt cache access and db close (#840) (@s0up4200)
- a40b872: fix(db): drop legacy hardlink columns from cross_seed_settings (#912) (@s0up4200)
- e400af3: fix(db): recover wedged SQLite writer + stop cross-seed tight loop (#890) (@s0up4200)
- 90e15b4: fix(deps): update rls to recognize IP as iPlayer (#922) (@s0up4200)
- 8e81b9f: fix(proxy): honor TLSSkipVerify for proxied requests (#1051) (@s0up4200)
- eb2bee0: fix(security): redact sensitive URL parameters in logs (#853) (@s0up4200)
- 40982bc: fix(themes): prevent reset on license errors, improve switch performance (#844) (@s0up4200)
- a8a32f7: fix(ui): incomplete torrents aren't "Completed: 1969-12-31" (#851) (@finevan)
- 5908bba: fix(ui): preserve category collapse state when toggling incognito mode (#834) (@jabloink)
- 25c847e: fix(ui): torrents with no creation metadata don't display 1969 (#873) (@finevan)
- 6403b6a: fix(web): column filter status now matches all states in category (#880) (@s0up4200)
- eafc4e7: fix(web): make delete cross-seed check rely on content_path matches (#1080) (@s0up4200)
- d57c749: fix(web): only show selection checkbox on normal view (#830) (@jabloink)
- 60338f6: fix(web): optimize TorrentDetailsPanel for mobile view and make tabs scrollable horizontally (#1066) (@martylukyy)
- aedab87: fix(web): speed limit input reformatting during typing (#881) (@s0up4200)
- df7f3e0: fix(web): truncate file progress percentage instead of rounding (#919) (@s0up4200)
- 2fadd01: fix(web): update eslint config for flat config compatibility (#879) (@s0up4200)
- 721cedd: fix(web): use fixed heights for mobile torrent cards (#812) (@jabloink)
- a7db605: fix: remove pnpm-workspace.yaml breaking CI (@s0up4200)
- c0ddc0a: fix: use prefix matching for allowed bash commands (@s0up4200)
Other Changes
- fff52ce: chore(ci): disable reviewer (@s0up4200)
- 7ef2a38: chore(ci): fix automated triage and deduplication workflows (#1057) (@s0up4200)
- d84910b: chore(docs): move Tailwind to documentation workspace only (@s0up4200)
- 37ebe05: chore(docs): move netlify.toml to documentation directory (@s0up4200)
- e25de38: chore(docs): remove disclaimer (@s0up4200)
- c59b809: chore(docs): update support sections (#1063) (@s0up4200)
- b723523: chore(tests): remove dead tests and optimize slow test cases (#842) (@s0up4200)
- 662a1c6: chore(workflows): update runners from 4vcpu to 2vcpu for all jobs (#859) (@s0up4200)
- 46f2a1c: chore: clean up repo root by moving Docker, scripts, and community docs (#1054) (@s0up4200)
- 2f27c0d: chore: remove old issue templates (@s0up4200)
- 04f361a: ci(triage): add labeling for feature-requests-ideas discussions (@s0up4200)
- f249c69: ci(triage): remove needs-triage label after applying labels (@s0up4200)
- bdda1de: ci(workflows): add self-dispatch workaround for discussion events (@s0up4200)
- a9732a2: ci(workflows): increase max-turns to 25 for Claude workflows (@s0up4200)
- d7d830d: docs(README): add Buy Me a Coffee link (#863) (@s0up4200)
- 266d92e: docs(readme): Clarify ignore pattern (#878) (@quorn23)
- 9586084: docs(readme): add banner linking to stable docs (#925) (@s0up4200)
- e36a621: docs(readme): use markdown link for Polar URL (@s0up4200)
- 9394676: docs: add frontmatter titles and descriptions, remove marketing language (@s0up4200)
- ba9d45e: docs: add local filesystem access snippet and swizzle Details component (@s0up4200)
- 4329edd: docs: disclaimer about unreleased features (#943) (@s0up4200)
- 735d065: docs: improve external programs, orphan scan, reverse proxy, tracker icons documentation (@s0up4200)
- 78faef2: docs: remove premature tip and fix stat command (@s0up4200)
- eaad3bf: docs: update social card image in Docusaurus configuration (@s0up4200)
- 02a68e5: refactor(crossseed): hardcode ignore patterns for file matching (#915) (@s0up4200)
Full Changelog: v1.11.0...v1.12.0
Docker images
docker pull ghcr.io/autobrr/qui:v1.12.0docker pull ghcr.io/autobrr/qui:latest
What to do next?
- Join our Discord server
Thank you for using qui!