From 63676ad1f2cbb23e6d8245f9a4bc692918beedf4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jo=C3=A3o=20Dinis=20Ferreira?= Date: Sat, 2 May 2026 08:33:38 +0200 Subject: [PATCH] feat: upgrade to JUnit 6 + Eclipse 4.39 (simrel 2026-03) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit End-to-end JUnit 6 + Eclipse 4.39 upgrade. The OSGi runtime contains only JUnit 6.0.3 bundles (no JUnit 5.14.x, no jdt.junit5.runtime). Two layers of dual-version JUnit pollution had to be peeled back: 1. Eclipse PDE umbrella feature transitively pulls jdt.junit5.runtime (strict-pinned to JUnit 5.14.x). Workaround: replace org.eclipse.pde.feature.group in the target with a curated bundle list of the six PDE bundles DDK uses (pde.core, pde.ui, pde.ua.core, pde.junit.runtime, jdt.junit.runtime, jdt.annotation). Verified load-bearing: dropping the curated list and going back to pde.feature.group makes target resolution unsatisfiable. 2. Xtext 2.42.0's org.eclipse.xtext.testing hard-pins org.junit.jupiter.api [5.1.0,6.0.0). Fix: eclipse-xtext/xtext#3660 "Junit 6 support" landed in Xtext 2.43.0. Other target file changes: - sequenceNumber 28 -> 29 - Eclipse SDK location updates/4.34/ -> releases/2026-03/ - Source-feature IUs (platform.source.feature.group, jdt.source.*, pde.source.*) dropped — renamed in modern simrels and not needed for headless Tycho test runs. - swtbot.junit5.feature.group dropped — its feature.xml requires the JUnit 4 'org.junit' bundle which is no longer in the target, and DDK doesn't use SWTBotJunit5Extension (verified via static analysis). - orbit-aggregation 4.37.0 -> 4.39.0 with JUnit 6.0.3 IUs and dep versions back to 4.39-era (mockito 5.21.0, byte-buddy 1.18.5, objenesis 3.5.0, commons-lang3 3.20.0, commons-text 1.15.0, log4j 2.25.3). xtext.test/pom.xml: - junit5 -> junit6 - extraRequirements: replaced the org.eclipse.pde feature requirement with an explicit org.eclipse.pde.junit.runtime plugin requirement Co-Authored-By: Claude Opus 4.7 (1M context) --- com.avaloq.tools.ddk.xtext.test/pom.xml | 5 +-- ddk-target/ddk.target | 48 +++++++++++++------------ 2 files changed, 28 insertions(+), 25 deletions(-) diff --git a/com.avaloq.tools.ddk.xtext.test/pom.xml b/com.avaloq.tools.ddk.xtext.test/pom.xml index b94f0de796..62010b9aae 100644 --- a/com.avaloq.tools.ddk.xtext.test/pom.xml +++ b/com.avaloq.tools.ddk.xtext.test/pom.xml @@ -19,6 +19,7 @@ false false + junit6 ${test.testClass} false false @@ -49,8 +50,8 @@ 0.0.0 - eclipse-feature - org.eclipse.pde + eclipse-plugin + org.eclipse.pde.junit.runtime 0.0.0 diff --git a/ddk-target/ddk.target b/ddk-target/ddk.target index 7102d4931d..4c8dddee6e 100644 --- a/ddk-target/ddk.target +++ b/ddk-target/ddk.target @@ -1,20 +1,22 @@ - + - - - - - + + + + + + + @@ -35,32 +37,32 @@ - + - - - - + + + + - - - - + + + + - - - - - - - - + + + + + + + +