feat: upgrade to JUnit 6 + Eclipse 4.39 (simrel 2026-03)#1327
Open
joaodinissf wants to merge 1 commit into
Open
feat: upgrade to JUnit 6 + Eclipse 4.39 (simrel 2026-03)#1327joaodinissf wants to merge 1 commit into
joaodinissf wants to merge 1 commit into
Conversation
fa663fd to
079da34
Compare
This was referenced May 4, 2026
079da34 to
2ff5804
Compare
2ff5804 to
fb382e1
Compare
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: - <providerHint>junit5</providerHint> -> <providerHint>junit6</providerHint> - 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) <noreply@anthropic.com>
fb382e1 to
17575d3
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
End-to-end JUnit 6 + Eclipse 4.39 atomic upgrade for DDK. OSGi runtime contains only JUnit 6.0.3 bundles (no 5.14.x, no
jdt.junit5.runtime).Two layers of dual-version JUnit pollution had to be peeled back. First, Eclipse PDE's umbrella feature (
org.eclipse.pde.feature.group) transitively pullsjdt.junit5.runtime, which is strict-pinned to JUnit 5.14.x; replaced inddk.targetwith a curated bundle list of the six PDE bundles DDK actually uses (verified load-bearing — going back topde.feature.groupmakes target resolution unsatisfiable). Second, Xtext 2.42.0'sorg.eclipse.xtext.testinghard-pinsorg.junit.jupiter.api [5.1.0, 6.0.0); fixed upstream in Xtext 2.43.0 (eclipse-xtext/xtext#3660 "Junit 6 support").This branch points at the Xtext 2.43.0 stable release URL. The 2.43.0.M2 milestone variant was verified end-to-end in CI (357 tests, 0 failures, 0 errors); the stable release ships the same bundle set with the JUnit 6 testing support. CI will go red on
maven-verify(target resolution) until Eclipse publishes 2.43.0 stable, scheduled for 2026-05-25 — retrigger once it's live.Supersedes #1332 (folded the stable-URL swap into this PR).
🤖 Generated with Claude Code