🎉 New Features
- NixOS Support: Add flake.nix with development shell, mixRelease package, and NixOS module with comprehensive documentation
- Progressive Web App: Add PWA support for mobile installation
- New Download Clients: Add Blackhole and rTorrent client support
- Specialized Libraries: Add music, books, and adult library types with dedicated scanners
- NZBHydra2 Integration: Add adapter for Usenet indexing
- Dashboard Enhancements: Display active downloads count and storage usage
- Library Health Check: Add database health check with auto-repair functionality
- Completed Downloads Tab: Track imported downloads with clear functionality
- Library Improvements: Detect and filter samples, trailers, and extras; extract external IDs from folder names
- Activity Feed: Display update reasons for media changes
- Cardigann Overrides: Add definition override system for indexers
🐛 Bug Fixes
- OIDC Authentication: Start provider workers after runtime config loads; prevent duplicate worker startup errors
- Downloads: Surface silent import failures in Issues tab; handle stuck downloads better
- Library Scanning: Prevent orphaned files during scanning; improve relative path migration
- Indexers: Fix use_ssl default; handle blackhole config in connection tests
- rTorrent: Handle empty array responses; fix hash case consistency
- TV Pattern Matching: Support separators between S and E in patterns
🔧 Technical Changes
- Refactor Nix package to extract version from mix.exs
- Use ephemeral containers for development
- Add Wallaby browser testing infrastructure
- Extract TorrentHash module from download clients
Full Changelog: v0.6.0...v0.7.1