ringdict2pdf example in
OEDepict TK will generate a multi-page PDF report of a 2D ring dictionary.

221 new ring templates have been added to the built-in ring dictionary.

Example of the New 2D Ring Templates

Pure Carbon Skeleton Ring Templates

Ring Templates with Specified CIS/Trans Bonds

OEIFlavor_MOL2_Forcefield flavor has been added to the MOL2 reader.
This allows atom names in the MOL2 file to be interpreted as chemical
elements while not using the second character if capitalized; for example, CA and CD
are both carbon instead of calcium and cadmium. This will help reading
OEFormat_MOL2 files
that contain forcefield information like partial charges.

OEOFlavor_SDF_UnsetBad2DStereo and
OEOFlavor_CDX_UnsetBad2DStereo, new output
flavors for SDF and CDX output formats, have been added. These
constants control behavior when generating 2D coordinates during
output. When used, the writer will set the stereo to “undefined” for
any misleading stereochemistry that may result from layout
limitations.

OESubsetMol has a new overload that supports the
use of OEAtomBondSet input. This can offer
significant performance improvements over the predicate overloads since
a full molecule iteration can be avoided.

OEMolDatabase.WriteMolecule has been added to
automatically extract a molecule from the database and write it to
the oemolostream. This function is optimized for
performance to simply move bytes around if the input
OEMolDatabase format and the output format match exactly.

OEPRECompress and
OESweepRotorCompressHydrogens have been added and
documented to allow advanced users to start experimenting with
perfect-rotor-encoding OEB files to achieve higher rates of conformer
compression. This feature is currently only available to the C++
toolkits.

Currently, dummy atoms are only allowed in Szybki TK for
non-bonded interactions.

OEAssignRadii free function has been added to
allow for a central entry point for any OpenEye Toolkit atomic
radii assignment. This free function uses the
OERadiiType namespace for choosing the type of
radii to assign.

oemolistream.Setgz with a false argument
called after a stream has finished reading molecules will no longer
cause OEReadMolecule to crash on subsequent
calls. It will now return false to indicate that the stream has
finished.

OEMolDatabase.Open will now fail and throw a
warning message if there is no disk space left for uncompressing
compressed input files. In earlier releases, the operation would appear to
succeed and lead to corrupted molecules past a certain
point. Furthermore, the directory that OEMolDatabase
uses for temporary files can now be controlled through the TEMP
or TMP environment variables on Windows or the TMPDIR
environment variable on Linux and OSX.

OEMol will now work with the V3000 file format
much more reliably. This was accomplished by making sure that
multi-conformer molecules can handle groups appropriately. The
OEGroupBase class is a container of atom and bond
pointers inside an OEMCMolBase. The
OEGroupBase class is currently used to store
MDL-enhanced stereo information. Each conformer of the multi-conformer
molecule has its own separate container. Now methods such as
OEMolBase.GetGroups will provide access to the
groups of the active conformation.

An API has been added for classifying and separating the various components of a
macromolecular complex by their functional roles.
See the Splitting Macromolecular Complexes
section for more information.

Multi-threaded OpenEye Toolkit programs may need to be
updated to allow the desired output to be sent to standard
error. However, the previous behavior was race-condition prone
and difficult to get correct.

OERandom constructor will no longer take an
unsignedint as input. Previously, the unsignedint would be
implicitly cast to bool and would control whether to time
seed the constructor. However, most users actually intend to use an
unsignedint as a random number seed meant for the
OERandom.Seed method. This change should catch
this common mistake at compile time.

OEFileTempPath will now use the directory
specified by the TMPDIR environment variable on
Linux and OSX. This
allows the user to control where OpenEye Toolkits will create
temporary files. This is especially useful since
OEMolDatabase can use a lot of temporary
storage when dealing with compressed data files.