Releases: cqfn/refrax
v0.3.5
Release Notes
- Feature Enhancements:
Changelog
v0.3.4
Release Notes
This release introduces several enhancements and new features aimed at improving the functionality and performance of the software. Key updates include:
Features:
- Added an attempts flag for configuring AI refactoring attempts, allowing for more flexible AI integration.
- Introduced support for the Ollama AI provider, including a model parameter to enhance AI capabilities.
- Enhanced the review process with improved defect handling and logging, facilitating better tracking and resolution of issues.
Improvements:
- Updated logging mechanisms to retain JavaDoc comments, ensuring better documentation and traceability.
- Changed the log level for class analysis messages to debug, optimizing log output for development and troubleshooting purposes.
Changelog
- 5be27cb feat(#132): Add attempts flag for AI refactoring attempts configuration (#134)
- ccbdb53 feat(#130): Add support for Ollama AI provider and model parameter (#131)
- 861bafe feat(#121): Enhance logging and update prompts to retain JavaDoc comments (#129)
- 6ba8650 refactor(#121): Change log level to debug for class analysis messages (#128)
- ba53483 feat(#121): Enhance review process with improved defect handling and logging (#127)
v0.3.3
v0.3.2
Release Notes
New Features:
- Added support for the
refrax --versioncommand, allowing users to easily display version information.
Bug Fixes:
- Updated environment variable names to use
API_KEYinstead ofTOKEN, ensuring consistency and clarity in configuration.
Changelog
v0.3.2
Release Notes
New Features:
- Added support for the
refrax --versioncommand, allowing users to easily display version information.
Bug Fixes:
- Updated environment variable names to use
API_KEYinstead ofTOKEN, ensuring consistency and clarity in configuration.
Changelog
v0.3.1
Release Notes
-
Bug Fixes:
- Resolved an issue with token retrieval errors in the RefraxClient refactor method, enhancing error handling and stability (#115).
-
Code Maintenance:
- Removed package comments from multiple files to improve code clarity and maintainability (#113).
-
User Experience:
- Polished various messages throughout the application for improved clarity and professionalism (#114).
Changelog
v0.3.0
Release Notes
- New Features:
- Introduced a Reviewer Agent, providing automated review capabilities for implemented changes. This makes refactoring safer and more robust.
- Added a command-line interface (CLI) option, enabling users to configure commands for the Reviewer Agent, thereby improving flexibility and usability.
- Documentation Enhancements:
- Added a new section outlining the Reviewer Agent and its configuration options to enhance user understanding and facilitate setup.
Changelog
v0.2.2
Release Notes
We are pleased to announce the latest version of our software, which includes several enhancements and refinements aimed at improving user experience and functionality.
Features:
- Enhanced refactoring logs and added error handling in the Critic agent to improve reliability and debugging (#82).
- Implemented a reviewer component for validating refactoring integrity, ensuring code quality during the refactoring process (#82).
- Introduced a reviewer agent that provides AI-based code suggestions, facilitating better coding practices and efficiency (#82).
- Refactored agent inputs to utilize a Job structure for more effective message passing, streamlining communication between components (#82).
- Updated the system to use class paths instead of names for uniqueness, enhancing the overall structure and organization of the codebase (#96).
Improvements:
- Moved prompts to an internal/prompts directory and changed their extension to .md.templ for better organization and clarity.
Polishing:
- General polish and refinement of the user interface and experience to enhance usability and performance.
Changelog
- 22250de refactor(#108): Move prompts to internal/prompts directory with .md.templ extension (#109)
- 52d4db9 polish
- 5d87017 polish
- 59cacb8 feat(#82): Enhance refactoring logs and add error handling in Critic agent (#107)
- 06010f7 feat(#82): Implement reviewer component for validating refactoring integrity (#106)
- 37e30b2 feat(#82): refactor agent imputs - use Job structure for message passing (#105)
- 88bb699 feat(#82): Implement reviewer agent for AI-based code suggestions (#104)
- 9ccffbb feat(#96): Use class paths instead of names for uniqueness (#98)
v0.2.1
Release Notes
New Features
- Added per-agent statistics collection and reporting (#90, #97)
- Introduced colored logging for agents to improve readability (#84, #86)
- Added graceful server termination with Shutdown method (#77, #78) and context support (#75, #76)
- Added --max-size flag to limit refactoring changes (default: 200 lines) (#61, #74)
- Refined prompts and implemented incremental refactoring strategy (#81, #85, #91)
Improvements
- Decoupled domain logic from A2A protocol implementation (#83, #89)
- Moved domain logic to internal/domain package and refactored client code (#83, #88)
- Removed unused trpc A2A server implementation (#79, #80)
Bug Fixes
Statistics
Recent changes allowed us to count A2A interaction statistics using a simple refactoring example. Here is the CSV file:
The data was collected for the xnav project, which contains approximately 44 Java classes. -ai=deepseek
Changelog
- c524a71 feat(#90): Add per-agent statistics collection and reporting (#97)
- ea46c11 fix(#93): repair Diff method and add test cases for edge scenarios (#95)
- c7193f9 feat(#81): refine prompts and implement incremental refactoring strategy (#91)
- 0f4f4ff refactor(#83): Decouple domain logic from a2a protocol implementation (#89)
- 7b5fc05 refactor(#83): Move domain logic to internal/domain package and refactor client code (#88)
- 6cd189f feat(#83): Implement A2A refactoring agent with critic and fixer integration (#87)
- 27f7da7 feat(#84): Add colored logging for agents to improve readability (#86)
- 1e135fa feat(#81): refine prompts and implement incremental refactoring strategy (#85)
- d76bb30 refactor(#79): Remove unused trpc A2A server implementation (#80)
- f9166dc feat(#77): Replace Close with Shutdown for graceful server termination (#78)
- 8a721e5 feat(#75): add context support for graceful server shutdown (#76)
- 3c88ac5 feat(#61): Add --max-size flag to limit refactoring changes to 200 lines by default (#74)
v0.2.0
Release Notes
New Features:
- Added support for processing entire Java projects with nested file structures (#54, #56, #58)
- Added parallel processing for Java class refactoring to improve performance (#69, #73)
- Added OpenAI integration support (#37, #67)
- Implemented
--statsoption for performance metrics (token counts and LLM metrics ) (#21, #32, #64, #65, #60, #63) - Added multiple output format options including CSV for statistics (#39, #59)
- Implemented
--outputoption to enable project copying instead of in-place modification (#55, #57) - Integrated aibolit tool with simplified implementation (#2, #38, #42)
Code Quality Improvements:
- Consolidated client parameters and improved logging (#27, #62)
- Enabled gosec linter and resolved security issues (#50, #53)
- Enabled revive linter and fixed related issues (#51, #52)
- Added golangci configuration and performed code cleanup (#43, #49)
Tests:
- Implemented mock provider support with enhanced error handling for brain creation (#68, #70
- Added YAML playbook support for AI integration (#16, #44)
Refactoring:
CI/CD:
Changelog
- 89ec2b5 feat(#69): Parallelize Java class refactoring for improved performance (#73)
- b123678 feat(#68): Add mock provider support and error handling for brain creation (#70)
- dd2c2de bug(#37): add openai support (#67)
- 6754bb3 feat(#64): Add request stats collection and improve protocol handling (#65)
- ecba326 feat(#60): enhance stat output with token counts and LLM metrics (#63)
- 484dd84 refactor(#27): consolidate client params and improve logging (#62)
- 43ced08 feat(#39): Add stats format and output options with CSV support (#59)
- 1ac0146 feat(#54): Add support for processing entire Java projects with nested files (#58)
- 17a6329 feat(#55): Add --output option to copy project instead of modifying current one (#57)
- 9ecf330 feat(#54): Add support for processing entire Java projects with nested files (#56)
- b59b25b feat(#50): Enable gosec linter and fix security issues (#53)
- f48c500 feat(#51): Enable revive linter and fix related issues (#52)
- 3d8b7c6 refactor(#43): Add golangci config and clean up code (#49)
- d63c3d9 feat(#16): Add YAML playbook support for AI integration (#44)
- 0650514 refactor(#2): simplify aibolit tool implementation and refactor critic implementation (#42)
- 2f65fcd feat(#2):
aibolitintegration (#38) - 6d1162e feat(#33): after this commit pdd should start work
- 8557dd1 feat(#33): after this commit pdd should start work
- 3916763 feat(#21):
refrax --stats(#32) - bcfff7c feat(#33): PDD support (#34)