From 18ac737c6c30a421e21f260225e81f620da23960 Mon Sep 17 00:00:00 2001 From: Mats Rydberg Date: Tue, 5 Mar 2024 16:48:17 +0100 Subject: [PATCH] Add Neo4jVersion for 5.18 --- .../neo4j/gds/compat/_518/Neo4jProxyFactoryImpl.java | 4 ++-- .../gds/compat/_518/InMemoryStorageEngineFactory.java | 2 +- .../compat/_518/StorageEngineProxyFactoryImpl.java | 4 ++-- .../main/java/org/neo4j/gds/compat/Neo4jVersion.java | 7 ++++++- .../java/org/neo4j/gds/compat/Neo4jVersionTest.java | 4 +++- .../src/test/java/org/neo4j/gds/SysInfoProcTest.java | 11 +++++++++++ 6 files changed, 25 insertions(+), 7 deletions(-) diff --git a/compatibility/5.18/neo4j-kernel-adapter/src/main/java17/org/neo4j/gds/compat/_518/Neo4jProxyFactoryImpl.java b/compatibility/5.18/neo4j-kernel-adapter/src/main/java17/org/neo4j/gds/compat/_518/Neo4jProxyFactoryImpl.java index da5c2ef054..14bff3848b 100644 --- a/compatibility/5.18/neo4j-kernel-adapter/src/main/java17/org/neo4j/gds/compat/_518/Neo4jProxyFactoryImpl.java +++ b/compatibility/5.18/neo4j-kernel-adapter/src/main/java17/org/neo4j/gds/compat/_518/Neo4jProxyFactoryImpl.java @@ -29,7 +29,7 @@ public final class Neo4jProxyFactoryImpl implements Neo4jProxyFactory { @Override public boolean canLoad(Neo4jVersion version) { - return version == Neo4jVersion.V_RC; + return version == Neo4jVersion.V_5_18; } @Override @@ -39,6 +39,6 @@ public Neo4jProxyApi load() { @Override public String description() { - return "Neo4j RC"; + return "Neo4j 5.18"; } } diff --git a/compatibility/5.18/storage-engine-adapter/src/main/java17/org/neo4j/gds/compat/_518/InMemoryStorageEngineFactory.java b/compatibility/5.18/storage-engine-adapter/src/main/java17/org/neo4j/gds/compat/_518/InMemoryStorageEngineFactory.java index 4a11c5ab82..328c726ecf 100644 --- a/compatibility/5.18/storage-engine-adapter/src/main/java17/org/neo4j/gds/compat/_518/InMemoryStorageEngineFactory.java +++ b/compatibility/5.18/storage-engine-adapter/src/main/java17/org/neo4j/gds/compat/_518/InMemoryStorageEngineFactory.java @@ -120,7 +120,7 @@ public class InMemoryStorageEngineFactory implements StorageEngineFactory { static final String IN_MEMORY_STORAGE_ENGINE_NAME = "in-memory-518"; public InMemoryStorageEngineFactory() { - StorageEngineProxyApi.requireNeo4jVersion(Neo4jVersion.V_RC, StorageEngineFactory.class); + StorageEngineProxyApi.requireNeo4jVersion(Neo4jVersion.V_5_18, StorageEngineFactory.class); } @Override diff --git a/compatibility/5.18/storage-engine-adapter/src/main/java17/org/neo4j/gds/compat/_518/StorageEngineProxyFactoryImpl.java b/compatibility/5.18/storage-engine-adapter/src/main/java17/org/neo4j/gds/compat/_518/StorageEngineProxyFactoryImpl.java index 566eb8c11b..1825e67437 100644 --- a/compatibility/5.18/storage-engine-adapter/src/main/java17/org/neo4j/gds/compat/_518/StorageEngineProxyFactoryImpl.java +++ b/compatibility/5.18/storage-engine-adapter/src/main/java17/org/neo4j/gds/compat/_518/StorageEngineProxyFactoryImpl.java @@ -29,7 +29,7 @@ public class StorageEngineProxyFactoryImpl implements StorageEngineProxyFactory @Override public boolean canLoad(Neo4jVersion version) { - return version == Neo4jVersion.V_RC; + return version == Neo4jVersion.V_5_18; } @Override @@ -39,6 +39,6 @@ public StorageEngineProxyApi load() { @Override public String description() { - return "Storage Engine RC"; + return "Storage Engine 5.18"; } } diff --git a/neo4j-adapter/src/main/java/org/neo4j/gds/compat/Neo4jVersion.java b/neo4j-adapter/src/main/java/org/neo4j/gds/compat/Neo4jVersion.java index 84038708ca..2a507a3bed 100644 --- a/neo4j-adapter/src/main/java/org/neo4j/gds/compat/Neo4jVersion.java +++ b/neo4j-adapter/src/main/java/org/neo4j/gds/compat/Neo4jVersion.java @@ -35,9 +35,10 @@ public enum Neo4jVersion { V_5_15, V_5_16, V_5_17, + V_5_18, V_RC; - private static final int MINOR_DEV_VERSION = 18; + private static final int MINOR_DEV_VERSION = 19; static Neo4jVersion parse(String version) { var versionSegments = Pattern.compile("[.-]") @@ -76,6 +77,8 @@ static Neo4jVersion parse(String version) { return Neo4jVersion.V_5_16; case 17: return Neo4jVersion.V_5_17; + case 18: + return Neo4jVersion.V_5_18; default: if (minorVersion >= MINOR_DEV_VERSION) { return Neo4jVersion.V_RC; @@ -148,6 +151,8 @@ public String toString() { return "5.16"; case V_5_17: return "5.17"; + case V_5_18: + return "5.18"; case V_RC: return "dev"; default: diff --git a/neo4j-adapter/src/test/java/org/neo4j/gds/compat/Neo4jVersionTest.java b/neo4j-adapter/src/test/java/org/neo4j/gds/compat/Neo4jVersionTest.java index 88d16070c9..9453038c0b 100644 --- a/neo4j-adapter/src/test/java/org/neo4j/gds/compat/Neo4jVersionTest.java +++ b/neo4j-adapter/src/test/java/org/neo4j/gds/compat/Neo4jVersionTest.java @@ -45,7 +45,8 @@ class Neo4jVersionTest { "5.15.0, V_5_15", "5.16.0, V_5_16", "5.17.0, V_5_17", - "5.18.0, V_RC", + "5.18.0, V_5_18", + "5.19.0, V_RC", }) void testParse(String input, Neo4jVersion expected) { assertEquals(expected.name(), Neo4jVersion.parse(input).name()); @@ -93,6 +94,7 @@ void shouldNotRespectVersionOverride() { "5.15.0, 5, 15", "5.16.0, 5, 16", "5.17.0, 5, 17", + "5.18.0, 5, 18", } ) void semanticVersion(String input, int expectedMajor, int expectedMinor) { diff --git a/proc/sysinfo/src/test/java/org/neo4j/gds/SysInfoProcTest.java b/proc/sysinfo/src/test/java/org/neo4j/gds/SysInfoProcTest.java index ab1dcb5f7f..c813b0a195 100644 --- a/proc/sysinfo/src/test/java/org/neo4j/gds/SysInfoProcTest.java +++ b/proc/sysinfo/src/test/java/org/neo4j/gds/SysInfoProcTest.java @@ -78,6 +78,9 @@ class SysInfoProcTest extends BaseProcTest { "Neo4j 5.17", "Neo4j 5.17 (placeholder)", + "Neo4j 5.18", + "Neo4j 5.18 (placeholder)", + "Neo4j DEV", "Neo4j DEV (placeholder)", @@ -190,6 +193,14 @@ void testSysInfoProc() throws IOException { "Neo4j 5.17" ); break; + case V_5_18: + expectedCompatibilities = Set.of( + "Neo4j Settings 5.x (placeholder)", + "Neo4j Settings 5.x", + "Neo4j 5.18 (placeholder)", + "Neo4j 5.18" + ); + break; case V_RC: expectedCompatibilities = Set.of( "Neo4j Settings 5.x",