v0.1.4
Release Notes - v0.1.4
๐ New Features
Output Format Options with Ultra-Compression
Added a new --format
flag that revolutionizes how analysis results are stored and transferred:
- Compact JSON: Default output now uses space-efficient formatting (70% of previous size)
- MessagePack + Gzip: New ultra-compressed binary format achieving 80-90% size reduction
bash# Compact JSON (default) codeanalyzer -i /path/to/project # Maximum compression codeanalyzer -i /path/to/project -o ./output --format msgpack
Real-World Impact
- Large codebases: 2.4MB JSON โ 384KB MessagePack (84% reduction)
- CI/CD pipelines: Faster uploads/downloads and reduced storage costs
- Network transfer: Significant bandwidth savings for distributed workflows
๐ง Technical Improvements
Enhanced Serialization
- Type-safe format selection using Python enums
- Path object handling for cross-platform compatibility
- Round-trip data integrity ensuring no information loss
- Compression reporting shows exact size savings
Performance Optimizations
- Streaming serialization for memory efficiency
- Recursive type conversion handles complex nested structures
- Binary format support with automatic compression
๐ Compression Performance
Format | Size | Compression Ratio -- | -- | -- Pretty JSON | 2.4 MB | 100% (baseline) Compact JSON | 1.7 MB | 71% MessagePack + Gzip | 384 KB | 16%
๐ ๏ธ Dependencies
Added
msgpack>=1.0.0
- Efficient binary serialization
Installation
bashpip install --upgrade codeanalyzer-python
๐ Migration Guide
Fully Backward Compatible
No changes required for existing users:
- All existing commands work unchanged
- Default output format remains JSON (now compact)
- No breaking changes to APIs or data structures
For New Users
Take advantage of the new compression options:
bash# For human-readable output codeanalyzer -i project --format json # For maximum efficiency codeanalyzer -i project -o results --format msgpack