[Build] Update to Tycho 5.0.2#3602
Conversation
47dba44 to
01f9605
Compare
Test Results 4 854 files - 1 607 4 854 suites - 1 607 2h 24m 10s ⏱️ - 39m 36s Results for commit 4345242. ± Comparison against base commit 479dbc8. This pull request removes 2 tests.♻️ This comment has been updated with latest results. |
01f9605 to
f51f2c5
Compare
|
With respect to the wizard and tycho needing 21 to run this is why we in the past also ditched old Java version support but I currently have no time nor mental capacity to address the big update everything task nor seems to have someone else |
Yes, but since we are late in the release cycle and it was mentioned in #3546 (comment), that Java-17 support is intended until the next release cycle I didn't want to do that for now. And you said that Tycho 5.0 would be a prerequisite. I'm happy to help also with the big tasks in the next cycle, but for now I assume that's out of scope?
Yes, I'm currently investigating if the use of a corresponding maven-enforcer rule could at least clarify the situation and make the build fail with a meaningful message in case Java<21 is used to run the build. |
|
yes, from my pov all should go into next release. |
Do you think there is any chance to have at least minimal runtime support for Java-25 in the upcoming release? |
|
and ofc we inherit a lot of our runtime behaviour from old jdt here |
|
=> how would it help to just edit the ClassFIleConstants copy (if we still have that somewhere where i cannot find it right now) |
Too bad, but I understand. Lets discuss if we can achieve something minimal for Java-25 in |
Using enforcer does not really help, because Tycho must be configuration as an extension and e.g. Tycho's custom packaging-type classes are loaded very early when a Maven build is bootstrapped. And the enforcer rules aren't checked that early. So the build fails with an errors that tells (relatively far down in the stack) that the class file version is not supported by the runtime. |
f51f2c5 to
0f0dd8a
Compare
|
@HannesWell can you check what of this is missing on #3638 |
|
This now also includes your change from I had the impression that especially the latter fixed the remaining failure that was encountered here too. |
With that, the build is now a full success in all configurations. 🎉 I'm contemplating to implement my suggestion from #3638 (comment) and configure the generated launch configuration to require a Java version required for Tycho plus to show a info in the Editor if the Tycho java runtime requirement is higher than the targeted java version. Do you think that should be sufficient to help users to prevent build problems? Alternatively I can as the Maven folks if there is a better way to fail the build very early and clearly if the runtime java version is too low. So from my POV it would be sufficient with the two items from above. |
|
i guess we can sit it out for now and address it later with my pr after all the rebases. maybe we can postpone the trickerys you proposed for platform 25 in 2026-09 |
Do you mean sit out that after this is submitted one has to ensure 'manually' that builds run with a later java version until support for Java-17 is dropped and Java-21 required anyways or that this should go in with your big PR?
I have looked into it a bit already and shouldn't be too complicated, but at the same time I don't want to hold this back further and I'm fine to postpone it into a separate PR. In general I wonder if the number of generated launch configurations can be reduced and if the ones created by default by the IDE are sufficient, i.e. for the tests and mwe2 workflows. |
|
i fear this will lead to gigantic merge conflicts with my prs btw i fear more the maven build than the launch configs |
Part of - eclipse-xtext#3509 Co-authored-by: Christian Dietrich <christian.dietrich.opensource@gmail.com>
I just tested it locally and merged your big branch into this and there were only two small conflicts that were easy to resolve.
Understand, that sounds good. And shouldn't be a problem for a short time.
The build of Xtext istself? That shouldn't be a problem because GH workflows and the Jenkins pipeline always run at Java-21 already. The latter uses Maven toolchains to ensure compilation against the specified target Java version. |
|
@HannesWell from your pov ready to merge? |
Yes. Ready from my side. |
|
thx |

Part of