RDKit 2024.09.1 がリリースされました
2024年9月27日に RDKit 2024.09.1 がリリースされました。この記事では新バージョンの重要な変更点を紹介します。より詳細な情報を知りたい方はリリースノートの原文 (2024_09_1 (Q3 2024) Release) と公式ブログの記事 (1, 2) をご確認ください。
リリースノートより
ハイライト
- rdMolStandardizeライブラリに、完全な分子検証と標準化のパイプラインが追加されました。これは拡張可能で、より広範な化合物登録パイプラインに組み込むのに適しています。
- 新たにオープンソース化されたpubchem-align3dライブラリとの統合により、RDKitでシェイプベースのアライメントが可能になりました。(訳注: 公式ブログにコード例があります)
- 新しいrdMolProcessingモジュールに、入力ファイルから分子を読み込み、標準的な計算を実行するための使いやすい便利な関数が導入されました。ファイルの解析と計算の両方に複数のスレッドを使うことができるので、非常に効率的です。このリリースではフィンガープリントの生成をサポートしていますが、将来的にはさらに機能を追加する予定です。(訳注: 公式ブログにコード例があります)
後方互換性のない変更
- フラグメント記述子の非分岐アルカンのSMARTSが修正されました。この記述子は頻繁に異なる結果を返すようになりました。
- SimilarityMap関数のGetSimilarityMapFromWeights()、GetSimilarityMapForFingerprint()、GetSimilarityMapForModel()には、すべてrdMolDraw2D描画オブジェクトを渡すことが必要になりました。
- 互変異性体およびプロトマーハッシュのv2のバグ修正により、これらのハッシュの結果が異なる場合があります。エナミン/イミンのような系では、互変異性体ゾーンに含まれる結合が1つ減ったため、CN=CCとCNC=C分子のv2の互変異性体ハッシュは、[C]:[C]:[N]-[CH3]_7_0ではなく、[C]:[C]:[N]:[C]_4_0になりました。
- 原子価のチェックと暗黙の原子価の計算方法が変更されました。結果は概ね以前と同じになるはずですが、以前は許可されていたいくつかの原子価状態が削除されました。これには、5価の[C+]、AlとSi元素の原子価状態6、P、As、Sb、Bi元素の原子価状態7が含まれます。
- GeneralMolSupplierはv2 APIを使用するように変更されました。エンドユーザーのコードに必要な唯一の変更は、結果のサプライヤーがROMol *の代わりにstd::unique_ptrを返すようになったことです。
新機能及び改善・バグ修正・クリーンアップ
(訳注: 省略します。ご興味のある方は原文をご確認ください。)
このリリースで削除されたコード
- 分子を描画するためのレガシーなPythonコードはこのリリースで削除されました。これにはrdkit.Chem.Drawパッケージ内の以下のものが含まれます。モジュール aggCanvas, cairoCanvas, canvasbase, MolDrawing, mplCanvas, qtCanvas, spingCanvas。関数 Draw.MolToImageFile(), Draw.MolToMPL(), Draw.MolToQPixmap()。Draw.MolToImage()関数の実引数 “canvas”。PNGとSVG以外のimageTypeを用いたDraw.MolToFile()の呼び出し。
非推奨となったコード(将来のリリースで削除予定)
- AtomPairs.Utils.NumPiElectronsは非推奨となり、Chem.GetNumPiElectronsが推奨されます。AtomPairs.Utils.NumPiElectronsは、原子が外向きの配位結合を持っていた場合に失敗しました (Issue #7318 を参照)。
- DistViolationContrib、ChiralViolationContrib, FourthDimContribクラスは非推奨となりました。代わりにDistViolationContribs, ChiralViolationContribs, FourthDimContribsを使用してください。
- 関数
MMFF::setMMFFAromaticity()
は名前空間MolOpsに移動されました。代わりにMolOps::setMMFFAromaticity()
を使用してください。
公式ブログで紹介されている新機能
以上です。ドキュメントの誤りや改善点を見つけた場合はユーザー会のSlackかGitHubまでご連絡ください。