Skip to content

Commit 63efc24

Browse files
committed
Release v3.0.0: SMSD 3.1.0, CDK 2.12, full modernization
- Bump version to 3.0.0 (major: breaking dependency changes) - Update SMSD dependency to 3.1.0 (com.bioinceptionlabs) - Update copyright headers to 2007-2026 across all source files - Update author email to asad.rahman@bioinceptionlabs.com - Update CLI banner and metadata to BioInception - Remove stale OSSRH/Sonatype publishing profile - Update Maven plugins: compiler 3.13.0, surefire 3.5.2, assembly 3.7.1 - Update Maven prerequisite to 3.8 - Modernize GitHub Actions: checkout@v4, setup-java@v4, temurin JDK 11 - Remove redundant .travis.yml (GitHub Actions is primary CI) - Fix nb-configuration.xml license hint (gpl30 -> lgpl30) - Update .gitignore with modern IDE entries - Refresh README.md for v3.0.0 - Clean remaining System.out imports in non-CLI files - Fix System.exit(1) -> System.exit(0) for normal CLI termination
1 parent 19af83b commit 63efc24

276 files changed

Lines changed: 998 additions & 1185 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/maven-ci.yml

Lines changed: 30 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,30 @@
1-
# This workflow will build a package using Maven and then publish it to GitHub packages when a release is created
2-
# For more information see: https://github.com/actions/setup-java#apache-maven-with-a-settings-path
3-
4-
name: Maven Package
5-
6-
on:
7-
push:
8-
branches:
9-
- 'master'
10-
# release:
11-
# types: [created]
12-
13-
jobs:
14-
build:
15-
16-
runs-on: ubuntu-latest
17-
18-
steps:
19-
- uses: actions/checkout@v2
20-
- name: Set up JDK 11
21-
uses: actions/setup-java@v1
22-
with:
23-
java-version: 11.0.4
24-
server-id: github # Value of the distributionManagement/repository/id field of the pom.xml
25-
settings-path: ${{ github.workspace }} # location for the settings.xml file
26-
27-
- name: Build with Maven
28-
run: mvn -B package -Dmaven.test.skip=true --file pom.xml
29-
30-
- name: Publish to GitHub Packages Apache Maven
31-
run: mvn deploy -Dmaven.test.skip=true -s $GITHUB_WORKSPACE/settings.xml
32-
env:
33-
GITHUB_TOKEN: ${{ github.token }}
1+
# Build and publish to GitHub Packages on push to master
2+
3+
name: Maven Package
4+
5+
on:
6+
push:
7+
branches:
8+
- 'master'
9+
10+
jobs:
11+
build:
12+
runs-on: ubuntu-latest
13+
14+
steps:
15+
- uses: actions/checkout@v4
16+
- name: Set up JDK 11
17+
uses: actions/setup-java@v4
18+
with:
19+
java-version: '11'
20+
distribution: 'temurin'
21+
server-id: github
22+
settings-path: ${{ github.workspace }}
23+
24+
- name: Build with Maven
25+
run: mvn -B clean package --file pom.xml
26+
27+
- name: Publish to GitHub Packages Apache Maven
28+
run: mvn deploy -Dmaven.test.skip=true -s $GITHUB_WORKSPACE/settings.xml
29+
env:
30+
GITHUB_TOKEN: ${{ github.token }}

.gitignore

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,18 +11,30 @@
1111
# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
1212
hs_err_pid*
1313

14-
#MAC files
14+
# Mac files
1515
.DS_Store
16+
17+
# IDE files
1618
/nbproject/private/
19+
*.iml
20+
.idea/
21+
.vscode/
22+
23+
# Editor swap/backup files
24+
*.swp
25+
*.swo
26+
*.bak
27+
28+
# Build output
1729
/dist/
1830
/Output/
1931
/store/
2032
/temp/
2133
/build/
34+
/target/
2235
/rdt/core/target/
2336
/rdt/exec/target/
2437
/rdt/nbproject/
2538
/rdt/core/Output/
2639
/rdt/target/
2740
/rdt/Output/
28-
/target/

.travis.yml

Lines changed: 0 additions & 15 deletions
This file was deleted.

README.md

Lines changed: 42 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
Introduction
22
============
33

4-
`Reaction Decoder Tool (RDT)`
5-
-----------------------------
4+
`Reaction Decoder Tool (RDT) v3.0.0`
5+
--------------------------------------
66

77
`1. Atom Atom Mapping (AAM) Tool`
88

9-
`2. Reaction Annotator (Extract Bond Changes, Identify & Mark Reaction Centres) and `
9+
`2. Reaction Annotator (Extract Bond Changes, Identify & Mark Reaction Centres)`
1010

1111
`3. Reaction Comparator (Reaction Similarity based on the Bond Changes, Reaction Centres or Substructures)`
1212

@@ -18,75 +18,55 @@ e-mail: asad.rahman@bioinceptionlabs.com
1818
Installation
1919
============
2020

21-
`a)` You could [download the latest RDT] (https://github.com/asad/ReactionDecoder/releases) release version from the github.
21+
`a)` You could [download the latest RDT](https://github.com/asad/ReactionDecoder/releases) release version from the github.
2222

23-
`b)` Compile the core code using `maven`?:
24-
25-
`POM.xml` commands
23+
`b)` Compile the core code using `maven`:
2624

2725
```
28-
29-
use POM.xml and mvn commands to build your project
26+
use pom.xml and mvn commands to build your project
3027
1) mvn -DskipTests=true install (skip test)
3128
2) mvn install (include test)
3229
3) mvn clean (clean)
3330
4) mvn package
3431
5) mvn -P local clean install -DskipTests=true (fast single jar compilation, skip test)
3532
6) mvn -P local clean install (single jar compilation with test)
36-
3733
```
3834

3935
Atom Atom Mapping using Java API
4036
=================================
4137

42-
View mapped reaction using [CDKDEPICT Tool](http://www.simolecule.com/cdkdepict/depict.html).
43-
44-
```
45-
46-
public static void main(String[] args) throws CloneNotSupportedException, CDKException, AssertionError, Exception {
47-
final SmilesGenerator sg = new SmilesGenerator(SmiFlavor.AtomAtomMap);
48-
final SmilesParser smilesParser = new SmilesParser(DefaultChemObjectBuilder.getInstance());
49-
50-
String reactionSM = "CC(=O)C=C.CC=CC=C>>CC1CC(CC=C1)C(C)=O";
51-
String reactionName = "Test";
52-
53-
IReaction cdkReaction = smilesParser.parseReactionSmiles(reactionSM);
54-
55-
IReaction performAtomAtomMapping = performAtomAtomMapping(cdkReaction, reactionName);
56-
System.out.println("AAM sm: " + sg.create(performAtomAtomMapping));
57-
}
58-
59-
/**
60-
*
61-
* @param cdkReaction
62-
* @param reactionName
63-
* @return
64-
* @throws InvalidSmilesException
65-
* @throws AssertionError
66-
* @throws Exception
67-
*/
68-
public static IReaction performAtomAtomMapping(IReaction cdkReaction, String reactionName) throws InvalidSmilesException, AssertionError, Exception {
69-
cdkReaction.setID(reactionName);
70-
/*
71-
RMT for the reaction mapping
72-
*/
73-
boolean forceMapping = true;//Overrides any mapping present int the reaction
74-
boolean generate2D = true;//2D perception of the stereo centers
75-
boolean generate3D = false;//2D perception of the stereo centers
76-
StandardizeReaction standardizeReaction = new StandardizeReaction(); //Standardize the reaction
77-
ReactionMechanismTool rmt = new ReactionMechanismTool(cdkReaction, forceMapping, generate2D, generate3D, standardizeReaction);
78-
MappingSolution s = rmt.getSelectedSolution();//Fetch the AAM Solution
79-
IReaction reaction = s.getReaction();//Fetch Mapped Reaction
80-
return reaction;
81-
}
82-
38+
```java
39+
public static void main(String[] args) throws Exception {
40+
final SmilesGenerator sg = new SmilesGenerator(SmiFlavor.AtomAtomMap);
41+
final SmilesParser smilesParser = new SmilesParser(DefaultChemObjectBuilder.getInstance());
42+
43+
String reactionSM = "CC(=O)C=C.CC=CC=C>>CC1CC(CC=C1)C(C)=O";
44+
String reactionName = "DielsAlder";
45+
46+
IReaction cdkReaction = smilesParser.parseReactionSmiles(reactionSM);
47+
48+
IReaction performAtomAtomMapping = performAtomAtomMapping(cdkReaction, reactionName);
49+
System.out.println("AAM sm: " + sg.create(performAtomAtomMapping));
50+
}
51+
52+
public static IReaction performAtomAtomMapping(IReaction cdkReaction, String reactionName) throws Exception {
53+
cdkReaction.setID(reactionName);
54+
boolean forceMapping = true;
55+
boolean generate2D = true;
56+
boolean generate3D = false;
57+
StandardizeReaction standardizeReaction = new StandardizeReaction();
58+
ReactionMechanismTool rmt = new ReactionMechanismTool(cdkReaction, forceMapping, generate2D, generate3D, standardizeReaction);
59+
MappingSolution s = rmt.getSelectedSolution();
60+
IReaction reaction = s.getReaction();
61+
return reaction;
62+
}
8363
```
8464

8565

8666
License
8767
=======
8868

89-
`RDT` is released under the [GNU General Public License version 3](http://www.gnu.org/licenses/gpl.html).
69+
`RDT` is released under the [GNU Lesser General Public License (LGPL) version 3.0](https://www.gnu.org/licenses/lgpl-3.0.en.html).
9070

9171
```
9272
Author: Syed Asad Rahman
@@ -113,40 +93,40 @@ Sub-commands
11393
-------------
11494

11595
`AAM using SMILES`
116-
96+
11797
```
118-
java -jar ReactionDecoder.jar -Q SMI -q "CC(O)CC(=O)OC(C)CC(O)=O.O[H]>>[H]OC(=O)CC(C)O.CC(O)CC(O)=O" -g -c -j AAM -f TEXT
98+
java -jar rdt-3.0.0-jar-with-dependencies.jar -Q SMI -q "CC(O)CC(=O)OC(C)CC(O)=O.O[H]>>[H]OC(=O)CC(C)O.CC(O)CC(O)=O" -g -c -j AAM -f TEXT
11999
```
120100

121101
`Perform AAM` for Transporters
122102
-------------
123103

124104
`AAM using SMILES` (accept mapping with no bond changes -b)
125-
105+
126106
```
127-
java -jar ReactionDecoder.jar -Q SMI -q "O=C(O)C(N)CC(=O)N.O=C(O)C(N)CS>>C(N)(CC(=O)N)C(=O)O.O=C(O)C(N)CS" -b -g -c -j AAM -f TEXT
107+
java -jar rdt-3.0.0-jar-with-dependencies.jar -Q SMI -q "O=C(O)C(N)CC(=O)N.O=C(O)C(N)CS>>C(N)(CC(=O)N)C(=O)O.O=C(O)C(N)CS" -b -g -c -j AAM -f TEXT
128108
```
129-
109+
130110
`Annotate Reaction using SMILES`
131111
---------------------------------
132112

133113
```
134-
java -jar ReactionDecoder.jar -Q SMI -q "CC(O)CC(=O)OC(C)CC(O)=O.O[H]>>[H]OC(=O)CC(C)O.CC(O)CC(O)=O" -g -c -j ANNOTATE -f XML
114+
java -jar rdt-3.0.0-jar-with-dependencies.jar -Q SMI -q "CC(O)CC(=O)OC(C)CC(O)=O.O[H]>>[H]OC(=O)CC(C)O.CC(O)CC(O)=O" -g -c -j ANNOTATE -f XML
135115
```
136116

137117

138118
`Compare Reactions`
139119
--------------------
140120

141121
`Compare Reactions using SMILES with precomputed AAM mappings`
142-
122+
143123
```
144-
java -jar ReactionDecoder.jar -Q RXN -q example/ReactionDecoder_mapped.rxn -T RXN -t example/ReactionDecoder_mapped.rxn -j COMPARE -f BOTH -u
124+
java -jar rdt-3.0.0-jar-with-dependencies.jar -Q RXN -q example/ReactionDecoder_mapped.rxn -T RXN -t example/ReactionDecoder_mapped.rxn -j COMPARE -f BOTH -u
145125
```
146126

147127

148128
`Compare Reactions using RXN files`
149-
129+
150130
```
151-
java -jar ReactionDecoder.jar -Q RXN -q example/ReactionDecoder_mapped.rxn -T RXN -t example/ReactionDecoder_mapped.rxn -j COMPARE -f BOTH
131+
java -jar rdt-3.0.0-jar-with-dependencies.jar -Q RXN -q example/ReactionDecoder_mapped.rxn -T RXN -t example/ReactionDecoder_mapped.rxn -j COMPARE -f BOTH
152132
```

nb-configuration.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,6 @@
1616
<org-netbeans-modules-whitelist.whitelist-oracle>false</org-netbeans-modules-whitelist.whitelist-oracle>
1717
<org-netbeans-modules-javascript2-requirejs.enabled>true</org-netbeans-modules-javascript2-requirejs.enabled>
1818
<netbeans.checkstyle.format>true</netbeans.checkstyle.format>
19-
<netbeans.hint.license>gpl30</netbeans.hint.license>
19+
<netbeans.hint.license>lgpl30</netbeans.hint.license>
2020
</properties>
2121
</project-shared-configuration>

0 commit comments

Comments
 (0)