From a67f148e675e8fed0435aad0cb5781bb052c452a Mon Sep 17 00:00:00 2001 From: danielfeismann Date: Mon, 4 Aug 2025 16:39:26 +0200 Subject: [PATCH 1/7] update to java 21 --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index f9c907d55..9b6aac65d 100644 --- a/build.gradle +++ b/build.gradle @@ -16,7 +16,7 @@ plugins { ext { //version (changing these should be considered thoroughly!) - javaVersion = JavaVersion.VERSION_17 + javaVersion = JavaVersion.VERSION_21 groovyVersion = "4.0" groovyBinaryVersion = "4.0.28" From c7c3dad0ef4b9d6001b13e7ed19099dadc5703a2 Mon Sep 17 00:00:00 2001 From: danielfeismann Date: Mon, 4 Aug 2025 16:40:06 +0200 Subject: [PATCH 2/7] use individual WKBReader since they are not thread-safe --- .../datamodel/io/factory/timeseries/SqlIdCoordinateFactory.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/edu/ie3/datamodel/io/factory/timeseries/SqlIdCoordinateFactory.java b/src/main/java/edu/ie3/datamodel/io/factory/timeseries/SqlIdCoordinateFactory.java index 3780069a4..81d7ee963 100644 --- a/src/main/java/edu/ie3/datamodel/io/factory/timeseries/SqlIdCoordinateFactory.java +++ b/src/main/java/edu/ie3/datamodel/io/factory/timeseries/SqlIdCoordinateFactory.java @@ -20,13 +20,13 @@ public class SqlIdCoordinateFactory extends IdCoordinateFactory { private static final String COORDINATE_ID = "id"; private static final String COORDINATE = "coordinate"; - private final WKBReader reader = new WKBReader(); @Override protected IdCoordinateInput buildModel(SimpleFactoryData data) { try { int coordinateId = data.getInt(COORDINATE_ID); byte[] byteArr = WKBReader.hexToBytes(data.getField(COORDINATE)); + WKBReader reader = new WKBReader(); Coordinate coordinate = reader.read(byteArr).getCoordinate(); From 8f1dd8e0eaf76ead3cb02bfd88ec36f284e3199a Mon Sep 17 00:00:00 2001 From: danielfeismann Date: Mon, 4 Aug 2025 16:43:54 +0200 Subject: [PATCH 3/7] use CsvFileConnector instead of deprecated getBaseDirectory() --- .../datamodel/io/naming/DefaultDirectoryHierarchyTest.groovy | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/test/groovy/edu/ie3/datamodel/io/naming/DefaultDirectoryHierarchyTest.groovy b/src/test/groovy/edu/ie3/datamodel/io/naming/DefaultDirectoryHierarchyTest.groovy index 8852605c4..d24a56605 100644 --- a/src/test/groovy/edu/ie3/datamodel/io/naming/DefaultDirectoryHierarchyTest.groovy +++ b/src/test/groovy/edu/ie3/datamodel/io/naming/DefaultDirectoryHierarchyTest.groovy @@ -6,6 +6,7 @@ package edu.ie3.datamodel.io.naming import edu.ie3.datamodel.exceptions.FileException +import edu.ie3.datamodel.io.connectors.CsvFileConnector import edu.ie3.datamodel.io.naming.DefaultDirectoryHierarchy import edu.ie3.util.io.FileIOUtils import org.apache.commons.io.FilenameUtils @@ -39,13 +40,14 @@ class DefaultDirectoryHierarchyTest extends Specification { given: def gridName = "test_grid" def basePath = basePathString(gridName) + def connector = new CsvFileConnector(basePath) when: def dfh = new DefaultDirectoryHierarchy(tmpDirectory, gridName) then: try { - dfh.baseDirectory.get() == basePath + connector.baseDirectory == basePath dfh.subDirectories.size() == 9 dfh.subDirectories.get(basePath.resolve(Path.of("input", "grid"))) == true dfh.subDirectories.get(basePath.resolve(Path.of("input", "participants"))) == true From fbed23ac1c6b970bed5fae553450232f86d5bc2a Mon Sep 17 00:00:00 2001 From: danielfeismann Date: Mon, 4 Aug 2025 16:45:24 +0200 Subject: [PATCH 4/7] remove deprecated method --- .../io/naming/DefaultDirectoryHierarchy.java | 12 ------------ .../edu/ie3/datamodel/io/naming/FileHierarchy.java | 9 --------- .../datamodel/io/naming/FlatDirectoryHierarchy.java | 12 ------------ 3 files changed, 33 deletions(-) diff --git a/src/main/java/edu/ie3/datamodel/io/naming/DefaultDirectoryHierarchy.java b/src/main/java/edu/ie3/datamodel/io/naming/DefaultDirectoryHierarchy.java index fff633bbe..78d1cbf43 100644 --- a/src/main/java/edu/ie3/datamodel/io/naming/DefaultDirectoryHierarchy.java +++ b/src/main/java/edu/ie3/datamodel/io/naming/DefaultDirectoryHierarchy.java @@ -172,18 +172,6 @@ public void createDirs(boolean withOptionals) throws IOException { } } - /** - * Gives the {@link #baseDirectory}). - * - * @return An Option to the base directory as a string - * @deprecated Use {@link edu.ie3.datamodel.io.connectors.CsvFileConnector} instead - */ - @Deprecated(since = "3.0", forRemoval = true) - @Override - public Optional getBaseDirectory() { - return Optional.of(this.baseDirectory); - } - /** * Gives the correct sub directory (w.r.t. {@link #baseDirectory}) for the provided class. * diff --git a/src/main/java/edu/ie3/datamodel/io/naming/FileHierarchy.java b/src/main/java/edu/ie3/datamodel/io/naming/FileHierarchy.java index d13e911c8..1c9502f67 100644 --- a/src/main/java/edu/ie3/datamodel/io/naming/FileHierarchy.java +++ b/src/main/java/edu/ie3/datamodel/io/naming/FileHierarchy.java @@ -23,13 +23,4 @@ public interface FileHierarchy { * @return An Option to the regarding sub directory as a string */ Optional getSubDirectory(Class cls); - - /** - * Determines the base directory. - * - * @return An option to the base directory - * @deprecated Use {@link edu.ie3.datamodel.io.connectors.CsvFileConnector} instead - */ - @Deprecated(since = "3.0", forRemoval = true) - Optional getBaseDirectory(); } diff --git a/src/main/java/edu/ie3/datamodel/io/naming/FlatDirectoryHierarchy.java b/src/main/java/edu/ie3/datamodel/io/naming/FlatDirectoryHierarchy.java index eab4b6efd..18dd38621 100644 --- a/src/main/java/edu/ie3/datamodel/io/naming/FlatDirectoryHierarchy.java +++ b/src/main/java/edu/ie3/datamodel/io/naming/FlatDirectoryHierarchy.java @@ -22,16 +22,4 @@ public class FlatDirectoryHierarchy implements FileHierarchy { public Optional getSubDirectory(Class cls) { return Optional.empty(); } - - /** - * Gives the baseDirectory, which is Empty. - * - * @return An Option to the base directory as a string - * @deprecated Use {@link edu.ie3.datamodel.io.connectors.CsvFileConnector} instead - */ - @Deprecated(since = "3.0", forRemoval = true) - @Override - public Optional getBaseDirectory() { - return Optional.empty(); - } } From b3f519c1cc4e814be752e343358cd5e39e686d0a Mon Sep 17 00:00:00 2001 From: danielfeismann Date: Mon, 4 Aug 2025 16:47:51 +0200 Subject: [PATCH 5/7] change jave version within ci-pipeline --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index d6da3451a..2d9d1877a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -34,7 +34,7 @@ jobs: uses: actions/setup-java@v4 with: distribution: 'temurin' - java-version: 17 + java-version: 21 - name: Setup Gradle uses: gradle/actions/setup-gradle@v4 From cbac795f7fc17b2e066901483858262db5ba92b8 Mon Sep 17 00:00:00 2001 From: danielfeismann Date: Thu, 7 Aug 2025 14:03:34 +0200 Subject: [PATCH 6/7] update gettingstarted.md --- docs/readthedocs/gettingstarted.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/readthedocs/gettingstarted.md b/docs/readthedocs/gettingstarted.md index 2dea1825a..b27e98199 100644 --- a/docs/readthedocs/gettingstarted.md +++ b/docs/readthedocs/gettingstarted.md @@ -5,7 +5,7 @@ If you feel, something is missing, please contact us! ## Requirements -Java > v 17 +Java > v 21 ## Where to get From ae52e7a4b6b2ad4464ec1b14d5aaeedafdb3d490 Mon Sep 17 00:00:00 2001 From: danielfeismann Date: Thu, 7 Aug 2025 16:16:48 +0200 Subject: [PATCH 7/7] fix requirements --- docs/readthedocs/gettingstarted.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/readthedocs/gettingstarted.md b/docs/readthedocs/gettingstarted.md index b27e98199..3f4b662ac 100644 --- a/docs/readthedocs/gettingstarted.md +++ b/docs/readthedocs/gettingstarted.md @@ -5,7 +5,7 @@ If you feel, something is missing, please contact us! ## Requirements -Java > v 21 +PowerSystemDataModel requires Java to be at least Version 21. ## Where to get