diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml
index 3eb5afb9cc..9eb56f4f3e 100644
--- a/.github/workflows/deploy.yml
+++ b/.github/workflows/deploy.yml
@@ -10,8 +10,8 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@v2
- - name: Set JAVA_HOME to included JDK 8
- run: echo JAVA_HOME=$JAVA_HOME_8_X64 >> $GITHUB_ENV
+ - name: Set JAVA_HOME to included JDK 11
+ run: echo JAVA_HOME=$JAVA_HOME_11_X64 >> $GITHUB_ENV
- run: misc/download-annis-cli.sh
env:
OS_NAME: linux
diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
index 22cac13865..6d4832825c 100644
--- a/.github/workflows/test.yml
+++ b/.github/workflows/test.yml
@@ -6,32 +6,6 @@ on:
branches: [main]
jobs:
- test_jdk8:
- name: Execute all automated tests JDK 8
- runs-on: ubuntu-24.04
- steps:
- - name: Checkout
- uses: actions/checkout@v4
- - name: Cache local Maven repository
- uses: actions/cache@v4
- with:
- path: ~/.m2/repository
- key: ${{ runner.os }}-maven-8-${{ hashFiles('**/pom.xml') }}
- restore-keys: |
- ${{ runner.os }}-maven-8-
- - name: Cache test corpora
- uses: actions/cache@v4
- with:
- path: "*.zip"
- key: ${{ runner.os }}-corpora-${{ hashFiles('misc/import-test-corpora.sh') }}
- - name: Set JAVA_HOME to included JDK 8
- run: echo JAVA_HOME=$JAVA_HOME_8_X64 >> $GITHUB_ENV
- - run: misc/download-annis-cli.sh
- env:
- OS_NAME: linux
- - run: misc/import-test-corpora.sh
- - name: Run Maven install (includes tests)
- run: mvn install
test_jdk11:
name: Execute all automated tests on JDK 11
runs-on: ubuntu-24.04
diff --git a/CHANGELOG.md b/CHANGELOG.md
index ba9f67cc62..daf4df333f 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -7,11 +7,19 @@ ANNIS is a frontend to the graphANNIS webservice, which has its [own changelog](
## [Unreleased]
+### Changed
+
+- 💥 Drop support for Java 8 (**breaking change**). The lowest supported Java version is now 11.
+ The documentation and homepage stated to use Java 11 for a while now, so this hopefully should
+ have limited impact for the users.
+- Update some of the dependencies of the project: Spring Boot to 2.7.x and OpenApi to 5.4.x.
+
### Fixed
-- Update to graphANNIS 4.1.3 which includes a bugfix for including token in subgraph even if the
+- Update to graphANNIS 4.1.4 which includes a bugfix for including token in subgraph even if the
token is not covered by a segmentation node
+
## [4.15.1] - 2025-10-10
### Fixed
diff --git a/misc/download-annis-cli.sh b/misc/download-annis-cli.sh
index ef2ea1cdb2..18d110b74c 100755
--- a/misc/download-annis-cli.sh
+++ b/misc/download-annis-cli.sh
@@ -1,6 +1,6 @@
#!/bin/bash
-GRAPHANNIS_VERSION=${1:-3.5.1}
+GRAPHANNIS_VERSION=${1:-4.1.4}
install_graphannis_cli=false
diff --git a/pom.xml b/pom.xml
index 10c17d138b..0eb6411ddd 100644
--- a/pom.xml
+++ b/pom.xml
@@ -5,7 +5,7 @@
org.springframework.boot
spring-boot-starter-parent
- 2.5.12
+ 2.7.18
@@ -35,17 +35,17 @@
UTF-8
- 1.8
+ 11
8.14.3
true
org.corpus_tools.annis.gui.AnnisUiApplication
- 4.1.3
+ 4.1.4
4.7.2
server
1.5.24
1.8.4
- 1.6.0
3.17.0
+ 1.4.200
@@ -261,7 +261,7 @@
https://github.com/korpling/graphANNIS/releases/download/v${graphannis.version}/graphannis-webservice-x86_64-unknown-linux-gnu.tar.xz
${project.build.directory}/native/
- b64c63cf721ed40c9e59dd7cba464f9ede588a2d3ae544b889e67228b6e9c7a7
+ 0ffa61fe683359faa1f5f6f7cf62f4cd05bcf5ea9d20509064c234410f5fd186
true
@@ -276,7 +276,7 @@
https://github.com/korpling/graphANNIS/releases/download/v${graphannis.version}/graphannis-webservice-x86_64-pc-windows-msvc.zip
${project.build.directory}/native/win32-x86-64/
- 3c3a259999e6b988836ee42f301364fcc4b9da995eeb4e0bab29b05523e3cb81
+ 9b4a6f425c1096de405fd6de7e35447e7b7bb09f0341640495c53c1ebaa205b4
true
@@ -291,7 +291,7 @@
https://github.com/korpling/graphANNIS/releases/download/v${graphannis.version}/graphannis-webservice-aarch64-apple-darwin.tar.xz
${project.build.directory}/native/
- 0595e02f2446315564a22982803cf05dbd6ebe4f055c6ebf0f7674e952dfd97f
+ 6e22c6faecd323aa153a41e30e27cf0733aabd4fde88c969e361cbd83fd1255f
true
@@ -306,7 +306,7 @@
https://github.com/korpling/graphANNIS/releases/download/v${graphannis.version}/graphannis-webservice-x86_64-apple-darwin.tar.xz
${project.build.directory}/native/
- 92adb2cd4e548a4316f8c6960073a5b931aa2bcf913f1e493a511195f54a90b7
+ 1401f9ee98620e3756d4b30c9730d33c50f5b6965074f59e94ef73dd2f901b7f
true
@@ -315,7 +315,7 @@
org.openapitools
openapi-generator-maven-plugin
- 5.0.1
+ 5.4.0
@@ -563,8 +563,6 @@
org.jetbrains.kotlin
kotlin-stdlib
- ${kotlin.version}
- test
@@ -594,7 +592,7 @@
org.apache.tika
tika-core
- 2.7.0
+ [3.2.2,)
@@ -607,6 +605,18 @@
com.fasterxml.jackson.dataformat
jackson-dataformat-toml
+
+
+ com.fasterxml.jackson.module
+ jackson-module-jaxb-annotations
+
+
+
+ org.openapitools
+ jackson-databind-nullable
+ 0.2.10
+ compile
+
org.apache.commons
diff --git a/src/main/java/org/corpus_tools/annis/gui/AnnisBaseUI.java b/src/main/java/org/corpus_tools/annis/gui/AnnisBaseUI.java
index 22738ea0f6..622f35247b 100644
--- a/src/main/java/org/corpus_tools/annis/gui/AnnisBaseUI.java
+++ b/src/main/java/org/corpus_tools/annis/gui/AnnisBaseUI.java
@@ -172,7 +172,8 @@ protected Map loadInstanceConfig() {
TreeMap result = new TreeMap<>();
JsonMapper mapper = new JsonMapper();
- mapper.registerModule(new JaxbAnnotationModule());
+ JaxbAnnotationModule module = new JaxbAnnotationModule();
+ mapper.registerModule(module);
mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
// get a list of all directories that contain instance informations
diff --git a/src/main/java/org/corpus_tools/annis/gui/requesthandler/BinaryRequestHandler.java b/src/main/java/org/corpus_tools/annis/gui/requesthandler/BinaryRequestHandler.java
index ce9f7062e5..a45e403f6a 100644
--- a/src/main/java/org/corpus_tools/annis/gui/requesthandler/BinaryRequestHandler.java
+++ b/src/main/java/org/corpus_tools/annis/gui/requesthandler/BinaryRequestHandler.java
@@ -132,7 +132,7 @@ public void sendResponse(VaadinSession session, VaadinRequest request,
// Execute the call and return the response
Call call;
try {
- call = client.buildCall(localVarPath, "GET", localVarQueryParams,
+ call = client.buildCall(null, localVarPath, "GET", localVarQueryParams,
localVarCollectionQueryParams, null, localVarHeaderParams, localVarCookieParams,
localVarFormParams, localVarAuthNames, null);