What is the reason for java-client in opensearch-java to be compatible with java 8?

Hi,

I am not sure if this is the correct place to ask this question. If not point me into the right place.

We are using opensearch-java client 3.5.0.

We noticed it is using a very old version of:

```

// EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
// https://projects.eclipse.org/projects/ee4j.ca
implementation("jakarta.annotation", "jakarta.annotation-api", "1.3.5")

```

Current version is 3.0.0

This will downgrade all other versions used in our repo.

Is there any reason to use such old version?
I can see that

build.gradle.kts has

targetCompatibility = JavaVersion.VERSION_1_8
sourceCompatibility = JavaVersion.VERSION_1_8

I can see java-codegen has 11.

Java version Released End of normal support
Java 8 Mar 2014 Mar 2022
Java 11 Sep 2018 Sep 2023

Keeping old version support like java 8 would make it impossible to uplift ver. 3.x.x of
jakarta.annotation-api

What are the thoughts about this?

Can I make a contribution of java-client with 11 support?

br,

//mikael petterson

Hi @eraonel , the JDK-8 support was explicit ask from number of users (due to some projects still stuck on JDK-8, even now), we actually used to have JDK-11 baseline before (personally, I would prefer to settle on JDK-21 at least). To answer your question, for 4.x (main branch) we could settle on JDK-11 (at least), but not for 3.x release line.

Hi @reta

Ok I understand. Lets hope users of jdk 1.8 have extended support for jdk :smiley:

When will branch for 4.x start?

br,

//mikael petterson

The main branch is right now positioned as 4.x however at this moment I am not aware of any plans or timelines releasing it. My guess would be OpenSearch 4.x which is also not on a horizon at the moment.