## Wednesday, February 03, 2010

### CDK 1.3.2: the changes

I promise I will write up more useful changelogs, and will actually try to do so in the excellent way Bob Hanson has been doing for Jmol: by example. For now, the following will have to do. These are the changes after release 1.3.1, which include all the changes in release 1.2.5:
• Use the new error reporting IO API fd81efc
• Added a new IO API for reporting file format errors. ea5f0b7
• A new test for canonicalLabeler. I first tried in an older checkout, where it failed, but it works in master. I think we can still put the test in, more tests are better. b9db6f1
• Unit test for bug #2944080 b0666e9
• Added the atom-atom mapping for all atom containing the reactant molecules 68e696a
• Removed the bond mapping from the reaction. It will only contain atom-atom mapping functionality aa3511f
• Initiating only one time the function LonePairElectronChecker e71b52e
• Added getExampleReactants and getExpectedProducts method for all reaction.type test. 4f5e8a1
• The IMapping interface had a class comment which probably was a copy&paste artefact. Changed this. 05c857c
• Fixed license info .meta file for JavaCC d9e15bb
• Removed bit which explain how to apply the LGPL to source (fixes #2926775) 12e8e4f
• CDKHydrogenAdder should not attempt addImplicitHydrogen for pseudo atoms in an atom container 7074cf5
• Added unit test for adding hydrogens to IPseudoAtom, which current causes a NPE a30ca3e
• MDLV2000Reader throws exception for query bond types 354e93f
• MDL reading and writing and stereo bond types e335bbc
• Added a helper method GeometryTools.getRectangle2D() to get the space occupied by an IAtomContainer da488c0
• Reimplemented shiftContainer(IAtomContainer, Rectangle2D, Rectange2D, double) originally implemented as jchempaint-primary patch 9200bdc4d68dc8f70373a62eaec51357b680d5e6 by Stefan Kuhn: fixing the detection of overlap, and added missing unit tests 50ebfa1
• Added IO option to allow saving aromatic SMILES 84a44e0
• Added missing unit testing for the SMILESWriter 7d6a9b6
• Moved Normalizer into a separate package, in reply to discussion around patch #2905749, making space for a uniform platform for structure normalization: cdk.normalize 4c49c24
• Attached are some more license files. 47a226a
• The log4j.jar is version 1.2.15. 834ade8
• More completed files attached. 9e88243
• They were incomplete, as many other files still are. 261795f
• Fixed conflict in LICENSE file due to merge from cdk-1.2.x branch d40a679
• Added a QA target ae661aa
• Use local PMD and JUnit reports if available 35550bd
• Added info for dependencies e4a90b1
• Created a list, to be able to add license information 5b5e54d
• Catch a SocketException when there is no internet 5737371
• Output where it is working on 7693308
• Removed empty lines 53e60f9
• Added initial license information, based on the information sent by Stefan 17b3c0c
• [PATCH] SSSR Test f651b94
• Bucky ball test molecule 0724464
• Patch from Ulrich Bauer regarding ringsearch bauer@math.uni-goettingen.de c3c9110
• Update code example in JavaDoc reflecting the current API (fixes #2914791) 75b4457
• Minor fixes for the RasmolColors class. d9b1312
• New classes for Rasmol color scheme 66ca51f
• Updated UIT matching for the single atom case so that it correctly handles queries that are plain atom containers bbc8f60
• Updated fingerprinter to fix bug 2819557. Updated JUnit tests to take into account new fingerprints. Also cleaned up the template extractor code and regenerated fingerprints for builder3d. Also updated the build file to properly include dependency jars for the makefp3d target 6d453a1
• Added a datafile entry for the standard module to store the VDW radii etc for the periodic table 813f45d
• Fixed reading of SD file properties e4b7f06
• Added unit test for a MDL SD file with mutliple data fields 97c2c19
• Updated license info of third party libraries a9c85f9
• Fixed JavaDoc: added missing period at end of first sentence, removed useless @throws clause, added missing @cdk.bug tag b5b722b
• Package fixing release: fixed building JavaDoc from source dist e151326
• Added missing references file to the source dist (full and pure) 1cd2124
• Removed source folders of Doclets, which are not part of the release, and should not be compiled for JavaDoc generation anyway dc8e5e7
• Removed java pkg removed by the periodic table patch from the Eclipse project classpath 5c63c90
• Added test case for bug 2819557 1ac7920
• The AtomType(String) constructor is updated so that only formal charge is set to 0 as indicated in the Javadocs. All other fields are set ot UNSET. Javadocs were updated to make this explicit 8206e95
• Updated canonical labeler to make use of the PeriodicTable class so that even if an input molecule was not configured we can still get a valid atomic number. This makes SMILES generation a little more robust (cf bug 2898032) 2cb55bd
• added a constant for untyped atoms a51c932
• Updated to avoid use of deprecated StringBufferInputStream c8ec6e0
• added a test for single-line inchi with several branches c7c92df
• the inchi reader was written in such a way that it 1) needed a further line after the inchi=, which was not read, but needed to avoid npes 2) It could only process one branch on a level 3) it required the inchi line to start with INChI, newer versions require InChI= All this has been fixed cb5486c
• Start angles should be different for different size rings cbdcda7
• Sorting of containers in a AtomContainerSet 545eda2
• Added new test class to the module suite a1f427b
• New comparators for AtomContainer 01e8b62
• Refactored periodic table element to be a standalone class, so independent of the data module. This is OK, since the class is really just a struct to hold PT data for a given element. As opposed to being a basis of an elemental representation. Also, this class is entirely private to this package, so it doesn't really matter what it is. Updated associated unit tests 27fc004
• Some minor code clean up a0439ab
• Updated to remove Symbols and all associated tests and usages. Replaced with PeriodicTable d20efc4
• Moved PT related tests to their own package. Updated test suites d58c03e
• Added method (and test) to get symbol from atomic number and also get element counts f93e06f
• Updated module membership. Also made everything bu tmain PT class package private 044a4ad
• Moved PT related classes into their own package c7f523f
• Added a test to MoleculeSetTest, which tests that the clone() does not change the MoleculeSEt 42915c4
The matching authors (though one commit was a patch really by Ullrich Bauer) and the number of commits they made:
    47  Egon Willighagen
15  Rajarshi Guha
11  Stefan Kuhn
10  Mark Rynbeek
4  Miguel Rojas Cherto

With the obligatory note that the number of commits does not reflect the amount of work involved.