* remove deprecated useCountSimulation argument
* remove the mol_from_smarts() function from the cartridge
* remove the balabanj
* a couple final cleanups to the countSimulation thing
* document changes
* Fixes#4442
* add qmol_from_json()
* allow casting from mol->qmol
* avoid repeating ourselves
* add chiral substructure functions and operators
not available with indices yet
* remove the @@> operators
since I can't figure out how to support them in the index
* update some expected results that changed with previous fixes
* Fixes#4386
* try to actually generate an error when the cartridge tests fail
* update azure pipelines cartridge builds
* ensure psql dev env is there
temporarily disable other azure pipelines builds
* psql version
* gather info
* gather info
* gather info
* gather info
* gather info
* more descriptors
* try forcing psql12
* remove the package correctly
* remove the package correctly
* remove the package correctly
* sooo much fun
* sooooo much fun
* seems to be working now, enable the others
* support v3k output in cartridge
* tests do not pass
* docs
* update expected tests
* Start providing an update script for the cartridge
* update readme
* support enhanced stereo in cartridge
* it makes more sense to bump the cartridge version to 4.0
* add MolToJSON to cartridge
* add mol_from_json
* docs update
* changes in response to review
* set all source code files to have native line endings
* normalized all source code line endings
Co-authored-by: Paolo Tosco <paolo.tosco@novartis.com>
* run clang-tidy with modernize-use-default-member-init
* results from modernize-use-emplace
* one uniform initialization per line
otherwise SWIG is unhappy
Co-authored-by: Brian Kelley <fustigator@gmail.com>
* change minimal cmake version to a consistent 3.5
* progress towards a cleanup
* get the basic python deps working
* two more libs
* another round of changes
all tests pass at this point
* next round of changes
all tests pass at this point
* close to done
all tests pass
* very close
* almost done
* shift the RDBoost dependencies around a bit
* remove an extraneous python linkage
this is trying to get the mac builds working again
* Only link to python if it was built shared (#3091)
* change in response to review
Co-Authored-By: Ric <ricrogz@users.noreply.github.com>
* move that suppression of the maybe-uninitialized warning to BoostStartInclude.h
Co-authored-by: Brian Kelley <fustigator@gmail.com>
Co-authored-by: Ric <ricrogz@users.noreply.github.com>
* Deprecation: planned removal of .message() and .getMessage() methods
* Deprecation: planned removal of old MolHash code
* document deprecations
* output the diffs when the psql tests fail
* remove .message() from SWIG wrappers
note that the KeyError doesn't work properly. We should clean up the the exceptions here anyway
* typo
* Commit of 2D draw annotation.
* update expected psql results
* First pass at improved radical drawing.
* Fix?
* Fixed different string draw behaviour.
* Removed vestiges of previous radical handling.
* Fixed bug with annnotation placement and added fallback postion.
* Removed unused var.
* update expected reaction svg
* Added option for always having circular highlights.
* Updated JSON to drawOptionns.
* Fixed bug in scale calculation. Centres drawn molecule with option not to.
* Tidied up scale calculation.
* Changed atomHighlightCircles to atomHighlightsAreCircles.
Used shared_ptr for StringRect as VS barfed on unique_ptr.
* Fixed bug with reaction cruft not following now-centred molecules.
* temporary stash
* Stepped back centring of molecule by drawMolecule and fixes to drawReaction prompted by it.
* allow annotations to be disabled at the class level.
disable them for MolDraw2DCairo on win32 (where they just don't work)
* some test cleanup
Co-authored-by: David Cosgrove <david@cozchemix.co.uk>
Co-authored-by: greg landrum <greg.landrum@gmail.com>
* First pass of fixing layout of OH/NH type drawing.
* Fixed scale for N/S NH type groups.
* Fixed bond end points with new display of heteroatoms.
* Fixed case where it drew aromatic dashed bonds in wrong ring for morphine.
* Minor edit.
* Fixed non-drawing of chiral bonds.
* Removed use of boost for_each.
* Modern atom traversal.
* Put in fixed scale for drawings.
Made drawMolecule() take note of prepareMolsBeforeDrawing.
Updated more iterators to modern idiom.
* Added fixed bond length for drawing.
* Fixed drawing of CH4, NH3 etc.
* Stash of working but ugly, prior to re-work.
* Better, simpler splitting of atom symbols.
* Took clang-tidy's advice about use of override.
* Tidied up drawing of text strings.
* Tweaked what is classed as vertical bond in drawing.
* fixedBondLength now down-scales if it would overflow the draw window.
* Some tidying.
* Tests for new parameters in JSON.
Fixed some existing tests where, for example, scale on picture is now different.
* Added option to rotate 2D draw coords before drawing.
* First pass at highlighting atoms in multiple colours. Circles only at the moment.
* Line width scales if big enough.
* Tweaked SVG text drawing.
* Added highlighting with more than 1 colour on an atom. C++ only.
* Fixed some issues with widths of highlights in a frustrating game of whackamole.
Updated some tests accordingly.
* Added Python wrapper for new drawing code.
* Removed debugging writes.
* Added C++ test for multi-coloured highlights.
* Added python test for multi-coloured highlights.
* Attempt to show radicals.
* Tidied up radicals in drawing, including a bullet instead of full stop in SVG.
* Fixed catch_tests.cpp for MolDraw2D.
* Fixed crash in Python wrappers on OSX.
* Fixed test5_2.svg bug (trailing </tspan>).
Made wavy line width scale as other lines do.
* Improved placing of charges.
* We're already in the future.
* Fixed a number of bugs that made drawMolecules not set the scales properly.
* Fixed Cairo wavy line width.
* Fixed non-closure of collision boxes.
* Added maximum font size for text, with tests.
* Addressed all Greg's first PR change requests.
* Fixed crash in extractAtomsymbols.
* stop using coordgen and adjust tests to reflect that
there's a bit of reformatting in here too
* Fixed layout of reactions.
* Fiddled with moldraw2DTest1 tests again.
* Fiddled with catch test.
* Fixed istope postion in W atom labels.
* Minor tweak to cairo,
* update expected results
Co-authored-by: David Cosgrove <david@cozchemix.co.uk>
Co-authored-by: Greg Landrum <greg.landrum@gmail.com>
* add overrides for what()
* translation fot KeyErrorException; update tests
* Switch all exceptions to `const char *` as a return type from message() (#4)
* switch return type of message() from std::string to const char *
* adjust one test to the new return type from message()
remove unnecessary verbosity from some tests
* fix cartridge build: update call to message().c_str()
* rebase agains master; fix another issue in cartridge build
* add deprecation note for message() and getMessage()
* amend Release notes
Co-authored-by: Greg Landrum <greg.landrum@gmail.com>
* get fileparsers catch tests building faster
should use this same approach across all of the catch2 tests
* Fixes#2916
* support parsing of STBOX for atoms and bonds in v3K mol files
add molStereoCare to common_properties
STBOX is translated to the molStereoCare property
* add stereocare support to adjustQueryProperties
make building the catch2 tests faster for the GraphMol package
* copy in AdjustQueryParameters JSON parsing from adapter.cpp
(That still needs to be ported to use the new code)
* get the cartridge using the new parsing code
* update test to reflect new parser behavior
* add a v2000 test
* changes in response to review
* run clang-tidy with readability-braces-around-statements
clang-format the results
clean up all the parts that clang-tidy-8 broke
* fix problem on windows
* add the ring decomposer lib (temporarily?)
* simplify makefile
* very basics work
* backup
* basics working
* builds and basic tests pass
* get this building again
* expose the ring families
* add tests on the python side
* make the pywrapper for this optional
* remove some extra bits
* cleanup
* switch to using RDL as an external project
* make sure this still works if we do not use the URF code
* remove BUILD_ALWAYS
* fix linkage of Java wrapper and cartridge (hopefully)
* fix cmake for wrappers (hopefully)
* forgot a semicolon
* try to force URF lib to build first
* improve memory management and interface
* fix dependency specifier
* make pointer initialization explicit
This may not be necessary, but it feels safer.
* not pleasing and needs to be cleaned up
but it builds
* not pleasing and needs to be cleaned up
but it builds
* cleanup in preparation for merging
* cleanup in preparation for merging
* switch to rareylab repo
* fix updated copyright date
* Fix updated copyright date
* switch to a specific library tag
Co-Authored-By: Florian Flachsenberg <flachsenberg@zbh.uni-hamburg.de>
* change in response to review
* Add check of returned string from InChI helper functions and convert to NULL when blank string is returned (a valid InChI string or InChI key will never be blank).
* Since MolInchi() and MolInchiKey() will never return a NULL pointer, I have removed the check for NULL.
Hopefully the intent of the code is now clearer.
This is useful for installations where pg_config is renamed to not
collide with the system default pg_config name.
We should drop 'find_package(PostgreSQL REQUIRED)' statement in
future because that's supposed to find PostgreSQL client library
to build against, not PostgreSQL server. It might happen that
PostgreSQL server on the system is of different version than libpq
(Debian), but in future it will be problematic also on Fedora
(rhbz#1618698).
See also: https://gitlab.kitware.com/cmake/cmake/issues/17223