🔒 Security
- Session Security Improvements - Enhanced authentication session handling with improved security measures (#11)
✨ New Features
-
Automated Hunting - New hunting feature for automatically searching missing content and quality upgrades (#15)
- Configure per-instance hunt settings
- Search for missing content automatically
- Find quality upgrades for existing content
- Rate limiting and batch size controls
- Activity logging and history
-
TRaSH Guides Sync for Cloned Profiles - Cloned quality profile templates can now sync with TRaSH Guides updates
-
PostgreSQL Support - Full PostgreSQL database support for larger deployments
- Set
DATABASE_URL=postgresql://user:password@host:5432/database - Automatic provider detection and migration
- Set
-
Dashboard Improvements
- Instance names are now clickable for quick navigation
- New tabbed interface for Overview and Active Queue
-
Statistics Enhancements
- New tabbed interface for viewing service statistics
- Improved health issue alerts with instance links
-
Calendar Improvements
- Entries appearing in multiple instances are now deduplicated
- Unmonitored filter now works for both Sonarr and Radarr
-
Discover Page
- TMDB, IMDB, and TVDB external links added to recommendation carousels
- In-memory caching for TMDB API calls improves performance
- Helpful error message when TMDB API key is not configured
-
System Settings
- New configurable ports setting
- URL Base support for reverse proxy deployments
-
Improved Error Handling - Helpful error message when API is unreachable instead of generic failures
🐛 Bug Fixes
TRaSH Guides
- Don't auto-exclude Custom Formats with score 0 when cloning profiles
- Fix cloned profile ID parser for standard UUIDs
- Remap cutoff ID correctly when deploying cloned quality profiles
Docker
- Fix PostgreSQL provider detection (was matching generator instead of datasource)
- Database port settings now take precedence over environment variables
- Copy public directory to container for static assets
- Enable runtime API_PORT configuration
Services
- Handle 401/403 responses from reverse proxy during Prowlarr ping tests
- Handle numeric eventType from Prowlarr API in statistics
Web/UX
- Improve queue links and prevent password manager autofill on forms
- Prevent Discover carousel items from appearing then disappearing
- Add clipboard fallback for non-HTTPS environments
- Fix duplicate icon files causing favicon 500 error
- Fix error display and SSR crash in deployment flow
API
- Replace all explicit
anytypes with proper TypeScript types
🏗️ Infrastructure
- Fork-Safe CI - Docker build job now works correctly for external contributors
- Unraid Support - Added icon to public directory for Unraid Community Applications template
- Documentation - Complete CLAUDE.md rewrite with comprehensive technical documentation
- Performance - Optimized CI/CD workflows, reduced Docker runtime layers from 12 to 6
- Release Tooling - Added pre-release check script and testing checklist
📦 New Environment Variables
| Variable | Default | Description |
|---|---|---|
DATABASE_URL
| file:/config/prod.db
| PostgreSQL connection string (optional) |
BACKUP_PASSWORD
| - | Password for encrypted backups |
GITHUB_TOKEN
| - | Increases TRaSH Guides API rate limits |
WEBAUTHN_RP_ID
| localhost
| Passkey domain |
WEBAUTHN_ORIGIN
| http://localhost:3000
| Passkey origin URL |
API_RATE_LIMIT_MAX
| 200
| Max API requests per minute |
⬆️ Upgrade Notes
This is a non-breaking release. Simply pull the latest image:
docker-compose pull
docker-compose up -dIf upgrading from 2.4.x or earlier, see the 2.5.0 migration guide for volume path changes.
Full Changelog: v2.5.0...v2.6.0