From a8bccd5e6c25034268e9cba5a44652afbaa3ea76 Mon Sep 17 00:00:00 2001 From: Egon Willighagen Date: Thu, 14 May 2026 12:37:29 +0200 Subject: [PATCH 1/5] Upgrading to CDK 2.12 --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index bd9db5f..eeeb20a 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ org.openscience.cdk cdk-scaffold cdk-scaffold - 2.9-SNAPSHOT + 2.12-SNAPSHOT jar https://github.com/cdk/cdk-scaffold @@ -26,7 +26,7 @@ ${maven.multiModuleProjectDirectory}/bundle/target/site/jacoco-aggregate/jacoco.xml https://sonarcloud.io - 2.9 + 2.12 5.9.3 2.2 0.8.15 From 34ee3bbd30a0be9eebf542297953eb7b981c90b7 Mon Sep 17 00:00:00 2001 From: Egon Willighagen Date: Thu, 14 May 2026 12:39:16 +0200 Subject: [PATCH 2/5] Updated the CI system --- .github/workflows/maven.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/maven.yml b/.github/workflows/maven.yml index 7853cb8..0a79db6 100644 --- a/.github/workflows/maven.yml +++ b/.github/workflows/maven.yml @@ -15,7 +15,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - java: [ 8, 11, 17] + java: [ 8, 11, 17, 21, 25 ] name: Java ${{ matrix.java }} steps: From ae552d0d635741431eb37aa51b9ab703f1b51364 Mon Sep 17 00:00:00 2001 From: Jonas Schaub Date: Mon, 29 Jun 2026 18:03:15 +0200 Subject: [PATCH 3/5] updates cdk-data dependency to 2.13-SNAPSHOT to get the corrected double bond stereo update and updates the failing test accordingly --- pom.xml | 2 +- .../cdk/tools/scaffold/ScaffoldGeneratorTest.java | 7 ++++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/pom.xml b/pom.xml index eeeb20a..b39494a 100644 --- a/pom.xml +++ b/pom.xml @@ -140,7 +140,7 @@ ${project.groupId} cdk-data - ${cdk.version} + 2.13-SNAPSHOT test diff --git a/src/test/java/org/openscience/cdk/tools/scaffold/ScaffoldGeneratorTest.java b/src/test/java/org/openscience/cdk/tools/scaffold/ScaffoldGeneratorTest.java index d65295a..51e955a 100644 --- a/src/test/java/org/openscience/cdk/tools/scaffold/ScaffoldGeneratorTest.java +++ b/src/test/java/org/openscience/cdk/tools/scaffold/ScaffoldGeneratorTest.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2022 Julian Zander + * Copyright (c) 2026 Julian Zander * Jonas Schaub * Achim Zielesny * Christoph Steinbeck @@ -57,7 +57,8 @@ /** * JUnit test class for the Scaffold Generator. * - * @author Julian Zander, Jonas Schaub (zanderjulian@gmx.de, jonas.schaub@uni-jena.de) + * @author Julian Zander (zanderjulian@gmx.de) + * @author Jonas Schaub (jonas.schaub@uni-jena.de) * @version 1.0.7.0 */ public class ScaffoldGeneratorTest extends ScaffoldGenerator { @@ -944,7 +945,7 @@ public void stereoFragmentationTest() throws Exception { "C1CCCC(/C(=C(/C2CCCNCCC2)\\C3CCCCC(C4CCCC(CC(CC5CCNCC5)=C)C4)CC3)/C6CCCCCNC6)CCC1", "C1CCCC(/C(=C(/C2CCCNCCC2)\\C3CCCCC(C4CCCCC4)CC3)/C5CCCCCNC5)CCC1", "C1CCCC(/C(=C(/C2CCCNCCC2)\\C3CCCCCCC3)/C4CCCCCNC4)CCC1", - "C(=C(C1CCCNCCC1)C2CCCCCCC2)C3CCCCCNC3", + "C(=C(/C1CCCNCCC1)\\C2CCCCCCC2)/C3CCCCCNC3", "C(C1CCCNCCC1)(C2CCCCCCC2)=C", "C1CCCNCCC1" }; From 1cd39cc788c6c3b2cb46c6ff1931bda57df796bf Mon Sep 17 00:00:00 2001 From: Jonas Schaub Date: Mon, 29 Jun 2026 18:03:47 +0200 Subject: [PATCH 4/5] updates documentation --- README.md | 7 ++++--- .../org/openscience/cdk/tools/scaffold/NetworkNode.java | 5 +++-- .../openscience/cdk/tools/scaffold/ScaffoldGenerator.java | 5 +++-- .../openscience/cdk/tools/scaffold/ScaffoldNetwork.java | 5 +++-- .../openscience/cdk/tools/scaffold/ScaffoldNodeBase.java | 5 +++-- .../cdk/tools/scaffold/ScaffoldNodeCollectionBase.java | 5 +++-- .../org/openscience/cdk/tools/scaffold/ScaffoldTree.java | 5 +++-- .../java/org/openscience/cdk/tools/scaffold/TreeNode.java | 5 +++-- .../cdk/tools/scaffold/GitHubWikiCodeExamplesTest.java | 2 +- 9 files changed, 26 insertions(+), 18 deletions(-) diff --git a/README.md b/README.md index 5f274db..0c3498a 100644 --- a/README.md +++ b/README.md @@ -13,9 +13,10 @@ # CDK-Scaffold Module ## Scaffold Functionalities for the Chemistry Development Kit (CDK) -Copyright © 2023 The CDK Development Team, especially +Copyright © 2023-2026 The CDK Development Team, especially [Julian Zander](mailto:zanderjulian@gmx.de), [Jonas Schaub](mailto:jonas.schaub@uni-jena.de), +[Egon Willighagen](https://github.com/egonw), [Achim Zielesny](mailto:achim.zielesny@w-hs.de), [Christoph Steinbeck](mailto:christoph.steinbeck@uni-jena.de) @@ -51,13 +52,13 @@ If you are using Maven, you can install the cdk-scaffold package using: cdk-scaffold org.openscience.cdk - 2.8 + 2.12 ``` ### Snapshot releases -For snapshot releases (currently `2.9-SNAPSHOT`) include the following fragment to define the +For snapshot releases (currently `2.13-SNAPSHOT`) include the following fragment to define the snapshot repository: ```xml diff --git a/src/main/java/org/openscience/cdk/tools/scaffold/NetworkNode.java b/src/main/java/org/openscience/cdk/tools/scaffold/NetworkNode.java index ffd6050..de5f3ee 100644 --- a/src/main/java/org/openscience/cdk/tools/scaffold/NetworkNode.java +++ b/src/main/java/org/openscience/cdk/tools/scaffold/NetworkNode.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2022 Julian Zander + * Copyright (c) 2026 Julian Zander * Jonas Schaub * Achim Zielesny * Christoph Steinbeck @@ -35,7 +35,8 @@ * @param As MoleculeType, any data type can be defined. * In our scenario, the node contains a CDK IAtomContainer. * - * @author Julian Zander, Jonas Schaub (zanderjulian@gmx.de, jonas.schaub@uni-jena.de) + * @author Julian Zander (zanderjulian@gmx.de) + * @author Jonas Schaub (jonas.schaub@uni-jena.de) * @version 1.0.0.0 */ public class NetworkNode extends ScaffoldNodeBase { diff --git a/src/main/java/org/openscience/cdk/tools/scaffold/ScaffoldGenerator.java b/src/main/java/org/openscience/cdk/tools/scaffold/ScaffoldGenerator.java index 35d6fbb..eef6b45 100644 --- a/src/main/java/org/openscience/cdk/tools/scaffold/ScaffoldGenerator.java +++ b/src/main/java/org/openscience/cdk/tools/scaffold/ScaffoldGenerator.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2022 Julian Zander + * Copyright (c) 2026 Julian Zander * Jonas Schaub * Achim Zielesny * Christoph Steinbeck @@ -69,7 +69,8 @@ * Mining for Bioactive Scaffolds with Scaffold Networks paper. * Different trees or networks can also be merged together. * - * @author Julian Zander, Jonas Schaub (zanderjulian@gmx.de, jonas.schaub@uni-jena.de) + * @author Julian Zander (zanderjulian@gmx.de) + * @author Jonas Schaub (jonas.schaub@uni-jena.de) * @version 1.0.4.0 */ public class ScaffoldGenerator { diff --git a/src/main/java/org/openscience/cdk/tools/scaffold/ScaffoldNetwork.java b/src/main/java/org/openscience/cdk/tools/scaffold/ScaffoldNetwork.java index 122e1ce..f25a56e 100644 --- a/src/main/java/org/openscience/cdk/tools/scaffold/ScaffoldNetwork.java +++ b/src/main/java/org/openscience/cdk/tools/scaffold/ScaffoldNetwork.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2022 Julian Zander + * Copyright (c) 2026 Julian Zander * Jonas Schaub * Achim Zielesny * Christoph Steinbeck @@ -38,7 +38,8 @@ * Top-level class to organise the NetworkNodes * A network can have several roots and leaves. * - * @author Julian Zander, Jonas Schaub (zanderjulian@gmx.de, jonas.schaub@uni-jena.de) + * @author Julian Zander (zanderjulian@gmx.de) + * @author Jonas Schaub (jonas.schaub@uni-jena.de) * @version 1.0.2.1 */ public class ScaffoldNetwork extends ScaffoldNodeCollectionBase { diff --git a/src/main/java/org/openscience/cdk/tools/scaffold/ScaffoldNodeBase.java b/src/main/java/org/openscience/cdk/tools/scaffold/ScaffoldNodeBase.java index 310d710..11204a5 100644 --- a/src/main/java/org/openscience/cdk/tools/scaffold/ScaffoldNodeBase.java +++ b/src/main/java/org/openscience/cdk/tools/scaffold/ScaffoldNodeBase.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2022 Julian Zander + * Copyright (c) 2026 Julian Zander * Jonas Schaub * Achim Zielesny * Christoph Steinbeck @@ -37,7 +37,8 @@ * @param As MoleculeType, any data type can be defined. * In our scenario, the node contains a CDK IAtomContainer. * - * @author Julian Zander, Jonas Schaub (zanderjulian@gmx.de, jonas.schaub@uni-jena.de) + * @author Julian Zander (zanderjulian@gmx.de) + * @author Jonas Schaub (jonas.schaub@uni-jena.de) * @version 1.0.1.0 */ public abstract class ScaffoldNodeBase { diff --git a/src/main/java/org/openscience/cdk/tools/scaffold/ScaffoldNodeCollectionBase.java b/src/main/java/org/openscience/cdk/tools/scaffold/ScaffoldNodeCollectionBase.java index 278049f..3a052d8 100644 --- a/src/main/java/org/openscience/cdk/tools/scaffold/ScaffoldNodeCollectionBase.java +++ b/src/main/java/org/openscience/cdk/tools/scaffold/ScaffoldNodeCollectionBase.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2022 Julian Zander + * Copyright (c) 2026 Julian Zander * Jonas Schaub * Achim Zielesny * Christoph Steinbeck @@ -39,7 +39,8 @@ * Base class of node collection objects. * Top-level class to organise the ScaffoldNodeBase objects. * - * @author Julian Zander, Jonas Schaub (zanderjulian@gmx.de, jonas.schaub@uni-jena.de) + * @author Julian Zander (zanderjulian@gmx.de) + * @author Jonas Schaub (jonas.schaub@uni-jena.de) * @version 1.0.2.0 */ public abstract class ScaffoldNodeCollectionBase { diff --git a/src/main/java/org/openscience/cdk/tools/scaffold/ScaffoldTree.java b/src/main/java/org/openscience/cdk/tools/scaffold/ScaffoldTree.java index f82de3f..21358fa 100644 --- a/src/main/java/org/openscience/cdk/tools/scaffold/ScaffoldTree.java +++ b/src/main/java/org/openscience/cdk/tools/scaffold/ScaffoldTree.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2022 Julian Zander + * Copyright (c) 2026 Julian Zander * Jonas Schaub * Achim Zielesny * Christoph Steinbeck @@ -35,7 +35,8 @@ * Top-level class to organise the TreeNodes as a tree. * A tree can have one root and several leaves. * - * @author Julian Zander, Jonas Schaub (zanderjulian@gmx.de, jonas.schaub@uni-jena.de) + * @author Julian Zander (zanderjulian@gmx.de) + * @author Jonas Schaub (jonas.schaub@uni-jena.de) * @version 1.0.2.0 */ public class ScaffoldTree extends ScaffoldNodeCollectionBase { diff --git a/src/main/java/org/openscience/cdk/tools/scaffold/TreeNode.java b/src/main/java/org/openscience/cdk/tools/scaffold/TreeNode.java index 1998b30..021047d 100644 --- a/src/main/java/org/openscience/cdk/tools/scaffold/TreeNode.java +++ b/src/main/java/org/openscience/cdk/tools/scaffold/TreeNode.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2022 Julian Zander + * Copyright (c) 2026 Julian Zander * Jonas Schaub * Achim Zielesny * Christoph Steinbeck @@ -34,7 +34,8 @@ * @param As MoleculeType, any data type can be defined. * In our scenario, the node contains a CDK IAtomContainer. * - * @author Julian Zander, Jonas Schaub (zanderjulian@gmx.de, jonas.schaub@uni-jena.de) + * @author Julian Zander (zanderjulian@gmx.de) + * @author Jonas Schaub (jonas.schaub@uni-jena.de) * @version 1.0.0.0 */ public class TreeNode extends ScaffoldNodeBase { diff --git a/src/test/java/org/openscience/cdk/tools/scaffold/GitHubWikiCodeExamplesTest.java b/src/test/java/org/openscience/cdk/tools/scaffold/GitHubWikiCodeExamplesTest.java index 903effd..a594363 100644 --- a/src/test/java/org/openscience/cdk/tools/scaffold/GitHubWikiCodeExamplesTest.java +++ b/src/test/java/org/openscience/cdk/tools/scaffold/GitHubWikiCodeExamplesTest.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2022 Julian Zander + * Copyright (c) 2026 Julian Zander * Jonas Schaub * Achim Zielesny * Christoph Steinbeck From 7c7ef52c35a7013258531c107a0c682740402007 Mon Sep 17 00:00:00 2001 From: Jonas Schaub Date: Thu, 2 Jul 2026 14:33:11 +0200 Subject: [PATCH 5/5] sets CDK 2.13-SNAPSHOT version for all CDK dependencies and updates the formerly failing structure to the completely inverted (but correct!) form that is now generated --- pom.xml | 4 ++-- .../openscience/cdk/tools/scaffold/ScaffoldGeneratorTest.java | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/pom.xml b/pom.xml index b39494a..21715a8 100644 --- a/pom.xml +++ b/pom.xml @@ -26,7 +26,7 @@ ${maven.multiModuleProjectDirectory}/bundle/target/site/jacoco-aggregate/jacoco.xml https://sonarcloud.io - 2.12 + 2.13-SNAPSHOT 5.9.3 2.2 0.8.15 @@ -140,7 +140,7 @@ ${project.groupId} cdk-data - 2.13-SNAPSHOT + ${cdk.version} test diff --git a/src/test/java/org/openscience/cdk/tools/scaffold/ScaffoldGeneratorTest.java b/src/test/java/org/openscience/cdk/tools/scaffold/ScaffoldGeneratorTest.java index 51e955a..1ad750b 100644 --- a/src/test/java/org/openscience/cdk/tools/scaffold/ScaffoldGeneratorTest.java +++ b/src/test/java/org/openscience/cdk/tools/scaffold/ScaffoldGeneratorTest.java @@ -945,7 +945,7 @@ public void stereoFragmentationTest() throws Exception { "C1CCCC(/C(=C(/C2CCCNCCC2)\\C3CCCCC(C4CCCC(CC(CC5CCNCC5)=C)C4)CC3)/C6CCCCCNC6)CCC1", "C1CCCC(/C(=C(/C2CCCNCCC2)\\C3CCCCC(C4CCCCC4)CC3)/C5CCCCCNC5)CCC1", "C1CCCC(/C(=C(/C2CCCNCCC2)\\C3CCCCCCC3)/C4CCCCCNC4)CCC1", - "C(=C(/C1CCCNCCC1)\\C2CCCCCCC2)/C3CCCCCNC3", + "C(=C(\\C1CCCNCCC1)/C2CCCCCCC2)\\C3CCCCCNC3", "C(C1CCCNCCC1)(C2CCCCCCC2)=C", "C1CCCNCCC1" };