Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Final version of 1.07.2 #73

Merged
merged 101 commits into from
Jan 16, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
101 commits
Select commit Hold shift + click to select a range
05d5cb7
Fix macOS dylib file name
cho-m Sep 29, 2024
9870ed0
Update README.md
djb-rwth Oct 13, 2024
f401ed9
Version 1.07.2
djb-rwth Nov 11, 2024
c785ddb
Version 1.07.2
djb-rwth Nov 11, 2024
637d0cd
Version 1.07.2
djb-rwth Nov 11, 2024
6982653
Version 1.07.2
djb-rwth Nov 11, 2024
d2c008d
Version 1.07.2
djb-rwth Nov 11, 2024
39a848a
Version 1.07.2
djb-rwth Nov 11, 2024
4781cf2
Version 1.07.2
djb-rwth Nov 11, 2024
0bb4b76
Version 1.07.2
djb-rwth Nov 11, 2024
360a901
Version 1.07.2
djb-rwth Nov 11, 2024
bc25174
Version 1.07.2
djb-rwth Nov 11, 2024
a65a313
Version 1.07.2
djb-rwth Nov 11, 2024
80a3f4b
Version 1.07.2
djb-rwth Nov 11, 2024
f390584
Version 1.07.2
djb-rwth Nov 11, 2024
503496c
Version 1.07.2
djb-rwth Nov 11, 2024
70dc3f4
Version 1.07.2
djb-rwth Nov 11, 2024
d7a4c5a
Version 1.07.2
djb-rwth Nov 11, 2024
732fa49
Version 1.07.2
djb-rwth Nov 11, 2024
626e1ff
Version 1.07.2
djb-rwth Nov 11, 2024
700998b
Version 1.07.2
djb-rwth Nov 11, 2024
ac8bbf3
Version 1.07.2
djb-rwth Nov 11, 2024
10743d1
Version 1.07.2
djb-rwth Nov 11, 2024
5269440
Update README.md
djb-rwth Nov 11, 2024
b1381d3
Update .gitignore
JanCBrammer Nov 12, 2024
7507f2b
Normalize line endings according to .gitattributes
JanCBrammer Nov 12, 2024
4123ddd
Include INCHI_EXE in Docker container
JanCBrammer Nov 12, 2024
423cfa1
Make executable test-wrapper more generic
JanCBrammer Nov 13, 2024
7357244
Add test for issue #67
JanCBrammer Nov 13, 2024
3603b8f
Version 1.07.2
djb-rwth Dec 9, 2024
2bd8070
Version 1.07.2
djb-rwth Dec 9, 2024
8ecf678
Version 1.07.2
djb-rwth Dec 9, 2024
e776a32
Version 1.07.2
djb-rwth Dec 9, 2024
dc3bcad
Version 1.07.2
djb-rwth Dec 9, 2024
59cdf69
Delete INCHI-1-BIN/windows/winchi-1.exe
djb-rwth Dec 9, 2024
7e5ae80
Version 1.07.2
djb-rwth Dec 9, 2024
1dc5f0f
Version 1.07.2
djb-rwth Dec 9, 2024
b9a796b
Version 1.07.2
djb-rwth Dec 9, 2024
ac860a0
Version 1.07.2
djb-rwth Dec 9, 2024
a0a7f45
Version 1.07.2
djb-rwth Dec 9, 2024
2306d39
Version 1.07.2
djb-rwth Dec 9, 2024
94a4f0c
Version 1.07.2
djb-rwth Dec 9, 2024
3c64d55
Version 1.07.2
djb-rwth Dec 9, 2024
038a4cb
Renormalize EOL (crlf to lf)
JanCBrammer Dec 11, 2024
7cd7cfe
Remove xfail decorator from fixed tests
JanCBrammer Dec 11, 2024
5766ade
Version 1.07.2
djb-rwth Dec 22, 2024
23ac888
Version 1.07.2
djb-rwth Dec 22, 2024
b1b3df3
Delete INCHI-1-SRC/INCHI_BASE/src/ichirvr4_old.c
djb-rwth Dec 22, 2024
a6df951
Version 1.07.2
djb-rwth Dec 22, 2024
ca64a99
Add files via upload
djb-rwth Dec 22, 2024
c5ad85e
Version 1.07.2
djb-rwth Dec 22, 2024
07cabc9
Version 1.07.2
djb-rwth Dec 22, 2024
bad141a
Version 1.07.2
djb-rwth Dec 22, 2024
7a4209b
Version 1.07.2
djb-rwth Dec 22, 2024
6a9c49b
Version 1.07.2
djb-rwth Dec 22, 2024
5711493
Version 1.07.2
djb-rwth Dec 22, 2024
360061d
Version 1.07.2
djb-rwth Dec 22, 2024
a094bea
Version 1.07.2
djb-rwth Dec 22, 2024
ffa8693
Version 1.07.2
djb-rwth Dec 22, 2024
dfe8e90
Version 1.07.2
djb-rwth Dec 22, 2024
b1b8a5c
Version 1.07.2
djb-rwth Dec 22, 2024
36c43be
Version 1.07.2
djb-rwth Dec 22, 2024
adff10b
Version 1.07.2
djb-rwth Dec 22, 2024
6b87bb2
Version 1.07.2
djb-rwth Dec 22, 2024
dba51f8
Update README.md
djb-rwth Dec 22, 2024
f66e0f4
Update README.md
djb-rwth Dec 22, 2024
37f0efb
Version 1.07.2
djb-rwth Dec 24, 2024
89c478f
Version 1.07.2
djb-rwth Dec 24, 2024
6aac006
Version 1.07.2
djb-rwth Dec 24, 2024
7973b4a
Version 1.07.2
djb-rwth Dec 24, 2024
a252a41
Version 1.07.2
djb-rwth Dec 24, 2024
d59bed5
Update README.md
djb-rwth Jan 10, 2025
08e3b76
Update README.md
djb-rwth Jan 10, 2025
8cc40ce
Version 1.07.2
djb-rwth Jan 13, 2025
b6f76b1
Version 1.07.2
djb-rwth Jan 13, 2025
e8c57fc
Version 1.07.2
djb-rwth Jan 13, 2025
d40e6ba
Version 1.07.2
djb-rwth Jan 13, 2025
9e2c3c4
Version 1.07.2
djb-rwth Jan 13, 2025
b3430da
Update README.md
djb-rwth Jan 14, 2025
e16bd73
Update README.md
djb-rwth Jan 14, 2025
d98316a
Renormalize EOL (crlf to lf)
JanCBrammer Jan 14, 2025
c5ff9a6
Use Python included in GCC image
JanCBrammer Jan 14, 2025
882f0bc
Pin CI runner version
JanCBrammer Jan 14, 2025
c82f34b
Don't require specific Python version on Alpine
JanCBrammer Jan 14, 2025
93f5a21
Version 1.07.2
djb-rwth Jan 14, 2025
6454709
Version 1.07.2
djb-rwth Jan 14, 2025
1385427
Version 1.07.2
djb-rwth Jan 14, 2025
277e8c2
Version 1.07.2
djb-rwth Jan 14, 2025
c3dcff6
Version 1.07.2
djb-rwth Jan 14, 2025
213965b
Version 1.07.2
djb-rwth Jan 14, 2025
01d3fbb
Version 1.07.2
djb-rwth Jan 14, 2025
ecf9a37
Version 1.07.2
djb-rwth Jan 14, 2025
544a90b
Version 1.07.2
djb-rwth Jan 14, 2025
379b32e
Version 1.07.2
djb-rwth Jan 14, 2025
283be9b
Version 1.07.2
djb-rwth Jan 14, 2025
1b5b611
Version 1.07.2
djb-rwth Jan 14, 2025
993c8a9
Version 1.07.2
djb-rwth Jan 14, 2025
08e951b
Version 1.07.2
djb-rwth Jan 14, 2025
3e59b6e
Version 1.07.2
djb-rwth Jan 14, 2025
b655143
Version 1.07.2
djb-rwth Jan 14, 2025
c1435ac
Update README.md
djb-rwth Jan 16, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 23 additions & 2 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -1,10 +1,20 @@
# This file configures how Git treats line endings.
# This is important because we're working on both Windows and Unix machines.
# For details see https://adaptivepatchwork.com/2012/03/01/mind-the-end-of-your-line/.
# For details see https://adaptivepatchwork.com/2012/03/01/mind-the-end-of-your-line/
# and https://www.aleksandrhovhannisyan.com/blog/crlf-vs-lf-normalizing-line-endings-in-git/.

# Git runs CRLF to LF replacement on files marked as `text`
# every time they are written to the object database
# and the reverse replacement when writing to the working directory.

# When spurious diffs due to EOL changes occur (e.g., after pulling remote), do the following:
# * Inspect EOL with `git ls-files --eol`.
# * Stage the diffs.
# * Run `git rm --cached -r . && git reset --hard`.
# * Run `git add --renormalize .`.
# * Inspect EOL with `git lf-files --eol` again to verify that conversion worked.
# * Commit the change containing the EOL conversions.

*.c text
*.h text
*.py text
Expand All @@ -16,6 +26,15 @@
*.yml text
*.yaml text
*.sdf text
*.props text
*.ruleset text
*.sln text
*.vcxproj text
*.def text
*.map text
*.user text
makefile text
makefile32 text

*.sqlite binary
*.png binary
Expand All @@ -24,4 +43,6 @@
*.zip binary
*.dll binary
*.docx binary
*.pdf binary
*.pdf binary
*.jpg binary
*.lib binary
18 changes: 4 additions & 14 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,20 +9,14 @@ on:

jobs:
test_glibc_gcc:
runs-on: ubuntu-latest
runs-on: ubuntu-24.04
container: gcc:14

steps:
- uses: actions/checkout@v4

- uses: actions/setup-python@v5
with:
python-version: '3.12'

- name: Install test dependencies
run: |
python -m pip install --upgrade pip
python -m pip install -e INCHI-1-TEST[invariance-tests]
run: cd INCHI-1-TEST && ./install.sh

- uses: ./.github/actions/compile_inchi_exe
id: compile_exe
Expand Down Expand Up @@ -51,12 +45,8 @@ jobs:


test_musl_gcc:
runs-on: ubuntu-latest
# We need Python 3.12. That's why we're using alpine:edge.
# Currently (May 2024) edge is the only Alpine version with Python 3.12.
# Once edge advances, the Alpine Python version will be bumped and `python -m pip install -e INCHI-1-TEST` will break.
# TODO: Find more sustainable solution.
container: alpine:edge
runs-on: ubuntu-24.04
container: alpine:latest

steps:
- name: Install build and test environment
Expand Down
Binary file modified INCHI-1-BIN/linux/32bit/inchi-1
Binary file not shown.
Binary file modified INCHI-1-BIN/linux/32bit/inchi-1.gz
Binary file not shown.
Binary file modified INCHI-1-BIN/linux/32bit/so/inchi_main
Binary file not shown.
Binary file modified INCHI-1-BIN/linux/32bit/so/inchi_main.gz
Binary file not shown.
Binary file modified INCHI-1-BIN/linux/32bit/so/libinchi.so.1.07
Binary file not shown.
Binary file modified INCHI-1-BIN/linux/32bit/so/libinchi.so.1.07.gz
Binary file not shown.
Binary file modified INCHI-1-BIN/linux/64bit/inchi-1
Binary file not shown.
Binary file modified INCHI-1-BIN/linux/64bit/inchi-1.gz
Binary file not shown.
Binary file modified INCHI-1-BIN/linux/64bit/so/inchi_main
Binary file not shown.
Binary file modified INCHI-1-BIN/linux/64bit/so/inchi_main.gz
Binary file not shown.
Binary file modified INCHI-1-BIN/linux/64bit/so/libinchi.so.1.07
Binary file not shown.
Binary file modified INCHI-1-BIN/linux/64bit/so/libinchi.so.1.07.gz
Binary file not shown.
Binary file modified INCHI-1-BIN/windows/32bit/dll/inchi_main.exe
Binary file not shown.
Binary file modified INCHI-1-BIN/windows/32bit/dll/inchi_main.zip
Binary file not shown.
Binary file added INCHI-1-BIN/windows/32bit/dll/libgcc_s_dw2-1.dll
Binary file not shown.
Binary file modified INCHI-1-BIN/windows/32bit/dll/libinchi.dll
Binary file not shown.
Binary file modified INCHI-1-BIN/windows/32bit/dll/libinchi.zip
Binary file not shown.
Binary file modified INCHI-1-BIN/windows/32bit/inchi-1.exe
Binary file not shown.
Binary file modified INCHI-1-BIN/windows/32bit/inchi-1.zip
Binary file not shown.
Binary file added INCHI-1-BIN/windows/32bit/libgcc_s_dw2-1.dll
Binary file not shown.
Binary file modified INCHI-1-BIN/windows/64bit/dll/inchi_main.exe
Binary file not shown.
Binary file modified INCHI-1-BIN/windows/64bit/dll/inchi_main.zip
Binary file not shown.
Binary file modified INCHI-1-BIN/windows/64bit/dll/libinchi.dll
Binary file not shown.
Binary file modified INCHI-1-BIN/windows/64bit/dll/libinchi.zip
Binary file not shown.
Binary file modified INCHI-1-BIN/windows/64bit/inchi-1.exe
Binary file not shown.
Binary file modified INCHI-1-BIN/windows/64bit/inchi-1.zip
Binary file not shown.
Binary file removed INCHI-1-BIN/windows/winchi-1.exe
Binary file not shown.
20 changes: 12 additions & 8 deletions INCHI-1-SRC/INCHI_API/demos/inchi_main/gcc/makefile
Original file line number Diff line number Diff line change
Expand Up @@ -41,11 +41,15 @@ endif
ifndef C_COMPILER
ifeq ($(CCN),2)
C_COMPILER = clang
$(info Both GCC and Clang/LLVM detected. Compiling with Clang -- please edit makefile to compile with GCC.)
$(info Both GCC and Clang/LLVM detected. Compiling with Clang(++) -- please edit makefile to compile with GCC.)
$(info )
else
ifeq ($(OS_ID),0)
C_COMPILER = gcc -static
else
C_COMPILER = gcc
$(info Both GCC and Clang/LLVM detected. Compiling with GCC (default) -- please edit makefile to compile with Clang/LLVM.)
endif
$(info Both GCC and Clang/LLVM detected. Compiling with GCC/G++ (default) -- please edit makefile to compile with Clang/LLVM.)
$(info )
endif
endif
Expand Down Expand Up @@ -116,9 +120,9 @@ endif
# === C Compiler Options =======
ifndef C_OPTIONS
ifndef CALLER_IS_MOL2INCHI
C_OPTIONS = -std=c11 -ansi -O2 -c -fno-strict-aliasing
C_OPTIONS = -std=c11 -ansi -O1 -c -fno-strict-aliasing
else
C_OPTIONS = -std=c11 -O2 -c -fno-strict-aliasing
C_OPTIONS = -std=c11 -O1 -c -fno-strict-aliasing
endif
ifneq ($(OS_ID),0)
ifndef C_SO_OPTIONS
Expand Down Expand Up @@ -176,7 +180,7 @@ else ifeq ($(OS_ID),2)
# jwm: linking to .dylib on OS X
$(API_CALLER_PATHNAME) : $(API_CALLER_OBJS) $(INCHI_LIB_PATHNAME).so$(VERSION)
$(LINKER) -o $(API_CALLER_PATHNAME) $(API_CALLER_OBJS) \
$(INCHI_LIB_PATHNAME).dylib$(VERSION) -lm
$(INCHI_LIB_PATHNAME)$(VERSION).dylib -lm
else
# djb-rwth: linking to .so on Linux
$(API_CALLER_PATHNAME) : $(API_CALLER_OBJS) $(INCHI_LIB_PATHNAME).so$(VERSION)
Expand Down Expand Up @@ -255,9 +259,9 @@ $(INCHI_LIB_PATHNAME).dll$(VERSION): $(INCHI_LIB_OBJS)
$(INCHI_LIB_OBJS) -Wl$(LINUX_MAP),-soname,$(INCHI_LIB_NAME).dll$(VERSION) -Wl,--subsystem,windows -lm
else ifeq ($(OS_ID), 2)
# jwm: creating .dylib on OS X
$(INCHI_LIB_PATHNAME).dylib$(VERSION): $(INCHI_LIB_OBJS)
$(SHARED_LINK) $(SHARED_LINK_PARM) -o $(INCHI_LIB_PATHNAME).dylib$(VERSION) \
$(INCHI_LIB_OBJS) -Wl$(LINUX_MAP)$(LINUX_Z_RELRO) -install_name $(INCHI_LIB_NAME).dylib$(VERSION) -lm
$(INCHI_LIB_PATHNAME)$(VERSION).dylib: $(INCHI_LIB_OBJS)
$(SHARED_LINK) $(SHARED_LINK_PARM) -o $(INCHI_LIB_PATHNAME)$(VERSION).dylib \
$(INCHI_LIB_OBJS) -Wl$(LINUX_MAP)$(LINUX_Z_RELRO) -install_name $(INCHI_LIB_NAME)$(VERSION).dylib -lm
else
# djb-rwth: creating .so on Linux
$(INCHI_LIB_PATHNAME).so$(VERSION): $(INCHI_LIB_OBJS)
Expand Down
18 changes: 13 additions & 5 deletions INCHI-1-SRC/INCHI_API/demos/inchi_main/gcc/makefile32
Original file line number Diff line number Diff line change
Expand Up @@ -37,18 +37,26 @@ ifeq ($(CCN),$(filter $(CCN),1 2))
ifeq ($(GCC_DETECTED),1)
ifeq ($(CLANG_DETECTED),1)
# djb-rwth: Choose C compiler if both GCC and Clang are detected -- CCN = 1 for GCC, CCN = 2 for Clang/LLVM
CCN = 1
CCN = 2
endif
endif
# === C Compiler ===============
ifndef C_COMPILER
ifeq ($(CCN),2)
ifeq ($(OS_ID),0)
C_COMPILER = clang -static
else
C_COMPILER = clang
$(info Both GCC and Clang/LLVM detected. Compiling with Clang -- please edit makefile to compile with GCC.)
endif
$(info Both GCC and Clang/LLVM detected. Compiling with Clang(++) -- please edit makefile to compile with GCC.)
$(info )
else
ifeq ($(OS_ID),0)
C_COMPILER = gcc -static
else
C_COMPILER = gcc
$(info Both GCC and Clang/LLVM detected. Compiling with GCC (default) -- please edit makefile to compile with Clang/LLVM.)
endif
$(info Both GCC and Clang/LLVM detected. Compiling with GCC/G++ (default) -- please edit makefile to compile with Clang/LLVM.)
$(info )
endif
endif
Expand Down Expand Up @@ -116,9 +124,9 @@ endif
# === C Compiler Options =======
ifndef C_OPTIONS
ifndef CALLER_IS_MOL2INCHI
C_OPTIONS = -std=c11 -m32 -ansi -O2 -c -fno-strict-aliasing
C_OPTIONS = -std=c11 -m32 -ansi -O1 -c -fno-strict-aliasing
else
C_OPTIONS = -std=c11 -m32 -O2 -c -fno-strict-aliasing
C_OPTIONS = -std=c11 -m32 -O1 -c -fno-strict-aliasing
endif
ifneq ($(OS_ID),0)
ifndef C_SO_OPTIONS
Expand Down
13 changes: 9 additions & 4 deletions INCHI-1-SRC/INCHI_API/demos/inchi_main/src/e_0dstereo.c
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,6 @@
#include <math.h>
#include <string.h>
#include <ctype.h>
#include <stdbool.h>


#include "e_mode.h"
Expand Down Expand Up @@ -329,11 +328,17 @@ int e_GetElType( inchi_Atom *at, int cur_atom )
S_CHAR num_bonds[MAX_BOND_TYPE];
int i;
int nRadicalValence = 0;
bool cndt1, cndt2;
int cndt1 = 0, cndt2 = 0;

/* djb-rwth: avoiding non-zero constant warning */
cndt1 = sizeof(at->num_iso_H) != sizeof(num_iso_H);
cndt2 = sizeof(at->num_iso_H[0]) != sizeof(num_iso_H[0]);
if (sizeof(at->num_iso_H) != sizeof(num_iso_H))
{
cndt1 = 1;
}
if (sizeof(at->num_iso_H[0]) != sizeof(num_iso_H[0]))
{
cndt2 = 1;
}

if ( cndt1 || cndt2 )
{
Expand Down
18 changes: 9 additions & 9 deletions INCHI-1-SRC/INCHI_API/demos/inchi_main/src/e_ichi_parms.c
Original file line number Diff line number Diff line change
Expand Up @@ -2724,15 +2724,15 @@ void HelpCommandLineParms(INCHI_IOSTREAM* f)
inchi_ios_print_nodisplay(f, " SLUUD Make labels for unknown and undefined stereo different\n");
inchi_ios_print_nodisplay(f, " RecMet Include reconnected metals results\n");
inchi_ios_print_nodisplay(f, " FixedH Include Fixed H layer\n");
inchi_ios_print_nodisplay(f, " KET Account for keto-enol tautomerism (experimental)\n");
inchi_ios_print_nodisplay(f, " 15T Account for 1,5-tautomerism (experimental)\n");

inchi_ios_print_nodisplay(f, " PT_22_00 Account for PT_22_00 tautomerism (experimental)\n");
inchi_ios_print_nodisplay(f, " PT_16_00 Account for PT_16_00 tautomerism (experimental)\n");
inchi_ios_print_nodisplay(f, " PT_06_00 Account for PT_06_00 tautomerism (experimental)\n");
inchi_ios_print_nodisplay(f, " PT_39_00 Account for PT_39_00 tautomerism (experimental)\n");
inchi_ios_print_nodisplay(f, " PT_13_00 Account for PT_13_00 tautomerism (experimental)\n");
inchi_ios_print_nodisplay(f, " PT_18_00 Account for PT_18_00 tautomerism (experimental)\n");

inchi_ios_print_nodisplay(f, " KET Consider keto-enol tautomerism (experimental)\n");
inchi_ios_print_nodisplay(f, " 15T Consider 1,5-tautomerism (experimental)\n");
inchi_ios_print_nodisplay(f, " PT_06_00 Consider 1,3 heteroatom shift (experimental)\n");
inchi_ios_print_nodisplay(f, " PT_13_00 Consider keten-ynol exchange (experimental)\n");
inchi_ios_print_nodisplay(f, " PT_16_00 Consider nitroso-oxime tautomerism (experimental)\n");
inchi_ios_print_nodisplay(f, " PT_18_00 Consider cyanic/iso-cyanic acids (experimental)\n");
inchi_ios_print_nodisplay(f, " PT_22_00 Consider imine/imine tautomerism (experimental)\n");
inchi_ios_print_nodisplay(f, " PT_39_00 Consider nitrone/azoxy or Behrend rearrangement (experimental)\n");


inchi_ios_print_nodisplay(f, "Generation\n");
Expand Down
6 changes: 4 additions & 2 deletions INCHI-1-SRC/INCHI_API/demos/inchi_main/src/e_mode.h
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@
#define __MODE_H__

#include <stdio.h>
#include "../../../../INCHI_BASE/src/bcf_s.h"



Expand Down Expand Up @@ -189,9 +190,10 @@ MS VC compiler pragmas
#undef APP_DESCRIPTION
#endif
#ifndef CREATE_INCHI_STEP_BY_STEP
#define APP_DESCRIPTION "InChI version 1, Software v. 1.07 (Library call example, classic API)"
/* djb-rwth: adding full version number in the output -- GH issue #61 */
#define APP_DESCRIPTION "InChI version 1, Software " CURRENT_VER " (Library call example, classic API)"
#else
#define APP_DESCRIPTION "InChI version 1, Software v. 1.07 (Library call example, modularized API)"
#define APP_DESCRIPTION "InChI version 1, Software " CURRENT_VER " (Library call example, modularized API)"
#endif


Expand Down
Loading
Loading