GEODE-10465: Fix RAT failures by adding missing **/bin/** exclusion#7939
Conversation
…attern This commit addresses RAT (Release Audit Tool) failures that occur when IDE-generated bin/ directories are present in the workspace. The issue was caused by a missing exclusion pattern that should have been included during the build system refactoring in May 2022. Root Cause Analysis: - In April 2017, **/bin/** exclusion was added to RAT configuration (commit 4a09e88) - Later removed due to legitimate bin/ folders in source tree (commit 39c72b2) - During May 2022 build system refactoring (commit 509c0c6), the RAT configuration was moved from gradle/rat.gradle to build-tools/scripts/src/main/groovy/geode-rat.gradle - The **/bin/** exclusion pattern was inadvertently omitted from the new configuration Problem: - IDEs (Eclipse, IntelliJ) generate bin/ directories containing compiled classes, test resources, and other build artifacts - These files lack Apache license headers and cause RAT failures - The .gitignore already excludes bin/ folders, indicating they are build artifacts Solution: - Add '**/bin/**' exclusion pattern to RAT configuration - This prevents RAT from scanning IDE-generated build artifacts - Consistent with existing exclusions for other build directories (**/build/**) - Aligns with .gitignore patterns that already exclude bin/ folders Testing: - Verified RAT passes with and without bin/ directories present - Confirmed exclusion works for files without license headers in bin/ folders - No impact on legitimate source files that require license headers This fix prevents future RAT failures for developers using IDEs that generate bin/ directories during normal development workflow.
JinwooHwang
left a comment
There was a problem hiding this comment.
Thanks for taking care of this issue, @sboorlagadda . LGTM.
Hmm, ideally RAT should already ignore all files that are in .gitignore , I wonder why that doesn't seem to be working for Geode. I suppose it may be because the gradle-rat plugin is still at an earlier rat version (eskatos/creadur-rat-gradle#28) |
Awesome! Thanks for the heads up. I will wait for 0.17 release and upgrade it. But for now we can go ahead and include this exclusion as it is annoying to deal with in local development |
|
Created https://issues.apache.org/jira/browse/GEODE-10501 to track the migration to 0.17 |
This commit addresses RAT (Release Audit Tool) failures that occur when IDE-generated bin/ directories are present in the workspace. The issue was caused by a missing exclusion pattern that should have been included during the build system refactoring in May 2022.
Root Cause Analysis:
Problem:
Solution:
Testing:
This fix prevents future RAT failures for developers using IDEs that generate bin/ directories during normal development workflow.
For all changes, please confirm:
develop)?gradlew buildrun cleanly?