Pages

Monday, August 05, 2013

CDK 1.4.19: the changes, the authors, and the reviewers

Well, with that few issues (really, I am seriously impressed!), I cannot withhold the CDK community from a new stable release. After all, you must be jumping to implement that new 1.4 version in your tools! (Seriously, I am wondering if we can compose a list of active CDK-based projects/code bases, and what CDK version they use....)

This release is another bug fix release, including a set of fixes for long standing regressions, though in code that is not used by a lot of people. It also contains two convenience methods in the IsotopeFactory to get all isotopes, and all isotopes given a certain exact mass and maximal difference with that search mass. It also has an update for element names, now knowing about the Lv and Fl elements.

Additionally to the regression fixes, this release also contains a number of fixes to newer bug reports. For example, it fixes the matching of any bonds in searching, if the target bond is null (yeah, one of those weird corner cases that should not really happen), a similar null problem when adding the hydrogens, the group of the Ds element, and how generated SMILES handles nitrogens in rings with respect to implicit hydrogens.

Of course, there is also some general code and JavaDoc clean up. Still a lot to do their.

The changes
  • Exact mass and natural abundance is not preserved on reading/writing CML. As these attributes are boxed primitives they can be null and throw an exception when unboxed by 'assertEquals'. Before checking the values the attributes are not checked for nullity. a92d226
  • Resolves unit test failure (previous commits). When a double bond is found and there are no 2D coordinates (e.g. unspecified configuration) then return then return '0' for the configuration value. c29a6b4
  • Backport for cdk-1.4.x: use IMolecule in IMoleculeSet 1e0cfdb
  • When a reaction references a molecule which is unknown - automatically create one with that Id. This happens when the set of molecules is defined after the reaction. This commit resolve the test in error 'CML2Test. testBug2697568' 5d8f2f8
  • Resolves two long standing errors in 'cdk-extra'. The method should throw an exception when one tries to attach to an invalid atom number (e.g. 7-chlorohexane). The existing error was using the ParseException constructor incorrectly and thus would throw an error. The constructor is for generating error messages to do with syntax. As this is a semantic error the constructor did not function as intended. Simply replacing the use of this constructor with a normal error message resolves the issue. 4f5b704
  • Two convenience methods to make dealing with BODR data a lot easier c4c63dd
  • Added Lv and Fl names and two missing elements (Uup and Uut) used in Elements.java d5b5947
  • Fixed the import, matching the cdkdeps c3dd062
  • Any bond order is fine, but the IBond must exist (fixes #1305) 1795481
  • Added a positive unit test too bda3e23
  • Basic unit test for bug 1305: null should not match AnyOrderQueryBond 0b6c93d
  • Fixed the group for Ds (fixes #1282) 258b3f0
  • Removing output from unit tests. ddd8fd8
  • Unit tests for optional property writing. fb3d603
  • white-listing for export properties 72eb921
  • Do not output isotope info in PDB-CML files (fixing the last roundtripping inconsistency 084fd88
  • Output the monomers in a sorted manner, to make the CML output more reproducible eb7a953
  • Do not output empty properties b3719ee
  • Factored out the test for PDB atom customization; also fixed the test to register the customizer (but there is more wrong) 1a99bb2
  • Use interfaces instead of implementations 588951f
  • Links from the JavaDoc c86fa16
  • Test if the monomer ID is read 3943f6b
  • Invert test assertion - the molecule is now automatically configured and the structures are the same. 007dcf4
  • Tidy up of HydrogenPlacer including test annotations and additional assertions about placed/unplaced atoms. 597bfe2
  • Resolution for bug1269 - stop the hydrogen placer attempting to place hydrogens on null atoms. 3207c58
  • When ring membership is specified without a number, match any ring atom. Resolves bug 1168. 7c47f79
  • Changed the layout of radicals to have a smaller gap between them. a80c30c
  • Scale AtomRadius in RadicalGenerator 9be7452
  • Yeah, Ant 1.9.x is fine too ea5ad5d
  • SpanningTree documentation 26edde8
  • Fixed generation of SMILES with non-charged nitrogen rings with an implicit hydrogen (bug #1300) 4744fa3
  • Unit test that checks that implicit hydrogens on ring nitrogens are only added when they are negatively charged (bug #1300) 197fa13
  • Determine earlier if the nitrogen needs an explicit implicit hydrogen (you know, like [nH], solving the double bracket problem b036b3e
  • Added a unit test for the double brackets SMILES bug 2503b7f
  • Removing old @cdk.builddepends tag. b02ebdd
  • Removes old @cdk.depends tag from javadoc. d9d83b1
  • Added Magda Oprian to AUTHORS 034c706
The authors
 23  Egon Willighagen
 13  John May
  2  Arvid Berg

  1  Joos Kiener

Arvid, from the Uppsala team, had some patches for the rendering stack not yet applied, and I welcome Joos for submitting, I think, first patch.

The reviewers
     14  Egon Willighagen 
     17  John May