diff --git a/build-tools/build-infra/src/main/groovy/lucene.regenerate.javacc.gradle b/build-tools/build-infra/src/main/groovy/lucene.regenerate.javacc.gradle index 0b0700b0dd0d..7ebdd6ad9745 100644 --- a/build-tools/build-infra/src/main/groovy/lucene.regenerate.javacc.gradle +++ b/build-tools/build-infra/src/main/groovy/lucene.regenerate.javacc.gradle @@ -81,6 +81,13 @@ def commonCleanups = { FileTree generatedFiles -> text = text.replace( "public void setDebugStream(java.io.PrintStream ds) { debugStream = ds; }", "// (setDebugStream omitted).") + // Remove dangling doc comments + text = text.replace( + "/** Debug output. */", + "// Debug output.") + text = text.replace( + "/** Set debug output. */", + "// Set debug output.") return text }) } diff --git a/build-tools/build-infra/src/main/java/org/apache/lucene/gradle/plugins/java/JavacConfigurationPlugin.java b/build-tools/build-infra/src/main/java/org/apache/lucene/gradle/plugins/java/JavacConfigurationPlugin.java index 72276d3b0187..aecbd0081a82 100644 --- a/build-tools/build-infra/src/main/java/org/apache/lucene/gradle/plugins/java/JavacConfigurationPlugin.java +++ b/build-tools/build-infra/src/main/java/org/apache/lucene/gradle/plugins/java/JavacConfigurationPlugin.java @@ -68,6 +68,7 @@ public void apply(Project project) { "-Xlint:auxiliaryclass", "-Xlint:cast", "-Xlint:classfile", + "-Xlint:dangling-doc-comments", "-Xlint:-deprecation", "-Xlint:dep-ann", "-Xlint:divzero", @@ -76,16 +77,18 @@ public void apply(Project project) { "-Xlint:-exports", "-Xlint:fallthrough", "-Xlint:finally", - // TODO: untested + "-Xlint:incubating", + // TODO: there are problems + "-Xlint:-lossy-conversions", + // TODO: there are problems "-Xlint:-missing-explicit-ctor", "-Xlint:module", "-Xlint:opens", "-Xlint:options", + "-Xlint:output-file-clash", "-Xlint:overloads", "-Xlint:overrides", - // TODO: some tests seem to have bad classpaths? - // this check seems to be a good sanity check for gradle? - "-Xlint:-path", + "-Xlint:path", "-Xlint:processing", "-Xlint:rawtypes", "-Xlint:removal", @@ -96,10 +99,13 @@ public void apply(Project project) { "-Xlint:strictfp", "-Xlint:synchronization", "-Xlint:text-blocks", + // TODO: there are problems + "-Xlint:-this-escape", "-Xlint:try", "-Xlint:unchecked", "-Xlint:varargs", "-Xlint:preview", + "-Xlint:restricted", "-Xdoclint:all/protected", "-Xdoclint:-missing", "-Xdoclint:-accessibility")); diff --git a/lucene/analysis/common/src/java/org/apache/lucene/analysis/compound/hyphenation/HyphenationTree.java b/lucene/analysis/common/src/java/org/apache/lucene/analysis/compound/hyphenation/HyphenationTree.java index 49a12f365efb..851734275428 100644 --- a/lucene/analysis/common/src/java/org/apache/lucene/analysis/compound/hyphenation/HyphenationTree.java +++ b/lucene/analysis/common/src/java/org/apache/lucene/analysis/compound/hyphenation/HyphenationTree.java @@ -251,7 +251,7 @@ public Hyphenation hyphenate(String word, int remainCharCount, int pushCharCount return hyphenate(w, 0, w.length, remainCharCount, pushCharCount); } - /** + /* * w = "****nnllllllnnn*****", where n is a non-letter, l is a letter, all n may be absent, the * first n is at offset, the first l is at offset + iIgnoreAtBeginning; word = ".llllll.'\0'***", * where all l in w are copied into word. In the first part of the routine len = w.length, in the diff --git a/lucene/analysis/common/src/java/org/apache/lucene/analysis/compound/hyphenation/TernaryTree.java b/lucene/analysis/common/src/java/org/apache/lucene/analysis/compound/hyphenation/TernaryTree.java index 431556c6cf07..ee75d983a4d1 100644 --- a/lucene/analysis/common/src/java/org/apache/lucene/analysis/compound/hyphenation/TernaryTree.java +++ b/lucene/analysis/common/src/java/org/apache/lucene/analysis/compound/hyphenation/TernaryTree.java @@ -54,7 +54,7 @@ */ public class TernaryTree implements Cloneable { - /** + /* * We use 4 arrays to represent a node. I guess I should have created a proper node class, but * somehow Knuth's pascal code made me forget we now have a portable language with virtual memory * management and automatic garbage collection! And now is kind of late, furthermore, if it ain't diff --git a/lucene/analysis/common/src/java/org/apache/lucene/analysis/de/GermanAnalyzer.java b/lucene/analysis/common/src/java/org/apache/lucene/analysis/de/GermanAnalyzer.java index c6dcc8190b75..0f2b2c87eb71 100644 --- a/lucene/analysis/common/src/java/org/apache/lucene/analysis/de/GermanAnalyzer.java +++ b/lucene/analysis/common/src/java/org/apache/lucene/analysis/de/GermanAnalyzer.java @@ -86,8 +86,6 @@ private static class DefaultSetHolder { } } - /** Contains the stopwords used with the {@link StopFilter}. */ - /** Contains words that should be indexed but not stemmed. */ private final CharArraySet exclusionSet; diff --git a/lucene/analysis/common/src/java/org/apache/lucene/analysis/en/KStemmer.java b/lucene/analysis/common/src/java/org/apache/lucene/analysis/en/KStemmer.java index 1590c062efb8..ba9287e14740 100644 --- a/lucene/analysis/common/src/java/org/apache/lucene/analysis/en/KStemmer.java +++ b/lucene/analysis/common/src/java/org/apache/lucene/analysis/en/KStemmer.java @@ -58,7 +58,7 @@ LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY import org.apache.lucene.analysis.CharArrayMap; import org.apache.lucene.analysis.util.OpenStringBuilder; -/** +/* * Title: Kstemmer * *
Description: This is a java version of Bob Krovetz' kstem stemmer
diff --git a/lucene/core/src/java/org/apache/lucene/store/PosixNativeAccess.java b/lucene/core/src/java/org/apache/lucene/store/PosixNativeAccess.java
index fea88e979e5f..c84ecae7d2c4 100644
--- a/lucene/core/src/java/org/apache/lucene/store/PosixNativeAccess.java
+++ b/lucene/core/src/java/org/apache/lucene/store/PosixNativeAccess.java
@@ -107,6 +107,7 @@ private static MethodHandle lookupGetPageSize(Linker linker, SymbolLookup stdlib
return findFunction(linker, stdlib, "getpagesize", FunctionDescriptor.of(ValueLayout.JAVA_INT));
}
+ @SuppressWarnings("restricted") // unsafe functionality is used
private static MethodHandle findFunction(
Linker linker, SymbolLookup lookup, String name, FunctionDescriptor desc) {
final MemorySegment symbol =
diff --git a/lucene/memory/src/java/org/apache/lucene/index/memory/MemoryIndex.java b/lucene/memory/src/java/org/apache/lucene/index/memory/MemoryIndex.java
index 697623c51b58..b6b1db2637a5 100644
--- a/lucene/memory/src/java/org/apache/lucene/index/memory/MemoryIndex.java
+++ b/lucene/memory/src/java/org/apache/lucene/index/memory/MemoryIndex.java
@@ -1368,9 +1368,7 @@ NumericDocValues getNormDocValues() {
}
}
- ///////////////////////////////////////////////////////////////////////////////
// Nested classes:
- ///////////////////////////////////////////////////////////////////////////////
private static class MemoryDocValuesIterator {
diff --git a/lucene/queryparser/src/generated/checksums/javaccParserClassic.json b/lucene/queryparser/src/generated/checksums/javaccParserClassic.json
index b91a38892f97..201958324961 100644
--- a/lucene/queryparser/src/generated/checksums/javaccParserClassic.json
+++ b/lucene/queryparser/src/generated/checksums/javaccParserClassic.json
@@ -3,7 +3,7 @@
"lucene/queryparser/src/java/org/apache/lucene/queryparser/classic/QueryParser.java": "2dfb7df4e711425be20c33a277a27d7e2972def1",
"lucene/queryparser/src/java/org/apache/lucene/queryparser/classic/QueryParser.jj": "82890f966a2456daf2b6100d3d79f77a861a2e03",
"lucene/queryparser/src/java/org/apache/lucene/queryparser/classic/QueryParserConstants.java": "e59a3fd38b66a3d56779c55955c1e014225a1f50",
- "lucene/queryparser/src/java/org/apache/lucene/queryparser/classic/QueryParserTokenManager.java": "dc99a1083bfa50e429d40e114fabe7dd5d434693",
+ "lucene/queryparser/src/java/org/apache/lucene/queryparser/classic/QueryParserTokenManager.java": "f5eb2a03a65caecff718b234d29390800c3e9be2",
"lucene/queryparser/src/java/org/apache/lucene/queryparser/classic/Token.java": "310665ba37d982327fcb55cc3523d629ef29ef54",
"lucene/queryparser/src/java/org/apache/lucene/queryparser/classic/TokenMgrError.java": "31afe7034729960514f50fdc3c9b33e0def44f1d"
}
diff --git a/lucene/queryparser/src/generated/checksums/javaccParserFlexible.json b/lucene/queryparser/src/generated/checksums/javaccParserFlexible.json
index 8a1336f301e6..555e6bf03862 100644
--- a/lucene/queryparser/src/generated/checksums/javaccParserFlexible.json
+++ b/lucene/queryparser/src/generated/checksums/javaccParserFlexible.json
@@ -3,7 +3,7 @@
"lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/parser/StandardSyntaxParser.java": "55bd0228665fc67e6310558eb45c32ed1e20c32d",
"lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/parser/StandardSyntaxParser.jj": "cbcfc2d93dd684ab31e7824210cd167be210bce3",
"lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/parser/StandardSyntaxParserConstants.java": "d5e76f5f5522ae4b758d5c2f12e496fe182ae1f2",
- "lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/parser/StandardSyntaxParserTokenManager.java": "b00fca1e176bf95deb63fcb26f3eecd247b93a09",
+ "lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/parser/StandardSyntaxParserTokenManager.java": "49df9bdd3ca4a5f64aa5e3a9f1751e0bae637f03",
"lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/parser/Token.java": "d4603a7c273e0ef5e9c8890552779e40864185f4",
"lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/parser/TokenMgrError.java": "d474a0039c288e5e7dfa0a0e22e16e0e0fdaeaab"
}
diff --git a/lucene/queryparser/src/generated/checksums/javaccParserSurround.json b/lucene/queryparser/src/generated/checksums/javaccParserSurround.json
index 202af7d4c229..6ded352cfa16 100644
--- a/lucene/queryparser/src/generated/checksums/javaccParserSurround.json
+++ b/lucene/queryparser/src/generated/checksums/javaccParserSurround.json
@@ -3,7 +3,7 @@
"lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/parser/QueryParser.java": "b6fc4a6567f497c60c26f752db7f229dd6504cd7",
"lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/parser/QueryParser.jj": "b81635f8de654757290d99911adece916afe369a",
"lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/parser/QueryParserConstants.java": "8feb77878890c27e874be457d839eba48192c40f",
- "lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/parser/QueryParserTokenManager.java": "959523aec4e49f9665e39f16e1da335aab3632d1",
+ "lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/parser/QueryParserTokenManager.java": "fcd1afca116eb6fa411d171e0b8a3c8729db1e0c",
"lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/parser/Token.java": "a5eea2a3043e0aa2781f4a43b9ab9c5d59add80e",
"lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/parser/TokenMgrError.java": "ee5fbd796ed8bd1c6e1a4b9e3d894f391da36236"
}
diff --git a/lucene/queryparser/src/java/org/apache/lucene/queryparser/classic/QueryParserTokenManager.java b/lucene/queryparser/src/java/org/apache/lucene/queryparser/classic/QueryParserTokenManager.java
index fb172fa6e361..3707bf06ec4f 100644
--- a/lucene/queryparser/src/java/org/apache/lucene/queryparser/classic/QueryParserTokenManager.java
+++ b/lucene/queryparser/src/java/org/apache/lucene/queryparser/classic/QueryParserTokenManager.java
@@ -19,9 +19,9 @@
@SuppressWarnings ("unused")
public class QueryParserTokenManager implements QueryParserConstants {
- /** Debug output. */
+ // Debug output.
// (debugStream omitted).
- /** Set debug output. */
+ // Set debug output.
// (setDebugStream omitted).
private final int jjStopStringLiteralDfa_2(int pos, long active0){
switch (pos)
diff --git a/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/parser/StandardSyntaxParserTokenManager.java b/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/parser/StandardSyntaxParserTokenManager.java
index 8c2fa93a2f90..7d3b735a4e33 100644
--- a/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/parser/StandardSyntaxParserTokenManager.java
+++ b/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/parser/StandardSyntaxParserTokenManager.java
@@ -73,9 +73,9 @@
@SuppressWarnings ("unused")
public class StandardSyntaxParserTokenManager implements StandardSyntaxParserConstants {
- /** Debug output. */
+ // Debug output.
// (debugStream omitted).
- /** Set debug output. */
+ // Set debug output.
// (setDebugStream omitted).
private final int jjStopStringLiteralDfa_2(int pos, long active0){
switch (pos)
diff --git a/lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/parser/QueryParserTokenManager.java b/lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/parser/QueryParserTokenManager.java
index 5b68a99be37c..da81a994d56b 100644
--- a/lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/parser/QueryParserTokenManager.java
+++ b/lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/parser/QueryParserTokenManager.java
@@ -22,9 +22,9 @@
@SuppressWarnings ("unused")
public class QueryParserTokenManager implements QueryParserConstants {
- /** Debug output. */
+ // Debug output.
// (debugStream omitted).
- /** Set debug output. */
+ // Set debug output.
// (setDebugStream omitted).
private final int jjStopStringLiteralDfa_1(int pos, long active0){
switch (pos)
diff --git a/lucene/sandbox/src/java/org/apache/lucene/sandbox/codecs/faiss/FaissKnnVectorsReader.java b/lucene/sandbox/src/java/org/apache/lucene/sandbox/codecs/faiss/FaissKnnVectorsReader.java
index 42a95145fbd4..d54df42e8130 100644
--- a/lucene/sandbox/src/java/org/apache/lucene/sandbox/codecs/faiss/FaissKnnVectorsReader.java
+++ b/lucene/sandbox/src/java/org/apache/lucene/sandbox/codecs/faiss/FaissKnnVectorsReader.java
@@ -153,6 +153,7 @@ private static FieldMeta parseNextField(IndexInput meta, SegmentReadState state)
return new FieldMeta(fieldInfo, dataOffset, dataLength);
}
+ @SuppressWarnings("restricted") // TODO: encapsulate the unsafeness into the LibFaissC
private static IndexEntry loadField(IndexInput data, Arena arena, FieldMeta fieldMeta)
throws IOException {
int ioFlags = FAISS_IO_FLAG_MMAP | FAISS_IO_FLAG_READ_ONLY;
diff --git a/lucene/sandbox/src/java/org/apache/lucene/sandbox/codecs/faiss/FaissKnnVectorsWriter.java b/lucene/sandbox/src/java/org/apache/lucene/sandbox/codecs/faiss/FaissKnnVectorsWriter.java
index 0336e85e607e..a81864a9c25e 100644
--- a/lucene/sandbox/src/java/org/apache/lucene/sandbox/codecs/faiss/FaissKnnVectorsWriter.java
+++ b/lucene/sandbox/src/java/org/apache/lucene/sandbox/codecs/faiss/FaissKnnVectorsWriter.java
@@ -154,6 +154,7 @@ public void flush(int maxDoc, Sorter.DocMap sortMap) throws IOException {
}
}
+ @SuppressWarnings("restricted") // TODO: encapsulate the unsafeness into the LibFaissC
private void writeFloatField(
FieldInfo fieldInfo, FloatVectorValues floatVectorValues, IntToIntFunction oldToNewDocId)
throws IOException {
diff --git a/lucene/sandbox/src/java/org/apache/lucene/sandbox/codecs/faiss/LibFaissC.java b/lucene/sandbox/src/java/org/apache/lucene/sandbox/codecs/faiss/LibFaissC.java
index c7ad78ec6729..d9a7baa8ef3c 100644
--- a/lucene/sandbox/src/java/org/apache/lucene/sandbox/codecs/faiss/LibFaissC.java
+++ b/lucene/sandbox/src/java/org/apache/lucene/sandbox/codecs/faiss/LibFaissC.java
@@ -52,6 +52,7 @@
*
* @lucene.experimental
*/
+@SuppressWarnings("restricted") // uses unsafe calls
final class LibFaissC {
// TODO: Use vectorized version where available
public static final String LIBRARY_NAME = "faiss_c";
diff --git a/lucene/spatial3d/src/java/org/apache/lucene/spatial3d/geom/PlanetModel.java b/lucene/spatial3d/src/java/org/apache/lucene/spatial3d/geom/PlanetModel.java
index 4095d8f9a5a2..2a8a8d3dfe33 100644
--- a/lucene/spatial3d/src/java/org/apache/lucene/spatial3d/geom/PlanetModel.java
+++ b/lucene/spatial3d/src/java/org/apache/lucene/spatial3d/geom/PlanetModel.java
@@ -83,8 +83,6 @@ public class PlanetModel implements SerializableObject {
/** The inverse of scale */
public final double inverseScale;
- /** The mean radius of the planet model */
-
// We do NOT include radius, because all computations in geo3d are in radians, not meters.
// Compute north and south pole for planet model, since these are commonly used.
diff --git a/lucene/test-framework/src/java/org/apache/lucene/tests/util/LuceneTestCase.java b/lucene/test-framework/src/java/org/apache/lucene/tests/util/LuceneTestCase.java
index a019d5e93256..6feb39abb8c1 100644
--- a/lucene/test-framework/src/java/org/apache/lucene/tests/util/LuceneTestCase.java
+++ b/lucene/test-framework/src/java/org/apache/lucene/tests/util/LuceneTestCase.java
@@ -774,22 +774,6 @@ public String getTestName() {
return threadAndTestNameRule.testMethodName;
}
- /**
- * Some tests expect the directory to contain a single segment, and want to do tests on that
- * segment's reader. This is an utility method to help them.
- */
- /*
- public static SegmentReader getOnlySegmentReader(DirectoryReader reader) {
- List