Major bug fixes¶
Fix cis/trans bond stereochemistry perception when reading MDL MOL and SD files via
OEReadMDLFile. We were overly aggressive when marking double bonds in rings as cis vs. trans due to a missing call to
OEFindRingAtomsAndBonds. We also no longer attempt to attribute E/Z stereochemistry to connection tables without coordinates, or when any of the relevant bond lengths are zero.
Minor bug fixes¶
Accidentally OEChem*`s zmatrix handling functions were documented in the *OEChem documentation but were missing from the distributed list of header files. This oversight has been corrected and the classes OEChem::OECartesianToInternal and OEChem::OEInternalToCartesian and the functions
OECalcInternalCoordare now publicly available.
OEGetSmallestSubtreeto correctly return the smallest set of atoms on either side of a given bond when the molecule contains disconnected components.
Performance improvements to OEGraphMolParameter, to avoid using
OEIsomericConfTestwhen loading single conformer molecules.
Bug fix to
DeleteConfthat could occasionally result in that multi-conformer molecule’s active conformer being corrupted.
OEMDLPerceiveBondStereoto preferentially place the wedge or hash bond on the bond to an explicit hydrogen, for chiral stereo centers of degree three.
OEMDLPerceiveParityto support chiral atoms with two heavy atom neighbors and an explicit hydrogen. These aren’t supported by MDL software (including ISIS/Draw) but this allows OEChem to convert
X[N@H]Yto an MDL mol file and back to isomeric SMILES without loss of information.
OEMDLStereoFromParityto set OEChem’s atomic chirality for the MDL stereo parity flag for both degree three and degree four atom stereo centers.
Correct problem in OEChem::OEMiniAtom::Copy where duplicating an atom would preserve the explicit degree of the original, as returned by
Fixes to both OEChem::OEMiniBond::SetOrder and OEChem::OEMiniBond::SetIntType that would incorrectly reset the aromaticity and in-ring flags of a bond as a side-effect.
Miscellaneous fixes and improvements to OEChem::OEMiniMol::Copy.
OEPerceiveSymmetrywould previously segmentation fault on some platforms if passed a molecule with no atoms. This routine has now been idiot-proofed.
Maintenance updates to
OEReadPDBFileto handle PDB files deposited at RCSB, up to July 2004. For example, correctly handling the hetero atoms of the
NZQresidue of pdb1oj7.ent.
A serious performance regression in
OERMSDhas been addressed. A change to
OERMSDfor OEChem 1.3 unexpectedly resulted in a significant drop in superposition speed. This has now been resolved and
OERMSDis as fast as (or faster than) it was in OEChem 1.2.
The string reference argument to
OESetCommentis now correctly marked as const. This value is never modified by this function.
The sanity checking in
OESetTorsionhas been improved such that we now return false for dubious calls to that function. For example, when the first and four atom pointers refer to the same atom. Previously, we’d do nothing, but not indicate a failure with the return value.
Improvements to match limit test in
OESubSearchthat prevent excessive run-times for pathological substructure search patterns. Previously, substructure searching of
*.*.*.*wouldn’t honor the match limit setting, and spew multiple match limit reached warnings.
Better handling of out of range coordinates in
OEWriteMacroModelFile. Previously, a Cartesian coordinate larger than these file format’s fixed width fields would corrupt the following fields on the same line.
Minor bug fixes¶
A fix to the function
OECheckHelpthat prevents displaying on-line help for
HIDDENcommand line interface options.
Fixed a bug in
OEInterface.GetInterfacethat would fail to find the correct interface by name.
Correct the return value for
OEInterface.DeleteInterface. We now return false if we failed to delete the given interface.
Fixed an off-by-one error with the OEPredVectorPtrIter::ToLast method on some kinds of iterators (specifically, OESystem::OEPredVectorPtrIter s).