From c1a2f6b10db5674841a4ad3fd108e6cd8c26033b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jo=C3=A3o=20Dinis=20Ferreira?= Date: Sat, 18 Oct 2025 16:39:13 +0200 Subject: [PATCH 1/2] chore: suppress PMD violation --- .../avaloq/tools/ddk/xtext/generator/util/ModelValidator.java | 1 + .../xtext/ui/editor/model/ResponsiveXtextDocumentProvider.java | 1 + ddk-parent/pom.xml | 3 +++ 3 files changed, 5 insertions(+) diff --git a/com.avaloq.tools.ddk.xtext.generator/src/com/avaloq/tools/ddk/xtext/generator/util/ModelValidator.java b/com.avaloq.tools.ddk.xtext.generator/src/com/avaloq/tools/ddk/xtext/generator/util/ModelValidator.java index f4f68292ea..6b4c3d552f 100644 --- a/com.avaloq.tools.ddk.xtext.generator/src/com/avaloq/tools/ddk/xtext/generator/util/ModelValidator.java +++ b/com.avaloq.tools.ddk.xtext.generator/src/com/avaloq/tools/ddk/xtext/generator/util/ModelValidator.java @@ -65,6 +65,7 @@ public List validate(final Resource resource, final Logger logger) { * @param logger * the logger */ + @SuppressWarnings("PMD.UnnecessaryVarargsArrayCreation") private void logIssue(final Resource resource, final Issue issue, final Logger logger) { final String message = NLS.bind(MESSAGE_TEMPLATE, new Object[] {resource.getURI().lastSegment(), issue.getLineNumber(), issue.getMessage()}); final Severity severity = issue.getSeverity(); diff --git a/com.avaloq.tools.ddk.xtext.ui/src/com/avaloq/tools/ddk/xtext/ui/editor/model/ResponsiveXtextDocumentProvider.java b/com.avaloq.tools.ddk.xtext.ui/src/com/avaloq/tools/ddk/xtext/ui/editor/model/ResponsiveXtextDocumentProvider.java index 27a7769b2c..df8b3441bd 100644 --- a/com.avaloq.tools.ddk.xtext.ui/src/com/avaloq/tools/ddk/xtext/ui/editor/model/ResponsiveXtextDocumentProvider.java +++ b/com.avaloq.tools.ddk.xtext.ui/src/com/avaloq/tools/ddk/xtext/ui/editor/model/ResponsiveXtextDocumentProvider.java @@ -81,6 +81,7 @@ protected void disconnected() { * the event */ @Override + @SuppressWarnings("PMD.UnnecessaryVarargsArrayCreation") public void propertyChange(final PropertyChangeEvent event) { if (LOGGER.isDebugEnabled()) { LOGGER.debug(NLS.bind("Preference Change: {0} => {1} -> {2}", new Object[] {event.getProperty(), event.getOldValue(), event.getNewValue()})); //$NON-NLS-1$ diff --git a/ddk-parent/pom.xml b/ddk-parent/pom.xml index ecb5b27a4f..eb0c482321 100644 --- a/ddk-parent/pom.xml +++ b/ddk-parent/pom.xml @@ -308,6 +308,9 @@ ${pmd.ruleset} + + ${basedir}/src + ${basedir}/src-gen ${basedir}/src-model From 7fdf859145f075c01d01e558bd8fb19126795e2b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jo=C3=A3o=20Dinis=20Ferreira?= Date: Sat, 18 Oct 2025 16:57:07 +0200 Subject: [PATCH 2/2] chore: ensure PMD collects all violations before failing --- .github/workflows/verify.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/verify.yml b/.github/workflows/verify.yml index afb7b98dd0..16a92f2980 100644 --- a/.github/workflows/verify.yml +++ b/.github/workflows/verify.yml @@ -43,7 +43,9 @@ jobs: path: /home/runner/.m2/repository key: ${{ runner.os }}-maven-0-${{ hashFiles('**/pom.xml') }} - name: Build with Maven within a virtual X Server Environment - run: xvfb-run mvn clean verify checkstyle:check pmd:pmd pmd:check pmd:cpd-check spotbugs:check -f ./ddk-parent/pom.xml --batch-mode --fail-at-end + # Run pmd:pmd and pmd:cpd first to generate reports for all modules, then run pmd:check and pmd:cpd-check + # This ensures all violations are collected and reported before the build fails + run: xvfb-run mvn clean verify checkstyle:check pmd:pmd pmd:cpd pmd:check pmd:cpd-check spotbugs:check -f ./ddk-parent/pom.xml --batch-mode --fail-at-end - name: Archive Tycho Surefire Plugin if: ${{ failure() }} uses: actions/upload-artifact@v4