Version 1.3.1¶
OEChem 1.3.1¶
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 toOEFindRingAtomsAndBonds. 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
OECalcCartesianCoordandOECalcInternalCoordare now publicly available.Handle (and optimize) the case where
OECanonicalOrderAtomsorOECanonicalOrderBondsis called with less then two atoms.Fixes
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 OEIsomericConfTest when loading single conformer molecules.
Bug fix to
DeleteConfthat could occasionally result in that multi-conformer molecule’s active conformer being corrupted.Tweak to
OEMDLPerceiveBondStereoto preferentially place the wedge or hash bond on the bond to an explicit hydrogen, for chiral stereo centers of degree three.Enhancements to
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 convertX[N@H]Yto an MDL mol file and back to isomeric SMILES without loss of information.Improvements to
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
OEAtomBase.GetExplicitDegree.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.
Fix to
oemolostream.openstringto allow an oemolostream to be reused multiple times, rather than constructed and destructed for each use.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 theNZQresidue of pdb1oj7.ent.A serious performance regression in
OERMSDhas been addressed. A change toOERMSDfor OEChem 1.3 unexpectedly resulted in a significant drop in superposition speed. This has now been resolved andOERMSDis 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 OESubSearch that 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.Enhancement to
OEWritePDBFileto allow it to honor theOEOFlavor.PDB.RADIUSflag to write an atom’s radius in the PDB occupancy field, even when writing a molecule without residue information.Better handling of out of range coordinates in
OEWriteMDLFile,OEWritePDBFileandOEWriteMacroModelFile. Previously, a Cartesian coordinate larger than these file format’s fixed width fields would corrupt the following fields on the same line.
OESystem 1.3.1¶
Minor bug fixes¶
A fix to the function
OECheckHelpthat prevents displaying on-line help forHIDDENcommand 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).