- Database schema for notification services and history tracking
- Notifier interface with Discord webhook implementation
- UI for creating/editing/managing notification services
- Integration with job completion events
- Service-level enable/disable and notification type filtering
- Test notifications and notification history view
- Extract pure backup logic to /src/jobs/logic/createBackup.ts
- Update job definition to use extracted logic
- Fix absolute path parsing for tar command
- Add 7 tests: success cases, filename format, file extraction,
error handling (non-existent dir, file instead of dir), empty dir
- Uses BaseTest framework with temp directories and tar extraction
- Add LoggerConfig interface for dependency injection
- Logger class now accepts optional config in constructor
- Default singleton still uses system config/database (no breaking changes)
- Enables standalone usage for testing without full system init
- Add auto-creation of logs directory if missing
- Remove rotation_strategy and max_file_size settings
- Always use YYYY-MM-DD.log format for log files
- Update cleanup job to parse dates from filenames
- Simplify settings UI to retention days only
- selection simplified to radarr/sonarr enabled
- removed basic / advanced views, replaced with grouping
- added ability to copy sonarr / radarr score into each other
- added option to set radarr/sonarr specific scores that profilarr's compiler will handle on import
- revise design for arr settings container - now styled as a table
- completely rewrote import module. Now uses connection pooling to reuse connections.
- fixed import progress bug where 1 failed format causes all other formats to be labelled as failed (even if they succeeded)
- fixed bug where on pull sync wasn't working
- improve styling for link / unlink database modals
- fixed issue where 0 score formats were removed in selective mode
- add database setting for language score on imports
- add settings container on general tab to let user update the value
- improved styling of general settings page to be more like media management page