Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [tycho-dev] Tycho to require Java 11



On Thu, Mar 26, 2020 at 8:04 PM Christoph Läubrich <laeubi@xxxxxxxxxxxxxx> wrote:
As you have mentioned this will affect (and break!) existing builds, so
it is not only "upgrade the build jvm", so I'm not very convinced to
move to java 11 without any additional benefit, these backward
incompatibilities since java 7 release are IMO one of the worst decisions.

The only case I envision where existing builds will break (after upgrade the build JVM) are the cases where the build uses APIs removed in Java 9+ (e.g javax.annotation) but this is actually something projects should actively care about as resolving these APIs from Java 1.8 api and installing the bundle on Java 11 will make it fail as javax.annotation will not be there and can't be found due to javax.annotation not included in the generated p2 repository as no one saw the need to do it.
If you know of other cases where it will break let me know.
 

So what are the real benefits of moving to java 11? Can we dramatically
improve code-quality/speed?

ExecutionEnvironmentConfiguration is resolved twice right now. Once for the BREE and once for the runtime JVM when run on JVM in order to handle the previously mentioned case or removed APIs. See DefaultTychoResolver.java#124 for details.
 
Can we support features currently not
possible and long demanded by the community? Are there any major
libraries (maven?) that force us because we can't upgrade any more?

Not yet. But in September Eclipse SDK will require Java 11 (and we take ecj, p2, org.eclipse.sdk.ide and etc. from it)
 

If none of the above applies I fear people will be more frustrated than
feeling helpful by forcing them to use java 11 and instead will stick at
older tycho releases.

At least we should then move to Tycho 2.0 version to clearly state the
breaking change.
Am 26.03.20 um 18:11 schrieb Aleksandar Kurtakov:
> In the light of Eclipse Platform moving to require Java 11 as a minimum
> in September [1] I think we should move Tycho prior to that.
> Reasons are:
> 1. It will affect only JVM version runtime at build time. One can freely
> target older JVMs as it's done in e.g. Eclipse Platform release where
> build is running on Java 11 but there are bundles targeting down to Java 1.3
> 2. It will help a number of projects to ensure that additional bundles
> are in project's target platform and p2 repositories for APIs removed in
> newer Java versions (xml.*, inject, annotation....)
> 3. Projects will update their CIs JVMs
> 4. Message about ecosystem move to Java 11 will get more attention and
> less people will be surprised in September.
>
> [1] https://www.eclipse.org/lists/cross-project-issues-dev/msg17532.html
>
> --
> Alexander Kurtakov
> Red Hat Eclipse Team
>
> _______________________________________________
> tycho-dev mailing list
> tycho-dev@xxxxxxxxxxx
> To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/tycho-dev
>
_______________________________________________
tycho-dev mailing list
tycho-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/tycho-dev



--
Alexander Kurtakov
Red Hat Eclipse Team

Back to the top