From 5ad955f28bde39d2f9e972bd3ec2c341579d9474 Mon Sep 17 00:00:00 2001 From: Ignat Beresnev Date: Tue, 3 Jan 2023 02:02:00 +0100 Subject: Add false positives to Qodana baseline (#2798) --- qodana.sarif.json | 23584 ++++++++++++++++++++-------------------------------- 1 file changed, 8951 insertions(+), 14633 deletions(-) diff --git a/qodana.sarif.json b/qodana.sarif.json index 0abbf5c9..785269dd 100644 --- a/qodana.sarif.json +++ b/qodana.sarif.json @@ -7,7 +7,7 @@ "driver": { "name": "QDJVM", "fullName": "Qodana for JVM", - "version": "222.4502.199", + "version": "223.8394.71", "rules": [], "taxa": [ { @@ -80,6 +80,24 @@ } ] }, + { + "id": "Java/Performance", + "name": "Performance", + "relationships": [ + { + "target": { + "id": "Java", + "index": 5, + "toolComponent": { + "name": "QDJVM" + } + }, + "kinds": [ + "superset" + ] + } + ] + }, { "id": "Spring", "name": "Spring" @@ -91,7 +109,7 @@ { "target": { "id": "Spring", - "index": 7, + "index": 8, "toolComponent": { "name": "QDJVM" } @@ -109,7 +127,7 @@ { "target": { "id": "Spring/Spring Core", - "index": 8, + "index": 9, "toolComponent": { "name": "QDJVM" } @@ -121,8 +139,8 @@ ] }, { - "id": "Java/Performance", - "name": "Performance", + "id": "Java/Code style issues", + "name": "Code style issues", "relationships": [ { "target": { @@ -139,8 +157,8 @@ ] }, { - "id": "Java/Code style issues", - "name": "Code style issues", + "id": "Java/Error handling", + "name": "Error handling", "relationships": [ { "target": { @@ -181,7 +199,7 @@ { "target": { "id": "Spring/Spring Core", - "index": 8, + "index": 9, "toolComponent": { "name": "QDJVM" } @@ -193,13 +211,13 @@ ] }, { - "id": "Java/Error handling", - "name": "Error handling", + "id": "Kotlin/Migration", + "name": "Migration", "relationships": [ { "target": { - "id": "Java", - "index": 5, + "id": "Kotlin", + "index": 2, "toolComponent": { "name": "QDJVM" } @@ -211,13 +229,13 @@ ] }, { - "id": "Kotlin/Migration", - "name": "Migration", + "id": "Java/Probable bugs", + "name": "Probable bugs", "relationships": [ { "target": { - "id": "Kotlin", - "index": 2, + "id": "Java", + "index": 5, "toolComponent": { "name": "QDJVM" } @@ -229,13 +247,13 @@ ] }, { - "id": "Java/Probable bugs", - "name": "Probable bugs", + "id": "Spring/Spring Cloud", + "name": "Spring Cloud", "relationships": [ { "target": { - "id": "Java", - "index": 5, + "id": "Spring", + "index": 8, "toolComponent": { "name": "QDJVM" } @@ -293,7 +311,7 @@ { "target": { "id": "Groovy", - "index": 19, + "index": 20, "toolComponent": { "name": "QDJVM" } @@ -367,8 +385,8 @@ ] }, { - "id": "Java/Numeric issues", - "name": "Numeric issues", + "id": "Java/Control flow issues", + "name": "Control flow issues", "relationships": [ { "target": { @@ -385,8 +403,8 @@ ] }, { - "id": "Java/Control flow issues", - "name": "Control flow issues", + "id": "Java/Numeric issues", + "name": "Numeric issues", "relationships": [ { "target": { @@ -469,13 +487,13 @@ ] }, { - "id": "Java/Java language level migration aids/Java 15", - "name": "Java 15", + "id": "Java/Java language level migration aids/Probable bugs", + "name": "Probable bugs", "relationships": [ { "target": { "id": "Java/Java language level migration aids", - "index": 33, + "index": 34, "toolComponent": { "name": "QDJVM" } @@ -493,7 +511,29 @@ { "target": { "id": "Groovy", - "index": 19, + "index": 20, + "toolComponent": { + "name": "QDJVM" + } + }, + "kinds": [ + "superset" + ] + } + ] + }, + { + "id": "Reactive Streams", + "name": "Reactive Streams" + }, + { + "id": "Reactive Streams/Common", + "name": "Common", + "relationships": [ + { + "target": { + "id": "Reactive Streams", + "index": 37, "toolComponent": { "name": "QDJVM" } @@ -544,6 +584,28 @@ "id": "General", "name": "General" }, + { + "id": "Gradle", + "name": "Gradle" + }, + { + "id": "Gradle/Probable bugs", + "name": "Probable bugs", + "relationships": [ + { + "target": { + "id": "Gradle", + "index": 42, + "toolComponent": { + "name": "QDJVM" + } + }, + "kinds": [ + "superset" + ] + } + ] + }, { "id": "FreeMarker", "name": "FreeMarker" @@ -552,6 +614,24 @@ "id": "EditorConfig", "name": "EditorConfig" }, + { + "id": "Gradle/Validity issues", + "name": "Validity issues", + "relationships": [ + { + "target": { + "id": "Gradle", + "index": 42, + "toolComponent": { + "name": "QDJVM" + } + }, + "kinds": [ + "superset" + ] + } + ] + }, { "id": "Java/Code maturity", "name": "Code maturity", @@ -574,6 +654,24 @@ "id": "SQL", "name": "SQL" }, + { + "id": "Spring/Spring Data", + "name": "Spring Data", + "relationships": [ + { + "target": { + "id": "Spring", + "index": 8, + "toolComponent": { + "name": "QDJVM" + } + }, + "kinds": [ + "superset" + ] + } + ] + }, { "id": "Groovy/Probable bugs", "name": "Probable bugs", @@ -581,7 +679,7 @@ { "target": { "id": "Groovy", - "index": 19, + "index": 20, "toolComponent": { "name": "QDJVM" } @@ -593,13 +691,13 @@ ] }, { - "id": "Java/Data flow", - "name": "Data flow", + "id": "Kotlin/Other problems", + "name": "Other problems", "relationships": [ { "target": { - "id": "Java", - "index": 5, + "id": "Kotlin", + "index": 2, "toolComponent": { "name": "QDJVM" } @@ -611,16 +709,8 @@ ] }, { - "id": "CDI (Contexts and Dependency Injection)", - "name": "CDI (Contexts and Dependency Injection)" - }, - { - "id": "Velocity", - "name": "Velocity" - }, - { - "id": "Java/JUnit", - "name": "JUnit", + "id": "Java/Data flow", + "name": "Data flow", "relationships": [ { "target": { @@ -636,6 +726,14 @@ } ] }, + { + "id": "CDI (Contexts and Dependency Injection)", + "name": "CDI (Contexts and Dependency Injection)" + }, + { + "id": "Velocity", + "name": "Velocity" + }, { "id": "Kotlin/Naming conventions", "name": "Naming conventions", @@ -665,7 +763,7 @@ { "target": { "id": "CSS", - "index": 49, + "index": 56, "toolComponent": { "name": "QDJVM" } @@ -791,7 +889,7 @@ { "target": { "id": "Java/Naming conventions", - "index": 56, + "index": 63, "toolComponent": { "name": "QDJVM" } @@ -813,7 +911,7 @@ { "target": { "id": "Spring", - "index": 7, + "index": 8, "toolComponent": { "name": "QDJVM" } @@ -835,7 +933,7 @@ { "target": { "id": "Plugin DevKit", - "index": 60, + "index": 67, "toolComponent": { "name": "QDJVM" } @@ -889,7 +987,7 @@ { "target": { "id": "Java/Java language level migration aids", - "index": 33, + "index": 34, "toolComponent": { "name": "QDJVM" } @@ -907,7 +1005,7 @@ { "target": { "id": "Groovy", - "index": 19, + "index": 20, "toolComponent": { "name": "QDJVM" } @@ -925,7 +1023,25 @@ { "target": { "id": "Groovy", - "index": 19, + "index": 20, + "toolComponent": { + "name": "QDJVM" + } + }, + "kinds": [ + "superset" + ] + } + ] + }, + { + "id": "Java/JUnit", + "name": "JUnit", + "relationships": [ + { + "target": { + "id": "Java", + "index": 5, "toolComponent": { "name": "QDJVM" } @@ -943,7 +1059,7 @@ { "target": { "id": "Spring/Spring Core", - "index": 8, + "index": 9, "toolComponent": { "name": "QDJVM" } @@ -965,7 +1081,7 @@ { "target": { "id": "Groovy", - "index": 19, + "index": 20, "toolComponent": { "name": "QDJVM" } @@ -1023,7 +1139,7 @@ { "target": { "id": "Plugin DevKit", - "index": 60, + "index": 67, "toolComponent": { "name": "QDJVM" } @@ -1081,7 +1197,7 @@ { "target": { "id": "CSS", - "index": 49, + "index": 56, "toolComponent": { "name": "QDJVM" } @@ -1117,7 +1233,7 @@ { "target": { "id": "Java/Lombok", - "index": 78, + "index": 86, "toolComponent": { "name": "QDJVM" } @@ -1143,7 +1259,7 @@ { "target": { "id": "Java/Naming conventions", - "index": 56, + "index": 63, "toolComponent": { "name": "QDJVM" } @@ -1161,7 +1277,7 @@ { "target": { "id": "Groovy", - "index": 19, + "index": 20, "toolComponent": { "name": "QDJVM" } @@ -1209,7 +1325,7 @@ { "target": { "id": "Groovy", - "index": 19, + "index": 20, "toolComponent": { "name": "QDJVM" } @@ -1231,7 +1347,7 @@ { "target": { "id": "Groovy", - "index": 19, + "index": 20, "toolComponent": { "name": "QDJVM" } @@ -1249,7 +1365,7 @@ { "target": { "id": "Java/Java language level migration aids", - "index": 33, + "index": 34, "toolComponent": { "name": "QDJVM" } @@ -1267,7 +1383,7 @@ { "target": { "id": "Java/Java language level migration aids", - "index": 33, + "index": 34, "toolComponent": { "name": "QDJVM" } @@ -1278,10 +1394,6 @@ } ] }, - { - "id": "Web services", - "name": "Web services" - }, { "id": "Groovy/Assignment issues", "name": "Assignment issues", @@ -1289,7 +1401,7 @@ { "target": { "id": "Groovy", - "index": 19, + "index": 20, "toolComponent": { "name": "QDJVM" } @@ -1318,6 +1430,10 @@ } ] }, + { + "id": "RESTful Web Service (JAX-RS)", + "name": "RESTful Web Service (JAX-RS)" + }, { "id": "Java/Encapsulation", "name": "Encapsulation", @@ -1336,6 +1452,24 @@ } ] }, + { + "id": "JVM languages/Test frameworks", + "name": "Test frameworks", + "relationships": [ + { + "target": { + "id": "JVM languages", + "index": 1, + "toolComponent": { + "name": "QDJVM" + } + }, + "kinds": [ + "superset" + ] + } + ] + }, { "id": "Java/Test frameworks", "name": "Test frameworks", @@ -1372,6 +1506,24 @@ } ] }, + { + "id": "Java/Java language level migration aids/Java 15", + "name": "Java 15", + "relationships": [ + { + "target": { + "id": "Java/Java language level migration aids", + "index": 34, + "toolComponent": { + "name": "QDJVM" + } + }, + "kinds": [ + "superset" + ] + } + ] + }, { "id": "Spring/Spring AOP", "name": "Spring AOP", @@ -1379,7 +1531,7 @@ { "target": { "id": "Spring", - "index": 7, + "index": 8, "toolComponent": { "name": "QDJVM" } @@ -1433,7 +1585,7 @@ { "target": { "id": "Java/Java language level migration aids", - "index": 33, + "index": 34, "toolComponent": { "name": "QDJVM" } @@ -1451,7 +1603,7 @@ { "target": { "id": "Java/Numeric issues", - "index": 26, + "index": 28, "toolComponent": { "name": "QDJVM" } @@ -1469,7 +1621,7 @@ { "target": { "id": "Plugin DevKit", - "index": 60, + "index": 67, "toolComponent": { "name": "QDJVM" } @@ -1549,7 +1701,7 @@ { "target": { "id": "HTML", - "index": 30, + "index": 31, "toolComponent": { "name": "QDJVM" } @@ -1567,7 +1719,7 @@ { "target": { "id": "Groovy", - "index": 19, + "index": 20, "toolComponent": { "name": "QDJVM" } @@ -1634,24 +1786,6 @@ "id": "Internationalization", "name": "Internationalization" }, - { - "id": "Spring/Spring WebSocket", - "name": "Spring WebSocket", - "relationships": [ - { - "target": { - "id": "Spring", - "index": 7, - "toolComponent": { - "name": "QDJVM" - } - }, - "kinds": [ - "superset" - ] - } - ] - }, { "id": "Java/Java language level migration aids/Java 10", "name": "Java 10", @@ -1659,7 +1793,7 @@ { "target": { "id": "Java/Java language level migration aids", - "index": 33, + "index": 34, "toolComponent": { "name": "QDJVM" } @@ -1677,7 +1811,7 @@ { "target": { "id": "Java/Java language level migration aids", - "index": 33, + "index": 34, "toolComponent": { "name": "QDJVM" } @@ -1750,6 +1884,42 @@ } ] }, + { + "id": "Reactive Streams/Reactor", + "name": "Reactor", + "relationships": [ + { + "target": { + "id": "Reactive Streams", + "index": 37, + "toolComponent": { + "name": "QDJVM" + } + }, + "kinds": [ + "superset" + ] + } + ] + }, + { + "id": "Java/Java language level migration aids/Code style issues", + "name": "Code style issues", + "relationships": [ + { + "target": { + "id": "Java/Java language level migration aids", + "index": 34, + "toolComponent": { + "name": "QDJVM" + } + }, + "kinds": [ + "superset" + ] + } + ] + }, { "id": "Structural search", "name": "Structural search" @@ -1761,7 +1931,7 @@ { "target": { "id": "Spring", - "index": 7, + "index": 8, "toolComponent": { "name": "QDJVM" } @@ -1779,7 +1949,7 @@ { "target": { "id": "Java/Performance", - "index": 10, + "index": 7, "toolComponent": { "name": "QDJVM" } @@ -1791,17 +1961,13 @@ ] }, { - "id": "Feature usage statistics", - "name": "Feature usage statistics" - }, - { - "id": "Spring/Spring Data", - "name": "Spring Data", + "id": "Spring/Spring Boot", + "name": "Spring Boot", "relationships": [ { "target": { "id": "Spring", - "index": 7, + "index": 8, "toolComponent": { "name": "QDJVM" } @@ -1834,24 +2000,6 @@ "id": "RELAX NG", "name": "RELAX NG" }, - { - "id": "CSS/Code quality tools", - "name": "Code quality tools", - "relationships": [ - { - "target": { - "id": "CSS", - "index": 49, - "toolComponent": { - "name": "QDJVM" - } - }, - "kinds": [ - "superset" - ] - } - ] - }, { "id": "Java/Properties files", "name": "Properties files", @@ -1871,53 +2019,13 @@ ] }, { - "id": "Gradle", - "name": "Gradle" - }, - { - "id": "Gradle/Probable bugs", - "name": "Probable bugs", - "relationships": [ - { - "target": { - "id": "Gradle", - "index": 136, - "toolComponent": { - "name": "QDJVM" - } - }, - "kinds": [ - "superset" - ] - } - ] - }, - { - "id": "Spring/Spring Boot", - "name": "Spring Boot", + "id": "Spring/Spring Cloud Stream", + "name": "Spring Cloud Stream", "relationships": [ { "target": { "id": "Spring", - "index": 7, - "toolComponent": { - "name": "QDJVM" - } - }, - "kinds": [ - "superset" - ] - } - ] - }, - { - "id": "Spring/Spring Shell", - "name": "Spring Shell", - "relationships": [ - { - "target": { - "id": "Spring", - "index": 7, + "index": 8, "toolComponent": { "name": "QDJVM" } @@ -1935,25 +2043,7 @@ { "target": { "id": "Java/Java language level migration aids", - "index": 33, - "toolComponent": { - "name": "QDJVM" - } - }, - "kinds": [ - "superset" - ] - } - ] - }, - { - "id": "JVM languages/Test frameworks", - "name": "Test frameworks", - "relationships": [ - { - "target": { - "id": "JVM languages", - "index": 1, + "index": 34, "toolComponent": { "name": "QDJVM" } @@ -1969,13 +2059,17 @@ "name": "PostgreSQL" }, { - "id": "Spring/Spring Web Services", - "name": "Spring Web Services", + "id": "SQL server", + "name": "SQL server" + }, + { + "id": "Groovy/Data flow", + "name": "Data flow", "relationships": [ { "target": { - "id": "Spring", - "index": 7, + "id": "Groovy", + "index": 20, "toolComponent": { "name": "QDJVM" } @@ -1987,17 +2081,25 @@ ] }, { - "id": "SQL server", - "name": "SQL server" + "id": "YAML", + "name": "YAML" }, { - "id": "Groovy/Data flow", - "name": "Data flow", + "id": "Dependency analysis", + "name": "Dependency analysis" + }, + { + "id": "EL", + "name": "EL" + }, + { + "id": "Java/Java language level migration aids/Java 16", + "name": "Java 16", "relationships": [ { "target": { - "id": "Groovy", - "index": 19, + "id": "Java/Java language level migration aids", + "index": 34, "toolComponent": { "name": "QDJVM" } @@ -2009,16 +2111,8 @@ ] }, { - "id": "Dependency analysis", - "name": "Dependency analysis" - }, - { - "id": "EL", - "name": "EL" - }, - { - "id": "WSDL", - "name": "WSDL" + "id": "Shell script", + "name": "Shell script" }, { "id": "Java/Lombok/Redundant definitions", @@ -2027,7 +2121,7 @@ { "target": { "id": "Java/Lombok", - "index": 78, + "index": 86, "toolComponent": { "name": "QDJVM" } @@ -2045,7 +2139,7 @@ { "target": { "id": "Spring", - "index": 7, + "index": 8, "toolComponent": { "name": "QDJVM" } @@ -2063,7 +2157,7 @@ { "target": { "id": "CSS", - "index": 49, + "index": 56, "toolComponent": { "name": "QDJVM" } @@ -2075,13 +2169,13 @@ ] }, { - "id": "Kotlin/Other problems", - "name": "Other problems", + "id": "Plugin DevKit/Workspace model", + "name": "Workspace model", "relationships": [ { "target": { - "id": "Kotlin", - "index": 2, + "id": "Plugin DevKit", + "index": 67, "toolComponent": { "name": "QDJVM" } @@ -2093,13 +2187,13 @@ ] }, { - "id": "Plugin DevKit/Workspace model", - "name": "Workspace model", + "id": "Groovy/Other", + "name": "Other", "relationships": [ { "target": { - "id": "Plugin DevKit", - "index": 60, + "id": "Groovy", + "index": 20, "toolComponent": { "name": "QDJVM" } @@ -2111,13 +2205,13 @@ ] }, { - "id": "Groovy/Other", - "name": "Other", + "id": "Reactive Streams/Mutiny", + "name": "Mutiny", "relationships": [ { "target": { - "id": "Groovy", - "index": 19, + "id": "Reactive Streams", + "index": 37, "toolComponent": { "name": "QDJVM" } @@ -2153,7 +2247,7 @@ { "target": { "id": "Groovy", - "index": 19, + "index": 20, "toolComponent": { "name": "QDJVM" } @@ -2200,6 +2294,24 @@ } ] }, + { + "id": "Gradle/Best practises", + "name": "Best practises", + "relationships": [ + { + "target": { + "id": "Gradle", + "index": 42, + "toolComponent": { + "name": "QDJVM" + } + }, + "kinds": [ + "superset" + ] + } + ] + }, { "id": "Groovy/Declaration redundancy", "name": "Declaration redundancy", @@ -2207,7 +2319,7 @@ { "target": { "id": "Groovy", - "index": 19, + "index": 20, "toolComponent": { "name": "QDJVM" } @@ -2229,7 +2341,7 @@ "extensions": [ { "name": "org.intellij.intelliLang", - "version": "222.4502", + "version": "223.8394", "rules": [ { "id": "InjectionNotApplicable", @@ -2244,10 +2356,7 @@ "enabled": false, "level": "error", "parameters": { - "ideaSeverity": "ERROR", - "tags": [ - "ideaSeverity" - ] + "ideaSeverity": "ERROR" } }, "relationships": [ @@ -2278,17 +2387,14 @@ "enabled": false, "level": "warning", "parameters": { - "ideaSeverity": "WARNING", - "tags": [ - "ideaSeverity" - ] + "ideaSeverity": "WARNING" } }, "relationships": [ { "target": { "id": "Pattern validation", - "index": 106, + "index": 116, "toolComponent": { "name": "QDJVM" } @@ -2312,17 +2418,14 @@ "enabled": false, "level": "error", "parameters": { - "ideaSeverity": "ERROR", - "tags": [ - "ideaSeverity" - ] + "ideaSeverity": "ERROR" } }, "relationships": [ { "target": { "id": "General", - "index": 38, + "index": 41, "toolComponent": { "name": "QDJVM" } @@ -2346,17 +2449,14 @@ "enabled": false, "level": "error", "parameters": { - "ideaSeverity": "ERROR", - "tags": [ - "ideaSeverity" - ] + "ideaSeverity": "ERROR" } }, "relationships": [ { "target": { "id": "Pattern validation", - "index": 106, + "index": 116, "toolComponent": { "name": "QDJVM" } @@ -2380,10 +2480,7 @@ "enabled": false, "level": "error", "parameters": { - "ideaSeverity": "ERROR", - "tags": [ - "ideaSeverity" - ] + "ideaSeverity": "ERROR" } }, "relationships": [ @@ -2414,17 +2511,14 @@ "enabled": false, "level": "warning", "parameters": { - "ideaSeverity": "WARNING", - "tags": [ - "ideaSeverity" - ] + "ideaSeverity": "WARNING" } }, "relationships": [ { "target": { "id": "Pattern validation", - "index": 106, + "index": 116, "toolComponent": { "name": "QDJVM" } @@ -2448,10 +2542,7 @@ "enabled": false, "level": "warning", "parameters": { - "ideaSeverity": "WARNING", - "tags": [ - "ideaSeverity" - ] + "ideaSeverity": "WARNING" } }, "relationships": [ @@ -2479,7 +2570,7 @@ }, { "name": "com.intellij.java", - "version": "222.4502", + "version": "223.8394", "rules": [ { "id": "OverrideOnly", @@ -2494,10 +2585,7 @@ "enabled": true, "level": "warning", "parameters": { - "ideaSeverity": "WARNING", - "tags": [ - "ideaSeverity" - ] + "ideaSeverity": "WARNING" } }, "relationships": [ @@ -2528,10 +2616,7 @@ "enabled": false, "level": "warning", "parameters": { - "ideaSeverity": "WARNING", - "tags": [ - "ideaSeverity" - ] + "ideaSeverity": "WARNING" } }, "relationships": [ @@ -2562,17 +2647,14 @@ "enabled": false, "level": "warning", "parameters": { - "ideaSeverity": "WARNING", - "tags": [ - "ideaSeverity" - ] + "ideaSeverity": "WARNING" } }, "relationships": [ { "target": { "id": "Java/Performance", - "index": 10, + "index": 7, "toolComponent": { "name": "QDJVM" } @@ -2596,10 +2678,7 @@ "enabled": false, "level": "warning", "parameters": { - "ideaSeverity": "WARNING", - "tags": [ - "ideaSeverity" - ] + "ideaSeverity": "WARNING" } }, "relationships": [ @@ -2618,28 +2697,25 @@ ] }, { - "id": "UnusedReturnValue", + "id": "UncheckedExceptionClass", "shortDescription": { - "text": "Method can be made 'void'" + "text": "Unchecked 'Exception' class" }, "fullDescription": { - "text": "Reports methods whose return values are never used when called. The return type of such methods can be made 'void'. Methods annotated with Error Prone's or AssertJ's '@CanIgnoreReturnValue' annotation will not be reported. The quick-fix updates the method signature and removes 'return' statements from inside the method. Example: '// reported if visibility setting is Protected or Public\n protected String myToUpperCase(String s) {\n return s.toUpperCase();\n }\n\n // simple setter, reporting depends on setting\n public String setStr(String str) {\n myStr = str;\n return myStr;\n }\n\n void test() {\n setStr(\"value\"); // return value is unused\n myToUpperCase(\"result\"); // return value is unused\n }' After the quick-fix is applied to both methods: 'protected void myToUpperCase(String s) {\n // 'return' removed completely\n // as 's.toUpperCase()' has no side effect\n }\n\n public void setStr(String str) {\n myStr = str;\n // 'return' removed\n }\n ...' NOTE: Some methods might not be reported during in-editor highlighting due to performance reasons. To see all results, run the inspection using Code | Inspect Code or Code | Analyze Code | Run Inspection by Name> Use the Ignore simple setters option to ignore unused return values from simple setter calls. Use the Maximal reported method visibility option to control the maximum visibility of methods to be reported.", - "markdown": "Reports methods whose return values are never used when called. The return type of such methods can be made `void`.\n\nMethods annotated with Error Prone's or AssertJ's `@CanIgnoreReturnValue` annotation will not be reported.\nThe quick-fix updates the method signature and removes `return` statements from inside the method.\n\n**Example:**\n\n\n // reported if visibility setting is Protected or Public\n protected String myToUpperCase(String s) {\n return s.toUpperCase();\n }\n\n // simple setter, reporting depends on setting\n public String setStr(String str) {\n myStr = str;\n return myStr;\n }\n\n void test() {\n setStr(\"value\"); // return value is unused\n myToUpperCase(\"result\"); // return value is unused\n }\n\nAfter the quick-fix is applied to both methods:\n\n\n protected void myToUpperCase(String s) {\n // 'return' removed completely\n // as 's.toUpperCase()' has no side effect\n }\n\n public void setStr(String str) {\n myStr = str;\n // 'return' removed\n }\n ...\n\n\n**NOTE:** Some methods might not be reported during in-editor highlighting due to performance reasons.\nTo see all results, run the inspection using **Code \\| Inspect Code** or **Code \\| Analyze Code \\| Run Inspection by Name**\\>\n\nUse the **Ignore simple setters** option to ignore unused return values from simple setter calls.\n\nUse the **Maximal reported method visibility** option to control the maximum visibility of methods to be reported." + "text": "Reports subclasses of 'java.lang.RuntimeException'. Some coding standards require that all user-defined exception classes are checked. Example: 'class EnigmaException extends RuntimeException {} // warning: Unchecked exception class 'EnigmaException''", + "markdown": "Reports subclasses of `java.lang.RuntimeException`.\n\nSome coding standards require that all user-defined exception classes are checked.\n\n**Example:**\n\n\n class EnigmaException extends RuntimeException {} // warning: Unchecked exception class 'EnigmaException'\n" }, "defaultConfiguration": { "enabled": false, "level": "warning", "parameters": { - "ideaSeverity": "WARNING", - "tags": [ - "ideaSeverity" - ] + "ideaSeverity": "WARNING" } }, "relationships": [ { "target": { - "id": "Java/Declaration redundancy", + "id": "Java/Error handling", "index": 12, "toolComponent": { "name": "QDJVM" @@ -2652,29 +2728,26 @@ ] }, { - "id": "UncheckedExceptionClass", + "id": "UnusedReturnValue", "shortDescription": { - "text": "Unchecked 'Exception' class" + "text": "Method can be made 'void'" }, "fullDescription": { - "text": "Reports subclasses of 'java.lang.RuntimeException'. Some coding standards require that all user-defined exception classes are checked. Example: 'class EnigmaException extends RuntimeException {} // warning: Unchecked exception class 'EnigmaException''", - "markdown": "Reports subclasses of `java.lang.RuntimeException`.\n\nSome coding standards require that all user-defined exception classes are checked.\n\n**Example:**\n\n\n class EnigmaException extends RuntimeException {} // warning: Unchecked exception class 'EnigmaException'\n" + "text": "Reports methods whose return values are never used when called. The return type of such methods can be made 'void'. Methods annotated with Error Prone's or AssertJ's '@CanIgnoreReturnValue' annotation will not be reported. The quick-fix updates the method signature and removes 'return' statements from inside the method. Example: '// reported if visibility setting is Protected or Public\n protected String myToUpperCase(String s) {\n return s.toUpperCase();\n }\n\n // simple setter, reporting depends on setting\n public String setStr(String str) {\n myStr = str;\n return myStr;\n }\n\n void test() {\n setStr(\"value\"); // return value is unused\n myToUpperCase(\"result\"); // return value is unused\n }' After the quick-fix is applied to both methods: 'protected void myToUpperCase(String s) {\n // 'return' removed completely\n // as 's.toUpperCase()' has no side effect\n }\n\n public void setStr(String str) {\n myStr = str;\n // 'return' removed\n }\n ...' NOTE: Some methods might not be reported during in-editor highlighting due to performance reasons. To see all results, run the inspection using Code | Inspect Code or Code | Analyze Code | Run Inspection by Name> Use the Ignore simple setters option to ignore unused return values from simple setter calls. Use the Maximal reported method visibility option to control the maximum visibility of methods to be reported.", + "markdown": "Reports methods whose return values are never used when called. The return type of such methods can be made `void`.\n\nMethods annotated with Error Prone's or AssertJ's `@CanIgnoreReturnValue` annotation will not be reported.\nThe quick-fix updates the method signature and removes `return` statements from inside the method.\n\n**Example:**\n\n\n // reported if visibility setting is Protected or Public\n protected String myToUpperCase(String s) {\n return s.toUpperCase();\n }\n\n // simple setter, reporting depends on setting\n public String setStr(String str) {\n myStr = str;\n return myStr;\n }\n\n void test() {\n setStr(\"value\"); // return value is unused\n myToUpperCase(\"result\"); // return value is unused\n }\n\nAfter the quick-fix is applied to both methods:\n\n\n protected void myToUpperCase(String s) {\n // 'return' removed completely\n // as 's.toUpperCase()' has no side effect\n }\n\n public void setStr(String str) {\n myStr = str;\n // 'return' removed\n }\n ...\n\n\n**NOTE:** Some methods might not be reported during in-editor highlighting due to performance reasons.\nTo see all results, run the inspection using **Code \\| Inspect Code** or **Code \\| Analyze Code \\| Run Inspection by Name**\\>\n\nUse the **Ignore simple setters** option to ignore unused return values from simple setter calls.\n\nUse the **Maximal reported method visibility** option to control the maximum visibility of methods to be reported." }, "defaultConfiguration": { "enabled": false, "level": "warning", "parameters": { - "ideaSeverity": "WARNING", - "tags": [ - "ideaSeverity" - ] + "ideaSeverity": "WARNING" } }, "relationships": [ { "target": { - "id": "Java/Error handling", - "index": 14, + "id": "Java/Declaration redundancy", + "index": 13, "toolComponent": { "name": "QDJVM" } @@ -2698,10 +2771,7 @@ "enabled": false, "level": "warning", "parameters": { - "ideaSeverity": "WARNING", - "tags": [ - "ideaSeverity" - ] + "ideaSeverity": "WARNING" } }, "relationships": [ @@ -2732,10 +2802,7 @@ "enabled": true, "level": "warning", "parameters": { - "ideaSeverity": "WARNING", - "tags": [ - "ideaSeverity" - ] + "ideaSeverity": "WARNING" } }, "relationships": [ @@ -2766,17 +2833,14 @@ "enabled": false, "level": "warning", "parameters": { - "ideaSeverity": "WARNING", - "tags": [ - "ideaSeverity" - ] + "ideaSeverity": "WARNING" } }, "relationships": [ { "target": { "id": "Java/Class structure", - "index": 17, + "index": 18, "toolComponent": { "name": "QDJVM" } @@ -2800,17 +2864,14 @@ "enabled": false, "level": "warning", "parameters": { - "ideaSeverity": "WARNING", - "tags": [ - "ideaSeverity" - ] + "ideaSeverity": "WARNING" } }, "relationships": [ { "target": { "id": "Java/Serialization issues", - "index": 18, + "index": 19, "toolComponent": { "name": "QDJVM" } @@ -2834,17 +2895,14 @@ "enabled": false, "level": "warning", "parameters": { - "ideaSeverity": "WARNING", - "tags": [ - "ideaSeverity" - ] + "ideaSeverity": "WARNING" } }, "relationships": [ { "target": { "id": "Java/Imports", - "index": 21, + "index": 22, "toolComponent": { "name": "QDJVM" } @@ -2868,17 +2926,14 @@ "enabled": true, "level": "warning", "parameters": { - "ideaSeverity": "WARNING", - "tags": [ - "ideaSeverity" - ] + "ideaSeverity": "WARNING" } }, "relationships": [ { "target": { "id": "Java/Threading issues", - "index": 25, + "index": 26, "toolComponent": { "name": "QDJVM" } @@ -2890,29 +2945,26 @@ ] }, { - "id": "RemoveLiteralUnderscores", + "id": "NegatedEqualityExpression", "shortDescription": { - "text": "Underscores in numeric literal" + "text": "Negated equality expression" }, "fullDescription": { - "text": "Reports numeric literals with underscores and suggests removing them with a quick-fix. This may be useful if you need to lower the language level. The quick-fix removes underscores from numeric literals. For example '1_000_000' will be converted to '1000000'. Numeric literals with underscores appeared in Java 7. This inspection can help to downgrade for backward compatibility with earlier Java versions. New in 2020.2", - "markdown": "Reports numeric literals with underscores and suggests removing them with a quick-fix. This may be useful if you need to lower the language level.\n\nThe quick-fix removes underscores from numeric literals. For example `1_000_000` will be converted to `1000000`.\n\n\n*Numeric literals with underscores* appeared in Java 7.\nThis inspection can help to downgrade for backward compatibility with earlier Java versions.\n\nNew in 2020.2" + "text": "Reports equality expressions which are negated by a prefix expression. Such expressions can be simplified using the '!=' operator. Example: '!(i == 1)' After the quick-fix is applied: 'i != 1'", + "markdown": "Reports equality expressions which are negated by a prefix expression.\n\nSuch expressions can be simplified using the `!=` operator.\n\nExample:\n\n\n !(i == 1)\n\nAfter the quick-fix is applied:\n\n\n i != 1\n" }, "defaultConfiguration": { "enabled": false, - "level": "note", + "level": "warning", "parameters": { - "ideaSeverity": "INFORMATION", - "tags": [ - "ideaSeverity" - ] + "ideaSeverity": "WARNING" } }, "relationships": [ { "target": { - "id": "Java/Numeric issues", - "index": 26, + "id": "Java/Control flow issues", + "index": 27, "toolComponent": { "name": "QDJVM" } @@ -2924,29 +2976,26 @@ ] }, { - "id": "NegatedEqualityExpression", + "id": "RemoveLiteralUnderscores", "shortDescription": { - "text": "Negated equality expression" + "text": "Underscores in numeric literal" }, "fullDescription": { - "text": "Reports equality expressions which are negated by a prefix expression. Such expressions can be simplified using the '!=' operator. Example: '!(i == 1)' After the quick-fix is applied: 'i != 1'", - "markdown": "Reports equality expressions which are negated by a prefix expression.\n\nSuch expressions can be simplified using the `!=` operator.\n\nExample:\n\n\n !(i == 1)\n\nAfter the quick-fix is applied:\n\n\n i != 1\n" + "text": "Reports numeric literals with underscores and suggests removing them with a quick-fix. This may be useful if you need to lower the language level. The quick-fix removes underscores from numeric literals. For example '1_000_000' will be converted to '1000000'. Numeric literals with underscores appeared in Java 7. This inspection can help to downgrade for backward compatibility with earlier Java versions. New in 2020.2", + "markdown": "Reports numeric literals with underscores and suggests removing them with a quick-fix. This may be useful if you need to lower the language level.\n\nThe quick-fix removes underscores from numeric literals. For example `1_000_000` will be converted to `1000000`.\n\n\n*Numeric literals with underscores* appeared in Java 7.\nThis inspection can help to downgrade for backward compatibility with earlier Java versions.\n\nNew in 2020.2" }, "defaultConfiguration": { "enabled": false, - "level": "warning", + "level": "note", "parameters": { - "ideaSeverity": "WARNING", - "tags": [ - "ideaSeverity" - ] + "ideaSeverity": "INFORMATION" } }, "relationships": [ { "target": { - "id": "Java/Control flow issues", - "index": 27, + "id": "Java/Numeric issues", + "index": 28, "toolComponent": { "name": "QDJVM" } @@ -2970,10 +3019,7 @@ "enabled": true, "level": "warning", "parameters": { - "ideaSeverity": "WARNING", - "tags": [ - "ideaSeverity" - ] + "ideaSeverity": "WARNING" } }, "relationships": [ @@ -3004,17 +3050,14 @@ "enabled": true, "level": "warning", "parameters": { - "ideaSeverity": "WARNING", - "tags": [ - "ideaSeverity" - ] + "ideaSeverity": "WARNING" } }, "relationships": [ { "target": { "id": "Java/Initialization", - "index": 29, + "index": 30, "toolComponent": { "name": "QDJVM" } @@ -3038,17 +3081,14 @@ "enabled": true, "level": "warning", "parameters": { - "ideaSeverity": "WARNING", - "tags": [ - "ideaSeverity" - ] + "ideaSeverity": "WARNING" } }, "relationships": [ { "target": { "id": "Java/Performance", - "index": 10, + "index": 7, "toolComponent": { "name": "QDJVM" } @@ -3072,17 +3112,14 @@ "enabled": false, "level": "warning", "parameters": { - "ideaSeverity": "WARNING", - "tags": [ - "ideaSeverity" - ] + "ideaSeverity": "WARNING" } }, "relationships": [ { "target": { "id": "Java/Security", - "index": 31, + "index": 32, "toolComponent": { "name": "QDJVM" } @@ -3099,24 +3136,21 @@ "text": "Inconsistent whitespace indentation in text block" }, "fullDescription": { - "text": "Reports text blocks that are indented using both spaces and tabs. Such cases produce unexpected results since spaces and tabs are treated equally during text block processing. In the following example, spaces and tabs are visualized as '·' and '␉' respectively, and a tab is equal to 4 spaces in the editor. Example: 'String colors = \"\"\"\n········red\n␉ ␉ green\n········blue\"\"\";' After printing such string, the result will be: 'red\n······green\nblue' After the compiler removes 2 spaces or tabs from the beginning of each line, the lines end up with extra whitespaces at the beginning. This inspection only reports if the configured language level is 15 or higher. New in 2021.1", - "markdown": "Reports text blocks that are indented using both spaces and tabs.\n\nSuch cases produce unexpected results since spaces and tabs are treated equally during text block processing.\n\nIn the following example, spaces and tabs are visualized as `·` and `␉` respectively, and a tab is equal to 4 spaces in the editor.\n\n**Example:**\n\n\n String colors = \"\"\"\n ········red\n ␉ ␉ green\n ········blue\"\"\";\n\nAfter printing such string, the result will be:\n\n\n red\n ······green\n blue\n\nAfter the compiler removes 2 spaces or tabs from the beginning of each line, the lines end up with extra whitespaces at the beginning.\n\nThis inspection only reports if the configured language level is 15 or higher.\n\nNew in 2021.1" + "text": "Reports text blocks that are indented using both spaces and tabs. Such cases produce unexpected results since spaces and tabs are treated equally by the text block processing. In the following example, spaces and tabs are visualized as '·' and '␉' respectively, and a tab is equal to 4 spaces in the editor. Example: 'String colors = \"\"\"\n········red\n␉ ␉ green\n········blue\"\"\";' After printing such a string, the result will be: '······red\ngreen\n······blue' After the compiler removes an equal amount of spaces or tabs from the beginning of each line, some lines remain with leading spaces. This inspection only reports if the configured language level is 15 or higher. New in 2021.1", + "markdown": "Reports text blocks that are indented using both spaces and tabs. Such cases produce unexpected results since spaces and tabs are treated equally by the text block processing.\n\nIn the following example, spaces and tabs are visualized as `·` and `␉` respectively,\nand a tab is equal to 4 spaces in the editor.\n\n**Example:**\n\n\n String colors = \"\"\"\n ········red\n ␉ ␉ green\n ········blue\"\"\";\n\nAfter printing such a string, the result will be:\n\n\n ······red\n green\n ······blue\n\nAfter the compiler removes an equal amount of spaces or tabs from the beginning of each line,\nsome lines remain with leading spaces.\n\nThis inspection only reports if the configured language level is 15 or higher.\n\nNew in 2021.1" }, "defaultConfiguration": { "enabled": false, "level": "warning", "parameters": { - "ideaSeverity": "WARNING", - "tags": [ - "ideaSeverity" - ] + "ideaSeverity": "WARNING" } }, "relationships": [ { "target": { - "id": "Java/Java language level migration aids/Java 15", - "index": 34, + "id": "Java/Java language level migration aids/Probable bugs", + "index": 35, "toolComponent": { "name": "QDJVM"