* Implements #8222 adds react_idx (index of reactant) to product atoms
* Remove react_idx from mol enumerator products
* Response to review, add test to ensure product only atoms aren't tagged
* Reenable tests
* - added gen_rdkit_stubs Python module to generate rdkit-stubs
- added patch_rdkit_docstrings Python module to patch existing C++ sources to fix docstrings missing self parameter and add named parameters taken from C++ signatures where possible
- added rdkit-stubs/CMakeLists.txt to build rdkit-stubs as part of the RDKit build
- added an option to CMakeLists.txt to enable building rdkit-stubs as part of the RDKit build (defaults to OFF)
* fixed CMakeLists.txt, rdkit-stubs/CMakeLists.txt and a doctest
* - added missing cmp_func parameter
- fixed case with overloads with optional parameters
- do not trim params if expected_param_count == -1
- add dummy parameter names if we could not find any
- keep into account member functions when making up parameter names
- address __init__ and make_constructor __init__ functions
- fix incorrectly assigned staticmethods
* patched sources
* address residual few remarks
---------
Co-authored-by: ptosco <paolo.tosco@novartis.com>
* MolEnumerator: use repeat counts for SRUs when present #6429
This fixes the reported bug by parsing the SRU label to infer the rnage
of allowed repetitions.
* fix build failure from wrong field initialization order
* fix build error from -Werror=sign-compare
* add tests for molblock
* 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>
* disable the info and debug logs by default
* adjust tests to the newly disabled logs
* add LogStateSetter
* namespace reorg
* add some tests
* remove vestigial code
* switch to using std::vector
* resolves oss-fuzz #24399
* clean up some undefined behavior
* fix some UB in mergeQueryHs
* be more defensive
* defensive programming
* fix a _cxsmilesBondIdx bug
* more defensive programming
* preliminary first pass at SRU enumeration
* handle HH
* working
plus add a missing file... <doh!>
* passes basic tests for enumeration of multiple non-overlapping SRUs
* more SRU testing
* explore combining the SRU enumeration with enumerate()
* first step towards RepeatUnit in the python interface
* first pass at directly connected SRUs
* Fixes#4561
* make sure we don't try to enumeration SRU + LINKNODE
update python docs
* exception for ladders
* get a bit smarter about rejecting linknode enumerations
* turns out we actually *can* do ladders pretty easily
* update java wrappers
* make sure we can input from CXSMILES too
* some cleanup/documentation
* some refactoring
* response to review
* backup
* simple first pass, passes all tests
* cleanup a bunch of existing uses
* ensure that we can safely add atoms/bonds while in edit mode
* add context manager on python side
* handle exceptions properly in those
* changes in response to review
* break out the LinkNode processing code
* initial version of linknode rendering
* add another test and fix a minor issue
* boost::format
* fix a bad merge
* backup
* compiles
* progress, but not there yet
* basics now working
* start towards adding another test
* test having two variation points
* add actual enumeration and the corresponding tests
* docs and cleanup
* cleanups to get the mac build working
* attempt to get win32 dll builds to work
* dlls are fun
* Add FixedMolSizeMolBundle class
* changes in response to review
Also: add warnings for bad input in ParseV3000Array
* a bit of refactoring
* additional testing
* does not work, backup
* LINKNODES work now
* cleanup
* allow silencing reaction validation warnings during initialization
* docs
* fix (and test) handling of empty enumerations
* silence warnings when doing alchemy
* first pass at a Python wrapper for the enumerator
* Add Java wrappers for MolBundle and the MolEnumerator
* cleanup some comment formatting