Releases: refactorfirst/RefactorFirst
0.6.2
0.6.1
What's Changed
- Removed jgrapht-core and jgapht-ext from report module by @jimbethancourt in #108
This removes a transitive dependency on org.tinyjee.jgraphx:jgraphx, which has been identified as a vulnerable component in CVE bulletin CVE-2017-18197
Full Changelog: 0.6.0...0.6.1
0.6.0
What's Changed
- #101 Rendering DOT images instead of png iimages by @jimbethancourt in #105
- #93 Only calculating cycle class churn when
showDetails = true
by @jimbethancourt in #106 since number of classes in a cycle has a strong correlation to the cycle's average commit count - Render dot graphs in maven report by @jimbethancourt in #107
- Logging parsed files during circular reference checking in #107
Full Changelog: 0.5.0...0.6.0
0.5.0
#Notable changes since 0.4.0:
- Java 21 support
- Cycle analysis performed in Maven report and HTML reports (based on field types and method signature types) (#56 #92)
- Added Simple HTML Report - can be used in GitHub Actions
- Significant performance improvement for large codebases with a high number of commits (#95)
- Silenced PMD complaints (#91)
- Codebases with generated sources now successfully analyzed (#99)
What's Changed
- Updated versions of Lombok, ErrorProne, and Spotless. by @jimbethancourt in #63
- Updated versions of the jacoco-maven-plugin and maven-plugin-plugin by @jimbethancourt in #64
- #62 mvn site and #70 GH buttons on mvn site generated page by @jimbethancourt in #71
- Provide CLI verion by @d4c4nf3 in #66
- CLI and other upgrades by @jimbethancourt in #74
- [Snyk] Security upgrade org.apache.maven:maven-core from 3.9.2 to 3.9.4 by @jimbethancourt in #67
- Update version to 0.5.0.M1-SNAPSHOT by @jimbethancourt in #75
- Update version directly to 0.5.0-M1 by @jimbethancourt in #76
- Reverting README.md by @jimbethancourt in #77
- Updated GH buttons to point to refactorfirst/RefactorFirst repo by @jimbethancourt in #78
- Upgrade to new pmd by @jimbethancourt in #84
- Hyperlinking RefactorFirst in report title by @jimbethancourt in #85
- Refactor by @jimbethancourt in #87
- Add circular reference detector by @jimbethancourt in #88
- Generating Cycle data by @jimbethancourt in #89
- Fixed issues by @jimbethancourt in #90
- #92 Add weighted edges by @jimbethancourt in #96
- Optimize git by @jimbethancourt in #98
- Handle generated sources by @jimbethancourt in #100
New Contributors - Thank you!!!
Thank you @nikhilpereira1793 for creating the java-circular-reference-detector (Original code located at https://gitlab.com/nikhil_ideacrest/java-circular-reference-detector)
Full Changelog: 0.4.0...0.5.0
0.5.0-M2
What's Changed
- Upgrade to new pmd by @jimbethancourt in #84
- Hyperlinking RefactorFirst in report title by @jimbethancourt in #85
- Refactor by @jimbethancourt in #87
- Add circular reference detector by @jimbethancourt in #88
- Generating Cycle data by @jimbethancourt in #89
Thank you @nikhilpereira1793 for creating the java-circular-reference-detector (Original code located at https://gitlab.com/nikhil_ideacrest/java-circular-reference-detector)
Full Changelog: 0.5.0-M1...0.5.0-M2
0.5.0-M1
What's Changed
- Updated versions of Lombok, ErrorProne, and Spotless. by @jimbethancourt in #63
- Updated versions of the jacoco-maven-plugin and maven-plugin-plugin by @jimbethancourt in #64
- #62 mvn site and #70 GH buttons on mvn site generated page by @jimbethancourt in #71
- Provide CLI verion by @Vojislav-Cuk in #66
- [Snyk] Security upgrade org.apache.maven:maven-core from 3.9.2 to 3.9.4 by @jimbethancourt in #67
- Updated GH buttons to point to refactorfirst/RefactorFirst repo by @jimbethancourt in #78
New Contributors
- @Vojislav-Cuk made their first contribution in #66
Thank you!
A HUGE thank you @Vojislav-Cuk for contributing the CLI runner feature!
Thank you @karianna for suggesting that the Maven site report be rehabilitated!
Thank you @lagooned for pair programming!
Full Changelog: 0.4.0...0.5.0-M1
0.4.0 Add Coupling Between Objects ranker and enhance UI, Merged in CSV and JSON reports
The Coupling Between Objects PMD metric has been added as an additional metric, with an additional graph and corresponding table being generated. Highly coupled classes can be difficult to maintain, and knowing which is the highest priority target may be difficult to discern at first glance.
Thank you Contributors!
Thank you @robcor for your CSV Maven goal
Thank you @chriswininger for adding the JSON output Maven goal
Thank you @jkschneider for helping RefactorFirst move from JUnit 4 to JUnit 5
0.3.0 Support Java 17 and Explorer mode in Bubble chart
Java 17 codebase analysis is now supported
Explorer mode is now the default on the generated bubble chart. Zooming and panning is now possible, just like in Google Maps.
Thanks to @ScottBob and @lagooned for their contributions in the Houston JUG mob programming fun!
0.2.0 Add Java 11 Support
Functional Changes
- Java 11 now supported
- Added legend for graph
- Simplified default contents of metrics table
- Added "showDetails" property that includes God Class details useful to researchers when set to true (false by default)
- Improved number formatting
- Logging improvements
Non-Functional Changes
- Removed use of Velocity to avoid CVE-2020-13936
- Removed use of commons-lang3
Bug fixes:
- Displaying meaningful message when no Git repository is present
- Displaying meaningful message when no God classes are present
Note: This Maven plugin no longer runs as part of the Maven Site lifecycle due to the removal of Velocity use
A sincere thank you to these individuals for code contributions, feature and bug submissions, and PMD version upgrade help:
@aravindparappil46, @henri-tremblay, @milindbangar79, @manouti, @santoshm1188, @lilian-benoit, and @oowekyala
Fix two critical vulnerabilities and a license issue
Fixed two critical vulnerabilities and excluding Saxon since some corporations may not be comfortable with using the MPL 1.0 license