Version 1.7.2

OEChem 1.7.2

  • OEPDBIFlag, OEPDBOFlag, OEMDLOFlag, OEMOPACFlag constants namespaces are deprecated.

New features

  • OEReadMDLQueryFile now sets the title of the query molecule.

  • OEChem now recognizes the MDL “wavy” bond. An OEBondBase can be queried for its stereo type by querying its generic data for the OEProperty::BondStereo tag. The returned unsigned int will be from the OEBondStereo namespace.

  • OEChem now supports MDL query file R group definitions. These are lines starting with M RGP. The R group is represented as a OEQAtomBase with a map index the same as the R group number in the file.

  • OEChem will now correct amidine and guanidinium functional groups where the bonds between C and N are marked as aromatic in MOL2 files.

  • Significant performance improvement to reading single-conformer molecules from OEB files. Other minor performance improvements were made to OEB as well (including multi-conformer molecules). This speeds up OEDBMol compression and uncompression as well.

  • Removed OECopyHistory function. OEChem::OEReadHeader is now smart enough to read the header into the OEHeader history if it is already populated with another header’s information.

  • oemolthreads now support reading and writing OEHeader objects.

  • Added the oemolthreadbase::PeekMol method.

Major bug fixes

  • Fixed a OEReadMDLQueryFile segmentation fault when perceiving aromaticity with spirane rings containing generic atoms.

  • Fixed a bug where atom parity was ignored when reading a 3D MOL file.

  • Fixed a memory leak when initializing an OEMCSSearch with its constructor. The workaround in 1.7.0 is to use the OEMCSSearch::Init method instead.

  • Fixed a memory leak with OEMCSSearch when OEMCSSearch::SetMaxMatches was set to a number lower than the total number of matches found.

  • Fixed memory leak when creating and destroying multiple OELingoSim objects.

  • Some OEOFlavor::PDB flavor combinations would generate corrupt data.

  • OESmilesAtomCount now includes atoms of the form [#6] in its count.

  • Fixed a bug where map indices on explicit hydrogens would be ignored when generating SMILES. For example, [CH] would get generated even if the hydrogen had a map index specified. Now [H:1][C] will be generated.

Minor bug fixes

  • Energy set on an OEGraphMol using OEMolBase::SetEnergy would not get written out to OEB files. Energy data will now round-trip through the OEB format.

  • Automatic conformer combining through the oemolistream::SetConfTest interface will now combine separate single-conformer molecules in an OEB into a multi-conformer molecule similar to the other file formats OEChem supports for that behavior (MOL2, SDF, etc).

  • OEPerceiveBondOrders is more stable to pre-existing bond orders on the molecule.

  • Rare non-deterministic bug fixed for sulfur monoxide bug in OEPerceiveBondOrders.

  • OEChem now recognizes the DU residue name and the mythical DT residue which is synonym for `` T``.

  • The new overload of OEIsReadable to take a string would return true if there was no periods (‘.’) in the string and the string began with a readable file extension, for example, “MDL-FOO”.

  • Fixed a bug when OELibraryGen failed to generated products with correct Kekulé-form.

OESystem 1.7.2

New features

Major bug fixes

  • Fixed a memory leak with OEConstIter.

Minor bug fixes

  • Renamed the OEMakeFP function to OEParseHex to be more explicit about what is does.

  • Valgrind would throw warnings about a change made in 1.7.0 for thread safety issues. Though this was not a true memory leak the code has been slightly changed to silence this warning.

  • Fixed an exponential growth bug when adding history to an OEHeader.

  • Assignment operators for OEMultiGrid now properly copy the titles of the subgrids.

OEPlatform 1.7.2

New features

Minor bug fixes

  • Revised the oestream::length and oestream::size documentation to be more accurate.

  • oefpos_t now works for files greater than 4GB on 64-bit windows.

  • Fixed an infinite loop that would occur from the following code:

    oeosstream sfs;
    sfs.open("foobar");
    sfs.write("blah");
    

    oeosstream::open will return false. Ignoring the false return value would cause oeosstream::write to loop indefinitely.

OEBio 1.7.2

New features

  • Introduced new OEBio classes to manage alternate locations in protein data bank structures along with a new PDB input flavor OEIFlavor::PDB::ALTLOC to retain alternate location atoms on input.

Major bug fixes

  • The crystal symmetry routines were broken in the 1.7.0 release by a corrupted matrix.

  • When reading symmetry from external sources (i.e. PDB files or maps) a warning is thrown when reading out of date space groups rather than fail to read symmetry.

  • Setting space groups will fail unless the most current space group constraints are used.

  • Added the following space group aliases for older style space groups.

    I 1 2 1 -> C 1 2 1
    P 1-    -> P -1
    

OEGrid 1.3.3

New features

Major bug fixes

  • Fixed a rare crash in OEMakeRegularGrid that was caused by floating point round-off error.