Commit Graph
23 Commits
Author SHA1 Message Date
sha 8031c97999 Add singleton logging configuration for the renamer application
This commit introduces a new module `logging_config.py` that implements a singleton pattern for logging configuration. The logger is initialized only once and can be configured based on an environment variable to log to a file or to the console. This centralizes logging setup and ensures consistent logging behavior throughout the application.
2026-01-05 14:54:03 +00:00
sha 06cf206c70 feat: Enhance title normalization by replacing dots with spaces and add test case for multi-dot filenames 2026-01-03 16:13:50 +00:00
sha e64aaf320b chore: Bump version to 0.6.1 and update decorators to use new cache system 2026-01-02 11:01:08 +00:00
sha 7c7e9ab1e1 Refactor code structure and remove redundant code blocks for improved readability and maintainability 2026-01-02 07:14:33 +00:00
sha 262c0a7b7d Add comprehensive tests for formatter classes, services, and utilities
- Introduced tests for various formatter classes including TextFormatter, DurationFormatter, SizeFormatter, DateFormatter, and more to ensure correct formatting behavior.
- Added tests for service classes such as FileTreeService, MetadataService, and RenameService, covering directory validation, metadata extraction, and file renaming functionalities.
- Implemented utility tests for LanguageCodeExtractor, PatternExtractor, and FrameClassMatcher to validate their extraction and matching capabilities.
- Updated test cases to use datasets for better maintainability and clarity.
- Enhanced error handling tests to ensure robustness against missing or invalid data.
2025-12-31 14:04:33 +00:00
sha c5fbd367fc Add rename service and utility modules for file renaming operations
- Implemented RenameService for handling file renaming with features like name validation, proposed name generation, conflict detection, and atomic rename operations.
- Created utility modules for language code extraction, regex pattern matching, and frame class matching to centralize common functionalities.
- Added comprehensive logging for error handling and debugging across all new modules.
2025-12-31 03:13:26 +00:00
sha 50de7e1d4a added media catalog mode, impooved cache 2025-12-29 19:47:55 +00:00
sha ad78abe30b feat: Enhance FilenameExtractor to support various filename formats and add comprehensive test cases 2025-12-28 14:07:06 +00:00
sha 97bacf602c feat: Bump version to 0.3.3, update special editions structure, and enhance filename extraction logic 2025-12-28 07:33:37 +00:00
sha fe4c0a4a58 feat: Bump version to 0.3.1, update filename extraction logic, and enhance rename confirmation screen 2025-12-28 07:14:39 +00:00
sha 9877be17a3 feat: Bump version to 0.2.9, enhance frame class extraction and add build script 2025-12-27 04:02:32 +00:00
sha f2060b4a92 feat: Bump version to 0.2.5, enhance logging, normalize Cyrillic characters, and improve database info formatting 2025-12-27 02:55:34 +00:00
sha 691d1e7b2d feat: Add extraction and formatting for special edition information in filenames 2025-12-26 20:56:22 +00:00
sha b21308c7b8 feat: Add order extraction from filename and integrate into proposed name formatting 2025-12-26 20:42:52 +00:00
sha 2dce807984 feat: Introduce DefaultExtractor for fallback values and refactor extraction logic in MediaExtractor 2025-12-26 19:10:49 +00:00
sha aec31bae9e feat: Add audio languages and tracks extraction from filename, with corresponding tests 2025-12-26 15:37:57 +00:00
sha c5ab985440 feat: Add movie database identifier extraction and update related tests 2025-12-26 14:34:58 +00:00
sha 38e3f0e553 feat: Improve title extraction logic and add comprehensive test cases for edge cases 2025-12-26 14:06:40 +00:00
sha 3ecffc0d3c feat: Add HDR extraction from filename and update tests 2025-12-26 13:51:12 +00:00
sha 91df347727 feat: Enhance metadata extraction and formatting, improve extractor architecture, and update documentation 2025-12-26 13:38:17 +00:00
sha d2ec235458 Refactor extractors and formatters for improved structure and functionality
- Converted static methods to instance methods in FileInfoExtractor and FilenameExtractor for better encapsulation.
- Enhanced MediaInfoExtractor to initialize with file path and extract media information upon instantiation.
- Updated MetadataExtractor to handle metadata extraction with improved error handling and added methods for meta type detection.
- Introduced ColorFormatter for consistent text formatting across the application.
- Refactored MediaFormatter to utilize the new extractor structure and improve output formatting.
- Removed redundant utility functions and replaced them with direct calls in extractors.
- Added ProposedNameFormatter for better handling of proposed filename formatting.
- Updated extension handling to use MEDIA_TYPES for descriptions instead of VIDEO_EXT_DESCRIPTIONS.
2025-12-25 23:35:59 +00:00
sha 37efdf60d3 feat: add frame class extraction and formatting for media files 2025-12-25 05:13:56 +00:00
sha 305dd5f43e feat: restructure renamer package and implement media extraction features
- Updated `pyproject.toml` to reflect new package structure.
- Created `renamer/__init__.py` to initialize the package.
- Implemented `RenamerApp` in `renamer/app.py` for the main application interface.
- Added constants for video extensions in `renamer/constants.py`.
- Developed `MediaExtractor` class in `renamer/extractor.py` for extracting metadata from media files.
- Created various extractor classes in `renamer/extractors/` for handling filename, metadata, and media info extraction.
- Added formatting classes in `renamer/formatters/` for displaying media information and proposed filenames.
- Implemented utility functions in `renamer/utils.py` for detecting file types and extracting media track information.
- Introduced `OpenScreen` in `renamer/screens.py` for user input of directory paths.
- Enhanced error handling and user feedback throughout the application.
2025-12-25 03:10:40 +00:00