Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Releases: lich-uct/molpher-lib

v0.0.0b3

21 Oct 10:15

Choose a tag to compare

Molpher-lib Changelog

Current Version: 0.0.0b3
Previous Version: 0.0.0b2

New Features

  • the tree now has a source and target attributes which contain SMILES strings of the source and target structures

Changes

  • the ./deps/build_deps.sh script is now retired and removed
    • use the conda build environment instead (its current snapshot is always saved in environment.yml)
    • the environment can be supplied to cmake via the CONDA_PREFIX environment variable (automatically set when conda activate {env} is run)
  • because RDKit dropped Python 2 support, Python 2 conda packages will no longer be built for molpher-lib
  • simplified conda package build
  • use conda-forge as the main channel for dependencies (also necessary to specify during conda install), README changed accordingly
  • the atom types incorporated into generated structures now follow realistic distribution derived from ChEMBL
    • this affect the AddAtom, InterlayAtom and MutateAtom operators

Fixes

  • fixed issue #6 (Cryptic error raised when max_iters is specified in algorithm settings)
  • fixes issue #9 (the newest versions of dependencies should work fine now)
  • fixed a few minor issues that caused some dependencies to break when certain dependency versions were used

v0.0.0b2

29 Jun 07:57

Choose a tag to compare

Previous version: 0.0.0b1

Changes

  • implemented a basic pathfinder for quick customized searches (molpher.algorithms.pathfinders.BasicPathfinder)
  • dependencies were updated (the code should work fine with RDKit 2018.03.1, Boost 1.65 and TBB 2018 U3)
  • all dependencies are now linked dynamically
  • conda environment libraries can now be searched during cmake configuration by setting the CONDA_PREFIX environment variable
  • conda packages now depend on tbb, rdkit and boost libraries from anaconda repositories both during build time and runtime
  • the unit tests binary is now included in the CMakeLists.txt file and it can also be installed with the project
  • SWIG was updated to version 3.0.12
  • other small optimizations of the build process
  • the MorphingOperator interface was implemented and tested in both Python and C++
    • AddAtom operator class was added that adheres to this interface
    • RemoveAtom operator class was added that adheres to this interface
    • AddBond operator class was added that adheres to this interface
    • RemoveBond operator class was added that adheres to this interface
    • MutateAtom operator class was added that adheres to this interface
    • InterlayAtom operator class was added that adheres to this interface
    • ContractBond (originally BondContraction) operator class was added that adheres to this interface
    • RerouteBond (originally BondReroute) operator class was added that adheres to this interface
  • the Molpher class was created and can now be used to aggregate operators and generate random morphs of a structure (can use multiple threads)
  • ExplorationTree and GenerateMorphsOper operation now use the new Molpher interface to facilitate exploration
  • ExplorationTree and GenerateMorphsOper are also able to take instances of MorphCollector, which can be used to explore and/or modify morphs right after they are generated
  • MolpherMol can be used to get all neighbors of an atom with the getNeighbors(int idx) method
  • MolpherMol can be initialized from an MDL MOL block (using the fromMolBlock() static method) and from and RDKit molecule (using the other parameter in its constructor)
  • MolpherMol can readily be converted to an RDKit molecule with the asRDMol() method
  • MolpherMol has the lockAtoms function to lock multiple atoms at once using either a vector of indices or a SMARTS pattern
  • ExplorationTree has a new fetchPathTo method, which backtracks from the given structure and returns the sequence of MolpherMol instances that lead to its creation, starting from the source molecule.

Fixes

  • number of linked dependencies was reduced and unused libraries are now not linked