forked from rdkit/rdkit
-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathReleaseNotes.txt
2075 lines (1840 loc) · 88.3 KB
/
ReleaseNotes.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
****** Release_2014.03.1 *******
(Changes relative to Release_2013.09.1)
Acknowledgements:
Bug Fixes:
New Features:
New Database Cartridge Features:
New Java Wrapper Features:
Deprecated modules (to be removed in next release):
Removed modules:
Contrib updates:
Other:
- The Open3DAlign code is considerably faster.
****** Release_2013.09.1 *******
(Changes relative to Release_2013.06.1)
Acknowledgements:
James Davidson, JP Ebejer, Nikolas Fechner, Grégori Gerebtzoff, Michal Nowotka, Sereina Riniker, Roger
Sayle, Gianluca Sforna, Matthew Szymkiewicz, Paolo Tosco, Dan Warner,
!!!!!! IMPORTANT !!!!!!
- Due to a bug fix in the parameter set, the MolLogP and MolMR
descriptor calculators now return different values for molecules
with pyrrole (or pyrrole-like) Ns.
Bug Fixes:
- The pymol ShowMol method can now handle molecules with more than
999 atoms (they are sent via PDB)
- Various stability improvements to the Pandas integration.
(github issues 129 and 51)
- Some RDKit methods require python lists and don't allow passing
numpy arrays or pandas series directly
(github issue 119)
- mol2 parser not setting E/Z flags on double bonds
(github issue 114)
- Incorrect angle terms in UFF
(github issue 105)
- Problems with stereochemistry flags and PathToSubmol()
(github issue 103)
- Bad Crippen atom type for pyrrole H
(github issue 92)
- PandasTools tests fail with Pandas v0.12
(github issue 91)
- Isotope information not affecting chirality
(github issue 90)
- properties are not read from SDF files with V3000 mol blocks.
(github issue 88)
- assignStereochemistry does not remove bond wedging that shouldn't be there.
(github issue 87)
- Drawing code modifies wedge bonds in reactions
(github issue 86)
- Stereochemistry not perceived when parsing CTABs unless sanitization is done.
(github issue 82)
- 2D rendering issue for epoxide ( CAS 70951-83-6)
(github issue 78)
- PandasTools doctests should be failing, but are not
(github issue 75)
- Better handling of radicals to/from mol files
(github issue 73)
- Benzothiazolium structure can be parsed from ctab, but the SMILES generated cannot be processed.
(github issue 72)
- Chem.MolFromInch hangs on CID 23691477 and CID 23691480
(github issue 68)
- Chem.MolFromInchi on CHEMBL104337 leads to segmentation fault
(github issue 67)
- "Could not embed molecule." (The Anthony Conundrum)
(github issue 55)
New Features:
- Add fragmentOnBonds() to python wrapper
(github issue 142)
- Allow renumbering atoms in a molecule.
(github issue 140)
- MMFF94 and MMFF94S support
- implementation of the Open3DAlign rigid alignment algorithm
- Support for reading and writing PDB files
- The python function AllChem.AssignBondOrdersFromTemplate() can be
used to assign bond orders from a reference molecule to the bonds
in another molecule. This is helpful for getting bond orders
correct for PDB ligands.
(github issue 135)
- Bond lengths, angles, and torsions can now be queries and adjusted.
(github issue 132)
- Implementation of similarity maps
(github issue 94)
- Python implementation of the Fraggle similarity algorithm.
See Jameed Hussain's presentation from the 2013 UGM for details:
https://github.com/rdkit/UGM_2013/blob/master/Presentations/Hussain.Fraggle.pdf?raw=true
- SparseIntVects now support -=, +=, /=, and *= with ints from C++
and Python
- support \\ in SMILES
(github issue 136)
- Support a similarity threshold in DbCLI
(github issue 134)
- Support construction molecules from other molecules in the python wrapper
(github issue 133)
- support tversky similarity in DbCLI
(github issue 130)
- support tversky similarity in cartridge
(github issue 121)
- support reading and writing reactionComponentType and reactionComponentNumber from ctabs
(github issue 118)
- Add in-place forms of addHs(), removeHs(), and mergeQueryHs()
(github issue 117)
- modify MolOps::cleanUp() to support this azide formulation: C-N=N#N
(github issue 116)
- Dihedral rotation exposed in python
(github issue 113)
- Support for cairocffi (cairo drop-in replacement that plays nicely with virtualenv)
(github issue 80)
- Grey color for Hydrogens
(github issue 97)
- Improvements to the Dict interface in C++
(github issue 74)
- customizable drawing options
(github issue 71)
- Add method for setting the chiral flag in mol blocks
(github issue 64)
- New descriptors added (Python only for now):
MaxPartialCharge(),MinPartialCharge(),MaxAbsPartialCharge(),MinAbsPartialCharge(),
MaxEStateIndex(),MinEStateIndex(),MaxAbsEStateIndex(),MinAbsEStateIndex()
New Database Cartridge Features:
New Java Wrapper Features:
- MMFF support
- PDB reading and writing
- Open3DAlign support
Deprecated modules (to be removed in next release):
Removed modules:
Contrib updates:
- The MMPA implementation has been updated
See Jameed Hussain's tutorial from the 2013 UGM for details:
https://github.com/rdkit/UGM_2013/tree/master/Tutorials/mmpa_tutorial
[Jameed Hussain]
- An implementation of Ertl and Schuffenhauer's Synthetic
Accessibility score is available in Contrib/SA_Score
[Peter Ertl, Greg Landrum]
- Command line scripts for the Fraggle similarity algorithm
See Jameed Hussain's presentation from the 2013 UGM for details:
https://github.com/rdkit/UGM_2013/blob/master/Presentations/Hussain.Fraggle.pdf?raw=true
[Jameed Hussain]
Other:
- Some of the changes to UFF deviate from the published force
field. Specifics of the changes, and the reasoning behind them, are
in Paolo Tosco's 2013 RDKit UGM presentation:
https://github.com/rdkit/UGM_2013/blob/master/Presentations/Tosco.RDKit_UGM2013.pdf?raw=true
- Reaction drawing has been improved. Support for reaction drawing
has been added to the IPython notebook.
****** Release_2013.06.1 *******
(Changes relative to Release_2013.03.2)
Administrivia note:
In the course of this release cycle, development was moved over
entirely to github. The sourceforge svn repository no longer contains
an up-to-date version of the code.
Acknowledgements:
Andrew Dalke, JP Ebejer, Nikolas Fechner, Roger Sayle, Riccardo Vianello,
Yingfeng Wang, Dan Warner
Bug Fixes:
- The docs for Descriptors.MolWt are now correct (GitHub #38)
- Molecules coming from InChi now have the correct molecular
weight. (GitHub #40)
- RemoveAtoms() no longer leads to problems in canonical SMILES
generation when chiral ring atoms are present. (GitHub #42)
- Atom invariants higher than the number of atoms in the molecule can
now be provided to the atom pairs and topological torsions
fingerprinters. (GitHub #43)
- A typo with the handling of log levels was fixed in the python
wrapper code for InChI generation. (GitHub #44)
- Stereochemistry no longer affects canonical SMILES generation if
non-stereo SMILES is being generated. (GitHub #45)
- The ExactMolWt of [H+] is no longer zero. (GitHub #56)
- The MPL canvas now has an addCanvasDashedWedge() method. (GitHub
#57)
- RWMol::insertMol() now copies atom coordinates (if
present). (GitHub #59)
- The "h" primitive in SMARTS strings now uses the method
getTotalNumHs(false) instead of getImplicitValence().
(GitHub #60)
- bzip2 files now work better with the SDWriter class. (GitHub #63)
- a crashing bug in InChI generation was fixed. (GitHub #67)
New Features:
- Sanitization can now be disabled when calling GetMolFrags() from
Python (GitHub #39)
- Bond.GetBondTypeAsDouble() has been added to the python
wrapper. (GitHub #48)
- The fmcs code now includes a threshold argument allowing the MCS
that hits a certain fraction of the input molecules (instead of all
of them) to be found. The code has also been synced with the most
recent version of Andrew Dalke's version.
- Atoms now have a getTotalValence() (GetTotalValence() from Python)
method. (GitHub #61)
- R labels from Mol files now can go from 0-99
- chiral flags in CTABs are now handled on both reading and writing.
The property "_MolFileChiralFlag" is used.
New Database Cartridge Features:
New Java Wrapper Features:
- {Get,Set}Prop() methods are now available for both Atoms and
Bonds. (GitHub #32)
Deprecated modules (to be removed in next release):
Removed modules:
- rdkit.utils.pydoc_local
Other:
- the handling of flex/bison output files as dependencies has been
improved (GitHub #33)
- the molecule drawing code should now also work with pillow (a fork of
PIL)
- the PANDAS integration has been improved.
****** Release_2013.03.2 *******
(Changes relative to Release_2013.03.1)
Acknowledgements:
Manuel Schwarze
Bug Fixes:
- The hashed topological torsion fingerprints generated are now the
same as in previous rdkit versions. (GitHub issue 25)
****** Release_2013.03.1 *******
(Changes relative to Release_2012.12.1)
!!!!!! IMPORTANT !!!!!!
- The algorithm for hashing subgraphs used in the RDKit fingerprinter
has changed. The new default behavior will return different
fingerprints than previous RDKit versions. This affects usage from
c++, python, and within the postgresql cartridge. See the "Other"
section below for more details.
Acknowledgements:
Paul Czodrowski, Andrew Dalke, Jan Domanski, Jean-Paul Ebejer, Nikolas
Fechner, Jameed Hussain, Stephan Reiling, Sereina Riniker, Roger
Sayle, Riccardo Vianello
Bug Fixes:
- removeBond now updates bond indices (sf.net issue 284)
- dummy labels are no longer lost when atoms are copied (sf.net issue
285)
- more specific BRICS queries now match before less specific ones
(sf.net issue 287, github issue 1)
- molAtomMapNumber can now be set from Python (sf.net issue 288)
- the legend centering for molecular image grids has been improved
(sf.net issue 289)
- make install now includes all headers (github issue 2)
- InChIs generaged after clearing computed properties are now correct
(github issue 3)
- Reacting atoms that don't change connectivity no longer lose
stereochemistry (github issue 4)
- Aromatic Si is now accepted (github issue 5)
- removeAtom (and deleteSubstructs) now correctly updates stereoAtoms
(github issue 8)
- [cartridge] pg_dump no longer fails when molecules cannot be
converted to SMILES (github issue 9)
- a canonicalization bug in MolFragmentToSmiles was fixed (github issue 12)
- atom labels at the edge of the drawing are no longer cut off (github issue 13)
- a bug in query-atom -- query-atom matching was fixed (github issue 15)
- calling ChemicalReaction.RunReactants from Python with None
molecules no longer leads to a seg fault. (github issue 16)
- AllChem.ReactionFromSmarts now generates an error message when called
with an empty string.
- Writing CTABs now includes information about atom aliases.
- An error in the example fdef file
$RDBASE/Contrib/M_Kossner/BaseFeatures_DIP2_NoMicrospecies.fdef
has been fixed. (github issue 17)
- Quantize.FindVarMultQuantBounds() no longer generates a seg fault
when called with bad arguments. (github issue 18)
- The length of SDMolSuppliers constructed from empty files is no
longer reported as 1. (github issue 19)
- Partial charge calculations now work for B, Si, Be, Mg, and Al.
(github issue 20)
- Two logging problems were fixed (github issues 21 and 24)
- Molecules that have had kappa descriptors generated can now be
written to SD files (github issue 23)
New Features:
- The handling of chirality in reactions has been reworked and
improved. Please see the RDKit Book for an explanation.
- Atom-pair and topological-torsion fingerprints now support the
inclusion of chirality in the atom invariants.
- A number of new compositional descriptors have been added:
calcFractionCSP3, calcNum{Aromatic,Aliphatic,Saturated}Rings,
calcNum{Aromatic,Aliphatic,Saturated}Heterocycles,
calcNum{Aromatic,Aliphatic,Saturated}Carbocycles
- An implementation of the molecular quantum number (MQN) descriptors
has been added.
- RDKFingerprintMol now takes an optional atomBits argument which is
used to return information about which bits atoms are involved in.
- LayeredFingerprintMol no longer takes the arguments tgtDensity and
minSize. They were not being used.
- LayeredFingerprintMol2 has been renamed to PatternFingerprintMol
- The substructure matcher can now properly take stereochemistry into
account if the useChirality flag is provided.
- The module rdkit.Chem.Draw.mplCanvas has been added back to svn.
- A new module integrating the RDKit with Pandas (rdkit.Chem.PandasTools)
has been added.
New Database Cartridge Features:
- The new compositional descriptors are available:
calcFractionCSP3, calcNum{Aromatic,Aliphatic,Saturated}Rings,
calcNum{Aromatic,Aliphatic,Saturated}Heterocycles,
calcNum{Aromatic,Aliphatic,Saturated}Carbocycles
- MACCS fingerprints are available
- the substruct_count function is now available
- substructure indexing has improved. NOTE: indexes on molecule
columns will need to be rebuilt.
New Java Wrapper Features:
- The new compositional descriptors are available:
calcFractionCSP3, calcNum{Aromatic,Aliphatic,Saturated}Rings,
calcNum{Aromatic,Aliphatic,Saturated}Heterocycles,
calcNum{Aromatic,Aliphatic,Saturated}Carbocycles
- The molecular quantum number (MQN) descriptors are available
- MACCS fingerprints are available
- BRICS decomposition is available.
Deprecated modules (to be removed in next release):
Removed modules:
Other:
- RDKit fingerprint generation is now faster. The hashing algorithm
used in the RDKit fingerprinter has changed.
- Force-field calculations are substantially faster (sf.net issue 290)
- The core of the BRICS implementation has been moved into C++.
- The MACCS fingerprint implementation has been moved into
C++. (contribution from Roger Sayle)
- New documentation has been added: Cartridge.rst, Overview.rst,
Install.rst
****** Release_2012.12.1 *******
(Changes relative to Release_2012.09.1)
!!!!!! IMPORTANT !!!!!!
Acknowledgements:
Andrew Dalke, James Davidson, Robert Feinstein, Nikolas Fechner,
Nicholas Firth, Markus Hartenfeller, Jameed Hussain, Thorsten Meinl,
Sereina Riniker, Roger Sayle, Gianluca Sforna, Pat Walters, Bernd
Wiswedel
Bug Fixes:
- Using parentheses for zero-level grouping now works in reaction
SMARTS. This allows intramolecular reactions to be expressed.
- SMILES generated for molecules with ring stereochemistry
(e.g. N[C@H]1CC[C@H](CC1)C(O)=O) are now canonical. (issue 40)
- SKP lines in a CTAB property block are now properly handled. (issue
255)
- The molecular drawing code now shows dotted lines for Any bonds.
(issue 260)
- ROMol::debugMol() (ROMol.DebugMol() in Python) now reports isotope
information. (issue 261)
- The molecular drawing code now correctly highlights wedged bonds.
(issue 262)
- RWMol::addAtom() now adds atoms to conformers.
(issue 264)
- TDT files with atomic coordinates now have those coordinates in the
correct order. (issue 265)
- A ring-finding error/crash has been fixed. (issue 266)
- Dummy atoms now have a default valence of 0 and no maximim
valence. (issue 267)
- The Python code no longer throws string exceptions. (issue 268)
- Invalid/unrecognized atom symbols in CTABs are no longer
accepted. (issue 269)
- Chem.RDKFingerprint now accepts atom invariants with values larger
than the number of atoms. (issue 270)
- The code should now all work when the locale (LANG) is set to
values other than "C" or one of the English locales. (issue 271)
- Two-coordinate Hs are no longer removed by
MolOps::removeHs(). (issue 272)
- R groups read from CTABs are now marked using setIsotope() instead
of setMass(). (issue 273)
- Hs present in the molecule graph no longer incorrectly impact
substructure matches. (issue 274)
- Murcko decomposition of molecules with chiral ring atoms now
works. (issue 275)
- Methane now shows up in molecular drawings. (issue 276)
- '&' in SLN properties is now correctly handled. (issue 277)
- Molecules with string-valued molAtomMapNumber atomic properties can
now be serialized. (issue 280)
- SMARTS strings containing a dot in a recursive piece are now
properly parsed. (issue 281)
- The SMILES and SLN parsers no longer leak memory when sanitization
of the result molecule fails. (issue 282)
- The cairo canvas drawing code now works with PIL v1.1.6 as well as
more recent versions.
New Features:
- RDKit ExplicitBitVects and DiscreteValueVects can now be directly
converted into numpy arrays.
- Rogot-Goldberg similarity has been added.
- C++: BitVects and SparseIntVects now support a size() method.
- C++: DiscreteValueVects now support operator[].
- An initial version of a SWIG wrapper for C# has been added.
- Support for easily adding recursive queries to molecules and
reactions has been added. More documentation is required for this
feature.
- To allow more control over the reaction, it is possible to flag reactant
atoms as being protected by setting the "_protected" property on those
atoms. Flagged atoms will not be altered in the reaction.
- Atoms and Bonds now support a ClearProp() method from python.
- The new Python module rdkit.ML.Scoring.Scoring includes a number of
standard tools for evaluating virtual screening experiments: ROC
curve generation, AUC, RIE, BEDROC, and Enrichment.
- The function RDKit::Descriptors::getCrippenAtomContribs()
(rdkit.Chem.rdMolDescriptors._CalcCrippenContribs() from Python)
can now optionally return atom-type information as ints or text.
New Database Cartridge Features:
- The Chi and Kappa descriptors are now available
New Java Wrapper Features:
- The Chi and Kappa descriptors are now available
Deprecated modules (to be removed in next release):
Removed modules:
- The old SWIG wrapper code in $RDBASE/Code/Demos/SWIG has been
removed. The SWIG wrappers are now in $RDBASE/Code/JavaWrappers
Other:
- The C++ code for drawing molecules previously found in
$RDBASE/Code/Demos/RDKit/Draw has been moved to
$RDBASE/Code/GraphMol/MolDrawing
- Calculation of the Chi and Kappa descriptors has been moved into
C++.
- To make builds easier, the thread-safety of the recursive-smarts
matcher has been made optional. The build option is
RDK_BUILD_THREADSAFE_SSS.
- There are two new entries in the Contrib directory:
* Contrib/PBF : An implementation of the Plane of Best Fit
contributed by Nicholas Firth.
* Contrib/mmpa : An implementation of GSK's matched molecular pairs
algorithm contributed by Jameed Hussain
- A new "Cookbook" has been added to the documentation to provide
a collection of recipes for how to do useful tasks.
****** Release_2012.09.1 *******
(Changes relative to Release_2012.06.1)
!!!!!! IMPORTANT !!!!!!
- Some of the bug fixes affect the generation of SMILES. Canonical
SMILES generated with this version of the RDKit will be different
from previous versions.
- The fix to Issue 252 (see below) will lead to changes in calculated
logP and MR values for some compounds.
- The fix to Issue 254 (see below) will lead to changes in some
descriptors and geometries for sulfur-containing compounds.
- The fix to Issue 256 (see below) has changed the name of the
optional argument to mol.GetNumAtoms from onlyHeavy to
onlyExplicit. For compatibility reasons, Python code that uses
explicitly uses onlyHeavy will still work, but it will generate
warnings. This compatibility will be removed in a future release.
Acknowledgements:
Gianpaolo Bravi, David Cosgrove, Andrew Dalke, Fabian Dey, James
Davidson, JP Ebejer, Gabriele Menna, Stephan Reiling, Roger Sayle,
James Swetnam
Bug Fixes:
- The molecules that come from mergeQueryHs() now reset the RingInfo
structure. (issue 245)
- The output from MurckoScaffold.MakeScaffoldGeneric no longer
includes stereochemistry or explicit Hs. (issue 246)
- D and T atoms in CTABs now have their isotope information
set. (issue 247)
- Some problems with ring finding in large, complex molecules have
been fixed. (issue 249)
- The "rootedAtAtom" argument for FindAllSubgraphsOfLengthN is now
handled properly. (issue 250)
- Bonds now have a SetProp() method available in Python. (issue 251)
- A number of problems with the Crippen atom parameters have been
fixed. (issue 252)
- Ring closure digits are no longer repeated on the same atom in
SMILES generated by the RDKit. (issue 253)
- Non-ring sulfur atoms adjacent to aromatic atoms are no longer set
to be SP2 hybridized. This allows them to be stereogenic. (issue
254)
- The combineMols() function now clears computed properties on the
result molecule.
- A couple of problems with the pickling functions on big endian
hardware were fixed.
- The molecule drawing code now uses isotope information
- Superscript/Subscript handling in the agg canvas has been improved.
- SKP lines in CTABS are now propertly handled. (Issue 255)
- The name of the optional argument to mol.GetNumAtoms has been
changed from onlyHeavy to onlyExplicit. The method counts the number
of atoms in the molecular graph, not the number of heavy
atoms. These numbers happen to usually be the same (which is why
this has taken so long to show up), but there are exceptions if Hs
or dummy atoms are in the graph. (Issue 256)
- Unknown bonds in SMILES are now output using '~' instead of '?'. The
SMILES parser now recognizes '~' as an "any bond" query. (Issue 257)
- Lines containing only white space in SDF property blocks are no
longer treated as field separators.
- Transition metals and lanthanides no longer have default valences
assigned.
New Features:
- The RDKit now has a maximum common substructure (MCS) implementation
contributed by Andrew Dalke. This is currently implemented in Python
and is available as: from rdkit.Chem import MCS Documentation is
available as a docstring for the function MCS.FindMCS and in the
GettingStarted document.
- A few new functions have been added to rdkit.Chem.Draw:
MolsToImage(), MolsToGridImage(), ReactionToImage()
- CalcMolFormula() now provides the option to include isotope
information.
- The RDKit and Layered fingerprinters both now accept "fromAtoms"
arguments that can be used to limit which atoms contribute to the
fingerprint.
- Version information is now available in the Java wrapper.
- The descriptor NumRadicalElectrons is now available.
- The PyMol interface now supports a GetPNG() method which returns the
current contents of the viewer window as an PIL Image object.
- Molecules (ROMol in C++, rdkit.Chem.Mol in Python) now have a
getNumHeavyAtoms() method.
- Component-level grouping (parens) can be used in reaction SMARTS.
New Database Cartridge Features:
- support for molecule <-> pickle conversion via the functions
mol_to_pkl, mol_from_pkl, and is_valid_mol_pkl.
- support for bit vector <-> binary text conversion via the functions
bfp_to_binary_text, bfp_from_binary_text
New Java Wrapper Features:
Deprecated modules (to be removed in next release):
Removed modules:
Other:
- During this release cycle, the sourceforge project was updated to
their new hosting system. This explains the change in bug/issue
ids.
- the SMILES parser is now substantially faster.
- The molecular drawings generated by Code/Demo/RDKit/Draw/MolDrawing.h
have been improved.
- There is now demo code availble for using the C++ drawing code
within Qt applications. (contributed by David Cosgrove)
- The directory $RDBASE/Regress now contains sample data and
scripts for benchmarking the database cartridge.
- Fused-ring aromaticity is now only considered in rings of up to size
24.
- It is no longer necessary to have flex and bison installed in order
to build the RDKit.
****** Release_2012.06.1 *******
(Changes relative to Release_2012.03.1)
!!!!!! IMPORTANT !!!!!!
- Some of the bug fixes affect the generation of SMILES. Canonical
SMILES generated with this version of the RDKit will be different
from previous versions.
Acknowledgements:
Andrew Dalke, JP Ebejer, Igor Filippov, Peter Gedeck, Jan Holst
Jensen, Adrian Jasiński, George Papadatos, Andrey Paramonov, Adrian
Schreyer, James Swetnam
Bug Fixes:
- Radicals are now indicated in molecular depictions. (Issue 3516995)
- Calling .next() on an SDMolSupplier at eof no longer results in an
infinite loop. (Issue 3524949)
- Chirality perception no longer fails in large molecules.
(Issue 3524984)
- problem creating molblock for atom with four chiral nbrs
(Issue 3525000)
- A second sanitization leads to a different molecule.
(Issue 3525076)
- can't parse Rf atom in SMILES
(Issue 3525668)
- generates [HH2-] but can't parse it
(Issue 3525669)
- improper (re)perception of 1H-phosphole
(Issue 3525671)
- ForwardSDMolSupplier not skipping forward on some errors
(Issue 3525673)
- SMILES/SMARTS parsers don't recognize 0 atom maps
(Issue 3525776)
- R group handling in SMILES
(Issue 3525799)
- Canonical smiles failure in symmetric heterocycles
(Issue 3526810)
- Canonical smiles failure with "extreme" isotopes
(Issue 3526814)
- Canonical smiles failure with many symmetric fragments
(Issue 3526815)
- Canonical smiles failure with dependent double bonds
(Issue 3526831)
- Build Fails Due to Missing include in Code/RDBoost/Wrap.h
(Issue 3527061)
- Incorrect template parameter use in std::make_pair
(Issue 3528136)
- Canonicalization failure in cycle
(Issue 3528556)
- incorrect values reported in ML analysis
(Issue 3528817)
- Cartridge does not work on 32bit ubuntu 12.04
(Issue 3531232)
- Murcko Decomposition generates unuseable molecule.
(Issue 3537675)
- A few memory leaks were fixed in the Java Wrappers
- The exact mass of molecules with non-standard isotopes is now
calculated correctly.
- The default (Euclidean) distance metric should now work with Butina
clustering.
- Some bugs in the depictor were fixed.
- AvalonTools bug with coordinate generation for mols with no
conformers fixed.
New Features:
- ChemicalFeatures now support an optional id
- Isotope handling has been greatly improved. Atoms now have a
getIsotope() (GetIsotope() in Python) method that returns zero if
no isotope has been set, the isotope number otherwise.
- The function MolFragmentToSmiles can be used to generate canonical
SMILES for pieces of molecules.
- The function getHashedMorganFingerprint (GetHashedMorganFingerprint
in Python) has been added.
New Database Cartridge Features:
- The functions mol_from_smiles(), mol_from_smarts(), and
mol_from_ctab() now return a null value instead of generating an
error when the molecule processing fails. This allows molecule
tables to be constructed faster.
- The functions mol_to_smiles() and mol_to_smarts() have been added.
- Creating gist indices on bit-vector fingerprint columns is faster.
- The indexing fingerprint for molecular substructures has been changed.
The new fingerprint is a bit slower to generate, but is
considerably better at screening. More information here:
http://code.google.com/p/rdkit/wiki/ImprovingTheSubstructureFingerprint
New Java Wrapper Features:
Deprecated modules (to be removed in next release):
- Support for older (pre9.1) postgresql versions.
Removed modules:
- rdkit.Excel
- the code in $RDBASE/Code/PgSQL/RDLib
- rdkit.Chem.AvailDescriptors : the same functionality is now available
in a more useable manner from rdkit.Chem.Descriptors
Other:
- Similarity calculations on ExplicitBitVectors should now be much faster
- Use of [Xa], [Xb], etc. for dummy atoms in SMILES is no longer
possible. Use the "*" notation and either isotopes (i.e. [1*],
[2*]) or atom maps (i.e. [*:1], [*:2]) instead.
- Initial work was done towards make the RDKit work on big endian
hardware (mainly changes to the way pickles are handled)
- Canonical SMILES generation is now substantially faster.
****** Release_2012.03.1 *******
(Changes relative to Release_2011.12.1)
!!!!!! IMPORTANT !!!!!!
- The atom-atom match behavior for non-query atoms has been changed.
This affects the results of doing substructure matches using
query molecules that are not constructed from SMARTS.
Acknowledgements:
JP Ebejer, Paul Emsley, Roger Sayle, Adrian Schreyer, Gianluca Sforna,
Riccardo Vianello
Bug Fixes:
- the older form of group evaluations in Mol blocks is now correctly
parsed. (Issue 3477283)
- some problems with handling aromatic boron were fixed. (Issue 3480481)
- the SD writer no longer adds an extra $$$$ when molecule parsing
fails (Issue 3480790)
- molecules in SD files that don't contain atoms are now parsed
without warnings and their properties are read in. (Issue 3482695)
- it's now possible to embed molecules despite failures in the triangle
bounds checking (Issue 3483968)
- Isotope information in Mol blocks is now written to M ISO lines
instead of going in the atom block. (Issue 3494552)
- Better 2D coordinates are now generated for neighbors of atoms with
unspecified hybridization. (Issue 3487469)
- Dummy atoms and query atoms are now assigned UNSPECIFIED hybridization
instead of SP. (Issue 3487473)
- Error reporting for SMARTS involving recursion has been improved.
(Issue 3495296)
- Some problems of queries and generating SMARTS for queries were resolved.
(Issues 3496759, 3496799, 3496800)
- It's now possible to do database queries with SMARTS that use the index.
(Issue 3493156).
- A series of problems related to thread safety were fixed.
- Tracking the lifetime of owning molecules across the C++/Python
border is now being handled better (Issue 3510149)
- A bug with ring-finding in some complex fused ring systems was fixed.
(Issue 3514824)
- The AllChem module now imports successfully even if the SLN parser
hasn't been built.
New Features:
- The molecular sanitization is now configurable using an optional
command-line argument.
- It's now possible to get information from the sanitization routine
about which operation failed.
- Suppliers support GetLastItemText()
- ComputeDihedralAngle() and ComputeSignedDihedralAngle() were added
to the rdkit.Geometry module.
- computeSignedDihedralAngle() was added to the C++ API
- ChemicalReactions now support a GetReactingAtoms() method
- the Mol file and Mol block parsers, as well as the SD suppliers,
now support an optional "strictParsing" argument.
When this is set to False, problems in the structure of the
input file are ignored when possible
- EditableMols return the index of the atom/bond added by AddAtom/AddBond
- rdkit.Chem.Draw.MolToImage() now supports an optional "legend" argument
- The MolToSmiles function now supports an optional "allBondsExplicit" argument.
New Database Cartridge Features:
- the functions mol_from_smiles() and mol_from_smarts() were added
New Java Wrapper Features:
- the diversity picker now supports an optional random-number seed
Deprecated modules (to be removed in next release):
- rdkit.Excel
Removed modules:
- rdkit.ML.Descriptors.DescriptorsCOM
- rdkit.ML.Composite.CompositeCOM
Other:
- Assigning/cleaning up stereochemistry is now considerably
faster. This makes standard molecule construction faster.
****** Release_2011.12.1 *******
(Changes relative to Release_2011.09.1)
!!!!!! IMPORTANT !!!!!!
- The functions for creating bit vector fingerprints using atom pairs
and topological torsions have been changed. The new default
behavior will return different fingerprints than previous RDKit
versions. This affects usage from c++, python, and within the
postgresql cartridge. See the "Other" section below for more
details.
- Due to a bug fix in the parameter set, the MolLogP and MolMR
descriptor calculators now return different values for some
molecules. See the "Bug Fixes" section below for more details.
- To make storage more efficient, the size of the fingerprint
used to store morgan fingerprints in the database cartridge
has been changed from 1024 bits to 512 bits. If you update
the cartridge version all morgan and featmorgan fingerprints
and indices will need to be re-generated.
Acknowledgements:
Andrew Dalke, JP Ebejer, Roger Sayle, Adrian Schreyer, Gianluca
Sforna, Riccardo Vianello, Toby Wright
Bug Fixes:
- molecules with polymeric S group information are now rejected by the
Mol file parser. (Issue 3432136)
- A bad atom type definition and a bad smarts definition were fixed in
$RDBASE/Data/Crippen.txt. This affects the values returned by the
logp and MR calculators. (Issue 3433771)
- Unused atom-map numbers in reaction products now produce warnings
instead of errors. (Issue 3434271)
- rdMolDescriptors.GetHashedAtomPairFingerprint() now works. (Issue
3441641)
- ReplaceSubstructs() now copies input molecule conformations to the
output molecule. (Issue 3453144)
- three-coordinate S and Se are now stereogenic (i.e. the
stereochemistry of O=[S@](C)F is no longer ignored). (Issue 3453172)
New Features:
- Integration with the new IPython graphical canvas has been
added. For details see this wiki page:
http://code.google.com/p/rdkit/wiki/IPythonIntegration
- Input and output from Andrew Dalke's FPS format
(http://code.google.com/p/chem-fingerprints/wiki/FPS) for
fingerprints.
- The descriptor CalcNumAmideBonds() was added.
New Database Cartridge Features:
- Support for PostgreSQL v9.1
- Integration with PostgreSQL's KNN-GIST functionality. (Thanks to
Adrian Schreyer)
- the functions all_values_gt(sfp,N) and all_values_lt(sfp,N) were
added.
New Java Wrapper Features:
- A function for doing diversity picking using fingerprint similarity.
- support for the Avalon Toolkit (see below)
Deprecated modules (to be removed in next release):
- rdkit.Excel
- rdkit.ML.Descriptors.DescriptorsCOM
- rdkit.ML.Composite.CompositeCOM
Removed modules:
- rdkit.WebUtils
- rdkit.Reports
- rdkit.mixins
Other:
- Improvements to the SMARTS parser (Roger Sayle)
- The atom-pair and topological-torsion fingerprinting functions that
return bit vectors now simulate counts by setting multiple bits in
the fingerprint per atom-pair/torsion. The number of bits used is
controlled by the nBitsPerEntry argument, which now defaults to 4.
The new default behavior does a much better job of reproducing the
similarities calculated using count-based fingerprints: 95% of
calculated similarities are within 0.09 of the count-based value
compared with 0.22 or 0.17 for torsions and atom-pairs previously.
To get the old behavior, set nBitsPerEntry to 1.
- Optional support has been added for the Avalon Toolkit
(https://sourceforge.net/projects/avalontoolkit/) to provide an
alternate smiles canonicalization, fingerprint, and 2D coordination
generation algorithm.
- The SLN support can now be switched off using the cmake variable
RDK_BUILD_SLN_SUPPORT.
- There are now instructions for building the RDKit and the SWIG
wrappers in 64bit mode on windows.
****** Release_2011.09.1 *******
(Changes relative to Release_2011.06.1)
!!!!!! IMPORTANT !!!!!!
- A bug in the definition of the Lipinski HBD descriptor was fixed in
this release. The descriptor Lipinski.NHOHCount will return
different values for molecules containing Ns or Os with more than
one attached H.
Acknowledgements:
Eddie Cao, Richard Cooper, Paul Czodrowski, James Davidson, George
Papadatos, Riccardo Vianello
Bug Fixes:
- A problem with interpretation of stereochemistry from mol files was
fixed (Issue 3374639)
- Sterochemistry information for exocyclic double bonds in mol blocks
is no longer lost. (Issue 3375647)
- linear double bonds from mol files now have their stereochemistry
set correctly(Issue 3375684)
- Chirality for phosphates and sulfates is not longer automatically
removed. (Issue 3376319)
- A bug with the reading of query information from mol files was
fixed. (Issue 3392107)
- Sterochemistry is now cleaned up after processing mol2
files. (Issue 3399798)
- mergeQueryHs now correctly handles atoms with multiple Hs (Issue
3415204)
- mergeQueryHs now correctly handles atoms without initial query
information (Issue 3415206)
- the calcLipinskiHBD() (equivalent to Lipinski.NHOHCount) descriptor
now correctly handles Ns or Os with multiple Hs. (Issue 3415534)
- Morgan fingerprints generated using the fromAtoms argument now have
all bits from those atoms set.(Issue 3415636)
- A problem with the way MolSuppliers handle the EOF condition when
built with the most recent versions of g++ was fixed.
- Translation of RDKit stereochemistry information into InChI
stereochemistry information is improved.
New Features:
New Database Cartridge Features:
- molecules can now be built from mol blocks using the function
mol_from_ctab(). The corresponding is_valid_ctab() function was
also added.
- the radius argument is now optional for the functions morganbv_fp,
morgan_fp, featmorganbv_fp, and featmorgan_fp. The default radius
for all four functions is 2.
Deprecated modules (to be removed in next release):
Removed modules:
Other:
- The documentation in $RDBASE/Docs/Book has been migrated to use
Sphinx instead of OpenOffice.
- The optional InChI support can now be built using a system
installation of the InChI library.
****** Release_2011.06.1 *******
(Changes relative to Release_2011.03.2)
Acknowledgements:
- Eddie Cao, Andrew Dalke, James Davidson, JP Ebejer, Gianluca
Sforna, Riccardo Vianello, Bernd Wiswedel
Bug Fixes:
- A problem with similarity values between SparseIntVects that
contain negative values was fixed. (Issue 3295215)
- An edge case in SmilesMolSupplier.GetItemText() was fixed. (Issue
3299878)
- The drawing code now uses dashed lines for aromatic bonds without
kekulization. (Issue 3304375)
- AllChem.ConstrainedEmbed works again. (Issue 3305420)
- atomic RGP values from mol files are accessible from python (Issue
3313539)
- M RGP blocks are now written to mol files. (Issue 3313540)
- Atom.GetSymbol() for R atoms read from mol files is now
correct. (Issue 3316600)
- The handling of isotope specifications is more robust.
- A thread-safety problem in SmilesWrite::GetAtomSmiles() was fixed.
- some of the MACCS keys definitions have been corrected
- Atoms with radical counts > 2 are no longer always written to CTABs
with a RAD value of 3. (Issue 3359739)
New Features:
- The smiles, smarts, and reaction smarts parsers all now take an additional
argument, "replacements", that carries out string substitutions pre-parsing.
- There is now optional support for generating InChI codes and keys
for molecules.
- the atom pair and topological torsion fingerprint generators now
take an optional "ignoreAtoms" argument
- a function to calculate exact molecular weight was added.
- new java wrappers are now available in $RDBASE/Code/JavaWrappers
- the methods getMostCommonIsotope() and getMostCommonIsotopeMass()
have been added to the PeriodicTable class.
New Database Cartridge Features:
- Support for generating InChIs and InChI keys
(if the RDKit InChI support is enabled).
Deprecated modules (to be removed in next release):
- The original SWIG wrappers in $RDBASE/Code/Demos/SWIG are deprecated
Removed modules:
Other:
- The quality of the drawings produced by both the python molecule drawing
code and $RDBASE/Code/Demos/RDKit/Draw is better.
- the python molecule drawing code will now use superscripts and
subscripts appropriately when using the aggdraw or cairo canvases
(cairo canvas requires pango for this to work).
- $RDBASE/Code/Demos/RDKit/Draw now includes an example using cairo
- A lot of compiler warnings were cleaned up.
- The error reporting in the SMILES, SMARTS, and SLN parsers was improved.
- the code for calculating molecular formula is now in C++
(Descriptors::calcMolFormula())
****** Release_2011.03.2 *******
(Changes relative to Release_2011.03.1)
Bug Fixes:
- A problem in the refactored drawing code that caused the
rdkit.Chem.Draw functionality to not work at all was fixed.
****** Release_2011.03.1 *******
(Changes relative to Release_2010.12.1)
Acknowledgements:
- Eddie Cao, James Davidson, Kirk DeLisle, Peter Gedeck, George
Magoon, TJ O'Donnell, Gianluca Sforna, Nik Stiefl, Bernd Wiswedel
Bug Fixes:
- The performance of SSSR finding for molecules with multiple highly-fused
ring systems has been improved. (Issue 3185548)
- Isotope information is now correctly saved when molecules are
serialized (pickled). (Issue 3205280)
- Generating SMILES for a molecule no longer changes the
molecule. This fixes a round-trip bug with certain highly symmetric
molecules read from SD files. (Issue 3228150)
- Another bounds-matrix generation bug for highly (con)strained
systems was fixed. (Issue 3238580)
- Conformation information is now better handled by deleteSubstructs(),