aiya6502
(Lawrence)
March 20, 2024, 11:59pm
1
Since JDK 8 and Tomcat 8 have reached end of support, some companies have implemented policies prohibiting the use of EOL (End-of-Life) software. I wonder if there are any plans to upgrade WebAPI and ATLAS to utilize newer versions of JDK and Tomcat?
Yes, this is part of our planned changes to WebAPI for the next major release (assuming 3.x). The thread that is putting together a plan for what those major, potentially breaking, changes are is discussed here:
opened 02:43PM - 27 Feb 24 UTC
Starting this thread to capture WebAPI 3.0 proposed changes New suggestions ca… n be raised in comments and those that make sense can be promoted up to the top thread. This list is not exhaustive but is geared towards the changes that would alter existing functionality in a backwards-breaking change (hence the 3.0 version bump).
### Major Version Changes
1. Update JDK to JDK 17+
2. Security is no longer optional
3. Permission Rewrite
4. Update Java Libraries to Latest Versions
5. Caching Implementation
6. Analysis Execution Pipeline via Strategus (including new Analysis Designs deprecating old)
7. Refresh Flyway Migrations: Remove old non-supported Flyway Migrations
8. Maven Dependency Management
9. Remove outdated endpoints that don't have function.
10. Make necessary changes to support multi-homed (ie: load-balanced) configuration
11. Leverage websockets to faciliate server-side changes (ie: polling for cohort generation status)
12. Integrated runtime statistics (time spent in queries, time spent processing results, cache hits/misses) so we can understand runtime dynamics.
13. Move away from storing execution status in job table.
### Notes
This section captures notes about items in the above list, as well as reasons why something is not in the list.
1. Module System: There has been discussion about making WebAPI more modular to support customization. While this is something that could be discussed as a 3.x feature, it's not something that currently exists in 2.x. This Issue is focusing on current functionality that changes in a backwards-breaking way. A better approach implementing modules (or miicro services) would be to start a new project with that architecture in mind).
However, there are several other java8sdk maintainers that keep java8 up and running:
Liberica JDK.
Azul Zulu.
Red Hat OpenJDK.
Eclipse Temurin.
SapMachine.
Amazon Corretto.
Microsoft Build of OpenJDK.
IBM Semeru Runtimes.