Open nbehrnd opened 1 year ago
Unfortunately the command line processing built into LillyMol utilities is rather inflexible, having been laid down in 1995. So, there are no --opt recognised.
Every c++ tool should respond to an invocation with no inputs by writing its usage message.
Now, I did implement a newer generation command line processing that has more flexibility, and which could be adapted to things like --help. But making this change would be disruptive, and would break tools that others have built. What might make sense is to start writing new tools with the updated command line processor.
Command line processing in LillyMol is somewhat unusual. Multiple uses of a
flag is commonplace and encouraged. For example, -v will increase the
verbosity of messages. Using two, -v -v, possibly enables even more
debugging. More traditional tools will have a --verbose
tsubstructure -s 'smarts1' -s 'smarts2' ...
is a common idiom.
So, I don't have an immediate, non disruptive, fix for this now...
If you find tools that are not responding properly to an empty invocation, definitely let me know...
but you are right, these tools should behave as most people might reasonably expect...
Thanks
Ian
On Sat, Apr 22, 2023 at 11:41 AM nbehrnd @.***> wrote:
I briefly run a
for file in *; do ./"$file"; done
for a copy-paste of the output to the CLI to permanent record. There are 111 occurrences of help, 41 of the string -h (at least sometimes to adjust how to process hydrogens), yet never --help (as e.g. for running openbabel from the CLI). Instead, the options become visible after e.g., ./sp3_filter as command without an option. Can this frequently seen toggle for comfort be amended to the utilities?
— Reply to this email directly, view it on GitHub https://github.com/IanAWatson/LillyMol_6_cmake/issues/4, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAODELC2EJRVTA6LSL3YTNDXCP32LANCNFSM6AAAAAAXH5CDAI . You are receiving this because you are subscribed to this thread.Message ID: @.***>
Back from a testing branch I notice
molecular_abstractions
with a reply to an empty call by
molecular_abstractions: malloc.c:2617: sysmalloc: Assertion `(old_top == initial_top (av) && old_size == 0) || ((unsigned long) (old_size) >= MINSIZE && prev_inuse (old_top) && ((unsigned long) old_end & (pagesize - 1)) == 0)' failed.
Aborted (core dumped)
retrosynthesis
with
retrosynthesis: malloc.c:2617: sysmalloc: Assertion `(old_top == initial_top (av) && old_size == 0) || ((unsigned long) (old_size) >= MINSIZE && prev_inuse (old_top) && ((unsigned long) old_end & (pagesize - 1)) == 0)' failed.
Aborted (core dumped)
rxn_fingerprint
withrxn_fingerprint: malloc.c:2617: sysmalloc: Assertion `(old_top == initial_top (av) && old_size == 0) || ((unsigned long) (old_size) >= MINSIZE && prev_inuse (old_top) && ((unsigned long) old_end & (pagesize - 1)) == 0)' failed.
Aborted (core dumped)
rxn_signature
withrxn_signature: malloc.c:2617: sysmalloc: Assertion `(old_top == initial_top (av) && old_size == 0) || ((unsigned long) (old_size) >= MINSIZE && prev_inuse (old_top) && ((unsigned long) old_end & (pagesize - 1)) == 0)' failed.
Aborted (core dumped)
rxn_standardize
with rxn_standardize: malloc.c:2617: sysmalloc: Assertion `(old_top == initial_top (av) && old_size == 0) || ((unsigned long) (old_size) >= MINSIZE && prev_inuse (old_top) && ((unsigned long) old_end & (pagesize - 1)) == 0)' failed.
Aborted (core dumped)
trxn
withtrxn: malloc.c:2617: sysmalloc: Assertion `(old_top == initial_top (av) && old_size == 0) || ((unsigned long) (old_size) >= MINSIZE && prev_inuse (old_top) && ((unsigned long) old_end & (pagesize - 1)) == 0)' failed.
Aborted (core dumped)
tsclass
with a different "being different" (perhaps a kind of internal consistency check?)Numeric difference 4.94066e-324 string rep '4.9406564584125e-324' reinterpreted as 0 diff 4.94066e-324
100 tests were numerically equivalent
IWString::unhtml:unrecognised directive 'foo'
test_append_hex, all numbers to 255
000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff
No arguments specified, getline test not done
All tests successful
which so far do not provide "a menu" of options. I should revisit these again with one, or two days distance from now.
The syntax of e.g., -v -v
to access an eventually extended verbosity level is something one has to know. Once this convention is known to the practitioner, it can become as natural to double f to ff to annotate dynamics in a partition.
I briefly run a
in the path of compiled executables,
/LillyMol_6_cmake/src/build/build
for a copy-paste of the output to the CLI to a permanent record. There are 111 occurrences ofhelp
, 41 of the string-h
(at least sometimes to adjust how to process hydrogens), yet never--help
(as e.g. for running openbabel from the CLI). Instead, the options become visible after e.g.,./sp3_filter
as command without an option. Can this frequently seen toggle for comfort be amended to the utilities?