This is an automated email from the ASF dual-hosted git repository.

sai_boorlagadda pushed a commit to branch feature/GEODE-10479-rat-exclusion-bin
in repository https://gitbox.apache.org/repos/asf/geode.git

commit 514deefe72b9afff40744c4f3768058eeabcbc8f
Author: Sai Boorlagadda <[email protected]>
AuthorDate: Thu Oct 2 09:10:57 2025 -0700

    GEODE-10465: Fix RAT failures by adding missing **/bin/** exclusion pattern
    
    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 
4a09e88b69)
    - Later removed due to legitimate bin/ folders in source tree (commit 
39c72b2046)
    - During May 2022 build system refactoring (commit 509c0c6c91), 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.
---
 build-tools/scripts/src/main/groovy/geode-rat.gradle | 1 +
 1 file changed, 1 insertion(+)

diff --git a/build-tools/scripts/src/main/groovy/geode-rat.gradle 
b/build-tools/scripts/src/main/groovy/geode-rat.gradle
index dca43213de..20f0fdad45 100644
--- a/build-tools/scripts/src/main/groovy/geode-rat.gradle
+++ b/build-tools/scripts/src/main/groovy/geode-rat.gradle
@@ -40,6 +40,7 @@ rat {
     'wrapper/**',
     '**/build/**',
     '**/build-*/**',
+    '**/bin/**',
     '.buildinfo',
     '**/release-features.rendered', // just for jenkins
 

Reply via email to