Uploaded image for project: 'Lucene - Core'
  1. Lucene - Core
  2. LUCENE-6732

Improve validate-source-patterns in build.xml (e.g., detect invalid license headers!!)

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 5.4, 6.0
    • Component/s: None
    • Labels:
      None
    • Lucene Fields:
      New

      Description

      Today I enabled warnings analysis on Policeman Jenkins. This scans the build log for warnings by javac and reports them in statistics, together with source file dumps.

      When doing that I found out that someone added again a lot of "invalid" license headers using /** instead a simple comment. This causes javadocs warnings under some circumstances, because /** is start of javadocs and not a license comment.

      I then tried to fix the validate-source-patterns to detect this, but due to a bug in ANT, the <containsregexp/> filter is applied per line (although it has multiline matching capabilities!!!).

      So I rewrote our checker to run with groovy. This also has some good parts:

      • it tells you wwhat was broken, otherwise you just know there is an error, but not whats wrong (tab, nocommit,...)
      • its much faster (multiple <containsregexp/> read file over and over, this one reads file one time into a string and then applies all regular expressions).

        Attachments

        1. LUCENE-6732-verbose.patch
          0.8 kB
          Uwe Schindler
        2. LUCENE-6732-v2.patch
          5 kB
          Uwe Schindler
        3. LUCENE-6732.patch
          10 kB
          Uwe Schindler
        4. LUCENE-6732.patch
          135 kB
          Uwe Schindler

          Activity

            People

            • Assignee:
              thetaphi Uwe Schindler
              Reporter:
              thetaphi Uwe Schindler
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: