Upgrading to a modern Java
Patchworks is built on the Java platform. Java is one of the most popular programming languages, and is certainly one of the best for developing large code bases. Up until recently Patchworks was using Java version 8 (originally released in 2014), but now it is time to upgrade to a more modern version.

Patchworks was anchored to Java 8 for a long time due to BeanShell version 2 not being compatible with newer versions. Now that Patchworks has switched to BeanShell version 3 it is possible to run Patchworks on versions of Java starting at version 8 and up to and including the latest long-term supported release Java 21.
Modern Java versions support new language and library features and many performance enhancements, and some of these would be beneficial to Patchworks. Starting on September 1, 2025, Patchworks development will be switching over to use Java version 21. Java 21 was released in 2023 and is a solid, proven product.
One of the greatest strengths of the Java platform is that backwards compatibility has always been a main priority, which is why Java programs compiled using older versions (e.g. version 8) can still run with newer versions (e.g. version 21). However, the opposite is not true. You cannot run a program that has been compiled with Java 21 using an older Java runtime (such as Java 17 or Java 8).
In order for this to work all customers will need to install a version of Java that is at least as new as the development version, namely Java 21. This should not be a problem, because it is easy to download and install Java from a number of different vendors (see https://whichjdk.com/ for some opinions). At the moment I recommend the Temurin version of Java 21 from the Adoptium group. The download is available in the ZIP or MSI packaging formats, with the MSI installer being more convenient for a seamless install experience. The download is also available as a Java Runtime Environment (JRE) or Java Development Kit (JDK). The JRE is smaller and contains the programs and libraries required to run Java applications and is all that you need to run Patchworks. The JDK is larger and contains the JRE plus all the compilers and tools required to develop your own Java applications.
Every two years a new version of Java is released that is designated for long-term support. For reasons of stability and security it is good to stick with a long term support version, such as Java version 21. Java 25 LTS will be released on September 16, 2025, but it will be prudent to wait until testing has proven this to be a reliable version. In the future, Patchworks may upgrade to an even newer versions of Java, depending on the benefit of the newer features, and this will be coordinated with a new release announcement.
Contact Patchworks technical support if you have any other questions or if your organization is unable to upgrade to a new version of Java.