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> {

Reply via email to