Tags: shengkunc/codeanalyzer-python
Tags
refactor: replace Codeanalyzer constructor parameters with AnalysisOp… …tions dataclass BREAKING CHANGE: Codeanalyzer constructor now takes a single AnalysisOptions parameter instead of 9 individual parameters, improving API design and maintainability. - Add new codeanalyzer.options module with AnalysisOptions dataclass - Refactor Codeanalyzer.__init__ to accept AnalysisOptions parameter - Update CLI to create AnalysisOptions instance from command arguments - Improve type safety and configuration management - Enhance code organization and maintainability - Update version to 0.1.12 in pyproject.toml - Add comprehensive changelog documentation - Remove obsolete test_numpy_constraints.py file Closes #12
Release v0.1.11: Python 3.12 NumPy Compatibility & Pydantic v1/v2 Sup… …port CRITICAL BUG FIXES: 🔧 Fixed NumPy build failure on Python 3.12+ due to missing 'distutils' module (#19) • Split NumPy dependency constraints into three tiers for optimal compatibility • Python < 3.11: numpy>=1.21.0,<1.24.0 • Python 3.11.x: numpy>=1.24.0,<2.0.0 • Python 3.12+: numpy>=1.26.0,<2.0.0 (NumPy 1.26+ supports Python 3.12) • Resolves ModuleNotFoundError when installing on Python 3.12+ 🔧 Fixed Pydantic v1/v2 compatibility issues throughout the codebase • Added runtime Pydantic version detection and compatibility layer • Introduced model_dump_json() and model_validate_json() helper functions • Fixed deprecated PyApplication.parse_raw() method usage • Updated CLI JSON serialization methods for cross-version compatibility ENHANCEMENTS: ✨ Enhanced Pydantic compatibility infrastructure • Runtime version detection using importlib.metadata • Compatibility abstraction layer for JSON serialization/deserialization • Improved forward reference resolution for both Pydantic v1 and v2 • Better error handling for missing Pydantic dependency TECHNICAL IMPROVEMENTS: 🛠️ Added 'packaging' dependency for robust version comparison 🛠️ Enhanced schema module with runtime version detection and compatibility helpers 🛠️ Updated core analysis caching system to use compatible Pydantic JSON methods 🛠️ Improved CLI output formatting with cross-version Pydantic support This release ensures compatibility with Python 3.12+ and provides seamless support for both Pydantic v1 and v2, preventing installation failures and runtime errors.
Release v0.1.10: Ray Distributed Processing, Incremental Caching, and… … Critical Bug Fixes Major Features: - Ray distributed processing for parallel symbol table generation - Incremental caching system with SHA256-based file change detection - Single file analysis capability with --file-name flag - Enhanced Python compatibility (3.9+) and dependency management Critical Bug Fixes: - Fixed nested function detection (Issue #15) - Fixed nested method/function signature generation - Improved Pydantic v1 compatibility Performance Improvements: - 2-10x faster analysis on subsequent runs - Automatic caching with content hash validation - Progress bar support for both serial and parallel modes Breaking Changes: - Pydantic downgraded to v1 API for stability - More conservative dependency version constraints
Add compression for output file with gzip and MessagePack. Add inbuil… …d decompression logic Signed-off-by: Rahul Krishna <[email protected]>
PreviousNext