diff --git a/.github/dependabot.yml b/.github/dependabot.yml
index b9d9453bf7..6fe8aae364 100644
--- a/.github/dependabot.yml
+++ b/.github/dependabot.yml
@@ -14,12 +14,9 @@ updates:
- dependency-name: org.eclipse.collections:eclipse-collections-api
versions:
- ">= 10.a"
- - dependency-name: org.webjars:popper.js
+ - dependency-name: net.javacrumbs.json-unit:json-unit-assertj
versions:
- - ">= 2.0.0"
- - dependency-name: org.webjars:bootstrap
- versions:
- - ">= 5.0.0"
+ - ">= 3.0.0"
- package-ecosystem: "github-actions"
directory: "/"
diff --git a/.github/workflows/enforce-labels.yml b/.github/workflows/enforce-labels.yml
index 5a27f6a053..a0a9164adc 100644
--- a/.github/workflows/enforce-labels.yml
+++ b/.github/workflows/enforce-labels.yml
@@ -11,7 +11,7 @@ jobs:
steps:
- uses: mheap/github-action-required-labels@v5
with:
- mode: exactly
+ mode: minimum
count: 1
labels: "bug,feature,enhancement,breaking,tests,documentation,internal,dependencies"
message: "Maintainer needs to assign at least one label before merge"
diff --git a/LICENSE b/LICENSE
index 2f55958104..2657e29918 100644
--- a/LICENSE
+++ b/LICENSE
@@ -1,6 +1,6 @@
MIT License
-Copyright (c) 2007-2022 Dr. Ullrich Hafner
+Copyright (c) 2007-2023 Dr. Ullrich Hafner
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/README.md b/README.md
index cfb8e7fadf..5dd41508ca 100644
--- a/README.md
+++ b/README.md
@@ -3,7 +3,7 @@
[![Join the chat at https://gitter.im/jenkinsci/warnings-plugin](https://badges.gitter.im/jenkinsci/warnings-plugin.svg)](https://gitter.im/jenkinsci/warnings-plugin?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
[![Jenkins Plugin Installs](https://img.shields.io/jenkins/plugin/i/warnings-ng.svg?color=red)](https://plugins.jenkins.io/warnings-ng)
[![Jenkins](https://ci.jenkins.io/job/Plugins/job/warnings-ng-plugin/job/master/badge/icon?subject=Jenkins%20CI)](https://ci.jenkins.io/job/Plugins/job/warnings-ng-plugin/job/master/)
-[![GitHub Actions](https://github.com/jenkinsci/warnings-ng-plugin/workflows/GitHub%20CI/badge.svg?branch=master)](https://github.com/jenkinsci/warnings-ng-plugin/actions)
+[![GitHub Actions](https://github.com/jenkinsci/warnings-ng-plugin/workflows/GitHub%20CI/badge.svg)](https://github.com/jenkinsci/warnings-ng-plugin/actions)
[![Codecov](https://codecov.io/gh/jenkinsci/warnings-ng-plugin/branch/master/graph/badge.svg)](https://app.codecov.io/gh/jenkinsci/warnings-ng-plugin)
The Jenkins Next Generation Warnings plugin collects compiler warnings or issues reported by static analysis tools and
diff --git a/SUPPORTED-FORMATS.md b/SUPPORTED-FORMATS.md
index 294d23d7bc..b03d0ba3f0 100644
--- a/SUPPORTED-FORMATS.md
+++ b/SUPPORTED-FORMATS.md
@@ -1,4 +1,4 @@
-
+
# Supported Report Formats
Jenkins' Warnings Next Generation Plugin supports the following report formats.
@@ -467,6 +467,25 @@ the [Analysis Parsers Library](https://github.com/jenkinsci/analysis-model/).
-
+
+
+ code-generator
+ |
+
+ codeGeneratorParser()
+ |
+
+
+ |
+
+
+ Code Generator Tool
+
+ |
+
+ -
+ |
+
code-checker
@@ -581,6 +600,25 @@ the [Analysis Parsers Library](https://github.com/jenkinsci/analysis-model/).
:bulb: You need to use the Eclipse format with the option --output=eclipse
|
+
+
+ crosscore-embedded-studio
+ |
+
+ CrossCoreEmbeddedStudioParser()
+ |
+
+
+ |
+
+
+ CrossCore Embedded Studio (CCES)
+
+ |
+
+ -
+ |
+
csslint
@@ -762,6 +800,25 @@ the [Analysis Parsers Library](https://github.com/jenkinsci/analysis-model/).
:bulb: Create an output file that contains Eclipse ECJ output, in either XML or text format. To log in XML format, specify ".xml" as the file extension to the -log argument: java -jar ecj.jar -log <logfile>.xml <other arguments>
To log in text format, specify any file extension except ".xml" to the -log argument: java -jar ecj.jar -log <logfile>.log <other arguments>
|
+
+
+ embedded-engineer
+ |
+
+ embeddedEngineerParser()
+ |
+
+
+ |
+
+
+ Embedded Engineer Tool
+
+ |
+
+ -
+ |
+
erlc
@@ -1057,6 +1114,25 @@ the [Analysis Parsers Library](https://github.com/jenkinsci/analysis-model/).
-
|
+
+
+ grype
+ |
+
+ grype()
+ |
+
+
+ |
+
+
+ Grype
+
+ |
+
+ **/grype-report.json
+ |
+
hadolint
@@ -1817,6 +1893,30 @@ analyze - iccxxxxcompiler_opts cstat2.cFor details check the IAR C-
**/pmd.xml
|
+
+
+ polyspace-parser
+ |
+
+ polyspaceParser()
+ |
+
+
+ |
+
+
+ Polyspace Tool
+
+ |
+
+ -
+ |
+
+
+
+ :bulb: Reads reports of Polyspace Static Analysis Tool by MathWorks. Used for BugFinder and CodeProver result files. Report can be generated with command: polyspace-results-export -format csv -results-dir -output-name -key
+ |
+
prefast
@@ -1930,7 +2030,7 @@ analyze - iccxxxxcompiler_opts cstat2.cFor details check the IAR C-
|
- :bulb: Create a./pylintrc that contains: msg-template={path}:{module}:{line}: [{msg_id}({symbol}), {obj}] {msg}
Start pylint using the command: pylint --rcfile=./pylintrc CODE > pylint.log
+ :bulb: Start Pylint using this custom message template (can also be configured via a pylintrc configuration file): pylint --msg-template='{path}:{line}: [{msg_id}, {obj}] {msg} ({symbol})' modules_or_packages > pylint.log
|
@@ -2153,6 +2253,30 @@ analyze - iccxxxxcompiler_opts cstat2.cFor details check the IAR C-
-
+
+
+ simulink-check-parser
+ |
+
+ simulinkCheckParser()
+ |
+
+
+ |
+
+
+ Simulink Check Tool
+
+ |
+
+ -
+ |
+
+
+
+ :bulb: Reads and Parses HTML reports of Simulink Check Tool by MathWorks. Report can be generated with command: ModelAdvisor.summaryReport(ModelAdvisor.run(, , , ))
+ |
+
sonar
diff --git a/bin/german.sh b/bin/german.sh
deleted file mode 100755
index 5fd0b284ba..0000000000
--- a/bin/german.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/bash
-
-mvn stapler:i18n -Dlocale=de
-
diff --git a/bin/release.sh b/bin/release.sh
index 8f59a95ea5..1ea05281cc 100755
--- a/bin/release.sh
+++ b/bin/release.sh
@@ -4,5 +4,3 @@ git pull
git push
cd plugin
mvn -B clean build-helper:parse-version release:prepare release:perform -DdevelopmentVersion=\${parsedVersion.majorVersion}.\${parsedVersion.nextMinorVersion}.0-SNAPSHOT
-
-
diff --git a/plugin/etc/assertj-templates/assertions_entry_point_class_template.txt b/plugin/etc/assertj-templates/assertions_entry_point_class_template.txt
index a57b90468c..ed4706b5f0 100644
--- a/plugin/etc/assertj-templates/assertions_entry_point_class_template.txt
+++ b/plugin/etc/assertj-templates/assertions_entry_point_class_template.txt
@@ -5,7 +5,7 @@ package ${package};
* type-specific assertion objects.
*/
@edu.umd.cs.findbugs.annotations.SuppressFBWarnings("NM")
-@javax.annotation.Generated(value="assertj-assertions-generator")
+@edu.hm.hafner.util.Generated(value="assertj-assertions-generator")
public class Assertions extends edu.hm.hafner.analysis.assertions.Assertions {
${all_assertions_entry_points}
/**
diff --git a/plugin/etc/assertj-templates/soft_assertions_entry_point_class_template.txt b/plugin/etc/assertj-templates/soft_assertions_entry_point_class_template.txt
index ca86565af9..0f29596e24 100644
--- a/plugin/etc/assertj-templates/soft_assertions_entry_point_class_template.txt
+++ b/plugin/etc/assertj-templates/soft_assertions_entry_point_class_template.txt
@@ -4,7 +4,7 @@ package ${package};
* Entry point for soft assertions of different data types.
*/
@edu.umd.cs.findbugs.annotations.SuppressFBWarnings("NM")
-@javax.annotation.Generated(value="assertj-assertions-generator")
+@edu.hm.hafner.util.Generated(value="assertj-assertions-generator")
public class SoftAssertions extends edu.hm.hafner.analysis.assertions.SoftAssertions {
${all_assertions_entry_points}
}
diff --git a/plugin/src/test/java/io/jenkins/plugins/analysis/core/columns/IssuesTotalColumnTest.java b/plugin/src/test/java/io/jenkins/plugins/analysis/core/columns/IssuesTotalColumnTest.java
index be384fffa5..d472db28fa 100644
--- a/plugin/src/test/java/io/jenkins/plugins/analysis/core/columns/IssuesTotalColumnTest.java
+++ b/plugin/src/test/java/io/jenkins/plugins/analysis/core/columns/IssuesTotalColumnTest.java
@@ -4,7 +4,7 @@
import java.util.Collections;
import org.junit.jupiter.api.Test;
-import org.jvnet.hudson.test.Issue;
+import org.junitpioneer.jupiter.Issue;
import hudson.model.Job;
diff --git a/plugin/src/test/java/io/jenkins/plugins/analysis/core/model/AnalysisResultTest.java b/plugin/src/test/java/io/jenkins/plugins/analysis/core/model/AnalysisResultTest.java
index 7f0477a752..3d466462e6 100644
--- a/plugin/src/test/java/io/jenkins/plugins/analysis/core/model/AnalysisResultTest.java
+++ b/plugin/src/test/java/io/jenkins/plugins/analysis/core/model/AnalysisResultTest.java
@@ -5,7 +5,7 @@
import java.util.Collections;
import org.junit.jupiter.api.Test;
-import org.jvnet.hudson.test.Issue;
+import org.junitpioneer.jupiter.Issue;
import edu.hm.hafner.util.ResourceTest;
diff --git a/plugin/src/test/java/io/jenkins/plugins/analysis/core/model/ReportXmlStreamTest.java b/plugin/src/test/java/io/jenkins/plugins/analysis/core/model/ReportXmlStreamTest.java
index a5021bbb3b..c38ade5537 100644
--- a/plugin/src/test/java/io/jenkins/plugins/analysis/core/model/ReportXmlStreamTest.java
+++ b/plugin/src/test/java/io/jenkins/plugins/analysis/core/model/ReportXmlStreamTest.java
@@ -3,7 +3,7 @@
import java.nio.file.Path;
import org.junit.jupiter.api.Test;
-import org.jvnet.hudson.test.Issue;
+import org.junitpioneer.jupiter.Issue;
import edu.hm.hafner.analysis.Report;
import edu.hm.hafner.analysis.Severity;
diff --git a/plugin/src/test/java/io/jenkins/plugins/analysis/core/model/StaticAnalysisLabelProviderTest.java b/plugin/src/test/java/io/jenkins/plugins/analysis/core/model/StaticAnalysisLabelProviderTest.java
index 7af3e0b370..d840e068a0 100644
--- a/plugin/src/test/java/io/jenkins/plugins/analysis/core/model/StaticAnalysisLabelProviderTest.java
+++ b/plugin/src/test/java/io/jenkins/plugins/analysis/core/model/StaticAnalysisLabelProviderTest.java
@@ -4,7 +4,7 @@
import org.junit.jupiter.api.Nested;
import org.junit.jupiter.api.Test;
-import org.jvnet.hudson.test.Issue;
+import org.junitpioneer.jupiter.Issue;
import edu.hm.hafner.analysis.IssueBuilder;
diff --git a/plugin/src/test/java/io/jenkins/plugins/analysis/core/util/AbsolutePathGeneratorITest.java b/plugin/src/test/java/io/jenkins/plugins/analysis/core/util/AbsolutePathGeneratorITest.java
index e24a44950f..c9ffeefdea 100644
--- a/plugin/src/test/java/io/jenkins/plugins/analysis/core/util/AbsolutePathGeneratorITest.java
+++ b/plugin/src/test/java/io/jenkins/plugins/analysis/core/util/AbsolutePathGeneratorITest.java
@@ -7,7 +7,7 @@
import org.apache.commons.lang3.StringUtils;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.io.TempDir;
-import org.jvnet.hudson.test.Issue;
+import org.junitpioneer.jupiter.Issue;
import org.jvnet.hudson.test.JenkinsRule;
import hudson.FilePath;
diff --git a/plugin/src/test/java/io/jenkins/plugins/analysis/core/util/ModelValidationTest.java b/plugin/src/test/java/io/jenkins/plugins/analysis/core/util/ModelValidationTest.java
index 4b1ddbc2da..1209c94d32 100644
--- a/plugin/src/test/java/io/jenkins/plugins/analysis/core/util/ModelValidationTest.java
+++ b/plugin/src/test/java/io/jenkins/plugins/analysis/core/util/ModelValidationTest.java
@@ -5,7 +5,7 @@
import java.util.Optional;
import org.junit.jupiter.api.Test;
-import org.jvnet.hudson.test.Issue;
+import org.junitpioneer.jupiter.Issue;
import edu.hm.hafner.analysis.Severity;
diff --git a/plugin/src/test/java/io/jenkins/plugins/analysis/warnings/groovy/GroovyParserTest.java b/plugin/src/test/java/io/jenkins/plugins/analysis/warnings/groovy/GroovyParserTest.java
index 8cec7d5940..5d675f7edd 100644
--- a/plugin/src/test/java/io/jenkins/plugins/analysis/warnings/groovy/GroovyParserTest.java
+++ b/plugin/src/test/java/io/jenkins/plugins/analysis/warnings/groovy/GroovyParserTest.java
@@ -5,7 +5,7 @@
import org.apache.commons.lang3.StringUtils;
import org.junit.jupiter.api.Test;
-import org.jvnet.hudson.test.Issue;
+import org.junitpioneer.jupiter.Issue;
import edu.hm.hafner.analysis.IssueParser;
import edu.hm.hafner.analysis.Report;
diff --git a/plugin/src/test/java/io/jenkins/plugins/analysis/warnings/groovy/GroovyScriptITest.java b/plugin/src/test/java/io/jenkins/plugins/analysis/warnings/groovy/GroovyScriptITest.java
index 26fb595182..23b13f3fa5 100644
--- a/plugin/src/test/java/io/jenkins/plugins/analysis/warnings/groovy/GroovyScriptITest.java
+++ b/plugin/src/test/java/io/jenkins/plugins/analysis/warnings/groovy/GroovyScriptITest.java
@@ -3,7 +3,7 @@
import java.util.Collections;
import org.junit.jupiter.api.Test;
-import org.jvnet.hudson.test.Issue;
+import org.junitpioneer.jupiter.Issue;
import io.jenkins.plugins.analysis.core.model.Tool;
import io.jenkins.plugins.analysis.core.testutil.IntegrationTestWithJenkinsPerSuite;
diff --git a/plugin/src/test/java/io/jenkins/plugins/analysis/warnings/integrations/ConfigurationAsCodeITest.java b/plugin/src/test/java/io/jenkins/plugins/analysis/warnings/integrations/ConfigurationAsCodeITest.java
index 3a302eb8c6..a35f25b924 100644
--- a/plugin/src/test/java/io/jenkins/plugins/analysis/warnings/integrations/ConfigurationAsCodeITest.java
+++ b/plugin/src/test/java/io/jenkins/plugins/analysis/warnings/integrations/ConfigurationAsCodeITest.java
@@ -3,7 +3,7 @@
import java.util.List;
import org.junit.jupiter.api.Test;
-import org.jvnet.hudson.test.Issue;
+import org.junitpioneer.jupiter.Issue;
import hudson.model.FreeStyleProject;
import hudson.model.TopLevelItem;
diff --git a/plugin/src/test/java/io/jenkins/plugins/analysis/warnings/steps/QualityGateITest.java b/plugin/src/test/java/io/jenkins/plugins/analysis/warnings/steps/QualityGateITest.java
index 8be4b95a90..ab6ffbdf56 100644
--- a/plugin/src/test/java/io/jenkins/plugins/analysis/warnings/steps/QualityGateITest.java
+++ b/plugin/src/test/java/io/jenkins/plugins/analysis/warnings/steps/QualityGateITest.java
@@ -5,7 +5,7 @@
import org.eclipse.collections.impl.factory.Maps;
import org.junit.jupiter.api.Test;
-import org.jvnet.hudson.test.Issue;
+import org.junitpioneer.jupiter.Issue;
import com.google.errorprone.annotations.CanIgnoreReturnValue;
diff --git a/plugin/src/test/java/io/jenkins/plugins/analysis/warnings/tasks/AgentScannerTest.java b/plugin/src/test/java/io/jenkins/plugins/analysis/warnings/tasks/AgentScannerTest.java
index b9aa468781..402a741d36 100644
--- a/plugin/src/test/java/io/jenkins/plugins/analysis/warnings/tasks/AgentScannerTest.java
+++ b/plugin/src/test/java/io/jenkins/plugins/analysis/warnings/tasks/AgentScannerTest.java
@@ -3,7 +3,7 @@
import java.nio.file.Path;
import org.junit.jupiter.api.Test;
-import org.jvnet.hudson.test.Issue;
+import org.junitpioneer.jupiter.Issue;
import edu.hm.hafner.analysis.Report;
import edu.hm.hafner.util.SerializableTest;
diff --git a/pom.xml b/pom.xml
index e10d1a48a9..5b14d3db18 100644
--- a/pom.xml
+++ b/pom.xml
@@ -16,6 +16,8 @@
1.8
3.51
+ HEAD
+
3.11.0
3.1.1
${java.version}
diff --git a/ui-tests/etc/assertj-templates/assertions_entry_point_class_template.txt b/ui-tests/etc/assertj-templates/assertions_entry_point_class_template.txt
index f5204a15d2..a275e227af 100644
--- a/ui-tests/etc/assertj-templates/assertions_entry_point_class_template.txt
+++ b/ui-tests/etc/assertj-templates/assertions_entry_point_class_template.txt
@@ -5,7 +5,7 @@ package ${package};
* type-specific assertion objects.
*/
@edu.umd.cs.findbugs.annotations.SuppressFBWarnings("NM")
-@javax.annotation.Generated(value="assertj-assertions-generator")
+@edu.hm.hafner.util.Generated(value="assertj-assertions-generator")
public class Assertions extends org.assertj.core.api.Assertions {
${all_assertions_entry_points}
/**
diff --git a/ui-tests/etc/assertj-templates/soft_assertions_entry_point_class_template.txt b/ui-tests/etc/assertj-templates/soft_assertions_entry_point_class_template.txt
index c7485e4256..68df986927 100644
--- a/ui-tests/etc/assertj-templates/soft_assertions_entry_point_class_template.txt
+++ b/ui-tests/etc/assertj-templates/soft_assertions_entry_point_class_template.txt
@@ -4,7 +4,7 @@ package ${package};
* Entry point for soft assertions of different data types.
*/
@edu.umd.cs.findbugs.annotations.SuppressFBWarnings("NM")
-@javax.annotation.Generated(value="assertj-assertions-generator")
+@edu.hm.hafner.util.Generated(value="assertj-assertions-generator")
public class SoftAssertions extends org.assertj.core.api.AutoCloseableSoftAssertions {
${all_assertions_entry_points}
}
diff --git a/ui-tests/javac.20231019_113650.args b/ui-tests/javac.20231019_113650.args
new file mode 100644
index 0000000000..5db5da6afd
--- /dev/null
+++ b/ui-tests/javac.20231019_113650.args
@@ -0,0 +1 @@
+@/private/var/folders/pg/qr8ry2kd4qjc151jhq9ksgx00000gn/T/org.codehaus.plexus.compiler.javac.JavacCompiler5569295821040207826arguments
diff --git a/ui-tests/pom.xml b/ui-tests/pom.xml
index 2d6d8e91b4..b942dec27c 100644
--- a/ui-tests/pom.xml
+++ b/ui-tests/pom.xml
@@ -5,7 +5,7 @@
edu.hm.hafner
codingstyle-pom
- 2.29.0
+ 3.33.0
@@ -22,6 +22,7 @@
2.38.0
${project.groupId}.warnings.ui.tests
+ 3.49
-Djava.awt.headless=true -Xmx1024m -Djenkins.test.timeout=1000 --add-opens java.base/sun.reflect.annotation=ALL-UNNAMED --add-opens java.base/java.lang=ALL-UNNAMED --add-opens java.base/java.io=ALL-UNNAMED --add-opens java.base/java.util=ALL-UNNAMED --add-opens java.base/java.util.concurrent=ALL-UNNAMED
@@ -33,6 +34,14 @@
jenkins-core
${jenkins.version}
+
+
+ io.netty
+ netty-bom
+ 4.1.99.Final
+ pom
+ import
+
@@ -147,6 +156,20 @@
+
+ org.pitest
+ pitest-maven
+
+ true
+
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+
+ true
+
+
org.jacoco
jacoco-maven-plugin
|