Commit Graph

2 Commits

Author SHA1 Message Date
Greg Landrum
b325b3a9bb Support TautomerQuery and MolBundle queries in the cartridge (#6393)
* framework for extended query.

serialization works
to/from text doesn't work

* first pass at getting substructure search working

basic tests

improved error handling (try not to take down the server thread!)

* add serialization to MolBundle

* we really need to pickle mol properties

* basic support for molbundle

including substructure search

* tautomer and molbundle queries to JSON

* remove debug msg

* cleanup debug
initial index steps (not tested)

* remove indexing stuff since it wasn't working

will try to come back to that

* add xqm to update script

* add c++ testing for molbundle serialization

* add serialization of molbundles to python interface

* support expanding molbundles to arrays of tautomer queries

* edge cases

Signed-off-by: greg landrum <greg.landrum@gmail.com>

* change in response to review

* a bunch of updates

* make sure the mol props needed for XQMs are being serialized

* update update script

* fix binary string output from ExtendedQueryMols in python

* tautomer queries should serialize properties

* more testing never hurts

* combo of generic groups and generalized queries works

* Update Code/PgSQL/rdkit/adapter.cpp

Co-authored-by: Paolo Tosco <paolo.tosco.mail@gmail.com>

* Update Code/PgSQL/rdkit/adapter.cpp

Co-authored-by: Paolo Tosco <paolo.tosco.mail@gmail.com>

* Update Code/PgSQL/rdkit/adapter.cpp

Co-authored-by: Paolo Tosco <paolo.tosco.mail@gmail.com>

* Fix weird quotes?

---------

Signed-off-by: greg landrum <greg.landrum@gmail.com>
Co-authored-by: Paolo Tosco <paolo.tosco.mail@gmail.com>
2023-08-23 06:32:06 +02:00
Greg Landrum
e944b8e9cb Add support for generalized substructure searching (#6443)
* bring over XQMol.h

* bring XQMol over for a separate PR

* backup... need to move these files

* refactor

* substruct

* oops

* testing basics

* basic tests

* more test

* more testing

* add empty() method to MolBundle

* easy creation of ExtendedQueryMols

* SRU test

* reorg

* the MolEnumerator should clear out residual reaction properties

* support to/from JSON

* cleanup

* first past at python wrappers
put the new code in a namespace

* less stupid names
more tests

* undo some unnecessary changes

* remove compiler warning

* release GIL during hasSubstructMatch too

* support adjustQueryProperties

* support toggling which operations apply

Fix the tautomer tests to include a molecule which actually requires the tautomer matching
2023-06-22 10:54:35 +02:00