• Docs »
  • Release Notes

Release Notes

Release Highlights 2017.Jun

Shape TK: Hermite

The 2017.Jun release introduces the OEHermite class, which allows a molecule to be expanded into a Hermite representation. An initial suggested area of application is the representation of protein shape. The advantages of representing proteins by Hermites include:

  • smooth representations that capture any level of detail, from the atomistic (many coefficients, see the picture on the right) to the very coarse (few coefficients, as in the middle picture),
  • the ability to store these representations in a compact manner,
  • the ability to transform these representations easily, and
  • very fast overlap calculations between proteins.

Below are examples of low- and high-resolution Hermite representation images of dihydrofolate reductase (DHFR):

Hard and soft shape gaussians

Exact shape versus Hermite Representation

OpenEye will explore the potential of Hermite representations; we invite users to do likewise with this exciting new addition to the OpenEye toolkits. See the Shape from Hermite Representation chapter of the Shape TK documentation for more information.

OEDepict TK and Grapheme TK: Interactive SVG images

Scalable Vector Graphics (SVG) image format is dominant in web applications due to its wide browser support and scalability. An SVG image contains a list of graphical objects that can be grouped, styled, and transformed together. This enables the generation of interactive images defined in the SVG XML elements or via scripting that accesses the SVG Document Object Model (DOM).

The new Preliminary API available in OEDepict TK provides low-level functionality that enables grouping of graphical elements in SVG images that can be manipulated externally by web developers. High-level API entrypoints are also available to generate self-contained SVG images that show or hide different elements of the image based on mouse events.

Example of interactive SVG images (PDB: 4HWR)
Hover the mouse over any ligand atom to display its b-factor Click on any residue circle to display ligand atoms it interacts with

For more information see the Generating Interactive SVG images chapter of the OEDepict TK documentation.

General Notices

  • On Linux, Python single-build distributions are now installed by default when using the meta-installer via pip install openeye-toolkits. If a problem is encountered with the single-build packages, users can set the environment variable OE_PIP_ARCH=old before the pip install step.
  • Python 3.6 is supported in the 2017.Jun release.
  • This is the last release to support 32-bit Java.
  • This is the last release to support Red Hat Enterprise Linux version 5. As of March 31, 2017, RHEL5 has reached end-of-production support.

Note

OpenEye continues to monitor and collect feedback from our customers on the need to support Python 2 wrappers. Our current plan is to phase out support for Python 2 on all platorms by the 2017.Oct release. As this is a substantial change for our customers, we are willing to help with migration. Please contact support@eyesopen.com for more details.

Detailed Release Notes

OEChem TK 2.1.2

New features

Minor bug fixes

  • The function OECount has been fixed to return the number of substructure search matches. An extra parameter has been added to control whether the count of unique or non-unique matches is returned.
  • The following functions have been fixed to properly handle multi-conformer molecules with no active conformation:
  • Several problems with the internal implementation of OEMolBaseType::OEMiniMol have been fixed. Perception flags are now cleared correctly when deleting atoms or bonds. Coordinates are no longer lost when a molecule is swept.
  • The OEGenerate2DCoordinates function now clears MDL bond stereo that can be re-perceived by calling the OEMDLPerceiveBondStereo function.
  • The OESubSearch::Init method now checks that the given query molecule is valid. In case of an invalid molecule a warning is thrown and the method returns false.

Python-specific changes

  • The message for the ValueError exception raised when trying to attach an unrecognized type to an OpenEye object as generic data has been clarified.

Documentation changes

OEBio TK 2.1.2

New features

Major bug fixes

  • OEPlaceHydrogens results have been significantly improved after fixing a bug related to the treatment of certain non-moving background atoms.
  • OEPlaceHydrogens no longer fails with a segmentation fault when encountering an H-bond where there is a missing covalent bond. It also no longer fails in certain cases when adding explicit hydrogens.
  • OEPlaceHydrogens now uses a more concise definition of moveable groups and no longer fails due to matching atoms multiple times.
  • The MMFF-NIE scoring system used by OEPlaceHydrogens now works with elements such as Mn that are not parameterized in the MMFF94 force field.
  • OEPlaceHydrogens now generates correct hydrogen geometry on carboxylic acid (COOH) groups.
  • OEPlaceHydrogens no longer orients phenolic hydrogens at high angles to the ring plane.
  • OEPlaceHydrogens generates improved orientations for amines deprotonated upon chelating a metal.

Minor bug fixes

  • The ordering of moveable groups associated with a cluster in an OEPlaceHydrogensDetails object is now consistent across operating systems and platforms.
  • OEPlaceHydrogens now produces fewer warning messages.
  • Improved specificity of OEAcceptor definitions for interaction hint perception.

OEDepict TK 2.3.5

New features

Preliminary API

Gallery of OEDepict TK examples of interactive SVG images
Hover the mouse over any atom Click on any atom

Hover the mouse over any bond Click on the middle on any bond

Major bug fixes

  • On OSX, the deprecated CGContextSelectFont and CGContextShowTextAtPoint Core Graphics functions have been replaced. These function were used to handle fonts when drawing text in PNG images. OEDepict TK currently supports the following font mapping on OSX for PNG images:

    OpenEye Font Family Type Font Name
    OEFontFamily::Arial Arial
    OEFontFamily::Courier CourierNewPS
    OEFontFamily::Helvetica Helvetica
    OEFontFamily::Times TimesNewRomanPS

Minor bug fixes

  • When performing fixed coordinate molecule alignment (see OEAlignmentOptions::SetFixedCoords), only the set of atoms considered during the alignment are now used to evaluate the quality of the alignment. As a result, fixed coordinate alignment succeeds more frequently, circumventing the need to fall back to the more exhaustive alignment method.
  • Bond stereo information is now re-perceived by calling the OEMDLPerceiveBondStereo function after finding the best 2D alignment with the OEPrepareAlignedDepiction function when the alignment is defined by either an OESubSearch or an OEMCSSearch object.

Python-specific changes

Documentation changes

OEDocking TK 1.3.4

  • Minor internal improvements have been made.

FastROCS TK 1.8.2

New features

Major bug fixes

Documentation changes

  • A tutorials page has been created that walks through features of FastROCS TK and gives detailed examples. The first tutorial gives step-by-step instructions on how to use alternative starts.

    If you have a specific feature that you would like in a tutorial, please contact support at support@eyesopen.com with the subject header FastROCS TK Tutorial Request.

GraphemeTM TK 1.3.3

New features

  • A new function, OERenderContactMap, has been added that generates interactive SVG images. Clicking on any residue circle will highlight those ligand atoms that interact with the given residue.

click on any residue

Example of interactive SVG image generated by OERenderContactMap (PDB: 4HWR)

Preliminary API

Major bug fixes

  • Several problems in the OERenderActiveSite function have been fixed:

    • When depicting protein-ligand interactions, grey lines represent the shape of the binding pocket. The absence of lines indicates solvent-accessible regions. In order visualize the solvent-accessible areas more realistically, waters are now ignored when calculating the molecule surfaces that determine the 2D representation (compare images below).
    • The rare case where the ligand is completely surrounded by water is now handled correctly.
    • The following heuristics are now used to improve the positioning of residue glyphs around the ligand:
      • Waters are more likely to be positioned in solvent-exposed regions.
      • Other residues are only positioned in solvent-exposed regions if it results in a more visually pleasing layout.
    Example of visualizing solvent-accessible regions and water positioning (PDB: 3E3D)
    2017.Feb 2017.Jun
    ../../_images/pocket-2017-Feb.png ../../_images/pocket-2017-Jun.png

Minor bug fixes

  • OEDrawPeptide has been fixed and now allows only amide and disulfide bonds when identifying standard amino acids. No alpha-carbon substitutions are allowed.

    Example of visualizing peptides with OEDrawPeptide
    2017.Feb 2017.Jun
    ../../_images/ceruletide-2017-Feb.png ../../_images/ceruletide-2017-Jun.png

Documentation changes

GraphSim TK 2.3.0

New features

API Change

  • The OESimScore class, which is utilized by both the OEFPDatabase class and the new OEFastFPDatabase class, stores a similarity value with a corresponding molecule index. This pair is now stored as “double” and “size_t” rather than “float” and “unsigned int”. This non-breaking API change allows GraphSim TK to support molecular files that contain more than \(2^{32}\) entries and supports double precision similarity scores calculated using the new OEFastFPDatabase class.

C++-specific changes

  • The above-mentioned OESimScore class API change means that the following warning messages could be encountered when compiling old code with the new GraphSim TK:

    • implicit conversion loses floating point precision: 'double' to 'float'

      for (OEIter<OESimScore> si = fpdb.GetScores(mol); si; ++si)
        float score = si->GetScore(); // GetScore() now returns double
      
    • implicit conversion loses integer precision : 'size_t' to 'unsigned int'

      for (OEIter<OESimScore> si = fpdb.GetScores(mol); si; ++si)
        unsigned int molidx = si->GetIdx(); // GetIdx() now returns size_t
      

Java-specific changes

  • The above-mentioned OESimScore class API change means that a similarity value with a corresponding molecule index is now expected to be “double” and “long”, respectively.

Documentation changes

Lexichem TK 2.6.3

Minor bug fixes

  • Previously, redundant cis-trans stereochemistry for certain multi-ring aromatic systems was not suppressed, resulting in names with erroneous E-Z specifications. The stereo perception for these systems has been fixed.

OEMedChem TK 1.0.4

New features

Preliminary Fragmentation API

Minor bug fixes

Python-specific changes

  • Minor changes to some examples were made to synchronize the behavior and output with other wrapped language examples.

Java-specific changes

  • Minor changes to some examples were made to synchronize the behavior and output with other wrapped language examples.

C#-specific changes

  • Minor changes to some examples were made to synchronize the behavior and output with other wrapped language examples.

Documentation changes

  • New methods have been documented in their respective classes.

MolProp TK 2.4.6

  • Minor internal improvements have been made.

OEFF TK 2.0.0

Licensing

  • OEFF TK is available to anyone with an OESzybki TK license. Contact sales@eyesopen.com if you need an OESzybki TK license.

OEFF functionality

This is the first official release of OEFF TK. The underlying functionality was previously released in C++ as part of the OESzybki TK advanced interface. This toolkit is currently available in C++ and Python. An overview of its capabilities is provided below.

OEFF TK provides access to powerful low-level functionality for advanced users to develop molecular modeling applications. With OEFF TK, users also have the ability to create variations of molecular interaction classes for energy evaluation and optimization, adding to the built-in interactions, if desired. OESzybki TK complements OEFF TK as the high-level API for molecular modeling functionalities.

Objective functions and molecular interactions

All molecular interactions are objective functions with additional API points for molecular definitions. A set of pure virtual classes that can be used to define new interactions are provided for both generic objective functions and molecule specific interaction functions. The following virtual base classes are available:

Force fields

Force fields and components of force fields are defined as molecule objective functions and are derived from the above-specified base classes. The following force fields and components are available:

Optimizers

A powerful set of optimizers that can be used to optimize objective functions is now available:

Adaptors

Adaptors that can be used to optimize molecule objective functions in transformed coordinate space are now available:

New features

Omega TK 2.6.6

Major bug fixes

  • The OEFlipper function with forceFlip=false no longer flips 3D molecules if stereo is defined.

Minor bug fixes

  • Molecule titles have been added to some emitted warnings to aid in identifying problematic molecules.

Quacpac TK 1.9.1

Documentation changes

Shape TK 1.11.0

New features

  • A new API has been added to perform Hermite expansion and store the approximate shape of drug-size molecules and proteins.
    • The class OEHermite and associated options class OEHermiteOptions allows the user to perform Hermite expansion of a molecule and output the results to a grid.
    • The class OEHermiteShapeFunc can be used to obtain a best shape overlap of two molecules by approximating each molecule with its Hermite representation.

Documentation changes

Spicoli TK 1.4.2

New features

  • A new style of protein ribbons has been added and is accessible through the function OEMakeProteinRibbonSurface. A third argument, a constant from the OERibbonType namespace, has been added to this function to specify the ribbon type. The new ribbon style OERibbonType::Pretty creates ribbons that have a smoother appearance than the older, default style.

Major bug fixes

Szmap TK 1.4.1

  • Minor internal improvements have been made.

Szybki TK 2.0.0

Minor bug fixes

  • The OESzybki::GetEntropy method now checks for consistency between the input argument for environment type and the already defined solvent method in OESzybkiOptions. This check ensures that the wrong entropy calculation is not silently performed.

Documentation changes

  • The Advanced API section has been removed. The low-level functionality offered through the advanced API has been improved and is now offered as a new toolkit named OEFF TK. The documentation is available at OEFF toolkits.

Zap TK 2.3.1

  • Minor internal improvements have been made.