Commits on Jul 22, 2016
  1. Fix format-security GCC warning

    In Fedora land, format-security GCC warnings are treated as errors
    so the build would fail like this:
    
    In file included from /usr/include/pgsql/server/postgres.h:48:0,
                     from rdkit.h:40,
                     from mol_op.c:33:
    mol_op.c:339:19: error: format not a string literal and no format arguments [-Werror=format-security]
         elog(WARNING, t);
                       ^
    committed Jul 22, 2016
Commits on Jul 21, 2016
  1. @greglandrum @bp-kelley

    Fixes #975 (#976)

    greglandrum committed with bp-kelley Jul 21, 2016
  2. @ptosco @greglandrum
  3. @ptosco @greglandrum
  4. @ptosco @greglandrum

    Java wrappers for Trajectory/Snapshot objects (#977)

    * - started SWIG wrapping of Trajectory code
    * - work in progress
    * - wip
    * - wip
    * - WIP on TrajectoryTests.java
    * - WIP
    * - WIP
    * - TrajectoryTests.java completed
    * - reverted file modified my accident
    ptosco committed with greglandrum Jul 21, 2016
Commits on Jun 29, 2016
  1. @bp-kelley @greglandrum

    Adds aromatization and reaction options to AdjustQuery (#965)

    * Adds aromatization and reaction options to AdjustQuery
    
     aromatizeIfPossible - checks kekulized queries for
        aromatic compatibility
     adds IGNORE_MAPPED and IGNORE_ATTACHEDRGROUPS options
      to adjustDegree
    
    * Missed return false.
    
    * Removes IGNOREATTACHEDRGROUPS
    bp-kelley committed with greglandrum Jun 28, 2016
  2. @bp-kelley @greglandrum
  3. @greglandrum
  4. @sriniker @greglandrum

    Improved planarity for ETKDG (#967)

    * enforce planarity
    
    * increase the force constant for the impropers
    
    * force constant adapted
    
    * reduced tolerance for planarity and force constants changed for some torsions
    
    * tolerance for planarity increased a bit again
    
    * cerr outputs removed
    
    * planarity tolerance increased
    
    * boost log added in planarity check
    sriniker committed with greglandrum Jun 29, 2016
Commits on Jun 28, 2016
  1. @ptosco @greglandrum

    Made DistGeomHelpers test robust against small 3D coordinate variatio…

    …ns (#961)
    
    * - made Code/GraphMol/DistGeomHelpers/testDgeomHelpers.cpp and Code/GraphMol/DistGeomHelpers/Wrap/testDistGeom.py
      more robust against very small coordinate variations which may induce UFF energy variations in the 1-kcal/mol range.
      This was observed in a single case using the MinGW 32-bit g++ compiler. The check for identity of conformations
      between single- and multi-threaded runs is now complemented by a 3D coordinate MSD check
    
    * - lowered the energy tolerance to 1.0 kcal/mol
    
    * - added rdkitBuild string with compile-time information
    - added runtime check in Code/GraphMol/DistGeomHelpers/testDgeomHelpers.cpp
      and Code/GraphMol/DistGeomHelpers/Wrap/testDistGeom.py
      to use more lenient tolerances with MinGW compilers
    ptosco committed with greglandrum Jun 28, 2016
Commits on Jun 25, 2016
  1. @ptosco @greglandrum

    Modifications to enable building with MinGW compilers (#960)

    * - added -DBOOST_SYSTEM_NO_DEPRECATED to definitions for MINGW builds
    - modified a few #ifdef's to discriminate better between MINGW and MSVC
    - added a ios::binary to Code/GraphMol/FileParsers/testMolSupplier.cpp
      (I already had to add some of those in the past to avoid the CR+LF issues on Windows)
    - modified Code/GraphMol/FMCS/MaximumCommonSubgraph.cpp and
      Code/GraphMol/FMCS/FMCS.h because checking the function pointer does not
      work with DLLs as the function pointer changes upon different calls
    - builds under MinGW with -DRDK_USE_BOOST_SERIALIZATION=OFF and
      RDK_BUILD_THREADSAFE_SSS=OFF
    
    * - added the possibility to define MSVC_RUNTIME_DLL to point to the
      absolute path of an appropriate MSVC runtime DLL to enable
      multi-threaded builds with MinGW
    - modified C++ and Python tests of the multi-threaded conformation
      embedder as under 32-bit MinGW lower numeric precision introduces minimal
      coordinate differences with result in ~1-kcal energy difference.
      Therefore the energy criterion has been made more lenient, and a
      coordinate MSD criterion has been introduce to compare substantial
      identity of conformations
    
    * - reverted Code/GraphMol/DistGeomHelpers/Wrap/testDistGeom.py and Code/GraphMol/DistGeomHelpers/testDgeomHelpers.cpp
      to the upstream/master version
    ptosco committed with greglandrum Jun 25, 2016
Commits on Jun 24, 2016
  1. @greglandrum

    typo

    greglandrum committed Jun 24, 2016
  2. @greglandrum

    try to make appveyor quieter

    greglandrum committed Jun 24, 2016
  3. @greglandrum
  4. @greglandrum
  5. @greglandrum

    Fixes #893 (#958)

    greglandrum committed on GitHub Jun 24, 2016
  6. @greglandrum @bp-kelley

    Fix/github937 (#959)

    * results of 2to3 run
    Tests now pass
    Fixes #937
    
    * works in python3
    
    * re-enable the subshape tests
    
    * add back the __future__ imports
    greglandrum committed with bp-kelley Jun 24, 2016
  7. @greglandrum @bp-kelley

    Fixes #955 (#956)

    greglandrum committed with bp-kelley Jun 24, 2016
  8. @greglandrum @bp-kelley

    Fixes #953 (#954)

    greglandrum committed with bp-kelley Jun 24, 2016
Commits on Jun 22, 2016
  1. @greglandrum @bp-kelley

    Dev/cleanup warnings (#948)

    * Remove a bunch of warnings
    
    The biggest change here is to treat the boost includes as system libraries.
    This causes g++ to ignore warnings from boost.
    This change still needs to be tested with clang and on Windows
    
    * suppress a bunch of warnings on clang
    greglandrum committed with bp-kelley Jun 22, 2016
  2. @greglandrum

    typo fix

    <sigh>
    greglandrum committed on GitHub Jun 22, 2016
  3. @greglandrum

    Ensure the cartridge uses POPCOUNT when built with cmake

    The problem only affected cmake cartridge builds.
    greglandrum committed on GitHub Jun 22, 2016
  4. @greglandrum

    Get this building with RDK_THREADSAFE_SSS OFF

    @NadineSchneider actually found this, but she delegated committing the fix to me. ;-)
    greglandrum committed on GitHub Jun 22, 2016
  5. @greglandrum
  6. @bp-kelley @greglandrum

    Dev/moldescriptors callables (#944)

    * Adds a generic Property Calculation API
    
         Property mw(Property::MW);
         Property logp(Property::ALOGP);
    
         // User based function
         struct MyPropertyFunction : public PropertyFxn {
           double compute(const ROMol &mol) const {
             return rdcast<double>(mol.getNumAtoms());
           }
           bool isAdditive() const { return true; }
         }
    
         // Make the a num atom property
         boost::shared_ptr<PropertyFxn> atomfxn(new MyPropertyFxn);
         Property numAtoms("NumAtoms", atomfxn);
    
         double alogp = logp.computeProperty(mol);
         double nAtoms = numAtoms.computeProperty(mol);
    
    And a ProperFilter API
    
         // Molecular weight filter 0 ... 500.
         PropertyFilter mw(PropertyFilter::MW, 0., 500.);
         
         // log p Filter -5 ... 5
         PropertyFilter logp(PropertyFilter::ALOGP, -5.0, 5.0);
    
         // User based function
         struct MyPropertyFunction : public PropertyFxn {
           double compute(const ROMol &mol) const {
             return rdcast<double>(mol.getNumAtoms());
           }
         }
    
         // add num atom property 0. ... 50.
         boost::shared_ptr<PropertyFxn> atomfxn(new MyPropertyFxn);
         PropertyFilter natoms("NumAtoms", 0., 50., atomfxn);
    
         if (natoms.accepts(mol)) {
          // molecule is ok
         } else {
          // molecules is bad
         }
    
    * Adds missing includes
    
    * Fixes g++ access to class based enums
    
    * Updates to new API, adds better property registry
    
    * Adds a generic Property Calculation API
    
         Property mw(Property::MW);
         Property logp(Property::ALOGP);
    
         // User based function
         struct MyPropertyFunction : public PropertyFxn {
           double compute(const ROMol &mol) const {
             return rdcast<double>(mol.getNumAtoms());
           }
           bool isAdditive() const { return true; }
         }
    
         // Make the a num atom property
         boost::shared_ptr<PropertyFxn> atomfxn(new MyPropertyFxn);
         Property numAtoms("NumAtoms", atomfxn);
    
         double alogp = logp.computeProperty(mol);
         double nAtoms = numAtoms.computeProperty(mol);
    
    And a ProperFilter API
    
         // Molecular weight filter 0 ... 500.
         PropertyFilter mw(PropertyFilter::MW, 0., 500.);
         
         // log p Filter -5 ... 5
         PropertyFilter logp(PropertyFilter::ALOGP, -5.0, 5.0);
    
         // User based function
         struct MyPropertyFunction : public PropertyFxn {
           double compute(const ROMol &mol) const {
             return rdcast<double>(mol.getNumAtoms());
           }
         }
    
         // add num atom property 0. ... 50.
         boost::shared_ptr<PropertyFxn> atomfxn(new MyPropertyFxn);
         PropertyFilter natoms("NumAtoms", 0., 50., atomfxn);
    
         if (natoms.accepts(mol)) {
          // molecule is ok
         } else {
          // molecules is bad
         }
    
    * Adds missing includes
    
    * Fixes g++ access to class based enums
    
    * Updates to new API, adds better property registry
    
    * Fixes merge error
    
    * Removes unused unordered_map include
    
    * Adds calcClogP calcMR as functions.
    
    * PropertyFxn ->PropertyFunctor, adds Queries::Query based queries.
    
    * Adds Python PropertyFunctors (can’t be used as queries yet)
    
    * Exposes PropertyRangeQueries
    
    * Adds doc strings
    
    * Throws error if stereo is not assigned.
    
    * Adds molecule annotation.
    bp-kelley committed with greglandrum Jun 22, 2016
Commits on Jun 21, 2016
  1. @greglandrum @bp-kelley

    Add cartridge support for adjustQueryProperties() (#949)

    * backup commit
    
    * Change the names and meanings of MolOps::AdjustQueryWhichFlags
    What was there before was not flexible enough and was extremely confusing. This should clear that up.
    
    NOTE: this does break backwards compatibility with code that uses this enum, but given that this is new and has not been
    widely promoted, I suspect it should not affect that many people. The default behavior of MolOps::adjustQueryProperties()
    remains the same.
    
    * adjust to the new AdjustQueryWhichFlags
    
    * add mol_adjust_query_properties tests to the cartridge
    greglandrum committed with bp-kelley Jun 21, 2016
  2. @greglandrum @bp-kelley

    Fixes #932 (#950)

    greglandrum committed with bp-kelley Jun 21, 2016
  3. @greglandrum

    Fix a documentation typo

    greglandrum committed on GitHub Jun 21, 2016
  4. @greglandrum
  5. @greglandrum

    update a test

    greglandrum committed Jun 21, 2016
Commits on Jun 20, 2016
  1. @mnowotka

    Bug when removing stereo info?

    It's very possible, that I don't understand something (apologies) but shouldn't the second loop iterate over vertices adjacent to the second end of the bond being removed?
    mnowotka committed on GitHub Jun 20, 2016
Commits on Jun 17, 2016
  1. @greglandrum @bp-kelley

    Add support for a simplified aromaticity model. (#942)

    * first pass
    
    * Fixes #623
    
    * fix a merge problem
    
    * move the aromaticity perception to a helper fn
    
    * python doc update
    
    * replace setSimpleAromaticity() with a parameter to setAromaticity()
    
    * add simple test for the custom aromaticity function
    greglandrum committed with bp-kelley Jun 17, 2016
Commits on Jun 16, 2016
  1. @greglandrum

    Feat/github934 (#939)

    * support keyword arguments to the FP functions
    Fixes #934
    
    * add tests
    greglandrum committed on GitHub Jun 16, 2016
Commits on Jun 14, 2016
  1. @greglandrum

    Fixes #940 (#941)

    * Fixes #940
    
    * ensure RWMol ctors also initialize properly
    
    * cleanup when replacing non-POD with POD
    greglandrum committed on GitHub Jun 14, 2016
Commits on Jun 13, 2016
  1. @greglandrum @bp-kelley

    Fixes #936 (#938)

    greglandrum committed with bp-kelley Jun 14, 2016