0.1.3
Release Notes: Enhanced Dependency Management and Error Handling
🚀 New Features and Enhancements
-
Dependencies and Configuration Updates
- Workflow Improvements:
- Updated
.github/workflows/test.ymlto usepip install ".[dev]", streamlining the installation of development dependencies. - Retained
pytestexecution with-p no:warningsfor cleaner test output.
- Updated
- Dependency Management:
- Moved and separated dependencies into:
[tool.poetry.dependencies]for main dependencies.[tool.poetry.group.dev.dependencies]for development-specific dependencies.
- Adjusted dependencies like
black,isort,mypy,pypdf, and others for better organization.
- Moved and separated dependencies into:
- Configuration Enhancements:
- Added
isortconfiguration inpyproject.tomlfor consistent import sorting across the project.
- Added
- Workflow Improvements:
-
Code Enhancements
- Error Handling:
- Introduced a
print_errorfunction inerror_handling.pyfor safer error handling with fallback support for unprintable content. - Integrated
print_erroracross various modules for consistent error handling.
- Introduced a
- CLI Improvements:
- Added detailed help text, examples, and enhanced the description of the
outputoption incli.py. - Improved error handling for unprintable content in CLI outputs.
- Added detailed help text, examples, and enhanced the description of the
- Core Enhancements:
- Refined type hinting in
core.pywithoverloadand more specific annotations for improved code clarity and safety. - Enhanced debug logging and error handling during file processing.
- Refined type hinting in
- Error Handling:
-
Testing
- New Unit Tests:
test_cli.py: Validated CLI help text, examples, and the functionality of theoutputoption.test_error_handling.py: Tested theprint_errorfunction under various scenarios (e.g., normal text, rich markup, fallback support).
- Test Updates:
- Updated
test_basic.pyby removing obsolete comments for better readability and relevance.
- Updated
- New Unit Tests:
📋 Key Benefits
- Streamlined dependency management for clearer separation between main and development requirements.
- Improved error handling mechanisms ensure safer and more robust handling of edge cases.
- Enhanced developer experience with better documentation, consistent configurations, and comprehensive testing.
- User experience improvements through enriched CLI help text and more intuitive output options.