Modernize Maven build configuration#364
Closed
vladdu wants to merge 14 commits into
Closed
Conversation
Tycho 1.7.0 -> 5.0.2, Eclipse 2018-09 -> 2026-03, Java 8 -> 21, jacoco 0.8.5 -> 0.8.12, maven-antrun 1.7 -> 3.1.0. Drop tycho-pomless in favor of tycho-build extension. Merge tycho-extras into tycho proper (gone since 2.0). Move gson/guava/commons.io/ commons.lang3/commons.collections from the old Orbit + erlide-libs P2 repos into the main Eclipse release repo. Swap commons.lang -> commons.lang3 in extra-requirements. Drop the obsolete Neon updates and Orbit P2 repos. Comment out wrangler module (will be deleted next). Eclipse target version will be re-pinned to 2025-12 in a follow-up commit per spec. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> mvn config update Escape dot in .git regex filter across all .project files Eclipse-generated regexFilterMatcher entries had unescaped '.git' which matches more than intended. Use '\.git'. Cosmetic; refreshes filter IDs. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
One release behind 2026-03 for a stabilized build target. Java target remains 21 (current LTS). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Project compiles for Java 21 now; CI runner still pinned to JDK 8 would fail immediately. Update unrelated CI concerns are not part of this round. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Tycho 5.0.2 requires Maven 3.9+. The wrapper was still on 3.6.3, causing target resolution to fail with a Guice injection error during Maven startup. Also bump the enforcer requireMavenVersion minimum from 3.6.3 to 3.9.0 to keep configuration consistent. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Project now targets Java 21 via pom.xml maven.compiler.source/ target and the maven-enforcer requireJavaVersion. Bundle execution environment declarations were still JavaSE-1.8, which causes PDE/ Tycho to provision an unavailable JRE during resolution. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Tycho 5 derives --release from maven.compiler.source/target. Passing both --release and -21 to ECJ produces "option 21 is not supported when --release is used" and aborts compilation. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Eclipse 2025-12 ships the Apache Commons IO bundle under the new Maven-style symbolic name `org.apache.commons.commons-io` (verified by inspecting the P2 content.xml of the release repo). Tycho fails with: Could not find "org.apache.commons.io/0.0.0" in the repositories of the current location. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Remove the wrangler feature (dropped in earlier commit), the abstratt eclipsegraphviz feature (was sourced from a P2 repo no longer reachable), the now-orphaned 'extras' category-def, and the dead Orbit repository-reference URL. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Three internal/removed symbols broke compilation against Eclipse 2025-12: - IInternalDebugUIConstants.IMG_ELCL_REMOVE (ConsoleRemoveLaunchAction) -> public IDebugUIConstants.IMG_LCL_REMOVE (same as the main image) - IInternalDebugUIConstants.IMG_LCL_TERMINATE (ConsoleTerminateAction) -> IInternalDebugUIConstants.IMG_ELCL_TERMINATE (still internal but retained in 2025-12; the old "LCL" name was retired) - jface.internal.text.link.contentassist.LineBreakingReader (ErlInformationPresenter) -> private static nested class with the same readLine()/isFormattedLine() API, using java.text.BreakIterator and SWT GC for word-wrap measurement No MANIFEST.MF changes required. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Strict version pins on these bundles caused site assembly to fail against Eclipse 2025-12 which ships newer versions. The other bundle entries in category.xml are already unversioned; align them all. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Eclipse 2025-12 ships xtext.xbase.lib 2.42 which itself requires com.google.guava 33.5+. The previous [21.0.0, 33.4.0) upper bound created an OSGi uses-constraint violation: org.erlide bundles required guava < 33.4 while xbase.lib required guava >= 33.5. Felix refused to resolve, producing a test-launcher error code 13 on org.erlide.runtime.tests. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
The implementation backs its result on a HashSet (ModelFindUtil.java line 232), so the order in which two included modules appear is not defined. The previous assertion read includedFiles2.get(0) and get(1) expecting yy.hrl then zz.hrl, which happened to hold under older JVMs and guava versions. After bumping to Eclipse 2025-12 and current guava, the order flipped and the test failed. Switch to contains() checks instead of index-based asserts. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
The earlier widening commit (818c4db05) hit plugins/* and libs/* but missed two test bundles. With guava 33.5+ being loaded for production plugins and < 33.4 for these test bundles, an OSGi class-loader split would yield ClassCastException on any guava type that crosses the bundle boundary during a test. Tests are currently green, but the divergence is a latent hazard. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Collaborator
Author
|
sorry, this should have been in my repo only |
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.
Tycho 1.7.0 -> 5.0.2, Eclipse 2018-09 -> 2026-03, Java 8 -> 21,
jacoco 0.8.5 -> 0.8.12, maven-antrun 1.7 -> 3.1.0.
Drop tycho-pomless in favor of tycho-build extension. Merge tycho-extras
into tycho proper (gone since 2.0).
Move gson/guava/commons.io/commons.lang3/commons.collections from the old Orbit + erlide-libs
P2 repos into the main Eclipse release repo. Swap commons.lang ->
commons.lang3 in extra-requirements.
Drop the obsolete Neon updates and Orbit P2 repos.
Comment out wrangler module (will be deleted next).
Eclipse-generated regexFilterMatcher entries had unescaped '.git'
which matches more than intended. Use '.git'. Cosmetic; refreshes
filter IDs.