Repository navigation
Emby Extractor 1.0.0
Changelog
All notable changes to this project will be documented in this file.
[1.0.0] - 2025-10-07
Breaking/Stable
- First stable release with robust movie and TV-show extraction flows
- Deterministic single-line progress bars for Reading and Extracting
Added
--debugflag for detailed directory processing logs (off by default)- Dynamic terminal-width truncation so progress lines never wrap
- Correct handling of modern multi-part RARs (
.partXX.rar) without base.rar - Windows-friendly inline updates (carriage return + clear line)
Fixed
- Multi-part extraction shows correct part counters
(X/Y) - Reading progress reaches 100% before extraction starts
- Avoids printing repeated lines during extraction
- Season directory recursion and episode extraction logic
Internal
- Refined archive grouping and validation rules
- Cleaner orchestration for two-phase processing (read then extract)
- Logging format without level prefixes for end-user clarity
[0.1.0] - 2025-01-06
Added
- Initial release of Emby Extractor
- Multi-part archive extraction support (RAR, ZIP, TAR formats)
- Smart TV show organization with Season normalization
- Configurable subfolder policies (Subs, Sample, Other)
- Real-time progress tracking with color-coded progress bars
- Demo mode for testing without filesystem changes
- Automatic cleanup of finished directory based on file age
- Comprehensive CLI with override options
- Support for multiple download root directories
- Flattening of episode directories into season folders
Features
- TV Show Organization: Automatically detects and organizes TV shows into
ShowName/Season XX/structure - Subfolder Management: Intelligent handling of Subs, Sample, and custom subdirectories
- Progress Tracking: Single-line progress updates for multi-part operations, separate lines for completed tasks
- Error Handling: Automatic cleanup of partially extracted content on failure
- Atomic Operations: All-or-nothing extraction per release to maintain data integrity
Technical Details
- Python 3.11+ required
- 7-Zip integration for RAR archive support
- TOML-based configuration
- Modular architecture with 6 focused modules:
archive_constants: Constants and patternsarchive_detection: Archive discovery and groupingarchive_extraction: Extraction logic with 7-Zip supportpath_utils: TV show path organizationfile_operations: File/directory managementarchives: Main orchestration
Code Quality
- Refactored 1204-line monolithic file into 6 maintainable modules
- Comprehensive docstrings for all public functions
- Clear separation of concerns
- Improved testability with focused module boundaries