From ba49b86783b6a69b156e3adcc8af0fbbad4038b8 Mon Sep 17 00:00:00 2001 From: Nik Everett Date: Fri, 2 May 2025 12:03:21 -0400 Subject: [PATCH] ESQL: Disable format checks on generated imports This builds the infrastructure to disable spotless and some checkstyle rules on generated imports. This works around the most frustrating part of ESQL's string template generated files - the imports. It allows unused and out of order imports. This can let us remove a lot of cumbersome, tricky, and fairly useless `$if$` blocks from the templates. --- .../src/main/resources/checkstyle.xml | 5 +++++ x-pack/plugin/esql/compute/build.gradle | 1 + .../compute/data/BooleanArrayVector.java | 5 +++++ .../compute/data/BytesRefArrayVector.java | 4 ++++ .../compute/data/DoubleArrayVector.java | 5 +++++ .../compute/data/FloatArrayVector.java | 5 +++++ .../elasticsearch/compute/data/IntArrayVector.java | 5 +++++ .../elasticsearch/compute/data/LongArrayVector.java | 5 +++++ .../compute/data/X-ArrayVector.java.st | 13 ++----------- 9 files changed, 37 insertions(+), 11 deletions(-) diff --git a/build-tools-internal/src/main/resources/checkstyle.xml b/build-tools-internal/src/main/resources/checkstyle.xml index 9ed31d993909e..d50af511ebeac 100644 --- a/build-tools-internal/src/main/resources/checkstyle.xml +++ b/build-tools-internal/src/main/resources/checkstyle.xml @@ -68,6 +68,11 @@ + + + + + diff --git a/x-pack/plugin/esql/compute/build.gradle b/x-pack/plugin/esql/compute/build.gradle index 2d8a2e445ca7e..0d4765d2a0351 100644 --- a/x-pack/plugin/esql/compute/build.gradle +++ b/x-pack/plugin/esql/compute/build.gradle @@ -49,6 +49,7 @@ spotless { /* * Generated files go here. */ + toggleOffOn('begin generated imports', 'end generated imports') targetExclude "src/main/generated/**/*.java" } } diff --git a/x-pack/plugin/esql/compute/src/main/generated-src/org/elasticsearch/compute/data/BooleanArrayVector.java b/x-pack/plugin/esql/compute/src/main/generated-src/org/elasticsearch/compute/data/BooleanArrayVector.java index cde163a2d3bc5..18a89f29655b6 100644 --- a/x-pack/plugin/esql/compute/src/main/generated-src/org/elasticsearch/compute/data/BooleanArrayVector.java +++ b/x-pack/plugin/esql/compute/src/main/generated-src/org/elasticsearch/compute/data/BooleanArrayVector.java @@ -7,15 +7,20 @@ package org.elasticsearch.compute.data; +// begin generated imports +import org.apache.lucene.util.BytesRef; import org.apache.lucene.util.RamUsageEstimator; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.io.stream.StreamOutput; import org.elasticsearch.common.unit.ByteSizeValue; +import org.elasticsearch.common.util.BytesRefArray; import org.elasticsearch.core.ReleasableIterator; +import org.elasticsearch.core.Releasables; import java.io.IOException; import java.util.stream.Collectors; import java.util.stream.IntStream; +// end generated imports /** * Vector implementation that stores an array of boolean values. diff --git a/x-pack/plugin/esql/compute/src/main/generated-src/org/elasticsearch/compute/data/BytesRefArrayVector.java b/x-pack/plugin/esql/compute/src/main/generated-src/org/elasticsearch/compute/data/BytesRefArrayVector.java index 509ee7e583e4c..679019755840c 100644 --- a/x-pack/plugin/esql/compute/src/main/generated-src/org/elasticsearch/compute/data/BytesRefArrayVector.java +++ b/x-pack/plugin/esql/compute/src/main/generated-src/org/elasticsearch/compute/data/BytesRefArrayVector.java @@ -7,6 +7,7 @@ package org.elasticsearch.compute.data; +// begin generated imports import org.apache.lucene.util.BytesRef; import org.apache.lucene.util.RamUsageEstimator; import org.elasticsearch.common.io.stream.StreamInput; @@ -17,6 +18,9 @@ import org.elasticsearch.core.Releasables; import java.io.IOException; +import java.util.stream.Collectors; +import java.util.stream.IntStream; +// end generated imports /** * Vector implementation that stores an array of BytesRef values. diff --git a/x-pack/plugin/esql/compute/src/main/generated-src/org/elasticsearch/compute/data/DoubleArrayVector.java b/x-pack/plugin/esql/compute/src/main/generated-src/org/elasticsearch/compute/data/DoubleArrayVector.java index 5c375634011c6..14525399ff75b 100644 --- a/x-pack/plugin/esql/compute/src/main/generated-src/org/elasticsearch/compute/data/DoubleArrayVector.java +++ b/x-pack/plugin/esql/compute/src/main/generated-src/org/elasticsearch/compute/data/DoubleArrayVector.java @@ -7,15 +7,20 @@ package org.elasticsearch.compute.data; +// begin generated imports +import org.apache.lucene.util.BytesRef; import org.apache.lucene.util.RamUsageEstimator; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.io.stream.StreamOutput; import org.elasticsearch.common.unit.ByteSizeValue; +import org.elasticsearch.common.util.BytesRefArray; import org.elasticsearch.core.ReleasableIterator; +import org.elasticsearch.core.Releasables; import java.io.IOException; import java.util.stream.Collectors; import java.util.stream.IntStream; +// end generated imports /** * Vector implementation that stores an array of double values. diff --git a/x-pack/plugin/esql/compute/src/main/generated-src/org/elasticsearch/compute/data/FloatArrayVector.java b/x-pack/plugin/esql/compute/src/main/generated-src/org/elasticsearch/compute/data/FloatArrayVector.java index f10e9dc39bbfd..ec36c23d7cd3c 100644 --- a/x-pack/plugin/esql/compute/src/main/generated-src/org/elasticsearch/compute/data/FloatArrayVector.java +++ b/x-pack/plugin/esql/compute/src/main/generated-src/org/elasticsearch/compute/data/FloatArrayVector.java @@ -7,15 +7,20 @@ package org.elasticsearch.compute.data; +// begin generated imports +import org.apache.lucene.util.BytesRef; import org.apache.lucene.util.RamUsageEstimator; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.io.stream.StreamOutput; import org.elasticsearch.common.unit.ByteSizeValue; +import org.elasticsearch.common.util.BytesRefArray; import org.elasticsearch.core.ReleasableIterator; +import org.elasticsearch.core.Releasables; import java.io.IOException; import java.util.stream.Collectors; import java.util.stream.IntStream; +// end generated imports /** * Vector implementation that stores an array of float values. diff --git a/x-pack/plugin/esql/compute/src/main/generated-src/org/elasticsearch/compute/data/IntArrayVector.java b/x-pack/plugin/esql/compute/src/main/generated-src/org/elasticsearch/compute/data/IntArrayVector.java index 9db51c61bbf1d..ac72a7b0e3e0a 100644 --- a/x-pack/plugin/esql/compute/src/main/generated-src/org/elasticsearch/compute/data/IntArrayVector.java +++ b/x-pack/plugin/esql/compute/src/main/generated-src/org/elasticsearch/compute/data/IntArrayVector.java @@ -7,15 +7,20 @@ package org.elasticsearch.compute.data; +// begin generated imports +import org.apache.lucene.util.BytesRef; import org.apache.lucene.util.RamUsageEstimator; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.io.stream.StreamOutput; import org.elasticsearch.common.unit.ByteSizeValue; +import org.elasticsearch.common.util.BytesRefArray; import org.elasticsearch.core.ReleasableIterator; +import org.elasticsearch.core.Releasables; import java.io.IOException; import java.util.stream.Collectors; import java.util.stream.IntStream; +// end generated imports /** * Vector implementation that stores an array of int values. diff --git a/x-pack/plugin/esql/compute/src/main/generated-src/org/elasticsearch/compute/data/LongArrayVector.java b/x-pack/plugin/esql/compute/src/main/generated-src/org/elasticsearch/compute/data/LongArrayVector.java index ff9179343536e..cbd81f8bc848c 100644 --- a/x-pack/plugin/esql/compute/src/main/generated-src/org/elasticsearch/compute/data/LongArrayVector.java +++ b/x-pack/plugin/esql/compute/src/main/generated-src/org/elasticsearch/compute/data/LongArrayVector.java @@ -7,15 +7,20 @@ package org.elasticsearch.compute.data; +// begin generated imports +import org.apache.lucene.util.BytesRef; import org.apache.lucene.util.RamUsageEstimator; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.io.stream.StreamOutput; import org.elasticsearch.common.unit.ByteSizeValue; +import org.elasticsearch.common.util.BytesRefArray; import org.elasticsearch.core.ReleasableIterator; +import org.elasticsearch.core.Releasables; import java.io.IOException; import java.util.stream.Collectors; import java.util.stream.IntStream; +// end generated imports /** * Vector implementation that stores an array of long values. diff --git a/x-pack/plugin/esql/compute/src/main/java/org/elasticsearch/compute/data/X-ArrayVector.java.st b/x-pack/plugin/esql/compute/src/main/java/org/elasticsearch/compute/data/X-ArrayVector.java.st index 521e09d909a1c..cb44f2df1732d 100644 --- a/x-pack/plugin/esql/compute/src/main/java/org/elasticsearch/compute/data/X-ArrayVector.java.st +++ b/x-pack/plugin/esql/compute/src/main/java/org/elasticsearch/compute/data/X-ArrayVector.java.st @@ -7,7 +7,7 @@ package org.elasticsearch.compute.data; -$if(BytesRef)$ +// begin generated imports import org.apache.lucene.util.BytesRef; import org.apache.lucene.util.RamUsageEstimator; import org.elasticsearch.common.io.stream.StreamInput; @@ -17,19 +17,10 @@ import org.elasticsearch.common.util.BytesRefArray; import org.elasticsearch.core.ReleasableIterator; import org.elasticsearch.core.Releasables; -import java.io.IOException; - -$else$ -import org.apache.lucene.util.RamUsageEstimator; -import org.elasticsearch.common.io.stream.StreamInput; -import org.elasticsearch.common.io.stream.StreamOutput; -import org.elasticsearch.common.unit.ByteSizeValue; -import org.elasticsearch.core.ReleasableIterator; - import java.io.IOException; import java.util.stream.Collectors; import java.util.stream.IntStream; -$endif$ +// end generated imports /** * Vector implementation that stores an array of $type$ values.