diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 9da2804..c3d213f 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -10,7 +10,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ["3.9", "3.10", "3.11"] + python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"] steps: - uses: actions/checkout@v2 @@ -36,7 +36,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ["3.9", "3.10", "3.11"] + python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"] steps: - uses: actions/checkout@v2 @@ -50,6 +50,8 @@ jobs: shell: cmd /C CALL {0} run: >- python src/build/build.py -v -x64 -force -cc gcc -cxx g++ + - name: Show libdelaunator dependencies + run: ldd qc/thatsDEM/lib/libdelaunator.dll - name: Test with pytest shell: cmd /C CALL {0} run: >- diff --git a/qc/thatsDEM/triangle.py b/qc/thatsDEM/triangle.py index a44cdb7..f44c58b 100644 --- a/qc/thatsDEM/triangle.py +++ b/qc/thatsDEM/triangle.py @@ -45,7 +45,7 @@ delaunator_lib_name = os.path.join(LIBDIR, DELAUNATOR_LIBNAME) # Load library directly via ctypes. Could also have used the numpy interface. lib = ctypes.cdll.LoadLibrary(lib_name) -delaunator_lib = ctypes.cdll.LoadLibrary(delaunator_lib_name) +delaunator_lib = ctypes.CDLL(delaunator_lib_name, winmode=ctypes.RTLD_GLOBAL) # Args and return types of c functions. Corresponds to a header file. lib.free_index.restype = None lib.free_index.argtypes = [ctypes.c_void_p] diff --git a/readme.md b/readme.md index ac26ea5..bd2e8b3 100644 --- a/readme.md +++ b/readme.md @@ -11,7 +11,8 @@ Derived datasets suchs as DEMs and vector geometries can be extracted from a poi ## Requirements ## -DHMQC is currently supported on Windows and Linux, with Python versions 3.9, 3.10 and 3.11. The recommended way of installing DHMQC is using a Conda environment. +DHMQC is currently supported on Windows and Linux, with Python versions 3.8 through 3.12. The recommended way of +installing DHMQC is using a Conda environment. Installation requires a C and C++ compiler. Currently, only `gcc`/`g++` are supported (on Windows via MinGW-w64).