Files
nfoguard/CHANGELOG.md
T
2025-09-08 17:33:41 -04:00

95 lines
3.8 KiB
Markdown

# Changelog
All notable changes to this project will be documented in this file.
## [Unreleased]
# Changelog
## [0.5.0] - 2025-09-08
### Added
- **Major Performance Enhancement**: Direct Radarr database access
- New `RadarrDbClient` class for high-performance database queries
- Support for both SQLite and PostgreSQL Radarr databases
- Eliminates API pagination overhead for import date lookups
- Up to 10x faster movie import date detection
- **Bulk Operations**: Added bulk import date queries for multiple movies
- **Database Configuration**: New environment variables for database connection
- `RADARR_DB_TYPE` (sqlite/postgresql)
- `RADARR_DB_HOST`, `RADARR_DB_PORT`, `RADARR_DB_NAME` for PostgreSQL
- `RADARR_DB_USER`, `RADARR_DB_PASSWORD` for PostgreSQL authentication
- `RADARR_DB_PATH` for SQLite databases
- `RADARR_DB_URL` connection string support
- **Testing Suite**: Added performance comparison test script (`test_db_performance.py`)
### Changed
- **RadarrClient Enhanced**: Automatic database client initialization with API fallback
- **Movie Lookup Optimization**: Database-first approach for movie IMDb ID resolution
- **Import Date Detection**: Optimized SQL queries replace complex API event parsing
- **Dependencies**: Added `psycopg2-binary` for PostgreSQL support
### Technical Details
- Database queries use proper SQL joins for efficient data retrieval
- Maintains full backward compatibility with API-only installations
- Graceful fallback to API methods when database access is unavailable
- Support for both connection strings and individual parameter configuration
## [0.4.1] - 2025-01-09
### Fixed
- **Radarr Client**: Fixed event type parsing for string-based event types (grabbed, downloadFolderImported, etc.)
- **Radarr Client**: Improved grab event detection to filter out library addition events and only count actual download grabs
- **Radarr Client**: Fixed JSON parsing errors when handling event data that's already a dictionary
- **Radarr Client**: Enhanced validation of grab events to require download metadata (sourceTitle or indexer)
### Improved
- **Radarr Client**: Better chronological event processing to find earliest actual download dates
- **Radarr Client**: More accurate import date detection by validating grab events have real download information
## [0.4.0] - 2025-01-08
### Changed
- Switched to using Radarr's numeric event types for more reliable import detection
- Added constants for EVENT_TYPE_GRABBED (1), IMPORTED (3), etc.
- Removed legacy string-based event type checks
- Improved event type parsing and validation
### Changed
- Added documentation for Radarr API event types (1=grabbed, 3=imported)
- Improved event type detection using Radarr's internal event type IDs
- Removed old string-based event type checks in favor of numeric IDs
## [0.3.8] - 2025-09-08
### Changed
- Use Radarr's numeric EventType (3="Imported") for more accurate import date detection
- Simplified history processing logic
## [0.3.7] - 2025-09-08
### Changed
- Improved import date detection by tracking grab dates as fallback
- Added warning when falling back to grab date
## [0.3.6] - 2025-09-08
### Changed
- Improved import detection filtering
- Reduced debug noise for non-import events
- Enhanced logging clarity for import matches
- Added more context to import event messages
## [0.3.5] - 2025-09-08
### Changed
- Improved Radarr import detection to handle more cases
- Added support for downloadFolderImported events
- Enhanced path matching with better character cleaning
- Added fuzzy title matching by removing articles
- Reduced debug noise by only logging relevant matches
## [0.3.4] - 2025-09-08
### Changed
- Added downloadFolderImported event support
- Improved path matching flexibility
## [0.3.3] - 2025-09-08
### Changed
- Added flexible path matching
- Added sourcePath support
- Initial support for title/year matching