New Features โจ
- **Event-Based Architecture**: Completely refactored to use an event system for file processing and output generation ๐ก
- **Simplified Command Interface**: Default command now generates a single all-in-one file, with `--split` option for individual files ๐งฉ
- **Enhanced File Walking**: New dedicated `FileWalker` class for improved directory traversal and file filtering ๐
- **Custom Ignore Files**: Support for custom ignore files via `PPG_IGNORE_FILES` environment variable ๐ ๏ธ
- **PowerShell Secure String Detection**: Improved sensitive data masking for PowerShell secure strings ๐
- **Advanced Test Cases**: Added test cases for complex password patterns and secure string variations โ
Improvements ๐ง
- **Simplified Usage**: The default `ppg` command now generates an all-in-one file without requiring subcommands ๐
- **Cleaner Error Handling**: Better error management in file processing and improved feedback during processing ๐
- **More Flexible Ignore Rules**: Enhanced ignore rules that respect both `.gitignore` and custom patterns ๐ก๏ธ
- **Modular Components**: Split functionality into focused modules for better code organization ๐
Technical Changes ๐ ๏ธ
- Added new modules: `events.py`, `file_walker.py`, `ignore_handler.py`, `language_mapping.py`, `options.py`, and `output_handler.py` for better code organization โ๏ธ
- Completely refactored `generator.py` to use the event system architecture ๐
- Modified command-line interface in `cli.py` to simplify usage patterns ๐ฅ๏ธ
- Replaced direct file output with handlers for different output formats ๐
- Added `FileEntry` data class for consistent file metadata handling ๐
Bug Fixes ๐
- Fixed sensitive data masking to properly handle PowerShell secure strings with different parameter formats ๐ ๏ธ
- Fixed path handling for files with special characters ๐ง
- Improved UTF-8 handling for file content processing ๐
Dependency Updates โฌ๏ธ
- No changes to external dependencies in this version โ