IUPAC-InChI/InChI

Unlike in the tautomer 1.06 pre release, the 1.07 library does not work for the tautomer transformationss that have been added by Igor Filippov

Opened this issue · 0 comments

Marc Nicklaus (NIH) reported an issue found by Wolf-Dieterich Ihlenfeldt that the 1.07 library does ot work for the "TAUTO" option in CACTUS.
CACTUS has already provided the property E_TAUTO_INCHI[KEY] for 3 years that includes the 6 tautomer rules programmed by Igor Fillipov. The special 1.06 version used contains the 6 rules as pre-release although they are not offical part of the 1.06 release.

The CACTUS call is
cactvs>prop test E_TAUTO_INCHI
/home/wdi/CACTVS/BIN/Linux5.14-SuSELeap15.4-64/tclcactvs: symbol lookup error: /home/wdi/CACTVS/OBJ/Linux5.14-SuSELeap15.4-64/mod_e_tauto_inchi
.so: undefined symbol: GetTautoINCHI

The Tauto-enabled 1.06 version contains the funktion in inchi_dll.c

Wolf Dietrich Ihlenfeldt sent following note on August 30th:
He uses the following code to call the tautomers:

memset(&out,0,sizeof(out));
CSnamedMutexLock(INCHI_MUTEX_NAME);
#ifdef STDINCHI
    res = (RetValGetINCHI) GetStdINCHI(&in,&out);
#else
    #ifdef TAUTOINCHI
        res = (RetValGetINCHI) GetTautoINCHI(&in,&out);
    #else
        res = (RetValGetINCHI) GetINCHI(&in,&out);
    #endif
#endif

./INCHI_BASE/src/inchi_dll.c:int INCHI_DECL GetTautoINCHI( inchi_Input *inp, inchi_Output *out )

GetTautoINCHI() exists in the Tauto enabled 1.06 version but does not exist in 1.07.

Note by Wolf-Dietrich: Because he does not trust the thread safty of the InChI-Lib he has always Mutex-secured every call. But nowadays, it is expected that a library is threatsafe, at least the status of each of the functions must be well documented

Notes:

  • The Tauto enabled 1.06 version was a special test release sent to Marc Nicklaus. It was not part of the official 1.06 release. Therefoe, we do not have it in 1.07.
  • CACTUS is developed by Wolf-Dietrich Ihlenfeldt, whose company Xemistry is based in Königstein (Taunus, next to Frabkfurt). The program is used by NIH and PubChem. In this case NIH is important because Marc Nicklaus (NIH) is developing the tautomer rules and uses them already.
  • Because we do not have a CACTUS version we will have to work together with the CACTUS developer Wolf-Dieterich directly.

Wolf-D. Ihlenfeldt - Xemistry GmbH - wdi@xemistry.com
Phone: +49 6174 201455 - Fax +49 6174 209665