You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by dw...@apache.org on 2022/02/10 11:05:39 UTC

[lucene] branch branch_9x updated: LUCENE-10419: add debugging code.

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

dweiss pushed a commit to branch branch_9x
in repository https://gitbox.apache.org/repos/asf/lucene.git


The following commit(s) were added to refs/heads/branch_9x by this push:
     new 9289b94  LUCENE-10419: add debugging code.
9289b94 is described below

commit 9289b94329adcf712c72bb2cbe056c161b7d7188
Author: Dawid Weiss <da...@carrotsearch.com>
AuthorDate: Thu Feb 10 12:03:54 2022 +0100

    LUCENE-10419: add debugging code.
---
 gradle/validation/validate-source-patterns.gradle | 88 ++++++++++++-----------
 1 file changed, 47 insertions(+), 41 deletions(-)

diff --git a/gradle/validation/validate-source-patterns.gradle b/gradle/validation/validate-source-patterns.gradle
index a82ce95..fbf3e04 100644
--- a/gradle/validation/validate-source-patterns.gradle
+++ b/gradle/validation/validate-source-patterns.gradle
@@ -199,58 +199,64 @@ class ValidateSourcePatternsTask extends DefaultTask {
     ProgressLogger progress = progressLoggerFactory.newOperation(this.class)
     progress.start(this.name, this.name)
 
-    sourceFiles.each{ f ->
-      progress.progress("Scanning ${f.name}")
-      logger.debug('Scanning source file: {}', f);
+    sourceFiles.each { f ->
+      try {
+        progress.progress("Scanning ${f.name}")
+        logger.debug('Scanning source file: {}', f);
 
-      def text = f.getText('UTF-8');
-      invalidPatterns.each { pattern, name ->
-        if (pattern.matcher(text).find()) {
-          reportViolation(f, name);
+        def text = f.getText('UTF-8');
+        invalidPatterns.each { pattern, name ->
+          if (pattern.matcher(text).find()) {
+            reportViolation(f, name);
+          }
         }
-      }
-      def javadocsMatcher = javadocsPattern.matcher(text);
-      def ratDocument = new FileDocument(f);
-      while (javadocsMatcher.find()) {
-        if (isLicense(javadocsMatcher, ratDocument)) {
-          reportViolation(f, String.format(Locale.ENGLISH, 'javadoc-style license header [%s]',
-            ratDocument.getMetaData().value(MetaData.RAT_URL_LICENSE_FAMILY_NAME)));
+        def javadocsMatcher = javadocsPattern.matcher(text);
+        def ratDocument = new FileDocument(f);
+        while (javadocsMatcher.find()) {
+          if (isLicense(javadocsMatcher, ratDocument)) {
+            reportViolation(f, String.format(Locale.ENGLISH, 'javadoc-style license header [%s]',
+              ratDocument.getMetaData().value(MetaData.RAT_URL_LICENSE_FAMILY_NAME)));
+          }
         }
-      }
-      if (f.name.endsWith('.java')) {
-        if (text.contains('org.slf4j.LoggerFactory')) {
-          if (!validLoggerPattern.matcher(text).find()) {
-            reportViolation(f, 'invalid logging pattern [not private static final, uses static class name]');
+        if (f.name.endsWith('.java')) {
+          if (text.contains('org.slf4j.LoggerFactory')) {
+            if (!validLoggerPattern.matcher(text).find()) {
+              reportViolation(f, 'invalid logging pattern [not private static final, uses static class name]');
+            }
+            if (!validLoggerNamePattern.matcher(text).find()) {
+              reportViolation(f, 'invalid logger name [log, uses static class name, not specialized logger]')
+            }
           }
-          if (!validLoggerNamePattern.matcher(text).find()) {
-            reportViolation(f, 'invalid logger name [log, uses static class name, not specialized logger]')
+          // make sure that SPI names of all tokenizers/charfilters/tokenfilters are documented
+          if (!f.name.contains("Test") && !f.name.contains("Mock") && !f.name.contains("Fake") && !text.contains("abstract class") &&
+              !f.name.equals("TokenizerFactory.java") && !f.name.equals("CharFilterFactory.java") && !f.name.equals("TokenFilterFactory.java") &&
+              (f.name.contains("TokenizerFactory") && text.contains("extends TokenizerFactory") ||
+                  f.name.contains("CharFilterFactory") && text.contains("extends CharFilterFactory") ||
+                  f.name.contains("FilterFactory") && text.contains("extends TokenFilterFactory"))) {
+            if (!validSPINameJavadocTag.matcher(text).find()) {
+              reportViolation(f, 'invalid spi name documentation')
+            }
           }
-        }
-        // make sure that SPI names of all tokenizers/charfilters/tokenfilters are documented
-        if (!f.name.contains("Test") && !f.name.contains("Mock") && !f.name.contains("Fake") && !text.contains("abstract class") &&
-            !f.name.equals("TokenizerFactory.java") && !f.name.equals("CharFilterFactory.java") && !f.name.equals("TokenFilterFactory.java") &&
-            (f.name.contains("TokenizerFactory") && text.contains("extends TokenizerFactory") ||
-                f.name.contains("CharFilterFactory") && text.contains("extends CharFilterFactory") ||
-                f.name.contains("FilterFactory") && text.contains("extends TokenFilterFactory"))) {
-          if (!validSPINameJavadocTag.matcher(text).find()) {
-            reportViolation(f, 'invalid spi name documentation')
+          checkLicenseHeaderPrecedes(f, 'package', packagePattern, javaCommentPattern, text, ratDocument);
+          if (f.name.contains("Test")) {
+            checkMockitoAssume(f, text);
           }
-        }
-        checkLicenseHeaderPrecedes(f, 'package', packagePattern, javaCommentPattern, text, ratDocument);
-        if (f.name.contains("Test")) {
-          checkMockitoAssume(f, text);
-        }
 
-        invalidJavaOnlyPatterns.each { pattern,name ->
-          if (pattern.matcher(text).find()) {
-            reportViolation(f, name);
+          invalidJavaOnlyPatterns.each { pattern,name ->
+            if (pattern.matcher(text).find()) {
+              reportViolation(f, name);
+            }
           }
         }
-      }
-      if (f.name.endsWith('.xml')) {
-        checkLicenseHeaderPrecedes(f, '<tag>', xmlTagPattern, xmlCommentPattern, text, ratDocument);
+        if (f.name.endsWith('.xml')) {
+          checkLicenseHeaderPrecedes(f, '<tag>', xmlTagPattern, xmlCommentPattern, text, ratDocument);
+        }
+      } catch (e) {
+        e.printStackTrace()
+        throw new GradleException("Unhandled exception while validating patterns on file: " + f, e)
       }
     }
+
     progress.completed()
 
     if (!violations.isEmpty()) {