I'm very happy to announce that the next version of the RDKit
(Jan2008_1). This release took longer than I wanted to get done
(witness the date!), but it's finally here.

The release notes are below. There are some fairly big and important
changes, so please at least skim them.

The source release is on the downloads page:
http://sourceforge.net/project/showfiles.php?group_id=160139&package_id=180003&release_id=568941
I will upload a win32 binary sometime tonight or tomorrow morning.

If you plan to build from source, please read the new build instructions:
1) For Linux: http://code.google.com/p/rdkit/wiki/BuildingOnLinux
2) For Windows: http://code.google.com/p/rdkit/wiki/BuildingOnWindows

An updated documentation distribution will happen sometime in the next
couple of days (meanwhile the docs are in the source and binary
distribs).

-greg

******  Release_Jan2008_1 *******
(Changes relative to Release_Aug2007_1)

!!!!!! IMPORTANT !!!!!!
 - Bug fixes in the canonicalization algorithm have made it so that
   the canonical SMILES from this version are not compatible with
   those from older versions of the RDKit.
 - Please read the point about dummy atoms in the "New Features"
   section. It explains a forthcoming change that will affect
   backwards compatibility when dealing with dummy atoms.
 - The build system has been completely changed. Makefiles and Visual
   Studio project files have been removed. See the "Other" section for
   more info.

Acknowledgements:
 - Adrian Schreyer uncovered and reported a number of the bugs fixed
   in this release.

Bug Fixes
 - the Recap code no longer generates illegal fragments for
   highly-branched atoms. (issue 1801871)
 - the Recap code no longer breaks cyclic bonds to N
   (issue 1804418)
 - A bug in the kekulization of aromatic nitrogens has been fixed
   (issue 1811276)
 - Bugs in the Atom Type definitions for polar carbons and positive
   nitrogens in BaseFeatures.fdef have been fixed. (issue 1836242)
 - A crash in the sanitization of molecules that only have degree 4
   atoms has been fixed; it now generates an exception. The underlying
   problem with ring-finding in these systems is still present. (issue
   1836576)
 - Mol files for molecules that have more than 99 atoms or bonds are
   no longer incorrectly generated. (issue 1836615)
 - Problems with the sping PIL and PDF canvases have been cleared
   up. The PIL canvas still generates a lot of warnings, but the
   output is correct.
 - The query "rN" is now properly interpreted to be "atom whose
   smallest ring is of size N" in SMARTS queries. It was previously
   interpreted as "atom is in a ring of size N". (issue 1811276)
   This change required that the default feature definitions for
   aromaticity and lumped hydrophobes be updated.
 - The MolSuppliers (SDMolSupplier, TDTMolSupplier, SmilesMolSupplier)
   no longer fail when reading the last element. (issue 1874882)
 - A memory leak in the constructor of RWMols was fixed.
 - A problem causing rapid memory growth with Recap analysis was fixed.
   (issue 1880161)
 - The Recap reactions are no longer applied to charged Ns or Os
   (issue 1881803)
 - Charges, H counts, and isotope information can now be set in
   reactions. (issue 1882749)
 - The stereo codes from double bonds (used for tracking cis/trans)
   are now corrected when MolOps::removeHs is called. (issue 1894348)
 - Various small code cleanups and edge case fixes were done as a
   result of things discovered while getting the VC8 build working.

New Features
 - The SparseIntVect class (used by the atom pairs and topological
   torsions) is now implemented in C++.
 - The package $RDKit/Python/Chem/MolDb has been added to help deal
   with molecular databases. (this was intended for the August release
   and overlooked)
 - The module $RDKit/Python/Chem/FastSDMolSupplier has been added to
   provide a fast (at the expense of memory consumption) class for
   working with SD files. (this was intended for the August release
   and overlooked)
 - A new directory $RDKit/Projects has been created to hold things
   that don't really fit in the existing directory structure.
 - The new project $RDKit/Projects/DbCLI has been added. This contains
   command-line scripts for populating molecular database and
   searching them using substructure or similarity.
 - The code for calculating some descriptors has been moved into C++
   in the new module Chem.rdMolDescriptors. The C++ implementation is
   considerably faster than the Python one and should be 100%
   backwards compatible.
 - The MaxMinPicker (in Code/SimDivPickers) supports two new options:
   1) the user can provide a set of initial picks and the algorithm
      will pick new items that are diverse w.r.t. to those
   2) the user can provide a function to calculate the distance matrix
      instead of calculating it in advance. This saves the N^2 step of
      calculating the distance matrix.
 - A new piece of code demo'ing the use of the RDKit to add chemical
   functionality to SQLite is in Code/Demos/sqlite. This will
   eventually move from Demos into Code/sqlite once some more
   functionality has been added and more testing is done.
 - The distance geometry embedding code now supports using random
   initial coordinates for atoms instead of using the eigenvalues of
   the distance matrix. The default behavior is still to use the
   eigenvalues of the distance matrix.
 - The function Recap.RecapDecompose now takes an optional argument
   where the user can specify the minimum size (in number of atoms)
   of a legal fragment. (feature request 180196)
 - Dummy atoms can be expressed using asterixes, per the Daylight spec.
   Dummy atoms are also now legal members of aromatic systems (e.g.
   c1cccc*1 is a legal molecule). Support for supplying dummy atoms
   as "[Du]", "[X]", "[Xa]", etc. is now considered deprecated. In
   the next release a warning will be generated for these forms and
   in the release after that the old form will generate errors. Note
   that the output of dummy atoms will also change: in the next release
   the default output format will be "*".
   (feature request 186217)
 - A proof of concept for doing a SWIG wrapper of RDKit functionality
   has been added in: $RDBASE/Code/Demos/SWIG/java_example. This isn't
   even remotely production-quality; it's intended to demonstrate that
   the wrapping works and isn't overly difficult.

Other
 - The full set of tests is now easier to setup and run on new
   machines. (issue 1757265)
 - A new build system, using Boost.Build, has been put into place on
   both the windows and linux sides. The new system does much better
   dependency checking and handles machine-specific stuff a lot
   better. The new system has been tested using Visual Studio 2003,
   Visual Studio Express 2005, Ubuntu 7.10, and RHEL5.
 - The "Getting Started in Python" document has been expanded.
 - There's now an epydoc config file for building the python
   documentation ($RDBASE/Python/epydoc.config).

Reply via email to