mirror of
https://github.com/rdkit/rdkit.git
synced 2026-06-04 21:54:27 +08:00
* This makes assignStereochemistry cleanIt=True not remove CIS/TRANS bond stereo chemistry that was manually added as described in issue #1614. Incorrect CIS/TRANS stereochemistry will still be removed by 'cleanIt=true' if symmetry is detected. However, this symmetry detection doesn't work in more complex pseudo-stereo chemistry cases: bond stereo that depends on other bond stereo to break symmetry; and bond stereo that depends on other atom stereo centers to break symmetry. Test cases for these cases have been added ifdef'd in based on USE_NEW_STEREOCHEMISTRY. However, getting USE_NEW_STEREOCHEMISTRY to work in a copacetic way is not trivial, I tried a little bit here to no avail. I'm leaving the test cases checked in as they should be useful when we decide to make the plunge into using Canon::chiralRankMolAtoms for symmetry detection instead of the CIP ranks. So this fixes at least the glaring issue of STEREOCIS and STEREOTRANS being incorrectly removed by 'cleanIt=true' when it is indeed valid stereo. The checks made for symmetry are rudimentary, but don't feel complete. * add another test; make what's being tested explicit * test smiles generation and function when Hs have been added * add a test that fails * I think that it's ok to remove this * backup * At this point all tests pass. Bond wedging is now handled even if sanitization is turned off when mol files are read * adjust to code changes * fix a couple problems caused by rebase * update docs