From 720500b924b1445e097f86b700c934e37445f925 Mon Sep 17 00:00:00 2001 From: b0ink <40929320+b0ink@users.noreply.github.com> Date: Tue, 16 Dec 2025 16:25:48 +1100 Subject: [PATCH 1/5] chore: update jplag to 6.3.0 --- jplag.Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jplag.Dockerfile b/jplag.Dockerfile index 58209c7eaa..e0c4437bee 100644 --- a/jplag.Dockerfile +++ b/jplag.Dockerfile @@ -1,6 +1,6 @@ FROM alpine:3.22.1 -ENV JPLAG_VERSION=6.2.0 +ENV JPLAG_VERSION=6.3.0 WORKDIR /jplag RUN apk update && \ From 9ebb350aa0de7ccc8dcb7218b8d29325ba35b694 Mon Sep 17 00:00:00 2001 From: b0ink <40929320+b0ink@users.noreply.github.com> Date: Wed, 7 Jan 2026 13:50:57 +1100 Subject: [PATCH 2/5] chore: upgrade to java 25 --- jplag.Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jplag.Dockerfile b/jplag.Dockerfile index e0c4437bee..7e98363ba3 100644 --- a/jplag.Dockerfile +++ b/jplag.Dockerfile @@ -4,7 +4,7 @@ ENV JPLAG_VERSION=6.3.0 WORKDIR /jplag RUN apk update && \ - apk add --no-cache bash openjdk21 wget && \ + apk add --no-cache bash openjdk25 wget && \ wget -O jplag-jar-with-dependencies.jar \ https://github.com/jplag/JPlag/releases/download/v$JPLAG_VERSION/jplag-$JPLAG_VERSION-jar-with-dependencies.jar From fe5b01a76f7d42077c125d63f9b288bc0ee7b5b2 Mon Sep 17 00:00:00 2001 From: b0ink <40929320+b0ink@users.noreply.github.com> Date: Wed, 7 Jan 2026 13:53:15 +1100 Subject: [PATCH 3/5] chore: use java25 base image --- jplag.Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/jplag.Dockerfile b/jplag.Dockerfile index 7e98363ba3..58c6a3e3d5 100644 --- a/jplag.Dockerfile +++ b/jplag.Dockerfile @@ -1,10 +1,10 @@ -FROM alpine:3.22.1 +FROM eclipse-temurin:25-jre-alpine ENV JPLAG_VERSION=6.3.0 WORKDIR /jplag RUN apk update && \ - apk add --no-cache bash openjdk25 wget && \ + apk add --no-cache bash wget && \ wget -O jplag-jar-with-dependencies.jar \ https://github.com/jplag/JPlag/releases/download/v$JPLAG_VERSION/jplag-$JPLAG_VERSION-jar-with-dependencies.jar From 00c776769f481f59c44ca1f0bbe52ae962a745b3 Mon Sep 17 00:00:00 2001 From: b0ink <40929320+b0ink@users.noreply.github.com> Date: Wed, 11 Feb 2026 13:46:38 +1100 Subject: [PATCH 4/5] chore: fix java version --- jplag.Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/jplag.Dockerfile b/jplag.Dockerfile index 58c6a3e3d5..1fcf747ce6 100644 --- a/jplag.Dockerfile +++ b/jplag.Dockerfile @@ -1,10 +1,10 @@ -FROM eclipse-temurin:25-jre-alpine +FROM alpine:3.23.3 ENV JPLAG_VERSION=6.3.0 WORKDIR /jplag RUN apk update && \ - apk add --no-cache bash wget && \ + apk add --no-cache bash openjdk25-jdk wget && \ wget -O jplag-jar-with-dependencies.jar \ https://github.com/jplag/JPlag/releases/download/v$JPLAG_VERSION/jplag-$JPLAG_VERSION-jar-with-dependencies.jar From bb358bf80af1a8d9a56d56edd327c85883f18f8d Mon Sep 17 00:00:00 2001 From: b0ink <40929320+b0ink@users.noreply.github.com> Date: Wed, 11 Feb 2026 15:21:23 +1100 Subject: [PATCH 5/5] chore: skip jplag version check --- app/models/similarity/unit_similarity_module.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/models/similarity/unit_similarity_module.rb b/app/models/similarity/unit_similarity_module.rb index e5f3144e7d..c003c36b56 100644 --- a/app/models/similarity/unit_similarity_module.rb +++ b/app/models/similarity/unit_similarity_module.rb @@ -306,7 +306,7 @@ def run_jplag_on_done_files(task_definition, tasks_dir, tasks_with_files, unit_c skip_cluster_string = skip_cluster_check ? '--cluster-skip' : '' # Run JPLAG on the extracted files. JPlag container should already be in the /jplag/ workdir. - docker_command = "docker exec -i jplag java -jar jplag-jar-with-dependencies.jar #{tasks_dir_split}/submissions #{base_code_string} -l #{file_lang} --similarity-threshold=#{similarity_threshold} #{min_token_string} #{skip_cluster_string} -M RUN -r #{results_dir}/#{task_definition.abbreviation}-result --overwrite" + docker_command = "docker exec -i jplag java -jar jplag-jar-with-dependencies.jar --skip-version-check #{tasks_dir_split}/submissions #{base_code_string} -l #{file_lang} --similarity-threshold=#{similarity_threshold} #{min_token_string} #{skip_cluster_string} -M RUN -r #{results_dir}/#{task_definition.abbreviation}-result --overwrite" logger.debug "Executing command: #{docker_command}" system(docker_command)