surrealdb / surrealdb.java

SurrealDB SDK for Java
https://surrealdb.com
Apache License 2.0
67 stars 21 forks source link

Evaluate reducing required java version #58

Closed phughk closed 1 week ago

phughk commented 1 year ago

We require users to use Java 17 - the latest LTS-supported Java language version and runtime. However, internally in the driver, we probably aren't using any new functionality beyond Java 8. We can lower the required version of Java to support more projects.

Java version support table indicates that Java 8 can be used until 2030.

This issue is used both as a point of discussion and also as a ticket to undertake changing the required Java version.

phughk commented 1 year ago

Adding to this ticket - we probably want to keep 15 as the dev SDK and 8 as the binary SDK. Because we are using multi-line strings.

Divine1 commented 9 months ago

@phughk

Spring boot which is preferred by most folks supports only Jdk 17 and greater version from V3.0 and folks are migrating to V3.0. if underlying framework requires Jdk 17, there is no point in supporting prior versions of Jdk .

is it ok to assume folks who wants to use latest technologies (For eg. surrealdb) would start with jdk 17 and not previous versions?

phughk commented 8 months ago

It's a difficult one to answer. Java 8 has a really long support timeline. We always have the option to support whichever versions we want. But if we want to be able to onboard legacy codebases, then supporting older versions is beneficial.

Not all projects will be new - some may be splinter projects from a shared codebase that are struggling to upgrade java versions. So the earlier the supported version the better. But obviously this has caveats, such as not being able to use the latest functionality. The latest APIs for native code invocation are particularly of interest, for example.

Basically this is still to be decided, but it is good to know about Spring 3 supported version - thank you for sharing that!

emmanuel-keller commented 1 week ago

The SurrealDB driver v0.2.0 supports every version of JAVA since 8.0