Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Releasing 2.3.1 #160

Merged
merged 23 commits into from
Dec 10, 2024
Merged

Releasing 2.3.1 #160

merged 23 commits into from
Dec 10, 2024

Conversation

mestia
Copy link
Contributor

@mestia mestia commented Dec 10, 2024

Preparing to release bug-fix release 2.3.1

QY0831 and others added 23 commits March 4, 2024 15:29
Ligand structures in PLIP do not contain hydrogen, which affects HBond donor/acceptor identification.

For donor identification, the atoms of the full structure with hydrogens is used, for acceptor identification this mapping was missing so far. This commit fixes the issue and closes #123.
The removed bit was not doing anything and seems to be a residual from more than 10 years ago (last change related to the in_ring variable was in commit 2b87b08)
Instead of the bond with angle omega closest to the ideal value the one further away was kept.
When checking, whether the donor atom already forms a hydrogen bond, the openBabel molecules atom index instead of the original index in the pdb file was used, resulting in random hydrogen bonds in other parts of the structure preventing water bridges from showing up and potentially not filtering out the ones that actually needed filtering.
OpenBabel crashes when trying to generate canonical SMILEs for peptide chains that are too long.
PLIP used to copy all ligand atoms and then all their bonds to create the ligand structure. However, this looses information like sidechain/backbone membership of atoms (relevant for detection of charge in peptide ligands).

Using the "copy.substructure()" function of OpenBabel retains this information.
The functional groups considered for charge detection on the ligand side are not sufficient to detect the aminoacids that can form salt bridges when the ligand is a peptide. This commit implements charge detection for peptide ligands to match charge detection for protein receptors.
So far small molecule ligands present in the chain picked with the --inter or --intra flag were treated as part of that chain during intra or inter protein chain detections and for some interaction types interactions were detected.
For protein-protein interactions, HIS residues, which provide charge and a ring at the same time, can also be present on the ligand side, making the refinement step needed there as well. Also, refinement was improved to make sure it is indeed the same HIS residue that is already also forming a π-stacking interaction.
For protein-protein interactions we want to report one hydrophobic interactions per residue for both receptor and ligand side. No need to identify hydrophobic patches on the ligand side as needed in small molecule ligands.
fixes NumPy DeprecationWarning
Fixes several mistakes in interaction detection with peptide ligands
Fixes a mistake in hydrogen bond acceptor identification
Fixes mistakes in waterbridge detection and filtering
@mestia mestia merged commit 82c803c into master Dec 10, 2024
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants