From 228a16d4b02fb69a86e6b9844578102ef78c808b Mon Sep 17 00:00:00 2001
From: Jonas Schaub <44881147+JonasSchaub@users.noreply.github.com>
Date: Thu, 2 Nov 2023 13:15:38 +0100
Subject: [PATCH] Updated readme, added sonar cloud support, added logo;
---
.github/workflows/SonarCloud.yml | 37 +++++++
README.md | 164 ++++++++++---------------------
logo/SRU_logo.jpg | Bin 0 -> 347498 bytes
logo/SRU_logo.png | Bin 0 -> 331698 bytes
pom.xml | 2 +
5 files changed, 93 insertions(+), 110 deletions(-)
create mode 100644 .github/workflows/SonarCloud.yml
create mode 100644 logo/SRU_logo.jpg
create mode 100644 logo/SRU_logo.png
diff --git a/.github/workflows/SonarCloud.yml b/.github/workflows/SonarCloud.yml
new file mode 100644
index 0000000..4e17327
--- /dev/null
+++ b/.github/workflows/SonarCloud.yml
@@ -0,0 +1,37 @@
+name: SonarCloud
+on:
+ push:
+ branches:
+ - master
+ pull_request:
+ types: [opened, synchronize, reopened]
+jobs:
+ build:
+ name: Build and analyze
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v3
+ with:
+ fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis
+ - name: Set up JDK 17
+ uses: actions/setup-java@v3
+ with:
+ java-version: 17
+ distribution: 'zulu' # Alternative distribution options are available.
+ - name: Cache SonarCloud packages
+ uses: actions/cache@v3
+ with:
+ path: ~/.sonar/cache
+ key: ${{ runner.os }}-sonar
+ restore-keys: ${{ runner.os }}-sonar
+ - name: Cache Maven packages
+ uses: actions/cache@v3
+ with:
+ path: ~/.m2
+ key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
+ restore-keys: ${{ runner.os }}-m2
+ - name: Build and analyze
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # Needed to get PR information, if any
+ SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
+ run: mvn -B verify org.sonarsource.scanner.maven:sonar-maven-plugin:sonar -Dsonar.projectKey=JonasSchaub_SugarRemoval
\ No newline at end of file
diff --git a/README.md b/README.md
index 8a71b3b..1c3f9b3 100644
--- a/README.md
+++ b/README.md
@@ -1,16 +1,24 @@
+[![DOI](https://zenodo.org/badge/246610380.svg)](https://zenodo.org/doi/10.5281/zenodo.7082113)
+[![Javadoc](https://img.shields.io/badge/JavaDoc-Online-green)](https://jonasschaub.github.io/SugarRemoval/javadoc/latest/index.html)
+[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
+[![Maintenance](https://img.shields.io/badge/Maintained%3F-yes-blue.svg)](https://GitHub.com/JonasSchaub/SugarRemoval/graphs/commit-activity)
+[![build](https://github.com/JonasSchaub/SugarRemoval/actions/workflows/maven.yml/badge.svg)](https://github.com/JonasSchaub/SugarRemoval/actions/workflows/maven.yml)
+[![GitHub issues](https://img.shields.io/github/issues/JonasSchaub/SugarRemoval.svg)](https://GitHub.com/JonasSchaub/SugarRemoval/issues/)
+[![GitHub contributors](https://img.shields.io/github/contributors/JonasSchaub/SugarRemoval.svg)](https://GitHub.com/JonasSchaub/SugarRemoval/graphs/contributors/)
+[![GitHub release](https://img.shields.io/github/release/JonasSchaub/SugarRemoval.svg)](https://github.com/JonasSchaub/SugarRemoval/releases/)
+[![Maven Central](https://maven-badges.herokuapp.com/maven-central/io.github.jonasschaub/SugarRemoval/badge.svg)](https://maven-badges.herokuapp.com/maven-central/io.github.jonasschaub/SugarRemoval)
+[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=JonasSchaub_SugarRemoval&metric=alert_status)](https://sonarcloud.io/summary/new_code?id=JonasSchaub_SugarRemoval)
+
+![SRU_logo](./logo/SRU_logo.jpg)
# Sugar Removal Utility (SRU)
##### An algorithmic approach for in silico removal of circular and linear sugars from molecular structures
## Contents of this document
* [Description](#Description)
-* [Additional notes on deglycosylation and the SRU](#Additional-notes-on-deglycosylation-and-the-SRU)
- * [New option for keto groups on circular sugars](#New-option-for-keto-groups-on-circular-sugars)
- * [What is a sugar and what is not a sugar?](#What-is-a-sugar-and-what-is-not-a-sugar?)
- * [One known pitfall of the algorithm](#One-known-pitfall-of-the-algorithm)
* [Contents of this repository](#Contents-of-this-repository)
+ * [Sources](#Sources)
* [SugarRemovalUtility CMD App](#SugarRemovalUtility-CMD-App)
* [Natural product test set](#Natural-product-test-set)
- * [Sources](#Sources)
* [Installation](#Installation)
* [Command line application JAR](#Command-line-application-JAR)
* [Source code](#Source-code)
@@ -20,114 +28,31 @@
## Description
Here, we present source code and examples for the Sugar Removal Utility, an algorithmic approach for in silico
removal of circular and linear sugars from molecular structures, as described in [Schaub, J., Zielesny, A., Steinbeck,
-C. et al. Too sweet: cheminformatics for deglycosylation in natural products. J Cheminform 12, 67 (2020).
-https://doi.org/10.1186/s13321-020-00467-y](https://doi.org/10.1186/s13321-020-00467-y).
-
The algorithm's implementation is available in three forms: As a web application, a command-line application, and
-as source code readily usable for other software development projects. Every form is open and free to use. The web
+C. et al. Too sweet: cheminformatics for deglycosylation in natural products. J Cheminform 12, 67 (2020)](https://doi.org/10.1186/s13321-020-00467-y).
+
The algorithm's implementation is available in three forms: As a web application, a command-line application, and
+as source code readily usable for other software development projects. Every form is open and free to use.
+The command-line application along with its source code
+and the sugar removal algorithm's main implementation are part of this repository. The web
application is available at [https://sugar.naturalproducts.net](https://sugar.naturalproducts.net) and its source code
-can be found [here](https://github.com/mSorok/SugarRemovalWeb). The command-line application along with its source code
-and the sugar removal algorithm's main implementation are part of this repository.
-Further description on the implemented sugar removal algorithm and its various configurations can be found in the article
-named above.
-
The Sugar Removal Utility is also available in the open Java rich client application MORTAR ('MOlecule fRagmenTation fRamework')
+can be found [here](https://github.com/mSorok/SugarRemovalWeb).
+Further description of the implemented sugar removal algorithm and its various configurations can be found in the article
+referenced above.
+
The Sugar Removal Utility is also available in the open Java rich client application MORTAR ('MOlecule fRagmenTation fRamework')
where in silico molecule fragmentation can be easily conducted on a given data set and the results visualised
-([MORTAR GitHub repository](https://github.com/FelixBaensch/MORTAR), [MORTAR article preprint](https://doi.org/10.26434/chemrxiv-2022-zgg8s)).
-
-## Additional notes on deglycosylation and the SRU
-### New option for keto groups on circular sugars
-In version 1.2, a new option has been added to allow the detection (and subsequent removal) of potential circular sugar
-moieties with keto groups. It can be used via the command-line application and the Sugar Removal Utility source code.
-
The general rule specified in the original algorithm description (see article) is that every potential sugar cycle
-with an exocyclic double or triple bond is excluded from circular sugar detection. If this option is turned on, an
-exemption to this rule is made for potential sugar cycles having keto groups. Also, the double-bound oxygen atoms will
-then count for the number of connected oxygen atoms and the algorithm will not regard how many keto groups are attached
-to the cycle (might be only one, might be that all connected oxygen atoms are double-bound). If this option is turned
-off, every sugar-like cycle with an exocyclic double or triple bond will be excluded from the detected circular sugars,
-as it is specified in the original algorithm description.
-
Per default, this option is turned off. Therefore, nothing changes compared to prior versions when using the default
-settings. In the command-line application, this new option can be configured by using '-circSugKetoGroups' or
-'--detectCircularSugarsWithKetoGroups' as parameter key with a boolean argument. See usage instructions for the
-application for more information.
-
-### What is a sugar and what is not a sugar?
-The structural space of sugar moieties and sugar-like moieties is large and diverse, as we show and discuss in our
-second SRU article where we use the tool to identify and analyse glycosidic residues in the NP database COCONUT
-([Description and Analysis of Glycosidic Residues in the Largest Open Natural Products Database. Biomolecules 2021, 11, 486.](https://doi.org/10.3390/biom11040486)).
-The SRU with its default configuration is able to detect a large proportion of this diversity. However, since these parameters
-are designed to identify redundant structures potentially obstructing analysis of the NP aglycone for in silico
-removal, they are deliberately limited to not include the whole diversity of glycosidic structures.
-On the other hand, already with its default settings, the SRU may detect structures as sugar moieties that may have a different
-biosynthetic origin or may be derived from sugars but have been reduced/oxidized. This appears to be more prevalent in the
-case of linear sugar detection. Examples can be found in the [first SRU article](https://doi.org/10.1186/s13321-020-00467-y) *:
-
-* Figure 1 d: The detected linear sugar in bengamide B highlighted in the figure is most likely derived from glycerol.
- ![Figure3](./figures/BengamideB.png)
-
-
-* Figure 9 a: The detected linear sugar in ossamycin highlighted in the figure is most likely derived from a polyketide
- pathway. Note that to detect this moiety, the default settings have to be altered, i.e. the detection of linear sugars
- in rings has to be activated.
- ![Figure4](./figures/Ossamycin.png)
-
-
-* Figure 17 c: The detected linear sugars in cryptoporic acid F highlighted in the figure are most likely derived from
- isocitric acid.
- ![Figure5](./figures/cryptoporic_acid_F.png)
-
-This raises the question of what should be defined as a “true” sugar moiety that was likely added
-during a glycosylation event, and what would rather be a “sugar-like” moiety that more likely comes from a metabolic
-pathway unrelated to carbohydrates. The SRU algorithm with its sugar detection functions is not intended to answer this
-question but, as stated above, was designed to identify redundant structures potentially obstructing analysis of the NP
-aglycon for in silico removal. However, one important feature of the SRU is its configurability, which allows the
-adaption of it for various applications and queries. Depending on what you, the user, want to achieve, the SRU configurations
-can be altered to (hopefully) best apply it to your problem. To help with that, the two named articles about the SRU provide
-details about the different configuration options of the SRU and example structures that are or are not detected, depending
-on the chosen settings. And should you have more questions, do not hesitate to contact us.
-
-
* The authors would like to thank
-[Dr. Christine Beemelmanns](https://www.leibniz-hki.de/en/institut-staff-details.html?member=87)
-for pointing out these examples and discussing them with us.
-
-### One known pitfall of the algorithm
-In a few cases, the detection of a linear sugar candidate can fail after the circular sugars are removed from the molecule.
-The particular linear sugar is in most cases part of a ring and detected when the molecule still has its original structure.
-After removing the circular sugars, the linear sugar is not detected anymore. This is due to the linear sugar patterns
-not matching anymore without the adjunct circular sugar.
-
One example for this is the COCONUT NP CNP0154212 (see Figure 1). Here, a linear sugar (in blue) can be detected,
-when the option to detect linear sugars in cycles is turned on (per default, it is turned off). After the circular sugar
-moieties are removed, the structure that was detected as a linear sugar before is not detected anymore, although it is
-still intact (see Figure 2).
-
More examples are documented in the test method SugarRemovalUtilityTest.specificTest35WithDepiction().
-
-![Figure1](./figures/CNP0427619_all_candidates.png)
-**Figure 1.** In the COCONUT NP CNP0154212, a linear sugar (in blue) can be detected, when the option to detect linear
-sugars in cycles is turned on (per default, it is turned off).
-
-![Figure2](./figures/CNP0427619_all_candidates_without_circSug.png)
-**Figure 2.** After the circular sugar moieties are removed from CNP0154212 in Figure 1, the structure that was detected
-as a linear sugar before is not detected anymore, although it is still intact. In this figure, the disconnected small
-fragments resulting from the circular sugar removal are not cleared away as they would be with the default options, to
-show the whole picture of the remaining structure.
+([MORTAR GitHub repository](https://github.com/FelixBaensch/MORTAR) | [MORTAR article](https://doi.org/10.1186/s13321-022-00674-9)).
+
-## Contents of this repository
-### SugarRemovalUtility CMD App
-The sub-folder "SugarRemovalUtility CMD App" contains the sugar removal command-line application downloadable as
-compressed archive. After decompression, the JAR file "SugarRemovalUtility-jar-with-dependencies.jar" can be executed
-from the command-line using Java version 11 or higher. A detailed explanation how to use the application can be found in
-"Usage instructions.txt". Also, an example input file is provided, named "smiles_test_file.txt".
-
-### Natural product test set
-The text file "hand_picked_np.txt" contains a list of SMILES codes serving as a natural product test set for the
-performance of the SugarRemovalUtility. They were hand-picked from public databases via the
-[COlleCtion of Open NatUral producTs (COCONUT)](https://coconut.naturalproducts.net). More details can be found in the
-test class (see below) and the [Sugar Removal Utility publication](https://doi.org/10.1186/s13321-020-00467-y).
+The repository [wiki](https://github.com/JonasSchaub/SugarRemoval/wiki) contains code examples and some additional notes on sugar
+moiety detection and removal using the SRU.
+## Contents of this repository
### Sources
In the directory /src/main/java/de/unijena/cheminf/deglycosylation/ the class SugarRemovalUtility can be found.
-This class represents the stand-alone implementation of the sugar removal algorithm. It can be used to detect and remove
+This class represents the stand-alone implementation of the sugar removal algorithm. It can be used to detect and remove
circular and linear sugar moieties from molecules supplied as CDK IAtomContainer objects with many configurable options.
-Further documentation can be found in its JavaDoc comments.
-The other sources available in /src/main/java/de/unijena/cheminf/deglycosylation/ belong to the command-line
+Further documentation can be found in the [JavaDoc](https://jonasschaub.github.io/SugarRemoval/javadoc/latest/index.html)
+and the repository [wiki](https://github.com/JonasSchaub/SugarRemoval/wiki).
+The other sources available in /src/main/java/de/unijena/cheminf/deglycosylation/ belong to the command-line
application. It makes the various settings for fine-tuning the sugar detection and removal process available through the
command-line arguments. But using the SugarRemovalUtility class directly in your own software project offers some
additional configuration options and functionalities:
@@ -138,12 +63,31 @@ additional configuration options and functionalities:
* Selecting the biggest or heaviest fragment from an unconnected atom container (e.g. after removal of non-terminal sugars)
* Partitioning and sorting unconnected fragments of an unconnected atom container
-The class SugarRemovalUtilityTest can be found in the directory
-/src/test/java/de/unijena/cheminf/deglycosylation/. It is a JUnit test class that tests the performance of the
-Sugar Removal Utility on multiple specific molecular structures of natural products hand-picked from public databases
+The class SugarRemovalUtilityTest can be found in the directory
+/src/test/java/de/unijena/cheminf/deglycosylation/. It is a JUnit test class that tests the performance of the
+Sugar Removal Utility on multiple specific molecular structures of natural products hand-picked from public databases
(see above). Code examples of how to use and configure the SugarRemovalUtility class can be found here.
+### SugarRemovalUtility CMD App
+The sub-folder ["SugarRemovalUtility CMD App"](https://github.com/JonasSchaub/SugarRemoval/tree/master/SugarRemovalUtility%20CMD%20App)
+contains the sugar removal command-line application downloadable as
+compressed archive. After decompression, the JAR file "SugarRemovalUtility-jar-with-dependencies.jar" can be executed
+from the command-line using Java version 17 or higher. A detailed explanation how to use the application can be found in
+"Usage instructions.txt". Also, an example input file is provided, named "smiles_test_file.txt".
+
+### Natural product test set
+The text file "hand_picked_np.txt" contains a list of SMILES codes serving as a natural product test set for the
+performance of the Sugar Removal Utility. They were hand-picked from public databases via the
+[COlleCtion of Open NatUral producTs (COCONUT)](https://coconut.naturalproducts.net). More details can be found in the
+test class (see below) and the [Sugar Removal Utility publication](https://doi.org/10.1186/s13321-020-00467-y).
+
## Installation
+The Sugar Removal Utility is hosted as a package/artifact on the sonatype maven central repository. See the
+[artifact page](https://central.sonatype.com/artifact/io.github.jonasschaub/SugarRemoval/) for installation guidelines
+using build tools like maven or gradle.
+To install the SRU via its JAR archive, you can get it from the [releases](https://github.com/JonasSchaub/SugarRemoval/releases).
+Note that other dependencies will need to be installed via JAR archives as well this way.
+
### Command line application JAR
The command-line application JAR has to be downloaded and decompressed. After that, it can be executed from the command-line
as described in the usage instructions. Java version 17 or higher has to be installed on your machine.
@@ -193,4 +137,4 @@ care of installing all dependencies.
**COlleCtion of Open NatUral producTs (COCONUT)**
* [COCONUT Online home page](https://coconut.naturalproducts.net)
* [Sorokina, M., Merseburger, P., Rajan, K. et al. COCONUT online: Collection of Open Natural Products database. J Cheminform 13, 2 (2021). https://doi.org/10.1186/s13321-020-00478-9](https://doi.org/10.1186/s13321-020-00478-9)
-* [Sorokina, M., Steinbeck, C. Review on natural products databases: where to find data in 2020. J Cheminform 12, 20 (2020).](https://doi.org/10.1186/s13321-020-00424-9)
+* [Sorokina, M., Steinbeck, C. Review on natural products databases: where to find data in 2020. J Cheminform 12, 20 (2020).](https://doi.org/10.1186/s13321-020-00424-9)
\ No newline at end of file
diff --git a/logo/SRU_logo.jpg b/logo/SRU_logo.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..4275cb38a10fb0ac66a48e38015e6a0a86203c6a
GIT binary patch
literal 347498
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