This is an automated email from the ASF dual-hosted git repository.
jamesbognar pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/juneau.git
The following commit(s) were added to refs/heads/master by this push:
new a319b14a55 TODO-285: remove no-op/bogus Sonar @SuppressWarnings rule
keys
a319b14a55 is described below
commit a319b14a55bc32c9ef99aebd8cfa915801d3c4a2
Author: James Bognar <[email protected]>
AuthorDate: Thu Jul 23 08:11:16 2026 -0400
TODO-285: remove no-op/bogus Sonar @SuppressWarnings rule keys
Clean up 18 suppression occurrences (5 rule numbers) that silently no-op
because the rule key doesn't match any real SonarCloud rule:
- java:S2368 (StringFunctions) - nonexistent rule; concern already covered
by co-located S2386.
- java:S6542 x13 (ObjectViewer/ObjectSorter/StringMatcherFactory/
NumberMatcherFactory/MarshallingContextConverter) - nonexistent rule
number (typo/dup of the Singleton rule S6548); removed. Confirmed via
live SonarCloud that S6548 does not fire on any of these classes, so no
replacement suppression was needed.
- java:S6350 (FluentDateAssertion) - stray duplicate; real rule is an
unrelated javasecurity rule. The intended S2143 is already suppressed.
- java:S6466 x2 (JsonParserSession/Json5ParserSession) - dead no-op with
zero Sonar findings ever at either site; removed with dangling comments.
No behavior change; affected modules build green.
Co-authored-by: Cursor <[email protected]>
---
.../org/apache/juneau/commons/svl/functions/StringFunctions.java | 1 -
.../java/org/apache/juneau/marshall/json/JsonParserSession.java | 3 ---
.../org/apache/juneau/marshall/json5/Json5ParserSession.java | 3 ---
.../apache/juneau/marshall/objecttools/NumberMatcherFactory.java | 9 ++-------
.../org/apache/juneau/marshall/objecttools/ObjectSorter.java | 7 +------
.../org/apache/juneau/marshall/objecttools/ObjectViewer.java | 7 +------
.../apache/juneau/marshall/objecttools/StringMatcherFactory.java | 9 ++-------
.../juneau/marshall/utils/MarshallingContextConverter.java | 1 -
.../org/apache/juneau/test/assertions/FluentDateAssertion.java | 1 -
9 files changed, 6 insertions(+), 35 deletions(-)
diff --git
a/juneau-core/juneau-commons/src/main/java/org/apache/juneau/commons/svl/functions/StringFunctions.java
b/juneau-core/juneau-commons/src/main/java/org/apache/juneau/commons/svl/functions/StringFunctions.java
index 81b2e1b058..d8c5a842a2 100644
---
a/juneau-core/juneau-commons/src/main/java/org/apache/juneau/commons/svl/functions/StringFunctions.java
+++
b/juneau-core/juneau-commons/src/main/java/org/apache/juneau/commons/svl/functions/StringFunctions.java
@@ -38,7 +38,6 @@ public final class StringFunctions {
/** All function classes in this category, in registration order. */
@SuppressWarnings({
"unchecked", // Array initializer with parameterized element
type; class literals are always erased at runtime.
- "java:S2368", // Public array field is intentional: ALL is a
compile-time registry constant, not a mutable collection.
"java:S2386" // ALL is an immutable compile-time registry;
exposed as an array for the cross-package/varargs functions(...) API, so
visibility cannot be reduced.
})
public static final Class<? extends VarFunction>[] ALL = new Class[] {
diff --git
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/marshall/json/JsonParserSession.java
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/marshall/json/JsonParserSession.java
index 012208038c..948104ef38 100644
---
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/marshall/json/JsonParserSession.java
+++
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/marshall/json/JsonParserSession.java
@@ -962,9 +962,6 @@ public class JsonParserSession extends ReaderParserSession
implements TokenReada
return false;
}
- @SuppressWarnings({
- "java:S6466" // False positive: new JsonMap(this) resolves to
JsonMap(MarshallingSession), not JsonMap(Object...), since JsonParserSession
IS-A MarshallingSession.
- })
@Override /* Overridden from MarshallingSession */
protected MarshalledMap newGenericMap() {
return new JsonMap(this);
diff --git
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/marshall/json5/Json5ParserSession.java
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/marshall/json5/Json5ParserSession.java
index debf4b7666..5fd34314f9 100644
---
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/marshall/json5/Json5ParserSession.java
+++
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/marshall/json5/Json5ParserSession.java
@@ -257,9 +257,6 @@ public class Json5ParserSession extends JsonParserSession {
return true;
}
- @SuppressWarnings({
- "java:S6466" // False positive: new Json5Map(this) resolves to
Json5Map(MarshallingSession), not Json5Map(Object...), since Json5ParserSession
IS-A MarshallingSession.
- })
@Override /* Overridden from JsonParserSession */
protected MarshalledMap newGenericMap() {
return new Json5Map(this);
diff --git
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/marshall/objecttools/NumberMatcherFactory.java
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/marshall/objecttools/NumberMatcherFactory.java
index 6215ac4705..7ae7d90196 100644
---
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/marshall/objecttools/NumberMatcherFactory.java
+++
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/marshall/objecttools/NumberMatcherFactory.java
@@ -44,8 +44,7 @@ import org.apache.juneau.marshall.*;
* </ul>
*/
@SuppressWarnings({
- "java:S6541", // Stateless utility, singleton for convenience
- "java:S6542" // Singleton required for stateless MatcherFactory;
shared instance in ObjectSearcher
+ "java:S6541" // Stateless utility, singleton for convenience
})
public class NumberMatcherFactory extends MatcherFactory {
@@ -337,17 +336,13 @@ public class NumberMatcherFactory extends MatcherFactory {
* Default reusable matcher.
*/
@SuppressWarnings({
- "java:S6541", // Stateless factory, singleton for convenience
- "java:S6542" // Singleton required for stateless
MatcherFactory; shared instance in ObjectSearcher
+ "java:S6541" // Stateless factory, singleton for convenience
})
public static final NumberMatcherFactory DEFAULT = new
NumberMatcherFactory();
/**
* Constructor.
*/
- @SuppressWarnings({
- "java:S6542" // Protected constructor part of intentional
singleton; subclassing allowed
- })
protected NumberMatcherFactory() {}
@Override
diff --git
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/marshall/objecttools/ObjectSorter.java
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/marshall/objecttools/ObjectSorter.java
index 546d7b0482..b3e55aee58 100644
---
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/marshall/objecttools/ObjectSorter.java
+++
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/marshall/objecttools/ObjectSorter.java
@@ -60,7 +60,6 @@ import org.apache.juneau.marshall.*;
"unchecked", // Type erasure requires unchecked casts
"rawtypes", // Raw types necessary for generic type handling
"java:S6541", // Stateless utility, singleton for convenience
- "java:S6542", // Singleton required for ObjectTool pattern; stateless
builder-style API
"java:S6548" // Singleton pattern is intentional; DEFAULT is a
stateless, thread-safe shared tool
})
public class ObjectSorter implements ObjectTool<SortArgs> {
@@ -113,8 +112,7 @@ public class ObjectSorter implements ObjectTool<SortArgs> {
* Default reusable searcher.
*/
@SuppressWarnings({
- "java:S6541", // Stateless utility, singleton for convenience
- "java:S6542" // Singleton required for ObjectTool pattern;
stateless DEFAULT instance
+ "java:S6541" // Stateless utility, singleton for convenience
})
public static final ObjectSorter DEFAULT = new ObjectSorter();
@@ -123,9 +121,6 @@ public class ObjectSorter implements ObjectTool<SortArgs> {
*
* @return A new {@link ObjectSorter} object.
*/
- @SuppressWarnings({
- "java:S6542" // create() intentionally allows new instances;
DEFAULT singleton for convenience
- })
public static ObjectSorter create() {
return new ObjectSorter();
}
diff --git
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/marshall/objecttools/ObjectViewer.java
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/marshall/objecttools/ObjectViewer.java
index 2ca09d2629..a02bd43f5f 100644
---
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/marshall/objecttools/ObjectViewer.java
+++
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/marshall/objecttools/ObjectViewer.java
@@ -57,7 +57,6 @@ import org.apache.juneau.marshall.internal.*;
"unchecked", // Type erasure requires unchecked casts
"rawtypes", // Raw types necessary for generic type handling
"java:S6541", // Stateless utility, singleton for convenience
- "java:S6542", // Singleton required for ObjectTool pattern; stateless
DEFAULT instance
"java:S6548" // Singleton pattern is intentional; DEFAULT is a
stateless, thread-safe shared tool
})
public class ObjectViewer implements ObjectTool<ViewArgs> {
@@ -66,8 +65,7 @@ public class ObjectViewer implements ObjectTool<ViewArgs> {
* Default reusable searcher.
*/
@SuppressWarnings({
- "java:S6541", // Stateless utility, singleton for convenience
- "java:S6542" // Singleton required for ObjectTool pattern;
stateless DEFAULT instance
+ "java:S6541" // Stateless utility, singleton for convenience
})
public static final ObjectViewer DEFAULT = new ObjectViewer();
@@ -76,9 +74,6 @@ public class ObjectViewer implements ObjectTool<ViewArgs> {
*
* @return A new {@link ObjectViewer} object.
*/
- @SuppressWarnings({
- "java:S6542" // create() intentionally allows new instances;
DEFAULT singleton for convenience
- })
public static ObjectViewer create() {
return new ObjectViewer();
}
diff --git
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/marshall/objecttools/StringMatcherFactory.java
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/marshall/objecttools/StringMatcherFactory.java
index 5b55d7bcf2..5f8353b164 100644
---
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/marshall/objecttools/StringMatcherFactory.java
+++
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/marshall/objecttools/StringMatcherFactory.java
@@ -47,8 +47,7 @@ import org.apache.juneau.marshall.*;
* </ul>
*/
@SuppressWarnings({
- "java:S6541", // Stateless utility, singleton for convenience
- "java:S6542" // Singleton required for stateless MatcherFactory;
shared instance in ObjectSearcher
+ "java:S6541" // Stateless utility, singleton for convenience
})
public class StringMatcherFactory extends MatcherFactory {
@@ -175,17 +174,13 @@ public class StringMatcherFactory extends MatcherFactory {
* Default reusable matcher.
*/
@SuppressWarnings({
- "java:S6541", // Stateless factory, singleton for convenience
- "java:S6542" // Singleton required for stateless
MatcherFactory; shared instance in ObjectSearcher
+ "java:S6541" // Stateless factory, singleton for convenience
})
public static final StringMatcherFactory DEFAULT = new
StringMatcherFactory();
/**
* Constructor.
*/
- @SuppressWarnings({
- "java:S6542" // Protected constructor part of intentional
singleton; subclassing allowed
- })
protected StringMatcherFactory() {}
@Override
diff --git
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/marshall/utils/MarshallingContextConverter.java
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/marshall/utils/MarshallingContextConverter.java
index 585a7a7e23..e1c7f04a28 100644
---
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/marshall/utils/MarshallingContextConverter.java
+++
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/marshall/utils/MarshallingContextConverter.java
@@ -54,7 +54,6 @@ import org.apache.juneau.marshall.*;
*/
@SuppressWarnings({
"java:S6541", // Stateless converter, singleton for convenience
- "java:S6542", // Singleton required for stateless Converter;
thread-safe shared instance
"java:S6548" // Singleton pattern is intentional; INSTANCE is a
stateless, thread-safe shared converter
})
public class MarshallingContextConverter implements Converter {
diff --git
a/juneau-core/juneau-test/src/main/java/org/apache/juneau/test/assertions/FluentDateAssertion.java
b/juneau-core/juneau-test/src/main/java/org/apache/juneau/test/assertions/FluentDateAssertion.java
index 58ff2f0c31..93eee4a798 100644
---
a/juneau-core/juneau-test/src/main/java/org/apache/juneau/test/assertions/FluentDateAssertion.java
+++
b/juneau-core/juneau-test/src/main/java/org/apache/juneau/test/assertions/FluentDateAssertion.java
@@ -115,7 +115,6 @@ import org.apache.juneau.commons.function.*;
*/
@SuppressWarnings({
"java:S115", // Constants use UPPER_snakeCase convention
- "java:S6350", // Public assertion API is built on Date by design (all
method signatures take/return Date); cannot swap to java.time without breaking
API.
"java:S2143" // Public assertion API is built on Date by design
(signatures take/return Date, extends FluentComparableAssertion<Date,R>);
cannot swap to java.time without breaking the assertion API.
})
public class FluentDateAssertion<R> extends FluentComparableAssertion<Date,R> {